03. 具身智能技术架构方案 (Architecture)
具身系统不只是“一个模型”,而是“模型 + 状态机 + 控制器 + 安全层 + 评测闭环”的组合。架构设计决定可部署性。
⏰ 最后更新时间: 2026-02-26 | 本页内容将每日更新「VLA 架构、规划控制协同与部署链路」。
3.1 主流路线:VLM+Policy 到 VLA
从工程实现看,主流方案可以归纳为三类:VLM+Policy 两段式、VLA 一体化动作 token、分层混合架构。它们的核心区别就在“动作如何表征”和“动作如何落到控制器”。
| 路线 | 动作如何表征 | 输入如何送入模型 | 模型如何输出 | 动作如何执行 |
|---|---|---|---|---|
| 路线 A:VLM + Policy(两段式) | 连续动作向量(常见为末端位姿增量、夹爪开合、关节速度) | VLM 先读视觉+语言生成子目标;Policy 再读视觉/状态+子目标 | Policy 输出动作 chunk(未来 N 步连续控制量) | 由低层控制器(PID/MPC/阻抗)以高频闭环执行,并叠加安全约束 |
| 路线 B:VLA(一体化) | 离散化动作 token 或量化后的动作码本 | 把图像、状态、文本统一成 token 序列输入 Transformer | 自回归生成动作 token 序列,再反量化为控制命令 | 按 chunk 下发到控制器,运行时由 safety layer 做限幅/急停 |
| 路线 C:分层混合(VLA + Planner + Controller) | 高层是语义子目标/waypoint,低层是连续控制量 | 高层模型处理长时语义,低层模块处理接触与实时控制 | 高层输出子任务序列,低层输出关节/力矩/速度命令 | 高层低频更新,低层高频执行 |
flowchart LR
I[📷视觉 + 🧭本体状态 + 💬语言指令] --> A1[路线A: VLM 语义理解]
A1 --> A2[子目标/文本计划]
A2 --> A3[Policy 连续动作 chunk]
A3 --> E[控制器执行 + 安全层]
I --> B1[路线B: VLA 统一 token]
B1 --> B2[动作 token 序列]
B2 --> B3[反量化为连续控制]
B3 --> E
I --> C1[路线C: 高层 VLA/Planner]
C1 --> C2[子任务与 waypoint]
C2 --> C3[低层 Controller/MPC]
C3 --> E
🧩 路线 A:VLM + Policy(两段式)
- 动作表征:以连续控制为主,适合末端位姿增量与抓取控制。
- 输入方式:VLM 负责“看懂和拆任务”,Policy 负责“把子目标变动作”。
- 输出方式:Policy 常输出短时动作块(action chunk),降低单步抖动。
- 执行链路:控制器负责高频闭环与执行稳定性,VLM 不直接驱电机。
🧠 路线 B:VLA(一体化动作 token)
- 动作表征:将动作离散化为 token,和文本 token 一起做序列建模。
- 输入方式:视觉 patch/token + 机器人状态 token + 文本 token 统一拼接。
- 输出方式:模型自回归输出动作 token,再映射回连续动作空间。
- 执行链路:通常按短窗口下发动作,并由 runtime safety guard 兜底。
⚙️ 路线 C:分层混合(部署常见)
- 动作表征:高层语义动作 + 低层连续控制并存。
- 输入方式:高层看长时上下文,低层看实时接触与动力学状态。
- 输出方式:高层给目标,低层给可执行控制信号。
- 执行链路:优势是可审计、可回放、可替换模块,利于线上迭代。
参考:RT-2、 OpenVLA、 Diffusion Policy、 Octo。
3.2 端到端架构示意(可部署视角)
flowchart LR
A[多模态输入: RGB/Depth/Proprioception/Language] --> B[VLA Backbone]
B --> C[Task-level Planner]
C --> D[Low-level Controller]
D --> E[Robot Actuation]
E --> F[Runtime Safety Layer]
F --> G[Execution Logs + Replay]
G --> H[Data Engine / Continuous Training]
该链路对应的工程要点是:可观测、可回放、可回归。没有日志回放,就无法稳定迭代策略。
3.3 关键模块拆解
| 模块 | 职责 | 常见失败模式 |
|---|---|---|
| VLA Backbone | 将观察和语言编码为动作条件 | 长任务指令漂移、动作抖动 |
| Planner | 拆解复杂任务为可执行子目标 | 子目标顺序错误、死循环 |
| Controller | 将高层动作转为稳定控制信号 | 接触不稳定、轨迹超调 |
| Safety Layer | 碰撞检测、力矩限制、紧急停机 | 误报导致吞吐下降,漏报导致风险上升 |
3.4 架构选型对比(部署导向)
| 方案 | 优势 | 代价/风险 | 适用阶段 |
|---|---|---|---|
| 端到端 VLA | 语义到动作链路短,模块耦合低 | 安全与实时控制可解释性较弱 | P0 验证与快速原型 |
| 分层规划 + 控制 | 可审计性强,便于安全策略兜底 | 系统复杂度高,接口维护成本大 | P1/P2 稳定部署 |
| 混合架构(推荐) | 高层语义泛化与低层稳定控制兼得 | 需要严格定义接口与回归测试 | 面向规模化上线 |
参考入口:RT-2、 OpenVLA、 Diffusion Policy。
3.5 部署阶段关键架构要素
- 接口审计:明确感知输出、规划输入、控制输出的 schema 与频率。
- 时延预算:拆解感知/推理/控制端耗时,验证闭环是否满足任务要求。
- 安全回路:碰撞检测、力矩阈值、急停链路通常与主策略独立验证。
- 回放回归:策略迭代通常会引入历史失败样本回放与对照回归。
3.6 端到端时延预算(Latency Budget)拆解视角
| 链路阶段 | 关键问题 | 观测指标 | 优化抓手 |
|---|---|---|---|
| 传感器采集 | 多传感器时间同步是否稳定? | 采样抖动、帧丢失率 | 硬件时间戳 + 驱动层同步 |
| 感知与编码 | 预处理是否堵塞主推理线程? | 预处理延迟分位数 | 并行流水、零拷贝数据通道 |
| 模型推理 | 峰值延迟能否满足控制周期? | P50/P95/P99 推理延迟 | 量化、裁剪、算子融合、分层推理 |
| 控制与执行 | 指令下发到执行的端侧闭环是否稳定? | 控制周期漂移、超调率 | 控制线程隔离 + 实时调度 |
3.7 训练-部署偏差(Train-Serve Gap)的典型治理路径
常见偏差
- 训练数据“干净”,部署传感器噪声重
- 离线轨迹连续,线上动作约束更强
- 训练目标函数不含安全惩罚
治理策略
- 在数据工程中注入失败/恢复样本并做回放回归
- 部署前做分布外场景压测(光照/遮挡/接触变化)
- 将安全约束独立成可测试的 runtime guard
版本评估关注项
- 不仅看成功率,还要看恢复率与安全事件率
- 新版本通常需要通过“旧任务回归 + 新任务扩展”双测
- 保留可回滚策略与模型版本审计链
架构设计最大的误区是“只追模型分数”。在真实部署里,缺日志、缺回放、缺安全层的系统,即使离线指标很高,也可能在现场快速失效。