SolarWM H3
SolarWM H3 + Memory
让视频世界模型学会记忆,比你想象的更简单
转个身,世界就变了
世界模型需要记住它已经生成的世界。相机转过街角再返回、离开房间再进入时,建筑、家具和物体应当保持原样。流式生成的上下文窗口是有限的:历史画面一旦移出窗口,模型就无法再访问它,回访同一位置时只能重新生成,场景随之发生变化。
下例中,相机在展厅内往返移动。注意侧墙上的画作:它在 3.5 秒首次出现,相机于 20 秒返回。
对照侧墙上的画作。回访带有相机平移,两次视角并不完全重合。点击帧图放大。
要做到这一点,并不需要复杂的设计。我们在这里分享如何简单高效地给 Video World Model 训练出 Memory 能力:
- 载体简单:Memory 就是模型自己生成过的历史帧。我们把这些帧的 latent 存下来,按相机位姿检索,作为额外的 token 送入 attention;不引入 3D 表示,也不新增记忆模块。
- 训练简单:只在 SolarWM 现有的 Stage1 上训练一份 Memory LoRA,训完直接接到 Stage2 上使用;不需要带 Memory 的 teacher,也不必重跑蒸馏和自回归训练。
- 数据精简:只用少量由全景图片和全景视频构造的回访(revisit)数据,专门教模型在回到旧视角时读取 Memory。
Memory 设计:历史帧即 Memory
我们采用 memory frame 作为 Memory 的载体。每生成完一个 chunk,就把它的 latent 连同相机位姿写入一个 latent bank。生成下一个 chunk 前,根据目标相机从 bank 中检索 5 个与当前视角最相关的历史 latent,作为 Memory token 拼入序列。
上下文因此分为两部分。最近 5 个 chunk 保留在 KV cache 中,负责运动的连续性和 chunk 之间的衔接,这与原版 Stage2 完全一致。更早的历史只以 latent 的形式存放在 bank 中,按需取用。KV cache 的大小始终有界,模型结构和 token 形式也都不需要改变。
Memory token 在 attention 中采用单向可见性。当前 chunk 可以读取 Memory;Memory 可以读取共享条件和近期上下文,但读不到当前正在生成的 chunk;文本、anchor 等共享条件则不读取 Memory。这样既能让历史为当前生成提供参考,又能避免训练时目标画面经由 Memory 泄漏,也避免未来 chunk 的检索结果反向影响共享条件。
Memory训练
观察:Memory 与稳定的自回归生成相对解耦
流式世界模型通常分阶段训练:先训练双向 teacher,再学习因果生成和少步生成,最后通过自回归训练缓解误差累积。SolarWM 的 Stage0.5、Stage1、Stage2 对应的正是这一流程。主流带 Memory 的世界模型也沿用这一路线:先训练带 Memory 的 teacher,再将能力逐级蒸馏到 student[3], [4], [5], [6], [7]。这条路线效果很好,但成本很高。对于一个最初没有 Memory 的模型,补上 Memory 就意味着把整条流程重新走一遍。
我们首先做了一个实验:在 SolarWM 已训练好的 Stage1 上冻结全部原有权重,只额外训练一份 Memory LoRA(teacher forcing)。然后直接用这个 Stage1 + Memory 模型做长时间自回归生成。
下面的厨房 case 展示了这一点。对照第 4 秒和第 24 秒:水槽、台面,以及左侧已经模糊变形的陈设,在回访时都能大致对应上。Memory 保留下来的,也包括模型此前生成的瑕疵。
相同相机位姿:04.00 s → 24.00 s。点击帧图放大。
Stage1 尚未经过自回归训练,长时间 rollout 下画质退化在预期之中。关键在于,即使画质已经退化,模型仍能在回访时复现自己生成过的内容。这表明 Memory 能力与稳定的自回归生成能力是相对解耦的。前者可以在 Stage1 上通过 teacher forcing 单独学习,后者已由 Stage2 提供。
范式:单独训练 Memory,复用原模型的其他能力
基于这一观察,我们只单独训练新增的 Memory 能力。原模型已经学会的因果生成、少步采样和稳定自回归生成,直接复用已有训练结果。Memory 用一份独立的 LoRA 学习,其他能力由原模型提供。这样,补上 Memory 就不必把整条生成训练流程重新走一遍。
在 SolarWM 上,具体做法是:冻结 H3 backbone 和已有的 Stage1 LoRA,用 teacher forcing 训练一份新的 Memory LoRA。推理时,将 Stage1 LoRA 换成已经训练好的 Stage2 LoRA,Memory LoRA 原样保留。两份 LoRA 参数独立,各自叠加到同一个 H3 backbone 上。Memory LoRA 没有在 Stage2 上训练过,却可以直接与它组合,从而复用 Stage2 已有的少步生成和抗误差累积能力。
再看同一个厨房 case,这次使用 Stage2 + Memory。对照同样的第 4 秒和第 24 秒,沙发、墙上的挂画和厨房台面都保持了清晰、可辨认的结构。这个例子展示了我们希望复用的组合:Stage2 的生成稳定性,加上在 Stage1 上学到的 Memory 能力。
相同相机位姿:04.00 s → 24.00 s。点击帧图放大。
两段视频采用不同的 Memory 训练快照,用于展示同一场景下的生成行为。
因果生成、少步采样和误差累积的处理全部复用 SolarWM 已有的训练结果。新增成本只有一次 Memory LoRA 训练:不训练带 Memory 的 teacher,也不重跑 Stage2 的蒸馏和自回归训练。就是这样简单的做法,已经能让 SolarWM H3 在 Orbia 上的生成持续性提升 5.22 分,详见结果部分。
数据:少量、高质量的回访数据
模型本身已经具备生成能力,新增数据只需要教会它一件事:回访时读取 Memory。因此数据的核心是 revisit pair:先观察一处场景,使其移出近期上下文,再回到相同或相近的视角。只有在这种情况下,历史画面才对当前生成具有直接的信息价值。
我们用全景数据来构造这种回访关系,这也是我们方法中的一个关键设计。如果用普通相机采集 revisit 数据,需要在拍摄时就规划好离开与返回的路线,并保证回访的视角与之前对得上,采集成本高,也难以规模化。全景数据则不同:它记录了一个位置周围的完整视野,相机轨迹可以在采集之后再任意设计,因此可以直接复用大量现有的全景图片和视频。具体来说,全景图片的相机中心固定,可以自由设计转开、离开和返回的轨迹,同一场景能产生多组受控的回访;移动全景视频保留了真实的相机平移,在此基础上叠加视角轨迹,补充视点变化下的回访。
下面是训练数据中的六个例子,前三个来自全景图片,后三个来自移动全景视频。每个例子中,左图是相机第一次看到某处时的画面,右图是相机转开、离开近期上下文之后再回到这里时的画面;训练时,前者作为 Memory,后者作为回访监督。下方的曲线记录了相机视角相对首次观察的偏离:曲线从 0° 出发、升高,再回落到 0° 附近,就是一次完整的离开与回访。
纵轴:当前视角与首次观察视角的夹角。
纵轴:当前视角与首次观察视角的夹角。
纵轴:当前视角与首次观察视角的夹角。
纵轴:当前视角与首次观察视角的夹角。
纵轴:当前视角与首次观察视角的夹角。
纵轴:当前视角与首次观察视角的夹角。
构造过程中保持画面、相机与文本的对齐,并筛除质量不合格的样本。Memory 只取 query 之前的历史;同一源场景的不同轨迹划入同一数据划分,避免训练与验证之间的场景泄漏。训练时,回访数据与原始高质量 H3 数据按 1:1 混合。
结果
定量评估:Orbia-Bench
我们在 Orbia 的 720 个 case 上评测 SolarWM H3 + Memory,并与原版 SolarWM H3 对比。总分从 76.32 提升到 77.46。提升最大的是生成持续性(70.28 → 75.50,+5.22),其次是 3D 自洽(+2.15)和输入保持(+1.73);控制对齐、画质和时间稳定也都略有提升。Memory 在增强一致性的同时,没有损害原有的生成质量。
| 模型 | 总分 ↑ | 控制对齐 ↑ | 画质 ↑ | 输入保持 ↑ | 生成持续性 ↑ | 3D 自洽 ↑ | 时间稳定 ↑ |
|---|---|---|---|---|---|---|---|
| SolarWM H3 + Memory本次评测 | 77.46 | 80.16 | 75.05 | 70.99 | 75.50 | 70.99 | 84.56 |
| SolarWM H3 | 76.32 | 79.93 | 74.76 | 69.26 | 70.28 | 68.84 | 84.05 |
| 加 Memory 后的提升 | +1.14 | +0.23 | +0.29 | +1.73 | +5.22 | +2.15 | +0.51 |
| Lyra2 | 74.77 | 81.64 | 71.37 | 68.79 | 70.25 | 61.51 | 82.31 |
| EVOKE | 72.70 | 66.47 | 76.48 | 68.81 | 66.43 | 68.02 | 83.18 |
| Echo-WM | 72.24 | 70.74 | 75.02 | 65.91 | 61.42 | 65.26 | 82.69 |
| Gen3C | 71.95 | 75.51 | 67.55 | 75.23 | 68.58 | 60.16 | 78.96 |
| Matrix game 3.5 | 68.07 | 64.18 | 74.03 | 66.93 | 60.82 | 54.61 | 76.41 |
| Seedance2.5 | 67.44 | 43.23 | 76.97 | 72.84 | 67.70 | 72.54 | 80.39 |
| AlayaWorld | 67.01 | 61.68 | 71.04 | 70.17 | 56.62 | 58.92 | 76.31 |
| Genie3 | 66.72 | 55.26 | 74.43 | 61.01 | 54.41 | 61.25 | 83.15 |
| LingBot-World v2 | 65.98 | 58.48 | 75.34 | 61.54 | 52.00 | 57.11 | 77.28 |
| HY-WorldPlay | 65.50 | 45.26 | 72.06 | 66.84 | 69.84 | 70.34 | 77.32 |
| Kling3.0 | 65.23 | 38.58 | 77.38 | 69.14 | 63.32 | 71.30 | 79.30 |
| SANA-WM | 65.08 | 59.39 | 73.22 | 63.19 | 51.95 | 54.10 | 75.03 |
| HappyOyster | 64.34 | 60.49 | 68.78 | 58.23 | 46.31 | 59.17 | 78.25 |
| Cosmos3-Super | 63.72 | 27.92 | 79.04 | 66.04 | 69.75 | 74.55 | 79.73 |
| HunyuanVideo1.5 | 63.27 | 36.09 | 77.07 | 63.12 | 57.44 | 71.31 | 78.96 |
| Cosmos3-Nano | 62.75 | 35.70 | 74.25 | 66.78 | 66.29 | 70.10 | 74.71 |
| LingBot-World v1 | 62.73 | 49.12 | 73.84 | 59.56 | 50.71 | 58.93 | 75.37 |
| Voyager | 62.72 | 60.92 | 68.05 | 58.65 | 43.72 | 46.32 | 78.04 |
| MiniMax-H3 | 62.00 | 32.48 | 78.09 | 63.36 | 55.79 | 69.42 | 77.51 |
| DreamX-World | 61.79 | 48.99 | 74.96 | 60.96 | 48.70 | 48.73 | 74.82 |
| LTX2.5 | 61.25 | 26.51 | 77.96 | 64.81 | 60.25 | 71.64 | 77.30 |
| FantasyWorld | 60.64 | 39.16 | 70.70 | 63.08 | 60.17 | 63.53 | 72.51 |
| Wan2.7 | 60.55 | 31.31 | 76.46 | 65.96 | 54.35 | 64.19 | 75.79 |
| ABot-World | 58.87 | 47.06 | 66.97 | 57.47 | 45.22 | 48.32 | 76.32 |
| LongCat | 57.18 | 23.76 | 77.30 | 58.89 | 47.77 | 64.11 | 74.22 |
| Astra | 52.30 | 28.45 | 61.30 | 59.38 | 44.74 | 59.91 | 67.31 |
定性对比:回访一致性
四组对比均使用相同输入、seed 42 和四步采样。左侧为 SolarWM H3 + Memory,右侧为原版 SolarWM;视频由两侧原片直接拼接,每侧 1344 × 768。每组附有首次经过与回访时的帧图。
回访帧采用 Orbia 标注。点击时间跳转视频,点击帧图放大。
回访帧采用 Orbia 标注。点击时间跳转视频,点击帧图放大。
回访帧采用 Orbia 标注。点击时间跳转视频,点击帧图放大。
回访帧采用 Orbia 标注。点击时间跳转视频,点击帧图放大。
长时间 Rollout
下面是两段 180 秒的连续自回归生成。为便于浏览,按 4 倍速展示,每段约 45 秒,保留完整过程。
参考资料
- [1]SolarWM. Open Data and Scalable Training for Long-Horizon Video World Models.
- [2]MiniMax H3. Official model and inference implementation.
- [3]WorldPlay: Towards Long-Term Geometric Consistency for Real-Time Interactive World Modeling.
- [4]Memorizon: Training World Models Beyond Their Context Window.
- [5]Matrix-Game 3.0: Real-Time and Streaming Interactive World Model with Long-Horizon Memory.
- [6]ReWorld: An Interactive World Model with Long-Horizon Memory.
- [7]WorldPlay2: Extending Real-Time Interactive World Models in Control and Horizon.
引用
所基于的 SolarWM 论文与本博客的引用信息:
@misc{huang2026solarwmopendatascalable,
title = {SolarWM: Open Data and Scalable Training for
Long-Horizon Video World Models},
author = {Junchao Huang and Guian Fang and Shengju Qian and
Xianghao Kong and Zhuoran Zhao and Wei Huang and
Yihua Du and Zixin Zhang and Justin Cui and
Yuchao Gu and Yukang Chen and Xinting Hu and
Tianyu He and Shaoshuai Shi and Zhuotao Tian and
Xin Wang and Mike Zheng Shou and Li Jiang},
year = {2026},
eprint = {2609.02886},
archivePrefix = {arXiv},
primaryClass = {cs.CV},
url = {https://arxiv.org/abs/2609.02886}
}
@misc{zhang2026solarwmmemory,
title = {{SolarWM H3 + Memory}: Training Memory For Video World Model Is Easier Than You Think},
author = {Zhang, Zixin and Huang, Junchao and Du, Yihua and
Lu, Dongyue and Zhao, Zhuoran and Kong, Xianghao and
Chen, Bohong and Fang, Guian and Yan, Dongyu and Liu, Yaoyang and Qian, Shengju},
year = {2026},
month = nov,
note = {SolarX-Team technical blog},
url = {https://solarx-team.github.io/SolarWM-H3-Memory/}
}