物理AI核心模型VLM/VLA/WAM:数学原理与PyTorch实践

发布时间:2026/8/30 5:31:45
物理AI核心模型VLM/VLA/WAM:数学原理与PyTorch实践 “看懂世界”和“在物理世界里做事”中间差着整整一个维度。过去几年大模型解决的主要是数字世界的问题聊天、写代码、画图、总结文档。这些任务有一个共同点——输入是文本或图像输出也是文本或图像模型不需要理解“物体掉下来会砸到东西”“推一个杯子它会滑多远”这类物理规则。但机器人、自动驾驶、工业控制、具身智能落地时模型必须面对真实世界的不确定性状态在变化、动作会产生后果、环境会反馈。这类问题就是当下说的“物理AI”。如果拆开看物理AI的落地依赖三块技术基石VLMVision-Language Model视觉语言模型、VLAVision-Language-Action Model视觉语言动作模型和 WAMWorld Action Model世界动作模型。它们的名字看起来只是排列组合很容易让人误以为只是把模型输入输出改一改。但真正值得关注的是它们背后的数学逻辑高维空间里的表征对齐、动作分布建模、状态转移预测。理解了这一层你才能判断一个物理AI系统设计的合不合理、训练数据缺在哪、模型为什么会失败。这篇文章会先把三者的核心原理讲清楚再用三个最小 PyTorch 示例把底层损失函数跑通最后给出工程落地时的坑和建议。看完之后你不一定马上能训出一个机器人模型但至少能看懂论文里那些 loss 和架构到底在干什么。1. 这篇文章真正要解决的问题很多人在接触物理AI时会有三个困惑。第一个困惑是概念太多。VLM、VLA、WAM再加上世界模型、多模态大模型、具身智能、Sim2Real每个词看起来都重要但说不清谁先谁后、谁依赖谁。第二个困惑是不知道这些模型和普通大模型有什么区别。有人以为把 GPT-4V 接一个机械臂接口就是 VLA有人以为把视频丢给扩散模型就是世界模型。这些理解不算全错但漏掉了最关键的数学设计。第三个困惑是不知道怎么上手验证。论文里的模型动辄几十亿参数普通开发者根本不可能从头训练导致很多人一直停留在“看论文、收藏代码、无从下手”的状态。这篇文章要解决的就是这三件事。先明确一个判断物理AI的核心不是模型参数更大而是数据维度和任务目标变了。大语言模型学习的是“下一个 token 是什么”VLM 学习的是“图像和文本如何在同一个空间里对齐”VLA 学习的是“给定感知和指令下一步动作应该是什么”WAM 学习的是“执行动作后环境状态会变成什么”。这四个目标对应着四种不同的数学对象token 序列的概率分布、跨模态嵌入分布、动作条件分布、状态转移分布。理解了这条主线你就拥有了一套判断工具。以后再看到任何物理AI方案都可以问三个问题它的感知对齐怎么做它的动作空间怎么定义它的状态转移怎么预测这三个问题对应了 VLM、VLA、WAM 的核心。2. VLM视觉语言模型的数学本质是跨模态对齐2.1 为什么 VLM 是物理AI的起点机器人或自动驾驶系统首先要能做一件事看懂场景并且理解指令。比如“把红色杯子放到托盘上”这句话模型需要知道红色杯子在图像里是哪个区域托盘在哪里物体之间的空间关系是什么。这要求模型把视觉信息和语言信息放在同一个“语义空间”里比较和推理。VLM 解决的就是这个问题。它不直接输出动作但它是 VLA 和 WAM 的“认知底座”。如果模型连场景里的物体都认不出来、连指令语义都对不上后面所有动作决策都是空中楼阁。2.2 核心数学嵌入空间与对比学习VLM 最经典的一类实现是双塔结构典型代表是 CLIP 的思路。图像编码器把图片映射成一个向量文本编码器把句子映射成另一个向量训练目标是让“匹配的图像-文本对”在向量空间里靠近“不匹配的”彼此远离。这里的关键数学工具是余弦相似度。给定图像嵌入向量 ( u ) 和文本嵌入向量 ( v )它们的相似度定义为[ \text{sim}(u, v) \frac{u \cdot v}{|u| |v|} ]它衡量的是两个向量在方向上的接近程度而不是长度。这样设计的好处是模型更关注语义方向而不是向量的绝对大小。训练时模型会构造一个 batch里面有 N 张图像和 N 条文本其中正样本是配对的 N 对其余 N×N - N 组合都是负样本。模型要计算一个 N×N 的相似度矩阵然后用交叉熵损失让对角线上的相似度尽量高、其他位置尽量低。这就是 InfoNCE 损失或者叫对比损失[ \mathcal{L} -\sum_i \log \frac{\exp(\text{sim}(u_i, v_i) / \tau)}{\sum_j \exp(\text{sim}(u_i, v_j) / \tau)} ]这里 (\tau) 是温度系数用来控制相似度分布的“尖锐程度”。温度越小模型对区分正负样本越苛刻温度越大分布越平滑训练更稳定。实际项目中(\tau) 是一个需要认真调的参数很多 VLM 训练不收敛问题就出在这个温度系数上。2.3 用代码理解 VLM 的核心损失下面用 PyTorch 模拟一个最简单的对比学习损失。这里不加载真实数据集只用随机向量演示损失函数的结构。import torch import torch.nn.functional as F def contrastive_loss(image_embeds: torch.Tensor, text_embeds: torch.Tensor, temperature: float 0.07) - torch.Tensor: 双塔 VLM 的对比学习损失。 image_embeds: [batch_size, embed_dim]已做 L2 归一化 text_embeds: [batch_size, embed_dim]已做 L2 归一化 # 归一化保证余弦相似度的值域稳定 image_embeds F.normalize(image_embeds, dim-1) text_embeds F.normalize(text_embeds, dim-1) # 相似度矩阵 [batch_size, batch_size] logits image_embeds text_embeds.T / temperature # 对角线是正样本。分别从图像方向和文本方向各算一次交叉熵 batch_size image_embeds.size(0) labels torch.arange(batch_size, deviceimage_embeds.device) loss_img F.cross_entropy(logits, labels) loss_txt F.cross_entropy(logits.T, labels) return (loss_img loss_txt) / 2.0 # 模拟一个 batch_size8, 嵌入维度为 512 的输入 torch.manual_seed(42) image_embeds torch.randn(8, 512) text_embeds torch.randn(8, 512) loss contrastive_loss(image_embeds, text_embeds) print(fVLM contrastive loss: {loss.item():.4f})这段代码虽然简单但它揭示了 VLM 训练的三个核心要素特征的归一化、温度系数、对称的交叉熵。真实项目里图像编码器可能是 ResNet 或 ViT文本编码器可能是 BERT 或 T5但损失函数的骨架就是这个。2.4 小结论VLM 的数学本质是跨模态表征对齐。它不要求模型理解“物体为什么掉下来”只要求模型能建立视觉与语言的对应关系。它和 VLA 的区别在于VLM 的输出是相似度VLA 的输出是动作。3. VLA从“理解世界”到“操作世界”3.1 VLA 解决什么问题VLM 能告诉你“红色杯子在哪里”但机器人想要把红色杯子拿起来还需要输出一个具体的动作机械臂应该往哪个方向移动、关节角度是多少、施加多大的力。这就是 VLA 的职责。VLA 的全称是 Vision-Language-Action Model视觉语言动作模型。它的输入是图像、文本指令有时还包括机器人的本体状态比如关节角度、末端位置输出是动作。这里的“动作”有两种定义方式一种是连续动作比如关节速度、末端笛卡尔坐标另一种是离散动作比如把连续动作空间量化成若干个“动作 token”。3.2 核心数学动作分布建模从数学角度看VLA 学习的是一个条件分布[ \pi(a_t \mid o_t, l) ]其中 (o_t) 是当前观测图像或状态(l) 是语言指令(a_t) 是动作。这个条件分布可以看作一个策略policy。训练最常见的方式是行为克隆Behavior Cloning用人类专家或遥操作采集的数据教模型模仿专家的动作损失函数是预测动作和真实动作之间的差距。如果动作是连续向量通常用均方误差MSE[ \mathcal{L}_{action} | a_t - \hat{a}_t |^2 ]如果动作转成离散 token则用交叉熵[ \mathcal{L}_{action} - \log P(a_t \mid o_t, l) ]值得注意的是近几年 VLA 的进展在很大程度上依赖于“动作 token 化”。具体做法是用 VQ-VAE向量量化变分自编码器把连续动作压缩成离散码本再把离散动作当成类似文本 token 来预测。这样 VLA 可以直接复用大语言模型已有的序列建模能力。代价是动作的量化精度会损失所以码本大小、量化方式都会显著影响最终操作精度。3.3 VLA 与 VLM 的关系一个常见误区是“VLA 就是一个多模态大模型”。更准确地说VLA 通常是在 VLM 基础上增加一个动作解码头。模型先把图像和文本映射成联合表征这个表征经过若干 Transformer 层后再通过一个专门的 action head 输出动作。VLM 部分负责“理解”action head 负责“决策”两部分通过共享中间表征协同训练。这种设计背后有一个很实际的考量VLM 的训练数据图像-文本对非常丰富而 VLA 需要的“图像-文本-动作”三元组数据非常昂贵因为需要真机或仿真采集。所以常见训练路线是先用海量图文数据预训练 VLM 部分再用少量机器人数据微调整个 VLA让 VLA 只学习“如何把理解转化为操作”而不是从零开始学视觉理解。3.4 代码示例最小 VLA 动作头下面的代码展示 VLA 中最关键的动作解码部分从联合表征预测连续动作。实际项目中图像和文本编码器通常来自预训练 VLM这里我们直接用随机特征代替。import torch import torch.nn as nn class VLAActionHead(nn.Module): 一个极简的 VLA 动作头 输入视觉-语言联合特征输出连续动作向量。 实际项目中联合特征来自 VLM 的 Transformer 输出。 def __init__(self, feature_dim: int, action_dim: int, hidden_dim: int 512): super().__init__() self.net nn.Sequential( nn.Linear(feature_dim, hidden_dim), nn.GELU(), nn.Dropout(0.1), nn.Linear(hidden_dim, action_dim), ) def forward(self, joint_feature: torch.Tensor) - torch.Tensor: return self.net(joint_feature) # 模拟数据 torch.manual_seed(0) batch_size, feature_dim, action_dim 16, 768, 7 joint_feature torch.randn(batch_size, feature_dim) target_action torch.randn(batch_size, action_dim) # 专家动作 model VLAActionHead(feature_dimfeature_dim, action_dimaction_dim) pred_action model(joint_feature) loss nn.MSELoss()(pred_action, target_action) print(fVLA action loss: {loss.item():.4f})这段代码只展示了动作头但 VLA 训练中最关键的工程问题已经暴露出来特征怎么来动作空间怎么定义损失要不要加权真实机器人数据里动作分布往往很不均匀比如“静止”占了很大比例如果不做处理模型会倾向输出保守动作。这是一个在仿真里容易忽略、真机上非常致命的问题。3.5 小结论VLA 的数学本质是动作条件分布建模。它承接了 VLM 的感知对齐能力再往动作空间加了一层映射。但 VLA 有一个天生短板它只管“当前这一步动作”不太关心“动作以后世界会变成什么样”。这就轮到 WAM 出场了。4. WAM世界动作模型学会预判未来4.1 WAM 的定义与定位WAM 这个缩写在业界还没有做到完全统一比较常见的解读是 World Action Model世界动作模型。它强调的是“世界模型”和“动作建模”的结合。如果只叫 World Model那是单纯预测下一帧图像或状态如果只叫 Action Model那就是 VLA。WAM 的核心是让模型理解在某个状态下采取某个动作世界会如何变化。用数学语言表达WAM 学习的是状态转移分布[ p(s_{t1} \mid s_t, a_t) ]其中 (s_t) 是当前状态(a_t) 是动作(s_{t1}) 是下一时刻的状态。这里的“状态”可以是关节角度、物体位置、图像特征也可以是机器人内部对世界的隐状态表征。为什么这个能力重要因为真正的智能体不能完全依赖“试错”。人类拿杯子时会预判如果手臂伸得太快杯子可能被碰倒。这种预判能力来自于内心对物理规则的建模。WAM 就是想给智能体装上类似的“内心物理模拟器”。4.2 核心数学预测未来的三种粒度WAM 的建模粒度决定了它的难度和用途。第一种是像素级预测。直接预测下一帧图像目标是重建未来图像。这是最直观的方式但计算开销大而且像素空间有很多与决策无关的细节训练效率低。第二种是隐空间预测。图像先被编码成低维向量模型在特征空间里预测下一时刻的特征再用解码器还原成图像或直接把预测特征用于决策。这是目前更实用的方式。损失函数通常是对比损失或特征均方误差[ \mathcal{L}{world} | \hat{z}{t1} - z_{t1} |^2 ]其中 (z_{t1}) 是真实下一帧的编码特征(\hat{z}_{t1}) 是模型预测的特征。第三种是离散 token 预测。把观测空间量化成离散 token然后像语言模型一样预测下一个 token。这种方法的好处是可以复用 Transformer 的序列建模结构但同样存在量化信息损失的问题。4.3 WAM 与 VLA 的结合方式VLA 负责决策看到什么、做什么。WAM 负责想象做了之后会发生什么。二者结合以后系统可以在多个候选动作里选择“最不容易撞到障碍物”的那个这就是模型预测控制MPC的思想。在实际工程中VLA 和 WAM 经常是协同训练的。VLA 输出动作WAM 根据动作和当前状态预测下一状态然后把预测误差作为额外监督信号让 VLA 学习到的动作不仅是“模仿专家”还要“符合物理规律”。这种多任务约束往往能显著提升动作的平滑性和鲁棒性。4.4 代码示例最小 WAM 状态预测下面用一个 MLP 演示 WAM 的核心输入 “当前状态 动作”输出 “下一状态预测”。import torch import torch.nn as nn class WorldActionModel(nn.Module): 最小 WAM 示例给定当前状态和动作预测下一时刻状态。 这里的状态用低维向量表示实际项目中可以是图像特征或机器人关节状态。 def __init__(self, state_dim: int, action_dim: int, hidden_dim: int 256): super().__init__() self.net nn.Sequential( nn.Linear(state_dim action_dim, hidden_dim), nn.ReLU(), nn.Linear(hidden_dim, hidden_dim), nn.ReLU(), nn.Linear(hidden_dim, state_dim), ) def forward(self, state: torch.Tensor, action: torch.Tensor) - torch.Tensor: x torch.cat([state, action], dim-1) return self.net(x) # 模拟数据 torch.manual_seed(1) batch_size, state_dim, action_dim 16, 128, 7 state torch.randn(batch_size, state_dim) action torch.randn(batch_size, action_dim) next_state torch.randn(batch_size, state_dim) model WorldActionModel(state_dimstate_dim, action_dimaction_dim) pred_next_state model(state, action) loss nn.MSELoss()(pred_next_state, next_state) print(fWAM state prediction loss: {loss.item():.4f})这个例子虽然简单但已经包含了 WAM 的一个核心难点预测不确定性问题。同一个状态和同一个动作真实环境的下一状态可能不是唯一确定的比如推一个物体摩擦力不同会导致不同结局。MSE 损失在单峰分布下没问题遇到多峰未来时模型会输出“平均状态”这在物理交互中往往是不合理的。所以真实 WAM 项目里更常见的是用高斯混合模型、离散化 token 或扩散模型来建模多峰的未来分布。4.5 小结论WAM 的数学本质是从“当前状态 动作”到“未来状态”的条件分布建模。它给智能体提供了预判能力是闭环控制、规划和安全保障的关键模块。但它也是三者中最难训练的因为它的预测目标天然具有不确定性对数据质量和建模方式的要求都很高。5. 三者关系一条贯穿感知、决策、预测的数学链把 VLM、VLA、WAM 放到一起可以看出一条清晰的数据流VLM 负责从图像和语言中提取共享表征把“看到什么”和“指令说什么”对齐到同一个向量空间。VLA 在这个表征空间的基础上输出动作分布决定“接下来做什么”。WAM 接收当前状态和动作预测下一状态回答“这么做会怎样”。三者之间不是串行的简单管线而是互相监督、互相制约的关系。VLM 对齐质量决定了 VLA 是否能理解指令VLA 的动作质量决定了 WAM 预测的状态是否合理WAM 的预测误差又可以反向指导 VLA 调整策略。在三者融合的架构中同一个 Transformer 可能会同时输出下一帧表征和动作 token这就把整个物理AI的数学逻辑收敛成了一个问题如何在共享的高维空间里同时建模表征对齐、条件动作分布和状态转移分布。用一个表格来对比三者的核心差异维度VLMVLAWAM核心目标视觉语言对齐动作决策状态预测数学对象跨模态嵌入相似度动作条件分布状态转移分布代表性损失InfoNCE 对比损失动作 MSE / 交叉熵预测状态 MSE / 对比损失输入图像、文本图像、文本、状态状态、动作可选图像输出相似度 / 表征动作向量 / 动作 token下一状态表征典型应用图文检索、VQA机器人操作、自动驾驶决策世界模拟、规划、MPC这张表格建议收藏。当你再看物理AI论文时先用这张表判断某篇论文的模型主要优化的是哪一块再去读它的损失函数会轻松很多。6. 环境准备与最小实验配置前文都是理论这一节开始进入可操作环节。在运行前面的三个代码示例之前建议准备好以下环境。6.1 运行环境本文的示例代码只需要 PyTorch 就能运行不需要加载大模型权重也不需要 GPU。但你如果想继续深入跑真正的 VLM 微调或 VLA 训练则建议准备操作系统LinuxUbuntu 20.04 及以上或 macOSWindows 也可以运行但部分分布式训练工具支持度稍弱Python 版本3.10 及以上PyTorch2.0 及以上具体以官网安装命令为准依赖库numpy、transformers、timm、einops、tensorboard 或 wandb用于日志GPU建议至少 16GB 显存。如果做 VLA 微调显存不足时可以借助 LoRA、梯度累积、混合精度等手段版本细节不要照抄网上的固定组合因为 PyTorch 和 CUDA 的版本匹配关系经常更新。最稳妥的方法是先创建一个干净的虚拟环境然后安装 PyTorch再按需安装其他库。6.2 环境安装示例以 conda 为例conda create -n physical-ai python3.10 -y conda activate physical-ai pip install torch torchvision --index-url https://download.pytorch.org/whl/cu118 pip install numpy transformers timm einops tensorboard注意这里--index-url参数只是示意实际请根据你的 CUDA 版本选择对应的 PyTorch 安装命令。如果不确定直接到 PyTorch 官网选择对应平台和 CUDA 版本复制官方命令即可。6.3 验证环境把前面三节代码合并到一个 Python 文件中运行如果都能输出数字不会报错说明环境就绪。为了让验证更有仪式感可以单独写一个最小脚本import torch print(PyTorch version:, torch.__version__) print(CUDA available:, torch.cuda.is_available()) if torch.cuda.is_available(): print(CUDA device:, torch.cuda.get_device_name(0))如果CUDA available是 False示例代码仍然可以运行只是训练速度会慢很多。本文的三个示例用 CPU 跑完全没有问题因为它们只是演示损失函数的写法。7. 从示例到真实项目VLM / VLA / WAM 训练的关键路径跑通最小示例之后你可能会问真实项目里这三者是怎么一步步训练出来的下面给出一个通用的工程路径以机器人操作任务为例。7.1 第一步数据准备与预处理VLA 训练的数据结构是三元组观测图像 本体状态、语言指令、动作。WAM 训练的数据结构是四元组当前观测、动作、下一观测、是否完成标志。数据采集通常来自三类来源遥操作数据人类通过操作杆或动捕设备控制机器人记录图像、指令和动作。质量最高但成本也最高。仿真数据在 Isaac Sim、MuJoCo、PyBullet 等仿真环境里用脚本或强化学习自动生成数据。成本低、量大但存在仿真到真机的迁移问题。互联网视频视频数据可以用于预训练 VLM 部分但很难直接提取出精确的动作信号所以一般只用来做感知预训练。数据预处理的关键是统一格式。建议把所有样本转换成统一的数据集格式比如 HuggingFace Dataset 或 WebDataset 格式并记录好图像分辨率、动作维度、指令文本分词方式、坐标系定义。很多人训练失败根本不是模型问题而是数据集里坐标系没统一动作符号正负号错了。7.2 第二步分阶段训练强烈建议不要从零训练一个 VLA 大模型。现实的做法是分阶段阶段一预训练 VLM。使用公开的图文数据集训练或下载开源的 VLM 权重让模型具备视觉-语言对齐能力。阶段二微调 VLA。在机器人数据集上冻结 VLM 大部分参数只训练 action head 和少量 Transformer 层。显存不够时使用 LoRA。阶段三训练或适配 WAM。用机器人数据训练状态转移预测模块或者用 VLA 的训练数据同时优化“动作预测”和“状态预测”两个目标。阶段四联合微调。在仿真环境里让 VLA 和 WAM 协同更新形成一个闭环控制器。7.3 第三步评测与迭代评测不要只看 loss。VLM 要看图文匹配准确率、VQA 准确率VLA 要看任务成功率、动作平滑度、平均完成任务时间WAM 要看预测误差、预测轨迹是否合理。更重要的指标是闭环成功率在一个完整任务里智能体从头到尾自主完成的比例。很多模型在单步评测里表现不错一旦闭环执行就频繁出错因为单步预测误差会累积。8. 常见问题与排查思路在实践 VLM、VLA、WAM 训练时下面这些问题是出现频率最高的。问题现象可能原因排查方式解决方案VLM 对比损失不下降温度系数过大或过小batch size 太小导致负样本不足打印相似度矩阵检查对角线是否比其他位置大调小温度增大 batch使用困难负样本挖掘VLA 输出动作抖动明显动作空间未平滑数据里存在大量不一致动作可视化预测动作曲线检查相邻帧动作差值对动作做滤波在损失函数中加入动作平滑正则统一数据采集协议VLA 倾向于输出保守动作数据中静止样本过多MSE 损失天然倾向均值统计动作分布查看误差主要来自哪类样本对动作样本加权使用离散动作 token使用扩散策略WAM 预测的状态模糊未来具有多峰性MSE 只能给出均值检查同一状态下不同动作导致的不同结果是否被“平均”了改用离散 token 预测、混合高斯或扩散模型训练时显存不足模型过大、batch size 过大、图像分辨率过高逐步减小 batch 或分辨率确定瓶颈梯度累积、混合精度、LoRA 微调、降低图像分辨率仿真表现好但真机表现差仿真与真机之间存在 Sim2Real 差距记录仿真和真机的传感器分布差异使用 domain randomization、增加真实数据、在真机上做少量微调损失正常但闭环任务失败单步预测误差累积策略对历史信息利用不足增加时间维度上的评测观察失败发生在任务后期还是前期使用 Transformer 时增加历史帧输入加入 WAM 做前瞻规划9. 工程最佳实践与安全边界9.1 数据系统性优于模型复杂性物理AI项目里数据的作用往往被低估。一个参数量较小的 VLA 模型如果在干净、一致、动作分布合理的数据上训练表现可能超过一个在混乱数据上训练的大模型。建议在训练前花时间做数据可视化把每一批动作数据的分布、坐标方向、正负号规则都检查一遍。实际上很多新手第一次训练机器人模型失败最后发现是机械臂的关节角单位搞错了弧度写成了角度。9.2 评测拆成单步和闭环两层单步评测只能说明模型学得对不对闭环评测才能说明系统能不能用。建议建立一套自动化评测脚本每次训练后同时给出两个分数单步动作误差和闭环任务成功率。如果单步误差小但闭环失败率高问题通常出在误差累积或策略对状态的依赖过强如果单步误差也大则要先检查数据。9.3 安全边界必须前置涉及物理机器人时安全不是最后才考虑的事。模型输出的动作一定要经过安全层校验例如关节速度限制、位置限制、力矩限制。就算在仿真里测试也要在代码里加上状态机防止智能体做出超出安全边界的动作。真机测试必须有人类监督、急停开关并且建议先在仿真环境跑通闭环任务再迁移到真机。权限方面也要保持最小化机器人控制程序只开放必要的接口不应该有不受约束地访问系统文件的能力。9.4 日志、种子与可复现训练物理AI模型比训练普通 NLP 模型更容易出现“玄学失败”。为了快速定位问题每次实验必须固定随机种子记录完整的超参数、数据版本、代码 commit 号并保存每个 checkpoint 对应的评测结果。建议使用 wandb 或 tensorboard 统一管理否则几天后你会根本想不起某个 loss 曲线是用哪组数据跑出来的。10. 总结与后续学习方向这篇文章其实只讲了三个数学对象跨模态对齐、动作条件分布、状态转移分布。VLM 对应第一个VLA 对应第二个WAM 对应第三个。三者组合在一起提供了一条从感知到决策再到预判的完整能力链。这也是“物理AI”区别于普通大语言模型的关键它必须在一个连续的、不确定的、受物理规则约束的空间里做决策。如果你想继续深入推荐按下面顺序学习第一把本文的三个最小示例改成在真实数据集上跑通比如用 Open X-Embodiment 数据集或仿真环境自己采的数据训练一个小的 VLA 动作头。第二研究动作 token 化的实现细节重点是 VQ-VAE 的 loss 组成重建损失、码本损失、承诺损失。这一步会让你对 VLA 的离散动作有真正的体会。第三深入世界模型的建模方式重点看离散化世界模型和扩散世界模型的差异以及它们在规划中如何使用。第四关注评测基准和社区开源项目。机器人学习社区迭代很快新的模型结构、新的数据协议不断出现保持跟进最好的方式就是动手复现一个小项目。最后给你一个实用建议不要一开始就追求端到端的大一统模型。先在仿真里把 VLM 做对齐、VLA 做动作、WAM 做预测三块独立跑通再考虑融合。每加一层失败的可能性就指数级上升。跑通一个“小但完整”的闭环比拥有一个“大但不可控”的模型有价值得多。这篇文章适合先收藏等你开始接触具身智能或机器人项目时再翻回来对照损失函数和表格应该会有新的理解。