先记住一句话
问“language 怎么注入”时,要同时回答 representation、fusion operator、injection depth、update frequency、training loss 和 action branch 是否真的能访问它。
1. Instruction tokens:早期统一建模
text tokenizer 生成 instruction embeddings,与 image/history/action tokens 拼成序列,用 self-attention 联合建模。优点是架构统一、能继承 VLM;缺点是长视觉 history 稀释语言,模型也可能靠场景/action prior 忽略 prompt。可用 counterfactual instruction swap 测 language sensitivity。
2. Cross-attention:动作查询语言/视觉 memory
ActionFeatures′ = CrossAttn(Q = action/state, K,V = VLM tokens)GR00T N1.5 的 DiT 处理 state/noised actions,并 cross-attend 冻结 VLM 的视觉语言 embeddings。这样 continuous action generator 与 semantic encoder 分工清楚;但若只给 pooled token,细粒度 object/word alignment 可能丢失。
3. Feature modulation / adapter
语言 embedding 可生成 scale/bias/gate,调制 visual/action features(FiLM 类),或经 adapter 注入多层。它便宜、适合小 controller,但容量受 bottleneck 限制;多层注入更强,也更难判断模型在哪一层真正使用 language。
4. Language action:把计划写成可读命令
Hi Robot 的高层 VLM 输出低层 VLA 能理解的 atomic language command;NaVILA 输出如“向前 75 cm”的空间化语言动作。优点是可读、可人工纠正、容易复用通用 VLM;缺点是词语和物理可达性之间没有天然 guarantee,且生成 token 慢。
5. Explicit spatial goal
把语言先 grounding 成 graph node、2D pixel、3D point、frontier 或 trajectory waypoint,再交给 local policy/controller。它把“去哪”与“怎么去”分开,几何可检查;但像素有 depth ambiguity,地图坐标受 localization/mapping error 影响,goal 本身也可能忽略丰富语义。
6. Continuous latent plan
Helix 把任务相关信息压成单个 continuous latent;DualVLN 用 learnable queries 从 instruction、历史、当前图像和 pixel goal 的 VLM context 中抽取 latent goals;action policy 通过 cross-attention/conditioning 消费。带宽高、无需文本解码,但 latent 不天然可解释,可能藏入 dataset shortcut。
7. CoT、memory 与 retrieved experience
显式 reasoning 可包含 scene description、plan、progress summary、next step;slow4fast 则把 episode 反思成结构化经验,再编码并 attention-fuse 到快策略 visual features。优势是长程状态和经验可持久化;风险是语言 hallucination、检索错配、context 成本和 prompt injection。
8. Training-only reasoning supervision
ZR-0 的 VLM 在训练期生成 dense ECoT,但 attention mask 限制 action expert 只看 input prompt features,因此 inference 可跳过 ECoT。这时语言 reasoning 的作用是塑造共享 representation/辅助任务,不是 action 的直接中间原因。Fast-ThinkAct 则把文本 teacher reasoning 蒸馏为 latent,并保留 verbalizer 做约束。
9. 选择接口的原则
| 需求 | 优先接口 | 必须验证 |
|---|---|---|
| 人可编辑/审计 | language subtask + spatial goal | 可执行性与 parser |
| 高频低时延 | cached tokens / latent plan | staleness 与 grounding |
| 精准空间控制 | 3D waypoint / trajectory constraint | 坐标与 uncertainty |
| 训练迁移、不加推理成本 | auxiliary ECoT/world-model loss | 因果消融与 leakage |
| 开放世界恢复 | memory + verifier/search | trigger、错误检索与预算 |
10. 最小因果测试
- 保持图像不变,换 instruction:动作应按语义变化;
- 保持 instruction 不变,给 wrong/oracle subgoal:性能应有方向性变化;
- mask 不同层 language access:定位有效 injection depth;
- shuffle latent across episodes:检测 latent 是否真的携带 task 信息;
- 对同一任务限制 reasoning budget:画质量—时延曲线。
11. 四个 injection 计算
例 1:concat token 长度
Instruction 32 tokens、vision 196 tokens、history 64 tokens,early concat 总序列 L=292。Full self-attention score 数约 292²=85,264;只对 16 action queries cross-attend memory 则约 16×292=4672。
例 2:cross-attention 权重
一个 action query 对三个 words 的 logits=[2,1,0],softmax 约 [0.665,0.245,0.090]。若 value scalars=[3,1,−2],输出≈0.665×3+0.245×1−0.09×2=2.06。
例 3:FiLM modulation
Visual feature h=[2,−1],language 生成 scale γ=[1.5,0.5]、bias β=[−1,2],则 output=γ⊙h+β=[2,1.5]。Language 不增 token,却改变 feature channel。
例 4:更新频率与带宽
256D FP16 latent goal 在 2 Hz 更新,raw payload=256×2 bytes×2=1024 bytes/s;一句 20-token int32 command 在 2 Hz 仅 160 bytes/s,但语义/几何信息量不能只按字节判断。
“模型训练时看过 language/CoT”不等于“动作在推理时由 language/CoT 引导”。必须沿 attention mask 和 dataflow 追到 action logits/trajectory。
自测
1. 显式语言 subtask 与 latent plan 的核心取舍是什么?
前者可读可改但低带宽、慢且可能不可执行;后者带宽高、适合连续控制,但难解释和验证。
2. 为什么 pixel goal 比直接动作更模块化?
它表达“下一中期目标在哪”,同一 planner 可接不同 embodiment 的局部 policy;但仍需 depth/可达性解释。
3. 如何证明模型没忽略 instruction?
做配对 counterfactual:同一观察替换为冲突指令并量化动作/成功目标变化,而非只看 attention visualization。
一手资料
GR00T N1.5给出 VLM→DiT cross-attention;Hi Robot定义 language command interface;DualVLN定义 pixel+latent goal;ZR-0展示 training-only ECoT 的 attention 隔离。