Tencent's Hy-Memory-30B-A3B: A Model Built Just to Write Memory
Tencent's Hy-Memory-30B-A3B is a 3B-active-param model that beats Claude Opus 5 and DeepSeek V4.1 Flash at writing AI memory.

What is Hy-Memory-30B-A3B?
Hy-Memory-30B-A3B is a specialized model from Tencent Hunyuan built to do one narrow job well: decide what a long-term memory system should remember, how it should phrase that memory, and how new information should overwrite or merge with what’s already stored. It’s a mixture-of-experts model with roughly 30B total parameters but only about 3B active per forward pass, which keeps inference cheap despite the model’s overall size. Rather than acting as a general chatbot, it’s designed to slot into existing memory frameworks like Mem0 and MemOS, replacing the general-purpose LLM that normally handles the “memory write” step.
That’s a meaningfully different job than answering questions. A memory writer reads a stream of conversation or interaction logs and has to compress it into durable, retrievable facts without losing nuance or hallucinating details that were never said. Tencent’s bet is that a smaller model trained specifically for this task can outperform frontier general models that were never optimized for it.
TL;DR
- Hy-Memory-30B-A3B is a mixture-of-experts model with about 30B total parameters and only 3B active, trained specifically to write and update long-term memory banks rather than to chat or reason generally.
- It’s meant as a drop-in replacement for the LLM inside Mem0 and MemOS, and Tencent also tested it against its own Hy-Memory harness and the held-out EverMemOS framework.
- On a fixed 20% benchmark subsample across four harnesses, it posted the highest overall average (55.49), edging out Claude Opus 5 (54.62) and DeepSeek V4.1 Flash (53.64).
- The model was trained in two stages: Memory On-Policy Distillation (OPD) for dense supervision, followed by Attributed Memory Reinforcement Learning that assigns credit at the chunk level across rollout windows.
- It generalizes to EverMemOS, a framework held out of training entirely, scoring 56.89 there versus 54.04 for Claude Opus 5 and 55.47 for DeepSeek V4.1 Flash.
- The six underlying metrics span conversational memory (LoCoMo, LongMemEval), persona tracking (PersonaMem-v2), task-specific recall (Travel and Shopping benchmarks), and code repository QA (Code Memory Bench).
- The model is openly released under Apache 2.0 on Hugging Face and deployable through vLLM with an OpenAI-compatible API.
Everyone else built a construction worker.
We built the contractor.
One file at a time.
UI, API, database, deploy.
How does a dedicated memory writer differ from a general LLM?
Most memory frameworks today, including Mem0 and MemOS, work by calling a general-purpose LLM at write time: feed it a chunk of conversation, ask it to extract facts, and have it update a stored memory bank. That LLM is usually the same model (or a sibling) used for everything else in the pipeline, from answering queries to summarizing documents.
Hy-Memory-30B-A3B swaps that general model out for one trained end-to-end on the memory-writing task itself. According to Tencent’s documentation, the model decides three things: what information is worth retaining, how precisely to represent it, and how incoming evidence should revise the existing memory bank. Those are compounding decisions. Get the first one wrong and you lose information permanently; get the third one wrong and you corrupt a memory bank that future queries will rely on.
Because the model only needs to be good at this one job, Tencent could use a much smaller active parameter count (3B) than a frontier general model while still competing on accuracy. That matters for anyone running memory infrastructure at scale, since the memory writer gets called on every new chunk of conversation, not just occasionally.
How was it trained?
The model card describes a two-stage pipeline. The first stage, Memory On-Policy Distillation (OPD), gives the student model dense supervision from a teacher model on memory “state chains” the student itself writes, rather than training purely on static labeled examples. The second stage, Attributed Memory Reinforcement Learning, works at the level of discrete memory banks. During training, the system evaluates a grid of rollouts, scoring each memory bank after every chunk of a reinforcement learning window. Credit is assigned per chunk, advantages are normalized within each column of that rollout grid, and the bank with the highest cumulative score becomes the “parent” bank carried into the next window.
In practice, this means the model is trained inside the same deployed harness configurations it will eventually run in, not a synthetic proxy task. That training-serving alignment is likely part of why the model holds up across different memory frameworks rather than overfitting to one.
How does it perform against Claude Opus 5 and DeepSeek V4.1 Flash?
Tencent evaluated the model as a drop-in writer inside four harnesses: Mem0, its own Hy-Memory harness, MemOS, and EverMemOS (held out of training entirely). In each case, only the memory writer changed. The retrieval setup, answer model, judge, and prompts stayed fixed, and every writer built its memory bank from scratch.
Across six underlying metrics (LoCoMo Judge, LongMemEval, PersonaMem-v2, Travel SPS, Shopping PS, and Code Memory Bench), Hy-Memory-30B-A3B posted the best overall average on a fixed 20% benchmark subsample: 55.49, compared to 54.62 for Claude Opus 5 and 53.64 for DeepSeek V4.1 Flash. It also beat two Qwen3-based baselines and Tencent’s own Hy3 model.
- ✕a coding agent
- ✕no-code
- ✕vibe coding
- ✕a faster Cursor
The one that tells the coding agents what to build.
The results aren’t uniformly dominant. Claude Opus 5 scored higher on raw LoCoMo accuracy in the Mem0 harness (69.47 vs. 59.54) and on several individual metrics across the four tables. But Hy-Memory-30B-A3B’s advantage shows up in the aggregate, where it’s consistently competitive or ahead across harnesses rather than excelling at one benchmark and lagging on others. On the held-out EverMemOS harness, where no training data existed, it scored 56.89, ahead of both Claude Opus 5 (54.04) and DeepSeek V4.1 Flash (55.47), which suggests the training approach generalizes rather than just memorizing the four harnesses it was tuned against.
Is it worth using over a general-purpose model?
For teams running memory frameworks like Mem0 or MemOS, the practical case for Hy-Memory-30B-A3B comes down to cost and specialization rather than raw capability. With only 3B active parameters, inference is cheaper than routing every memory write through a frontier model like Claude Opus 5 or even a flash-tier model like DeepSeek V4.1 Flash. Since memory writing happens continuously as conversations accumulate, that per-call cost difference compounds quickly in production.
The benchmark gap over Claude Opus 5 and DeepSeek V4.1 Flash is real but not huge (55.49 vs. 54.62 vs. 53.64 overall). This isn’t a case where a tiny specialized model crushes frontier generalists by a wide margin. It’s closer to parity, achieved with a fraction of the active compute. For teams already locked into frontier model subscriptions for their whole pipeline, switching just the memory writer may not be worth the integration effort. For teams building memory-heavy applications at scale, where the writer runs constantly and cost adds up, it’s a more serious option.
The model is released under Apache 2.0, which also removes licensing friction for commercial deployment, unlike relying on a closed API.
How do you deploy it?
Tencent’s quickstart uses vLLM (tested with version 0.31.0) to serve the model with an OpenAI-compatible API. Once served with --served-model-name hy-memory, standard chat completion calls work against it. The documented example shows a system prompt instructing the model to extract explicit user facts and preferences into a structured JSON list, with an explicit “no_think” reasoning mode enabled through chat_template_kwargs, which skips any chain-of-thought generation to keep latency low for a task that’s fundamentally extraction, not reasoning.
The model, its config, and weights are hosted on Hugging Face under tencent/Hy-Memory-30B-A3B, split across 51 safetensors shards. Framework code and evaluation utilities are available on Tencent Hunyuan’s GitHub, and the full methodology is documented in an accompanying technical report on arXiv.
Frequently Asked Questions
What frameworks does Hy-Memory-30B-A3B work with?
It was tested as a drop-in memory writer for Mem0, MemOS, Tencent’s own Hy-Memory harness, and EverMemOS, the last of which was held out of training to test generalization.
How big is the model?
It has roughly 30B total parameters in a mixture-of-experts architecture but only about 3B active parameters per inference pass, keeping compute costs closer to a small dense model.
Did it beat Claude Opus 5 outright?
It scored higher on the overall cross-harness average (55.49 vs. 54.62) but not on every individual metric. Claude Opus 5 outperformed it on several specific benchmarks, like raw LoCoMo accuracy in the Mem0 harness.
What’s the difference between OPD and the reinforcement learning stage?
Memory On-Policy Distillation gives the model dense teacher supervision on memory chains it writes itself. The reinforcement learning stage that follows scores entire memory banks at the chunk level across rollout windows and carries the best-scoring bank forward as training progresses.
Is the model open source?
Yes. It’s released under the Apache 2.0 license with weights, config files, and a model card publicly available on Hugging Face, alongside framework code on GitHub and a technical report on arXiv.


