转载自公众号:敢敢AUTOHUB
0. 摘要
2026 年 4 月 9 日,智元发布新一代具身基座大模型 Genie Operator-2,即 GO-2。和上一代 GO-1 相比,这次升级最值得关注的,不是“模型更大”或者“数据更多”这么简单,而是它把具身智能里最顽固的一道裂缝摆上了台面:机器人明明已经理解任务,也做出了看似合理的规划,却仍然可能在最后的抓取、接触、移动和放置阶段失手。换句话说,机器人缺的往往不是“会想”,而是“想完之后能不能按计划稳定做出来”。GO-2 的核心价值,就在于尝试把这一段长期割裂的链路重新接上。
GO-2 官方传播配图
如果把智元过去一年的技术路径连起来看,时间线其实相当清楚。2025 年 3 月 10 日,智元发布 GO-1,并提出 ViLLA,也就是 Vision-Language-Latent-Action 架构,强调通过潜在动作表示把视觉、语言和动作连接起来;2025 年 4 月 21 日,智元发布 Genie Studio,把数据采集、模型训练、仿真评测和模型推理整合进一站式平台;2026 年 4 月 7 日,智元开源 AGIBOT WORLD 2026 数据集;两天后,也就是 2026 年 4 月 9 日,GO-2 正式发布。把这些节点放在一起看,就能理解 GO-2 不只是一个论文结果,而是数据、模型、仿真、训练和部署体系继续向前推进后的阶段性产物。
1. 为什么 GO-2 是 GO 系列真正的拐点
GO-1 解决的问题,主要是“让机器人具备统一感知和任务理解能力”。这在当时已经是非常重要的一步,因为许多具身系统过去依赖高度定制的任务策略,一旦场景变化、指令变化、相机变化或者机器人本体变化,策略就容易失效。GO-1 借助 ViLLA 结构,把多视角图像、自然语言指令和动作生成放进统一框架里,又引入 latent planner 和 action expert,把“理解”和“动作”连成了一个可以训练的系统。这一代模型的重要性,在于它让机器人从碎片化技能堆叠,转向了可迁移、可预训练、可微调的基座模型范式。
但 GO-1 的成功,恰恰也暴露了下一阶段的瓶颈。机器人一旦进入真实场景,尤其是长时序、多步骤、带干扰的任务场景,系统就会面临典型的“语义足够强,执行仍然不稳”的问题。你可以把它想成这样:模型已经知道“先拿杯子,再递给人”,也知道杯子在哪里,可当它真的伸手时,抓取角度、手臂轨迹、接触时机、视觉误差补偿和连续动作约束却未必还在原来的规划轨道上。官方把这个问题概括为 “Semantic-Actuation Gap”,也就是语义与执行之间的断层。GO-2 的意义,正是在于它第一次把这个问题明确作为主问题来设计架构,而不是把它当成控制细节留给后处理模块。
GO-2 结构示意图
2. GO-2 到底新增了什么:不是“更强的 VLA”,而是“更可执行的 VLA”
根据智元 2026 年 4 月 9 日的官方发布页,GO-2 的核心由两部分组成。第一部分是 Action Chain-of-Thought,也就是动作思维链;第二部分是 Asynchronous Dual-System,也就是异步双系统。前者解决“怎么生成可执行的规划”,后者解决“怎么让规划在真实环境里被稳定跟住”。这两个模块一前一后,对应的是具身模型里最难的两个环节:规划必须落到动作空间,执行必须持续对齐高层意图。
动作思维链的关键,不是给机器人多加一层文本推理,而是把推理本身从语言空间或者视觉空间,拉回到动作空间里。ACoT-VLA 论文在摘要中给出的定义非常清楚:它把推理过程表示为一串“粗粒度动作意图”,这些意图不是最终的低层控制信号,却已经足够接近动作本体,因此能为后续动作头提供更加直接的几何和时序约束。换句话说,机器人不再是“看到场景后立刻吐出控制量”,而是先形成一条结构化的动作路径,再沿着这条路径执行。这种变化的工程价值非常大,因为它把原本隐含在模型内部、难以解释也难以对齐的推理过程,变成了更加接近机器人行为本身的中间层。
异步双系统则进一步回答了另一个问题:即便高层动作意图已经更合理了,机器人如何在复杂真实环境中高频、低延迟地跟住这个意图,而不是又重新漂回“边看边做”的旧模式。Libra-VLA 项目页把这个机制概括为“异步粗到细双系统”。低频慢系统负责生成粗粒度动作锚点,像一个总指挥一样给出接下来该往哪里走、动作结构如何展开;高频快系统则持续读取最新观测,在这些锚点附近做局部修正,补偿噪声、偏差和接触误差。这个设计的妙处在于,它没有让一个统一模型同时承担所有频率层级的任务,而是把宏观意图和微观修正分开处理,让两套学习目标分别稳定下来。
GO-2 动作思维链示意图
3. 从公开论文看 GO-2 的两项技术底座
从论文层面看,GO-2 的两项技术支柱可以分别落到两个公开页面上。第一项是 ACoT-VLA,对应 CVPR 2026。论文标题是 ACoT-VLA: Action Chain-of-Thought for Vision-Language-Action Models,提交于 2026 年 1 月 16 日,2026 年 3 月 30 日更新到 v2。论文摘要强调,传统 VLA 虽然已经能把多模态输入映射到动作,但常用的中间推理仍局限在子任务文本或者目标图像等“间接表示”上,这些表示不足以携带执行精细动作所需的全部信息。因此,作者提出最有效的推理形式应当直接发生在动作空间,并通过显式动作推理器 EAR 与隐式动作推理器 IAR 共同构成 ACoT。
第二项是 Libra-VLA,对应 ACL 2026。项目页把它概括为“通过异步粗到细双系统实现学习均衡”。这里的“学习均衡”很重要,因为很多 VLA 架构的问题不是能力不足,而是同一个模型被迫同时承担高层规划和高频控制两类学习难度完全不同的任务,最后两头都不够稳。Libra-VLA 的做法,是让离散粗粒度动作承担宏观意图,让连续细粒度动作承担局部修正,用异步协作的方式把计划和跟随重新拆开。这样做既改善了稳定性,也让长时序任务不那么容易在中途漂移。从公开描述看,GO-2 正是把这两个方向组合进了统一的发布叙事里,因此它比单篇论文更像一个系统级结果。
4. GO-2 的成绩说明了什么,以及哪些数字需要谨慎看
官方 GO-2 发布页给出的基准结果很强:LIBERO 平均成功率 98.5%,LIBERO-Plus 零样本成功率 86.6%,VLABench 平均 47.4,Genie Sim 3.0 的 sim-to-real 测试中,纯仿真训练后在真实环境达到 82.9%。如果只看分数,这当然足够亮眼;但对具身智能来说,比单点分数更重要的是这些基准各自对应的含义。LIBERO 更偏标准化的长时序操作任务,LIBERO-Plus 更强调环境扰动下的泛化,VLABench 更考验类别与纹理变化,Genie Sim 3.0 则把问题直接指向仿真到真实的迁移。也就是说,GO-2 想证明的不是“在一个基准里做到了更高分”,而是“从动作规划到执行跟随,再到跨域迁移,这整条链路的鲁棒性同时得到提升”。
不过,公开资料里有一个口径差异需要专门说明。2026 年 4 月 9 日 GO-2 官方发布页把 LIBERO-Plus 零样本成绩写成 86.6%,但 2026 年 3 月 9 日智元发布的 ACoT-VLA 官方新闻页中,ACoT-VLA 在 LIBERO-Plus 上给出的数字是 84.1%。这并不一定意味着谁对谁错,更可能是评测口径、系统组合方式或者版本不同造成的差异。为了避免把不同来源的结果硬拼到一起,本文涉及“GO-2 整体能力”时采用 GO-2 官方发布页的数字;涉及“动作思维链论文贡献”时,则保留 ACoT-VLA 官方新闻页给出的独立结果。这种区分很有必要,否则文章容易把“单项技术论文的成绩”和“整套系统发布时的成绩”混成一个结论。
GO-2 基准结果配图
5. 把镜头转向开源世界:AgiBot-World 和 GO-1 到底公开了什么
如果只读 GO-2 新闻稿,读者很容易觉得这只是一个“概念上更先进”的模型。但真正把它落回工程,最好的入口其实不是 GO-2,而是已经开源的 AgiBot-World 与 GO-1。AgiBot World Colosseo 的技术报告发表于 2025 年 3 月,核心信息非常明确:这是一个围绕大规模机器人操作建立的数据、模型、基准与工具链平台,包含超过 100 万条轨迹、217 个任务、五类部署场景,并使用 100 多台机器人进行采集。官方 OpenDriveLab 页面进一步强调,GO-1 是建立在这一数据底座之上的通用策略模型,采用 ViLLA 架构,通过 latent action representation 提高异构数据利用效率。
本地 AgiBot-World 仓库与这套公开叙事是对得上的。仓库 README 里直接列出 GO-1、GO-1 Air、AgiBot World Alpha/Beta 数据集、微调脚本、评测脚本和部署脚本,还说明了 Beta 数据集规模为 1,003,672 条轨迹。更重要的是,它不是只放一个模型权重链接,而是把“如何把自有数据转成 LeRobot 格式”“如何微调 GO-1”“如何本地或远程推理”“如何在 AgileX 或 LIBERO 上评测”这些工程流程都公开了出来。这就意味着,GO-1 对外展示的并不是一个演示视频,而是一套可复用的工作流。
6. 用 GO-1 开源代码,直接看“观察如何变成动作”
理解 GO-1 的最直接方式,是顺着代码把数据流走一遍。第一层是配置层,也就是模型和数据的“接口约定”。在 go1/configs/go1_base_cfg.py 里,BaseModelArguments 明确写出了几个关键字段:latent_planning 决定是否启用 latent planner,action_chunk_size 决定一次预测多长的动作块,force_image_size、dynamic_image_size 和 normalize_type 决定视觉输入的处理方式。这说明 GO-1 从一开始就不是只吃单张图像和一条文本,而是围绕“多视角观测 + 一段连续动作”的时序操控任务来设计的。
# 摘自 AgiBot-World/go1/configs/go1_base_cfg.py
@dataclass
class BaseModelArguments:
latent_planning: bool = field(default=False)
freeze_latent_planner: bool = field(default=False)
force_image_size: int = field(default=448)
dynamic_image_size: bool = field(default=False)
normalize_type: Literal["imagenet", "clip", "siglip"] = field(default="imagenet")
action_chunk_size: int = field(default=30)
第二层是数据层,也就是模型到底如何把机器人观测组织起来。go1/lerobot/dataset_lerobot.py 里的 WrappedLeRobotDataset 会从 LeRobot 数据集中读取多视角图像、状态、动作和语言提示,并把动作按 action_chunk_size 组织成时间窗口。值得注意的是,图像并不是简单拼接,而是先做视觉变换,再和文本 prompt 一起送进 preprocess_internvl2_5。也就是说,GO-1 的输入并不只是“图片张量 + 文本字符串”,而是经过专门封装后的多模态序列,这一点很像多模态大模型的对话输入,只不过输出目标不是文字,而是与动作生成耦合的中间表征。
# 摘自 AgiBot-World/go1/lerobot/dataset_lerobot.py
self.dataset = LeRobotDataset(
repo_id=os.path.basename(root),
root=root,
delta_timestamps={
self.action_key: [t / self.dataset_metas[0].fps for t in range(action_chunk_size)]
},
video_backend="pyav",
)
conversation = [
{"from": "human", "value": f"{'<image>'*num_image}{raw_target['final_prompt']}"},
{"from": "gpt", "value": ntp_target},
]
第三层是训练层,也就是“多模态理解”与“动作生成”如何真的接上。go1/internvl/train/go1_train.py 中的 build_datasets 会创建 WrappedLeRobotDataset,同时自动保存 dataset_stats.json 作为归一化统计;build_go1_model 会加载 tokenizer 和 GO1Model;最后 Hugging Face Trainer 负责把整个训练流程串起来。这里最重要的不是训练框架本身,而是 GO-1 的建模方式:视觉骨干和语言骨干先把图像与指令编码成高层表示,再通过 action expert 去回归动作块。也就是说,GO-1 的工程核心是一条清晰的链:多模态编码负责“看懂与听懂”,latent planner 负责“形成潜在动作意图”,action expert 负责“把意图变成连续动作”。
# 摘自 AgiBot-World/go1/internvl/train/go1_train.py
tokenizer, model = build_go1_model(dataset_args, model_args, training_args, space_args)
train_dataset = build_datasets(
tokenizer,
model.num_image_token,
dataset_args=dataset_args,
model_args=model_args,
is_train=True,
space_args=space_args,
stats_save_path=training_args.output_dir,
)
trainer = Trainer(
model=model,
args=training_args,
train_dataset=train_dataset if training_args.do_train else None,
processing_class=tokenizer,
data_collator=collator,
)
第四层是推理层,也是最容易让非研究者一下子看明白系统在干什么的部分。evaluate/deploy.py 定义了 GO1Infer 和 GO1Server。在 inference() 里,输入载荷是三路相机图像、文本指令、机器人状态和控制频率;系统把这些内容重新组织成一句 prompt,例如 “What action should the robot take to …”,然后送入模型,最终得到动作数组。这个过程非常关键,因为它把“自然语言任务”转换成了“机器人当前应该输出哪一段动作块”的问题,这正是具身基座模型区别于传统控制器的地方。
# 摘自 AgiBot-World/evaluate/deploy.py
prompt = payload["instruction"]
payload["final_prompt"] = f"What action should the robot take to {prompt}?"
inputs = multi_image_get_item(
raw_target=payload,
img_transform=self.img_transform,
text_tokenizer=self.text_tokenizer,
num_image_token=self.num_image_token,
dynamic_image_size=self.dynamic_image_size,
use_thumbnail=self.config.use_thumbnail,
min_dynamic_patch=self.config.min_dynamic_patch,
max_dynamic_patch=self.config.max_dynamic_patch,
image_size=self.image_size,
)
inputs["state"] = torch.from_numpy(payload["state"].copy())
inputs["ctrl_freqs"] = torch.from_numpy(payload["ctrl_freqs"].copy())
return self.predict_action(inputs)
7. GO-1 的模型内部,已经能看见 GO-2 之前的那条路线
如果继续往 go1/internvl/model/go1/modeling_go1.py 里看,会发现 GO-1 的内部结构其实已经非常接近一个“分层式动作模型”。代码里同时存在 vision_model、language_model、action_model,并在启用 latent_planning 时额外挂接 latent_planner。与此同时,动作头不是简单的线性层,而是和 DDPMScheduler、DPMSolverMultistepScheduler 绑定在一起,通过扩散方式生成动作块。这意味着 GO-1 已经具备比较明确的层次:视觉和语言主干负责构建任务语义,latent planner 负责潜在动作表示,action expert 负责连续动作去噪生成。站在这段代码上回头看 GO-2,就很容易理解智元为什么会继续沿着“高层动作意图更显式、执行系统再分频”的方向演进。
# 摘自 AgiBot-World/go1/internvl/model/go1/modeling_go1.py
self.vision_model = InternVisionModel(config.vision_config)
self.language_model = InternLM2ForCausalLMGO1(config.llm_config)
self.action_model = ActionExpertModel(action_config)
if config.latent_planning:
self.latent_planner = LatentPlannerModel(
action_head_dim,
config,
latent_planner_config,
self.torch_dtype,
)
self.noise_scheduler = DDPMScheduler(...)
self.noise_scheduler_sample = DPMSolverMultistepScheduler(...)
这一点很值得强调。GO-2 并不是对 GO-1 的简单替换,更像是把 GO-1 中原本已经存在、但仍然较为隐式的“规划层”和“执行层”进一步拆开、显式化和结构化。
GO-1 已经说明了一件事:单纯把图像和文字压成一个 embedding,再直接回归动作,效果是有限的,所以智元引入 latent planner 和 action expert。
GO-2 则进一步说明:即便 latent action 已经比直接动作回归更好,高层意图依然需要更明确的动作链表达,执行层依然需要与高层意图保持更严格的动态对齐。这个演进逻辑是连贯的,而不是跳跃的。
8. 总结
为了让不熟悉具身智能的读者也能快速抓住核心,可以把这两代系统放进同一条流程里看。GO-1 的特点是“统一建模后再通过 latent planner 与 action expert 做动作生成”;GO-2 的特点是“先显式形成动作思维链,再通过异步双系统跟随执行”。从工程视角看,二者不是对立关系,而是前后相接的关系:GO-1 把具身基座模型做出来了,GO-2 则在回答“为什么做出来以后还不够稳”。
如果把这条链翻译成一句更直白的话,那就是:GO-1 证明了“机器人可以通过统一大模型看懂任务并学会动作”,GO-2 进一步追问“机器人如何在真实世界里不跑偏地把动作做完”。这也是为什么 GO-2 在产业意义上会比一篇单独论文更重要。它指向的不是一个新模块,而是一种新的系统组织方式:高层动作意图必须显式、执行必须分层、训练与部署必须闭环。
参考资料
- 1. 智元官方:GO-2 发布页(https://www.agibot.com/article/231/detail/56.html)2. IT之家:2026 年 4 月 9 日 GO-2 新闻(https://www.ithome.com/0/937/397.htm)3. arXiv:ACoT-VLA: Action Chain-of-Thought for Vision-Language-Action Models(https://arxiv.org/abs/2601.11404)4. 智元官方:ACoT-VLA 入选 CVPR 2026 并开源(https://www.agibot.com.cn/article/315/detail/144.html)5. Libra-VLA 项目页(https://libra-vla.github.io/)6. 智元官方:GO-1 发布页(https://www.agibot.com.cn/article/188/detail/56.html)7. arXiv:AgiBot World Colosseo 技术报告(https://arxiv.org/abs/2503.06669)8. OpenDriveLab:AgiBot World 项目页(https://opendrivelab.com/AgiBot-World/)9. 智元官方:Genie Studio 发布页(https://www.agibot.com.cn/article/188/detail/61.html)10. 智元官方:Genie Sim 3.0 发布页(https://www.agibot.com.cn/article/188/detail/120.html)11. 智元官方:AGIBOT WORLD 2026 发布页(https://www.agibot.com.cn/article/315/detail/148.html)12. 智元官方:Genie Sim 3.0 新升级发布页]https://www.agibot.com.cn/article/315/detail/149.html)13. 智元官方:GenieReasoner 发布页(https://www.agibot.com.cn/article/188/detail/118.html)
273
