一句话定位
1X Technologies 用其 EVE 人形机器人第一年运营积累的第一视角视频+动作日志,训练了一个动作条件的视频生成世界模型,把”如何评估通用机器人策略”这个常被忽视却极其现实的机器人学痛点,重新表述为”学一个可学习模拟器”的问题;同时开源 100+ 小时向量量化视频数据集、GENIE 风格基线代码,并发起三阶段(压缩 / 采样 / 评测)公开竞赛邀请社区共建。
背景与定位
机器人学的一个被低估的瓶颈是评估:训练一个能做 1000 种任务的机器人后,很难判断新模型是否在全部任务上都变好了——同一套权重甚至会因背景光照等环境细节的漂移在几天内性能骤降(博客举了一个 T-shirt 折叠模型 50 天内退化的例子),而现实环境一旦变化,旧实验就不可复现。物理仿真器(Bullet、Mujoco、Isaac Sim、Drake)虽然可复位、可复现,但主要面向刚体动力学,需要大量人工建资产,难以覆盖开箱、切水果、拧瓶盖、与人交互等家庭/办公场景里的柔性体、铰接体和非刚性交互,因此仿真环境往往视觉单调、多样性不足,小规模评估结果不能预测真实世界大规模表现。
1X 的解法是”直接从原始传感器数据学一个模拟器”:用 EVE 人形机器人过去一年在家庭/办公场景做移动操作、与人交互积累的数千小时视频与动作数据,训练一个能从观测+动作预测未来视频的世界模型,以此在离线状态下对策略做百万级场景的评估(“neurally-simulated EVE”)。这与同期面向自动驾驶的世界模型(如 gaia-1-wayve)思路同源,但首次把这一范式系统性地搬到人形机器人家庭操作场景;发布的基线架构直接复用 DeepMind 的 genie-generative-interactive-environments(spatio-temporal transformer + MaskGIT 离散视频生成),并借鉴 comma.ai 的 commavq 压缩竞赛设计了自己的三阶段挑战赛。博客明确将其定位为”评估”而非”控制”——博客本身把策略提升/策略训练(引用 AlphaGo、MuZero)列为尚未做到的远期目标。
需要注意:1x-world-model 这个 URL/slug 后来被 1X 复用于一篇完全不同的 2026-01 新博客草稿(“1X World Model | From Video to Action”,slug 为 world-model-self-learning,描述的是基于 NEO 机器人、14B DreamGen/UniPi 风格骨干 + 逆动力学模型的全新方案)——经比对页面内嵌 JSON 与 Wayback 存档确认,本页对应的原始 2024-09-17 博客正文本身并未被改写,两者是同一站点上并存的两篇独立文章,本页只覆盖前者。
模型架构
1X 未发布单一”the” 世界模型架构,而是随数据集一起放出了多个基线实现,供挑战赛参赛者对比/复现:
- GENIE 基线(spatio-temporal transformer + MaskGIT):直接实现 Bruce et al. Genie: Generative Interactive Environments(arXiv:2402.15391)描述的时空 transformer 与 MaskGIT 并行采样器。GitHub 明确说明该开源实现”只在视频序列上训练,不含动作”(action-conditioning 需自行用 additive embedding 加入)——即公开代码本身是一个动作无关的弱化版本,博客视频里展示的”动作可控”世界模型是 1X 内部更完整的版本。放出两个预训练规模:GENIE_35M、GENIE_138M;HF 模型页另列一个未在博客详述的 GENIE_210M_v0。
- Llama 基线:一个基于 Llama 架构、对离散视频 token 做自回归 next-token 预测的基线(
Llama_1B_v0,1B 参数,HF 标记为 Text-Generation 架构复用)。 - U-Net 基线:
worldmodel_unet_v0,扩散 U-Net 路线,具体结构未在已抓取的一手资料中披露细节。 - 视频 tokenizer:帧级 MAGVIT2 编解码器(Yu et al. Open-MAGVIT2 实现),把每帧压缩成 16×16 离散 token(每帧 256 个 token),词表 2^18=262,144,解码还原为 256×256 RGB 图像(v1.0,2024-07-08 起生效);更早的 v0.0.1 版本用更粗的 20×20 tokenizer、词表 1000,对应 160×160 图像。
- 动作表示(随数据集披露,非全部进入公开 GENIE 基线的输入):每帧一组低维状态/动作向量——
joint_pos (N,21)(EVE 的 21 个关节:髋部 yaw/roll/pitch、膝 pitch、踝 roll/pitch、左右各 7 自由度手臂 [肩 pitch/roll/yaw、肘 pitch/yaw、腕 pitch/roll]、颈部 pitch)、driving_command (N,2)(底盘线速度+角速度)、neck_desired (N,1)、l_hand_closure/r_hand_closure(各 N,1,0/1 开合状态)。 - 采样/上下文设定:定义了三种解码场景——Fully Autoregressive(仅给定前若干真实帧,其余全部自回归生成)、Temporally Teacher-forced(当前帧之前全部真实,仅对当前帧内 token 自回归生成,压缩挑战采用此设定)、Fully Teacher-forced(逐 token 全部真实,仅适用于因果 LM)。GENIE 基线推理用 MaskGIT 采样,评测时配置为
--maskgit_steps 2 --temperature 0(2 步并行解码 + 确定性采样)。
数据
- 发布规模:100+ 小时向量量化第一视角视频 + 原始动作数据,来自 1X 在自己办公场所运营 EVE 机器人队列采集的日志(Apache 2.0 许可);博客正文另提到内部实际积累了”过去一年数千小时”数据,公开挑战赛数据集只是其中一个子集。
- 版本演进(GitHub Changelog,均早于/同期本文所述 2024-09 发布):v0.0.1 初版(20×20、词表 1000 tokenizer → 160×160 图像)→ v1.0(2024-07-08,换用更高效 MAGVIT2,16×16、词表 2^18 → 256×256 图像,首次提供原始动作数据)→ v1.1(发布压缩挑战评分标准;剔除数据集中的停顿/不连续片段;提高图像裁剪质量)——本文对应发布时使用的是 v1.1。
- 格式:
video.bin(30Hz 量化 token 流)+segment_ids.bin(标记不连续片段边界,防止跨视频”穿越”)+actions/目录(joint_pos、driving_command、neck_desired、l_hand_closure、r_hand_closure等np.float32数组);另提供magvit2.ckpt(MAGVIT2 编解码器权重,可用于把外部数据也 tokenize 进来)。挑战赛采样协议是从中每次取 16 帧、2Hz(合计 8 秒)作为一个训练/评测样本。 - 划分:
train_v1.1训练集 +val_v1.1留出验证集(供参赛者本地自测);私有测试集仅 1X 内部持有,用于排行榜打分,不公开——README 明确禁止”最近邻检索+向后看训练集延续帧”这类作弊解法,并说明私有测试集会惩罚此类提交。 - 来源与性质:100% 真实机器人运营日志(EVE 人形机器人在家庭/办公场景做移动操作、与人交互),未提及仿真数据或 sim-to-real 混合。
- (后续演进,超出本文范围)HF 数据集卡片显示该数据集后来升级到 v2.0(改用 NVIDIA Cosmos Tokenizer 离散 DV8×8×8 token、新增人脸打码、新增单独的 raw video 数据集
worldmodel_raw_data),对应 1X 更晚(NEO 时代)的世界模型迭代,不在本文档范围内。
训练方法
- 目标(压缩挑战):在”Temporally Teacher-forced”设定下,最小化下一帧离散 token 分布的交叉熵损失。
- 词表分解 trick:由于单 token 词表达 2^18,稠密 logit 张量
(B, 2^18, T, 16, 16)内存开销过大,1X 把每个 token 的分布分解为两个 2^9 类预测p(x1,x2)=p(x1)p(x2)并将两者交叉熵相加计入损失;压缩挑战评测时同样固定在这一因式分解假设下打分(不允许非因式分解模型通过利用协方差项”薅”到更低损失)。 - 动作使用规则:压缩挑战提交只能使用当前 prompt 帧之前的动作(可以自回归预测后续动作用于自身提升,但评测 harness 不会把未来动作喂给模型)。
- 基线训练/生成脚本:GENIE 基线通过
train.py --genie_config genie/configs/magvit_n32_h8_d256.json训练,genie/generate.py生成、genie/evaluate.py评测;两个预训练检查点(GENIE_35M/138M)直接提供,无需重训。 - 反作弊规则:明确禁止最近邻检索/向前查表这类”伪世界模型”解法。
- 奖励机制:压缩挑战($10,000,率先在私有测试集上把 Temporally-Teacher-Forced CE loss 做到 8.0 以下者得奖)、采样挑战($10,000,标准发布时待定,允许 GAN/Diffusion/MaskGIT 等非 next-logit 方法)、评测挑战(“终极圣杯”:给定若干策略 π₁…π_N,能否仅凭世界模型内部推演给出策略优劣排序,具体标准和奖金在发布时均未公布)。提交方式为邮件 challenge@1x.tech 附源码 + 训练大致 FLOPs + 是否用了外部数据 + 自测验证集表现,1X 人工审核后在沙箱环境(Ubuntu 22.04 + CUDA 12.3)跑评测。
- 本次发布不含 RL,纯自监督的下一帧/下一 token 预测训练;策略提升与策略训练被博客明确列为”未来方向”(类比 AlphaGo/MuZero 的 policy improvement in a learned model),尚未实现。
Infra(训练 / 推理工程)
- 内部训练 1X 自有世界模型所用的 GPU 数量、总卡时、并行策略、精度均未披露。
- 公开披露的仅是两个基线检查点在单张 RTX 4090 上的 latent 生成速度(不含 token→像素的反 tokenize 耗时):GENIE_138M 0.075 秒/帧,GENIE_35M 0.030 秒/帧(均为
--maskgit_steps 2设置下)。 - 本工作定位为离线评估用的”虚拟模拟器”,不涉及机器人闭环实时控制,因此没有 control-Hz / 端到端延迟这类指标。
评测 benchmark
1X 自建了一个私有排行榜(在 data/val_v1.1 上评测),GitHub README 公布两个基线检查点的成绩:
| 模型 | Temporally-Teacher-Forced CE Loss↓ | Token Accuracy↑ | LPIPS↓ | 生成耗时 (秒/帧, RTX 4090) |
|---|---|---|---|---|
GENIE_138M(--maskgit_steps 2) | 8.79 | 0.0320 | 0.207 | 0.075 |
GENIE_35M(--maskgit_steps 2) | 8.99 | 0.0301 | 0.217 | 0.030 |
两个基线在发布时都未达到压缩挑战的获奖门槛(CE loss < 8.0),因此 $10,000 奖金在发布时仍是悬赏状态。除此之外没有对标学术基准(如 nuScenes、RoboMimic 等)的量化对比——博客正文对”世界模型本身”的评估是纯定性的视频对比展示:门开合轨迹的动作可控性、抓取箱子时物体随夹爪运动而其余箱子保持静止的物体交互一致性、T-shirt 折叠这类长时程生成、以及三类失败模式的定性展示(物体形变/消失、违反物理规律如盘子悬空、镜子前无法产生”自我识别”的镜像动作)。
创新点与影响
- 把”评估”本身当作机器人世界模型的第一性价值主张,而不是数据增广或规划——提出”机器人要有 ChatGPT 时刻,必须先有 Scaling Laws,而 Scaling Laws 需要可复现的评估”这条论证链条。
- 据博客自述,这是行业内首次公开发布人形机器人尺度的动作标注视频数据集(100+ 小时,Apache 2.0)+ 可复现基线代码,并仿照 comma.ai 的 commavq 竞赛发起一个持续运营的三阶段公开赛(压缩→采样→评测),把社区力量导向”能否在学习出的模拟器里给策略排出优劣”这一终极目标。
- 作者自陈的局限性:模型会丢失物体形状/颜色一致性、遮挡后物体可能凭空消失;并非所有生成都遵守物理规律(如物体悬空不落地);镜子前未观察到机器人对自身镜像的识别能力;且公开发布的 GENIE 基线代码本身不消费动作输入(需参赛者自行加入),即公开代码是弱于博客展示视频里那个”动作条件”版本的阉割基线。
- 后续:1X 发布了 Phase 2《Sampling Challenge》博客(未在本文档覆盖范围内),并在约一年多后(2026-01)于同站点另一 slug 下发布了一篇技术路线完全不同的新一代”1X World Model”文章——换成 NEO 机器人、14B 参数的 DreamGen/UniPi 风格生成骨干 + 逆动力学模型(IDM)做像素到动作的映射,把世界模型从”离线评估器”升级为可直接驱动真实机器人的闭环生成式策略——已超出本文覆盖范围。
原始链接
- 博客(2024-09-17):https://www.1x.tech/discover/1x-world-model
- 挑战赛代码 + 规则(GitHub):https://github.com/1x-technologies/1xgpt
- 数据集(HF,已从
1x-technologies/worldmodel重命名):https://huggingface.co/datasets/1x-technologies/world_model_tokenized_data - 基线检查点(HF):https://huggingface.co/1x-technologies/GENIE_138M ,https://huggingface.co/1x-technologies/GENIE_35M ,https://huggingface.co/1x-technologies/Llama_1B_v0 ,https://huggingface.co/1x-technologies/GENIE_210M_v0 ,https://huggingface.co/1x-technologies/worldmodel_unet_v0
- Discord:https://discord.gg/kk2HmvrQsN
- Phase 2 后续博客(采样挑战,未覆盖):https://www.1x.tech/discover/1x-world-model-sampling-challenge
一手源存档(sources/)
- 1x-world-model—blog — 博客正文全文(从页面内嵌 Next.js/Sanity JSON 提取,并与 2024-09-17 Wayback 存档比对一致,fetched 2026-07-16)
- 1x-world-model—github-readme —
1x-technologies/1xgptGitHub README 全文,含挑战赛规则、排行榜、MAGVIT2/GENIE 细节(fetched 2026-07-16) - 1x-world-model—hf-dataset-card — HF 数据集卡片(
world_model_tokenized_data,含 v1.1 历史格式说明与 v2.0 现状,fetched 2026-07-16)