从世界状态到可执行控制:Cosmos 3 Edge 与机器人控制器之间应建立什么合同
TL;DR
- 场景:Cosmos 3 Edge 把视觉理解、未来预测、视频生成和动作生成放入同一套 4B 世界表示,端侧机器人需要把"模型提案"和"硬件执行"清晰分开。
- 结论:在 World State → Action Proposal → Safety Gate → Deterministic Controller → Telemetry 这条链路上,模型只持有提案权;坐标、时间、动力学与停止权必须由 embodiment adapter、安全门、确定性控制器和独立 watchdog 接管。
- 产出:可落地的接口字段(WorldStateEnvelope / ActionProposal / ValidatedTrajectory)+ 15 Hz 六阶段延迟预算 + 故障矩阵。
版本矩阵
| 维度 | 状态 | 说明 |
|---|---|---|
| Cosmos 3 Edge 4B 模型规模 | ✅ 已验证 | 40 亿参数级端侧世界模型,覆盖相机、车辆、单臂、双臂、人形等 embodiment 域 |
| Cosmos 3 总体技术架构 | ✅ 已验证 | Mixture-of-Transformers 双塔:自回归 Tower 处理视觉/文本,扩散 Tower 处理连续模态 |
| 6D rotation 通用动作表示 | ✅ 已验证 | 技术报告将相对位姿表示为三维平移 + 六维旋转,输出侧恢复合法旋转 |
| Cosmos3-Edge-Policy-DROID 模型卡 | ✅ 已验证 | 8 维动作输出,特定 PyTorch 配置下生成 32, 8 动作块 |
| Jetson AGX Thor T5000 延迟 | ✅ 已验证 | 官方表给出 1.528 s 中位端到端延迟,对应 ~2.133 s 块预算可满足 15 Hz 消费 |
| Jetson T4000 / T3000 / T2000 性能 | ✅ 已验证 | 官方表未满足 15 Hz 动作消费预算 |
| SIGGRAPH 2026 发布 | ✅ 已验证 | 2026-07-20 / SIGGRAPH 2026 大会正式对外开放 |
| Cosmos GitHub 仓库 | ✅ 已验证 | github.com/NVIDIA/cosmos,包含世界模型、数据集与工具 |
| RoboLab 基准 | ✅ 已验证 | NVIDIA SRL 项目,作为公开评估平台 |
| VANTAGE-Bench 等榜单 | ⚠️ 待验证 | 公开结果说明相对表现;独立复测需第三方在相同硬件与代码上完成 |
| 4B 端到端延迟外推到任意 Jetson | ❌ 不成立 | 绑定观测尺寸、bucket、UniPC 步数、guidance、功耗模式、运行时、计时请求 |
| 单一模型同时通过安全门 | ❌ 不成立 | 高风险约束必须来自独立、可验证组件,不能由生成 Proposal 的同一概率系统裁决 |

摘要
共享世界表示不等于共享控制责任。Cosmos 3 Edge 的世界理解与动作生成能力需要通过 World State、Action Proposal、Embodiment Adapter、Safety Gate、确定性控制器和 Telemetry 接入机器人。本文给出接口字段、15 Hz 延迟预算和故障动作矩阵。
关键词
Cosmos 3 Edge、World State、Action Proposal、Safety Gate、机器人控制
目录
- [一、两座 Tower 共享上下文,但不共享控制责任](#一、两座 Tower 共享上下文,但不共享控制责任 "#%E4%B8%80%E4%B8%A4%E5%BA%A7-tower-%E5%85%B1%E4%BA%AB%E4%B8%8A%E4%B8%8B%E6%96%87%E4%BD%86%E4%B8%8D%E5%85%B1%E4%BA%AB%E6%8E%A7%E5%88%B6%E8%B4%A3%E4%BB%BB")
- [二、World State:把"模型看到的世界"变成可追责输入](#二、World State:把"模型看到的世界"变成可追责输入 "#%E4%BA%8Cworld-state%E6%8A%8A%E6%A8%A1%E5%9E%8B%E7%9C%8B%E5%88%B0%E7%9A%84%E4%B8%96%E7%95%8C%E5%8F%98%E6%88%90%E5%8F%AF%E8%BF%BD%E8%B4%A3%E8%BE%93%E5%85%A5")
- [三、Action Proposal:通用动作表示只是意图语言,不是电机命令](#三、Action Proposal:通用动作表示只是意图语言,不是电机命令 "#%E4%B8%89action-proposal%E9%80%9A%E7%94%A8%E5%8A%A8%E4%BD%9C%E8%A1%A8%E7%A4%BA%E5%8F%AA%E6%98%AF%E6%84%8F%E5%9B%BE%E8%AF%AD%E8%A8%80%E4%B8%8D%E6%98%AF%E7%94%B5%E6%9C%BA%E5%91%BD%E4%BB%A4")
- [四、Embodiment adapter:模型里的域投影,不等于设备侧适配器](#四、Embodiment adapter:模型里的域投影,不等于设备侧适配器 "#%E5%9B%9Bembodiment-adapter%E6%A8%A1%E5%9E%8B%E9%87%8C%E7%9A%84%E5%9F%9F%E6%8A%95%E5%BD%B1%E4%B8%8D%E7%AD%89%E4%BA%8E%E8%AE%BE%E5%A4%87%E4%BE%A7%E9%80%82%E9%85%8D%E5%99%A8")
- [五、Safety Gate:独立裁决 Proposal,而不是让模型自我批准](#五、Safety Gate:独立裁决 Proposal,而不是让模型自我批准 "#%E4%BA%94safety-gate%E7%8B%AC%E7%AB%8B%E8%A3%81%E5%86%B3-proposal%E8%80%8C%E4%B8%8D%E6%98%AF%E8%AE%A9%E6%A8%A1%E5%9E%8B%E8%87%AA%E6%88%91%E6%89%B9%E5%87%86")
- 六、确定性控制器:执行短前缀,并始终保留停止权
- [七、延迟合同:15 Hz 是动作消费速率,不是通用推理频率](#七、延迟合同:15 Hz 是动作消费速率,不是通用推理频率 "#%E4%B8%83%E5%BB%B6%E8%BF%9F%E5%90%88%E5%90%8C15-hz-%E6%98%AF%E5%8A%A8%E4%BD%9C%E6%B6%88%E8%B4%B9%E9%80%9F%E7%8E%87%E4%B8%8D%E6%98%AF%E9%80%9A%E7%94%A8%E6%8E%A8%E7%90%86%E9%A2%91%E7%8E%87")
- 八、Telemetry:把"模型想做什么"和"机器实际做了什么"连起来
- 九、故障矩阵:先定义失败动作,再讨论成功策略
- [十、如何阅读 4B、榜单和"实时"](#十、如何阅读 4B、榜单和"实时" "#%E5%8D%81%E5%A6%82%E4%BD%95%E9%98%85%E8%AF%BB-4b%E6%A6%9C%E5%8D%95%E5%92%8C%E5%AE%9E%E6%97%B6")
- 结语:共享世界表示之后,更需要明确执行权
- 参考来源
Cosmos 3 Edge 的真正变化,不只是把一个 4B 级模型塞进端侧设备,而是把视觉理解、未来预测、视频生成和动作生成放进同一套表示与推理框架。过去需要多个模型和大量胶水代码完成的"看见---解释---预测---行动",现在可以在一个世界模型里共享上下文。但共享表示并不等于控制边界消失。恰恰相反,当理解、预测和动作可能继承同一个错误前提时,机器人更需要一条清晰、可审计、可取消的系统合同:
World State → Action Proposal → Safety Gate → Deterministic Controller → Telemetry
这条链路的核心原则是:世界模型可以提出带有时效和不确定性的动作假设,不能直接拥有执行权;具体硬件的几何、动力学和安全约束必须由 embodiment adapter、安全门和确定性控制器接管。
一、两座 Tower 共享上下文,但不共享控制责任
Cosmos 3 采用 Mixture-of-Transformers。自回归 Tower 处理视觉与文本 token,负责场景理解、物体关系、任务分解和语言推理;扩散 Tower 处理视觉、音频与动作等连续模态,负责未来预测、生成和神经模拟。两侧保留各自的归一化层和 MLP,在共享多模态注意力处交换上下文。
技术报告给出的注意力边界比"两个 Tower 共享注意力"更重要:自回归序列保持因果注意力,只读取自己的历史;扩散序列可以读取自回归上下文以及扩散侧的完整上下文。换言之,推理结果可以条件化视频或动作生成,但扩散侧正在去噪的动作不会在同一计算边界内反向改写自回归推理。这是一种有方向的共享,而不是两个模块无条件互相覆盖状态。
这个结构解释了为什么模型能够同时做三类动作任务:给定动作预测视觉后果的 forward dynamics,给定前后视觉变化反推动作的 inverse dynamics,以及同时生成动作和预期视觉后果的 policy mode。但它不提供形式化的状态估计保证,也不证明动作满足关节限制、碰撞约束或实时截止期。一个统一模型可以减少格式转换、内存搬运和跨模型校准漂移,却不能把"内部表示一致"误写成"物理世界已经被验证"。如果物体被遮挡后,理解 Tower 对位置作出错误判断,未来视频和动作 Proposal 可能在同一错误前提上高度一致。内部一致性不是独立证据。
因此,模型输出到控制器之间不能是一条匿名 tensor 管道,而应当是一组版本化、带时间与坐标语义的合同。

二、World State:把"模型看到的世界"变成可追责输入
World State 不是简单的一帧 RGB,也不应直接等同于模型内部 latent。它是控制系统在某一单调时间点对可用证据的结构化快照,至少需要回答五个问题:这是谁的状态、在哪个坐标系、何时采集、可信到什么程度、在什么约束下仍然有效。
一个可落地的状态信封可以包含:
text
WorldStateEnvelope {
schema_version
state_id, state_seq, task_id
monotonic_capture_time, assembled_time, valid_until
embodiment_id, controller_mode
frame_graph_revision, calibration_id, units
observations[] // 图像、深度、力、触觉等引用及哈希
proprioception // 位姿、关节、速度、夹爪、底盘状态
tracked_entities[] // 物体、人员、障碍物及协方差/质量
sensor_health, time_sync_quality
workspace_constraints, forbidden_zones
current_safety_state
uncertainty, provenance
}
这里有三条不能省略的工程约束。
第一,坐标系、单位和标定版本必须显式。translation 是相对相机、机器人基座、地图还是世界坐标;米、毫米还是归一化值;rotation 表示相对增量还是绝对姿态,都不能靠模型名或部署人员的默契推断。摄像头重新安装、机械臂工具中心点变化、车辆轮胎参数调整后,旧的 calibration ID 应使新 Proposal 自动失效。
第二,时间必须使用可比较的单调时钟。控制器真正关心的不是文件生成时间,而是从传感器曝光到动作开始执行时,世界状态已经老了多少。valid_until 应由感知刷新率、目标速度、制动距离和任务风险共同决定。高速车辆、有人协作机械臂与固定监控相机的状态有效期不可能相同。
第三,不确定性和传感器健康要进入合同。仅给模型一个"置信度 0.82"无法说明风险来自遮挡、深度缺失、时间不同步还是分布外物体。状态应至少区分感知质量、位姿协方差、追踪连续性、传感器故障与 OOD 信号。安全门才能根据失败类型采取减速、保持、重感知或急停,而不是把所有低置信度都映射成同一个动作。

三、Action Proposal:通用动作表示只是意图语言,不是电机命令
Cosmos 3 的通用动作表示把不同 embodiment 映射到 translation、rotation 和 manipulation state。技术报告进一步把相对位姿表示为三维平移加六维旋转表示,并在输出侧恢复为合法旋转;抓取状态用于表达当前操纵状态。相机和车辆可以用 ego pose 或 camera motion,单臂系统可以用末端执行器位姿加夹爪状态,双臂再并列两个分支。这样的公共几何语言把像素变化与空间运动连接起来,适合在不同数据域之间共享建模能力。
但"模型支持多种 action dimension"不等于一个 checkpoint 可以零样本控制所有机器人。公开的 Cosmos3-Edge-Policy-DROID 是面向 DROID 观测与动作语义的具体策略,模型卡描述的是 8 维动作输出;基座模型文档中的 camera、vehicle、single-arm、dual-arm、humanoid 等格式,首先是可训练和可交换的表示范围,不是部署证书。
因此,世界模型的输出应该被命名为 ActionProposal:
text
ActionProposal {
proposal_id, based_on_state_id, task_id
model_revision, runtime_revision
embodiment_domain, action_schema_version
generated_at, valid_after, expires_at
horizon, sample_period, coordinate_frame, units
candidate_trajectory[]
expected_visual_consequence_ref
confidence_by_step, trajectory_dispersion, ood_score
assumed_constraints, cancellation_key
}
Proposal 至少要绑定产生它的 World State,声明动作序列覆盖多长时间、每步的采样间隔、允许从何时开始执行以及何时必须作废。模型重新规划后,旧 cancellation_key 应立即失效,避免队列中残留的动作在目标已取消后继续下发。
置信度也不应压成一个装饰性分数。更有用的是每步不确定性、候选轨迹分散度、状态到动作的 OOD 分数,以及"预期视觉后果"和当前场景是否一致。Policy mode 同时产生动作与预期后果,正好可以把后者作为运行时可观测量:实际相机、深度或力传感器与预期持续偏离时,系统应缩短可执行前缀、触发重规划或进入回退,而不是等到整段动作完成后再判断成功。
四、Embodiment adapter:模型里的域投影,不等于设备侧适配器
Cosmos 3 在模型内部为不同动作域设置 domain-aware 输入/输出投影,使不同维度的动作能够进入共享骨干。这解决的是学习表示问题。生产系统仍需要一个独立、版本化、最好可确定性测试的 embodiment adapter,把通用几何意图变成具体设备能够校验的参考轨迹。
对 vehicle,adapter 不能把相对 ego pose 直接翻译为电机占空比,而应结合轴距、转向模型、当前速度、轮胎与路面约束,生成曲率、速度和加速度参考,再交给底盘控制器。对 camera,camera motion 需要映射为云台 pan/tilt 或移动底座轨迹,同时处理机械限位、线缆缠绕区和防抖策略。对 arm,末端位姿要经过坐标变换、逆运动学、可达性、奇异位形、关节速度与碰撞检查,得到时间参数化的 joint trajectory。对 gripper,manipulation state 还要结合夹爪开度、力限值、物体类别、易碎属性和触觉反馈,不能简单把"抓取=1"变成全力闭合。
adapter 的输入输出都应携带 embodiment_id、硬件修订、控制固件、frame graph 和 calibration ID。任何版本不匹配都应在安全门前失败关闭。它还要明确处理 6D rotation 到旋转矩阵或四元数的恢复、相对动作累计误差、动作归一化反变换以及夹爪状态的语义。静默猜测维度或自动补零,是机器人接口中最危险的一类"兼容性"。

五、Safety Gate:独立裁决 Proposal,而不是让模型自我批准
Safety Gate 的职责不是评价动作"看起来是否合理",而是决定一段明确的轨迹能否在当前状态、当前设备和当前时间窗内进入控制器。它至少需要六层检查:
- 协议与来源:schema、签名、模型版本、adapter 版本、任务权限和序列号是否匹配,是否存在重放或乱序。
- 新鲜度:World State、Proposal 和标定是否仍在有效期内,端到端状态年龄是否超过预算。
- 语义完整性:坐标系、单位、动作维度、采样率和 manipulation state 是否可解释,是否存在 NaN、跳变或未定义字段。
- 运动学与动力学:位置、速度、加速度、jerk、曲率、关节、力和扭矩是否在硬限制内,轨迹是否可达且连续。
- 环境与任务约束:碰撞、禁入区、人与机器人距离、物体接触、道路边界、工具状态和任务阶段是否允许该动作。
- 模型质量与运行状态:置信度、OOD、候选分散度、预期后果残差、传感器健康、算力降频和控制器饱和是否触发保守策略。
安全门不应与 Proposal 生成共享唯一的失败表面。让同一个世界模型再回答一次"这个动作安全吗",只能增加内部一致性,不能形成独立验证。高风险约束应来自确定性几何、控制障碍函数、碰撞检测、力阈值、冗余传感器、安全 PLC 或独立 watchdog,并拥有无条件拒绝和停止权限。
安全门的结果可以是 ACCEPT、HOLD、REJECT、FALLBACK 或 ESTOP。若系统允许裁剪速度或缩短轨迹,不应悄悄修改原 Proposal,而应生成新的 ValidatedTrajectory,记录转换规则、前后哈希和责任组件。这样才能在事故复盘中区分模型原始意图、adapter 转换、安全门修改与控制器实际执行。
六、确定性控制器:执行短前缀,并始终保留停止权
通过安全门的轨迹仍不是"把数组写入驱动器"。确定性控制器应在更高频率的闭环中跟踪参考轨迹,处理编码器、IMU、力传感器和执行器反馈,实施速度环、位置环、MPC 或经过验证的 motion primitive。模型负责较低频、较长视野的语义动作块;控制器负责每个控制周期的稳定性、跟踪误差和硬边界。
更稳妥的方式是 receding horizon:模型生成一段动作块,系统只执行经验证的短前缀,同时用新 World State 重新规划。前缀长度取决于最坏情况下的推理尾延迟、制动时间和环境变化速度。没有新 Proposal 时,控制器只能在"旧块仍未过期且状态漂移小于阈值"的条件下继续;否则进入定义明确的回退。
回退不是统一的"原地不动"。机械臂可以减速后保持、释放受力或返回安全位;车辆可能需要受控减速并停靠,而不是瞬间锁死;相机可以保持姿态或回到预置位;夹爪则要根据负载判断保持力、降力还是释放。急停必须走独立于模型进程、GPU、网络和普通软件调度的通道。模型可以请求停止,但不能阻止硬件急停,也不能自动解除急停锁存。

七、延迟合同:15 Hz 是动作消费速率,不是通用推理频率
端到端延迟应从传感器采集开始计算:
state_age_at_execution = controller_start_time - observation_capture_time
它包含曝光与采样、预处理、设备传输、模型排队和推理、后处理、adapter、安全检查、通信与控制器队列。只报告模型 kernel 时间会掩盖真正的过期风险。每次发布都应同时记录 p50、p95、p99、最大值、热稳定后的频率和超时比例。
官方 Policy DROID 性能表尤其说明了为何必须写清"时钟"。在特定 PyTorch 配置下,一次生成 [32, 8] 动作块;若控制器以 15 Hz 消费 32 个动作,这段轨迹覆盖约 2.133 秒。因此所谓满足 15 Hz,是模型在下一块被消耗完之前完成整块生成,并不表示模型每秒调用 15 次。官方表中 Jetson AGX Thor T5000 的中位端到端延迟为 1.528 秒,满足该块预算;T4000、模拟的 T3000 与 T2000 在同一表中没有满足 15 Hz。这个数字还绑定观测尺寸、处理 bucket、四步 UniPC、guidance、功耗模式、运行时和少量计时请求,不能外推到所有 Jetson、所有机器人或所有任务。
合同层应把 valid_after、expires_at、动作 horizon、最小重规划提前量和最大状态漂移写入 Proposal;Safety Gate 用本地单调时钟判断是否还有足够的执行裕量。若推理完成时只剩下不足以安全制动的时间,即使动作内容本身无碰撞,也应被拒绝。

八、Telemetry:把"模型想做什么"和"机器实际做了什么"连起来
Telemetry 不是事后日志附属品,而是这条合同的闭环证据。每一轮至少要通过同一个 correlation ID 串联:World State 哈希与采集时间、模型和运行时版本、Action Proposal、adapter 版本、安全门命中的规则、ValidatedTrajectory、控制器反馈、实际轨迹、预期后果残差、重规划与取消、人工接管、近失事件和急停。
关键指标不应只有任务成功率,还包括 Proposal 拒绝率、过期率、动作块取消率、安全门裁剪幅度、控制器饱和、计划---实测轨迹误差、预期---实际视觉残差、最小人机距离、碰撞或接触异常、回退成功率与恢复时间。涉及相机和人员数据时,可以保存时间对齐的特征、哈希和事件片段,而不是无期限保留完整视频;但用于安全复盘的来源链不能被"隐私优化"完全抹去。
Telemetry 还应反向驱动模型评估。频繁因关节速度超限被拒绝,说明 adapter、动作归一化或训练分布存在系统性偏差;视觉后果长期比实际运动更乐观,可能意味着接触动力学、负载或摩擦条件已偏离训练分布;状态过期率上升,则应先查热降频、排队和传感器同步,而不是盲目换更强模型。
九、故障矩阵:先定义失败动作,再讨论成功策略
接口合同只有在故障时仍然明确,才称得上可执行。至少应把以下情形写入状态机和验收用例。传感器时间戳过旧或多传感器不同步时,Safety Gate 应拒绝新 Proposal,控制器执行受控保持或减速,同时请求重新感知;不能用最近一帧无限续命。标定、frame graph、工具中心点或固件版本不匹配时,应在 adapter 之前失败关闭,因为这种错误常常数值合法、物理含义却完全错误。
模型超时或 GPU 进程退出时,只能在旧动作块尚未过期、实际状态与预测状态偏差低于阈值、剩余前缀仍足以安全制动时继续执行;否则进入本地 fallback。网络断开也不应改变这条原则:端侧可以保留有限自治,但不能因为云端不可达而绕过停止条件。低置信度、明显 OOD 或多个候选轨迹高度分散时,优先降级为更慢、更小范围的确定性行为,例如停止接近、保持视野、回到已知安全位,而不是要求模型"再大胆试一次"。
控制器跟踪误差持续增大、力反馈异常、轮胎打滑、夹爪未达到预期状态或实际视觉后果偏离模型预测时,应取消尚未执行的 Proposal,形成新的 World State,并将偏差原因写入 Telemetry。若触发硬限位、人员侵入保护区、碰撞监测或急停,普通恢复流程不得自动清除锁存;必须由独立安全逻辑或授权操作员确认。这样,回退才是系统能力,而不是事故发生后临时补写的异常分支。
十、如何阅读 4B、榜单和"实时"
Cosmos 3 Edge 的 4B 是 checkpoint 规模描述,不是对显存、功耗、热稳定吞吐或端到端控制周期的保证。15 Hz 是特定策略、动作块、观测、去噪步数、运行时和 Thor 档位下的预算判断。VANTAGE-Bench、RoboLab 等结果可以说明公开协议上的相对表现,但厂商模型卡和发布文章中的数字仍属于厂商披露;一个基准平台公开,并不自动等于第三方已在相同硬件和代码上完成复测。
截至本稿检索,本次未找到同时提供 Edge checkpoint 修订、硬件功耗模式、输入形状、运行时 commit、完整延迟分布和原始日志的独立复测或复现。这个结论只描述本次可核验的公开证据,不等于不存在私有测试或未来不会出现复测。生产决策应把证据分成三层:官方架构与接口说明;官方固定条件下的性能和榜单报告;本团队在目标 embodiment 上完成的可重复验收。前两层只能帮助设计实验,不能替代第三层。
模型卡也明确承认,Cosmos 3 可能出现动作---状态漂移、错误因果推断、不真实碰撞和分布外退化,输出不能被当作物理准确模拟、可靠真值或安全认证决策。这不是附录里的免责声明,而是系统边界的设计输入。
结语:共享世界表示之后,更需要明确执行权
Cosmos 3 Edge 的价值,是让理解、预测、视觉后果和动作 Proposal 可以在同一世界表示中协同,从而减少多模型系统的接口成本,并让动作和预期后果形成可比较的一对输出。它没有消除 embodiment、标定、动力学、控制周期和安全责任。
可部署的接口应当坚持:World State 提供有时间、有坐标、有不确定性的证据;Action Proposal 提供有范围、有期限、可取消的动作假设;embodiment adapter 把通用几何语义变成设备参考轨迹;Safety Gate 以独立规则授予或拒绝执行权;Deterministic Controller 在高频闭环中执行有限前缀并保留硬停止通道;Telemetry 记录每一次状态、提案、裁决和实际后果。
统一模型可以缩短认知链路,但机器是否安全,最终取决于模型之外那条不可绕过的合同。
参考来源
- NVIDIA / Hugging Face, "Introducing Cosmos 3 Edge": huggingface.co/blog/nvidia...
- NVIDIA, "Cosmos 3: Omnimodal World Models for Physical AI" technical report: research.nvidia.com/labs/cosmos...
- NVIDIA, Cosmos3-Edge model card: huggingface.co/nvidia/Cosm...
- NVIDIA, Cosmos3-Edge-Policy-DROID model card: huggingface.co/nvidia/Cosm...
- NVIDIA Cosmos repository: github.com/NVIDIA/cosm...
- NVIDIA SIGGRAPH 2026 announcement: blogs.nvidia.com/blog/siggra...
- RoboLab benchmark project: research.nvidia.com/labs/srl/pr...
FAQ
Action Proposal 为什么不能直接是电机命令?
模型输出缺少设备侧确定性约束、时效保证和停止语义,需要经过适配与安全裁决。
15 Hz 是否表示模型每秒完整推理 15 次?
不能这样泛化。它是特定上下文中的动作消费目标,端到端预算必须绑定硬件、模型与流水线。
Safety Gate 能不能由同一个模型实现?
不应把最终批准权交给生成提案的同一概率系统;关键硬约束应由独立、可验证组件执行。
错误速查卡
| 症状 | 根因 | 定位 | 修复 |
|---|---|---|---|
| World State 字段齐全,但仿真里机器人位姿在执行时已漂移 | 坐标系 / 单位 / 标定版本未显式,旧 calibration ID 仍被接受 | 检查 state_id 与 calibration_id 绑定,验证 frame_graph_revision 是否与现场一致 | 新 Proposal 必须引用最新 calibration;版本不匹配在 Safety Gate 失败关闭 |
| 抓取任务在演示时成功,现场连续滑落或撞物体 | 把"抓取=1"直接译为夹爪全力闭合,未考虑力限值、负载与触觉反馈 | 查 gripper 适配器输出与 manipulation state 语义、力限值与物体属性 | 在 adapter 中加入夹爪开度、力阈值、物体类别、易碎属性和触觉回路,单独失败关闭 |
| 模型看上去在做事,但执行偏差越来越大 | Action Proposal 缺少每步不确定性与预期视觉后果残差,控制器只跟随无修正 | Telemetry 中预期---实际视觉残差、最小 OOD 分数是否纳入 | Proposal 加 confidence_by_step / trajectory_dispersion / ood_score;运行时持续比对预期后果,偏移触发重规划 |
| 推理慢一拍,控制器还在执行刚生成的动作 | 没有端到端 state_age 监控,模型 kernel 时间被当性能指标 | 引入 state_age_at_execution = controller_start_time - observation_capture_time,记录 p50/p95/p99 与超时比例 |
Safety Gate 用本地单调时钟判断 valid_after / expires_at;剩余制动时间不足直接拒绝 |
| 设备上某些姿态不可达,关节撞硬限 | adapter 把通用 6D rotation 直接喂入,没有 IK、奇异位形和关节速度检查 | adapter 输出的 joint trajectory 加上可达性 / 连续性 / 限位检查日志 | adapter 必经逆运动学、奇异性、关节速度/加速度/jerk 与碰撞检查,输出可校验参考轨迹 |
| Jetson 上 15 Hz 数字看似达成,但块只覆盖 1 秒 | 把"15 Hz 推理"误读为"每秒 15 次完整推理" | 核对块大小 32, 8、样本率与控制器消费速率的关系 | 按块预算分配 6 阶段(Observe / Infer / Adapt / Gate / Commit / Telemetry)延迟,单段超时即触发重规划 |
| 模型给出"无碰撞"轨迹但实际撞到人/物体 | Safety Gate 复用同一模型做"再问一次安全吗",未引入独立几何 / 障碍检测 | 检查高风险约束来源:控制障碍函数、碰撞检测、力阈值、冗余传感器、PLC | 高风险约束来自独立、可验证组件;安全门对 Proposal 拥有无条件拒绝与停止权 |
| 旧 Proposal 在新任务里继续执行 | 旧 cancellation_key 未随新规划作废,动作仍在队列里 | Telemetry 搜索 proposal_id 与 current_state_id 不一致但 command 仍发 | 每次新规划立即作废旧 cancellation_key;Controller 仅消费当前有效 Proposal |
| 端到端延迟看似正常,但实际控制器 90% 时间处于饱和 | 只统计 kernel 时间,没有看控制周期、队列长度、计算资源降频 | 引入控制器饱和率、GPU 降频率、状态过期率、热稳定后频率 | 先优化 adapter 投影与块大小;饱和率持续偏高时降频或回退到更小动作块 |
| 现场一段时间后召回,出现规律性"接近---退回" | 视觉后果长期比实际更乐观,模型对接触动力学 / 摩擦条件估计错误 | Telemetry 预期---实际视觉残差、按 embodiment 维度分桶 | adapter 加上接触动力学与摩擦条件校准;必要时回退到更低动作空间与更慢速度 |
| 4B 模型在目标硬件上跑不动,团队怪模型不行 | 把 4B、15 Hz、榜单数字直接外推到任意 Jetson / 任意机器人 | 核对官方性能表的硬件型号、功耗模式、观测尺寸、bucket、UniPC 步数、guidance、runtime commit | 重新跑本团队在目标 embodiment 上的可重复验收;按本团队的延迟分布重新分配 6 阶段预算 |
| 急停按钮被按下后机器人还能动 | 急停通道走软件,与模型 / GPU / 网络调度同一进程 | 检查急停路径是否独立于模型进程、GPU 驱动和普通软件调度 | 急停必须走独立通道,独立 watchdog;模型不能阻止硬件急停,也不能自动解除急停锁存 |
| 4B 模型在原厂榜单很强,但现场表现差距巨大 | 误把模型卡 + 厂商榜单当生产证据 | 比对官方报告、本团队验收和独立复测三层证据 | 前两层只用于设计实验;上线前必须以本团队在目标 embodiment 上的可重复验收为准 |
| 设备适配、轨迹生成、安全裁决在同一个进程里相互影响 | Adapter / 动力学 / Safety Gate 责任未分清 | 检查代码结构与版本号,确认 Adapter 与 Safety Gate 是否能独立升级 | Adapter 处理可执行性(单位、坐标、关节范围、周期),Safety Gate 处理是否允许(碰撞、速度、极限、急停) |
作者:武子康的个人博客