资讯动态

动作思维链ACoT-VLA:让机器人真正学会“动手”的技术解析

发布时间:2026/10/21 17:35:15 来源:尧图企业网站定制
这几年做机器人操作方向我最大的一个感受是我们用大模型给机器人装上了“会说话的脑子”但它还没长出“会行动的手”。视觉-语言-动作模型VLAVision-Language-Action就是这个思路下的代表作——让机器人直接看着图像、听着指令、输出动作端到端地解决感知到控制的问题。但我实际跑过几条VLA路线之后发现一个特别尴尬的事模型很会“想”却很不会“做”。它能在语言空间里推理得头头是道比如说“先抓杯子再倒水然后把杯子放到托盘”列计划列得清清楚楚。可一旦落到执行层模型输出的一串动作坐标和这个“语言计划”之间总有一道跨不过去的语义鸿沟——语言推理是正向的、离散的、抽象级别的而动作控制是连续的、实时的、精确到关节角度级别的两者之间的对应关系往往要靠人工设计或碰运气。我后来接触到一个思路叫ACoT-VLA它的核心主张就是一句话让机器人在动作空间里思考。所谓ACoT就是Action Chain-of-Thought动作思维链。它把大语言模型里那套CoT链式思考的机制整个搬进了机器人动作生成过程里但搬进去的不是文字推理而是动作序列本身——也就是说机器人不再先用语言“想好了再做”而是直接用一连串中间动作去“边做边想”。这个概念听起来不算复杂但真正要把“动作空间中的思考”落地成可以训练、可以推理、可以在真机上跑的完整系统中间有不少值得展开的细节。我花了不少时间把这套方案从头到尾梳理了一遍也复现过一个简化版本下面把整个思路、架构、实操路径和踩过的坑都整理出来。1. 项目要解决的问题为什么“会想”的机器人不一定会做1.1 传统VLA模型的通病语言推理和动作执行“两张皮”先说说传统的VLA模型到底是怎么工作的。拿典型的VLA架构举例输入是一张或多张RGB图像加上一段自然语言指令模型内部用视觉编码器提取图像特征用语言编码器提取指令特征然后把这些特征融合起来喂给一个自回归的动作解码器最后每个时间步输出一个动作token这个token经过反量化之后变成机器人真实执行的目标姿态或关节角度。这个流程看起来没什么问题但真正让模型“会做”的关键在于那个动作解码器输出的动作序列是否真的和语言指令的含义对齐了。早期VLA模型的一个常见做法是在生成最终动作之前先让模型输出一段“文本推理”类似“我看到了桌子上的红色杯子它离机械臂大约30厘米我应该先向下移动再闭合夹爪”——然后再依据这段文本预测动作。这种方案在公开的模拟任务中表现尚可因为模拟环境的状态比较干净文本推理和动作之间的对应关系相对容易学习。但到了真实场景这种“先语言推理、后动作生成”的两段式结构就会暴露出三个典型问题。第一个问题推理媒介和执行媒介不一致。语言空间是离散的、符号化的一句话最多几十个字它能承载的信息粒度非常粗——你不会在一段文字推理里写出“关节5的角度从37.2度调整到41.8度”这种级别的细节但真实执行恰恰需要这个级别的精度。所以语言推理产生的“抽象计划”最多只能给你一个高层指导具体到每个控制周期的动作还得另算中间断层很严重。第二个问题长任务下的误差累积。语言推理一般只管到“步骤”级别比如“第一步抓杯子第二步倒水第三步放托盘”每个步骤内部的动作路径模型仍然要自己脑补。步骤越多每个步骤里的动作误差就往下一步传最后整个序列的执行成功率会随着步骤数指数级下降。我在模拟环境里测过3步任务成功率大概85%加到6步之后直接掉到40%出头很多时候机器人做着做着就忘了自己在哪一步动作开始漂。第三个问题推理和动作在注意力机制上的竞争。自回归模型每个时间步的注意力窗口是有限的如果你在序列前面放了一大段文本推理后面真正生成动作的时候模型的一部分注意力还要回头去关注那些文字token这其实是在跟动作token抢计算资源。我试过给一个VLA模型加“文本推理”前缀同样参数量的情况下加了推理分支的模型在动作预测精度上不升反降——不是说CoT本身不好而是“文本推理”和“动作执行”被生硬地拼在一起彼此并不协同。1.2 ACoT的思路转变把推理直接变成动作序列ACoT-VLA的出发点很简单既然文本推理和动作执行之间有这么大的缝隙那干脆不要把推理当作“中间产物”了而是把“推理过程”本身就定义为一系列动作。打个比方人做菜的时候不会先在脑子里用文字编排一遍“我左手握住锅柄右手拿铲子手腕旋转15度”再动手。人的实际操作是手直接伸向锅柄握住感觉重量调整姿态然后自然地开始翻炒——这一整套连续的调整动作本身就是思考过程动作走完了事也就做完了。ACoT借鉴的就是这个逻辑它把模型需要在推理过程中“想清楚”的那些中间状态全部表示为一系列可执行的动作让模型在生成动作序列时完成推理走一步看一步边做边想。具体到实现上ACoT-VLA在训练时不再要求模型先输出文本推理再输出动作而是要求模型输出一段“动作思维链”从初始状态出发先生成一个中间动作比如机械臂移动到目标物体附近、调整末端姿态、张开夹爪再生成下一个中间动作靠近物体、闭合夹爪如此滚动直到最终动作输出。这一整段中间动作序列是推理过程的载体也是最终目标动作的铺垫——模型在做预测的时候它的自回归目标里天然包含了对“下一步动作是否合理、是否朝目标推进”的考量推理和动作生成合二为一了。这个转变带来的第一个直接好处是信息密度大幅提升。一个动作token虽然简单但它包含的数值得分、空间位置、姿态信息比一个文字token的实际语义要丰富得多。用动作链去连接“看见”和“做到”等于把推理过程从语言空间里的“大概方向”变成了动作空间里的“精确路径”中间的信息损失小了一个量级。第二个好处是推理成本和执行成本同构。以前“想”和“做”是两套系统现在“想”的过程本身就是“做”的过程模型生成的每一个中间动作都可以直接下发到控制器执行不用再做一次从语言到动作的翻译。这对真机部署特别友好因为只要模型推理速度跟得上它推出来的每一步都是实际可执行的机器人可以在推理的同时就开始动作而不是等全部想完了再一次性执行——这在动态环境里尤为重要。当然这个思路也带来了新的挑战。既然推理过程变成动作链那动作链的长度怎么控制中间动作的粒度怎么定义如何保证中间动作每一步都真实可执行而不是模型“凭空造”出来的虚拟姿态这些都是在复现过程中反复折磨人的问题后面我会详细展开。2. ACoT-VLA的技术方案拆解2.1 整体架构视觉编码、语言理解、动作生成的三层结构ACoT-VLA的模型架构从宏观上看跟普通VLA没有本质区别依然是三个核心子模块视觉编码器、语言编码器、动作解码器。它的创新点集中在动作解码器如何组织自回归推理。我的复现版本大概是这样搭的视觉编码器用的是预训练好的图像backbone输入是机械臂第一视角或固定第三方视角的RGB图像统一resize到224x224输出图像token序列。这里有个细节值得说很多VLA方案会额外叠加一个深度通道或者输入机械臂当前的关节角度作为“本体感觉”特征。我在实验里对比过加了关节角度反馈之后动作预测的连续性明显更好因为模型能感知到“我现在的手在哪个位置”而不是单纯靠画面瞎猜。这个本体感觉输入对ACoT尤其重要——动作思维链要衔接前后动作必须知道当前的姿态不然第一步和第二步之间的动作转变会很突兀。语言编码器用的是文本编码器接收任务指令比如“把红色杯子从桌面搬到托盘里”。它输出的指令特征会和视觉特征做跨模态融合。融合方式我用的比较简单就是交叉注意力让视觉token在自回归生成动作时能够同时查询指令特征。动作解码器是整条链路里最关键的部分。在普通VLA里解码器每个时间步输出一个动作token就完事了而在ACoT-VLA里解码器的自回归过程被设计成两段式第一段生成“动作思维链”token第二段生成“最终动作”token。两段token在格式上是完全一致的都是动作空间的离散token区别只在于——思维链段落的每一步都是真实可执行的中间动作而最终动作是整个任务序列里对应的控制目标。为了区分这两段我还在训练时给动作token加了一个“阶段标签”属于思维链阶段的动作token和属于最终输出阶段的动作token在训练时用不同的loss权重。这个设计在后面讲训练细节时会再展开。2.2 动作空间中的链式思考机制要理解“动作空间中的思考”到底是怎么回事得先理解机器人动作空间的抽象概念。一个六自由度机械臂每个关节有一个角度范围六个关节的角度组合起来就构成了一个六维空间——这个空间里任何一个点都对应机械臂的一个确定姿态。所谓“在动作空间里思考”是指模型不是在生成文字符号序列而是在这个多维空间中逐步移动。它每生成一个动作token就相当于在动作空间里往外走了一步一连串token连起来就在动作空间里画出一条从初始姿态通向最终姿态的轨迹。ACoT的核心机制是让模型在这条轨迹的“中间段”也承担起推理职责。模型在生成第k个动作token时它不仅要看当前图像特征和指令特征还会回头看自己已经生成的前面那几步动作token——这个“回看”就是链式思考的本质。它的每一步动作都建立在上一步动作的基础上像下棋时的多步推演每走一步都逼自己想一想“这一步之后下一步应该落在哪里”。为了让这种链式推理真正发生而不是变成简单的轨迹模仿我做了三个关键设计。第一个是动作tokenizer的粒度控制。动作空间是连续的直接让模型回归连续数值很难通常的做法是做量化。我用了类似VQ-VAE的思路把机械臂末端的6D位姿位置加姿态或7自由度关节角映射到离散的codebook里。这个codebook里的每个码字就代表一个“动作原语”粒度不能太粗也不能太细。太粗了模型只能生成大幅度动作思维链每一步之间跳变很大会显得很“机械”太细了动作链会变成一条几乎连续的轨迹推理的“步骤感”就消失了。我试了多个码本尺寸最后觉得把末端轨迹的位移分到256个bin左右姿态分到64个bin左右效果比较均衡——中间动作在视觉上能看出清晰的阶段切换同时每一步又能平滑衔接。第二个是思维链长度的动态分配。任务简单比如“抓取物体”思维链不需要太长三四步中间动作足够任务复杂比如“把杯子从桌上拿起、倒掉里面的水、放到托盘里”思维链可能需要十几步。固定长度会浪费或不够用所以我采用了一个“阶段截止”机制模型在生成思维链token时除了动作token还可以生成一个特殊的EOCEnd-of-Chaintoken当这个token被输出时模型就结束思维链阶段进入最终动作输出阶段。这个token相当于在告诉模型“推理够了该执行了”训练时模型要学会自行判断何时该结束推理——这个设计与LLM里让模型自己决定回答多长是一个道理。第三个是对前后动作一致性做显式监督。单纯让模型自回归生成一串动作很容易出现“前后动作矛盾”的情况比如思维链第一步走到物体左侧第二步却跳到物体右侧。为了压住这种矛盾我训练时在思维链token之间额外加了一项一致性正则相邻两个动作token在动作空间中的欧氏距离不能超过某个阈值。超过的就往小了拉惩罚loss。这个约束的本质是告诉模型思维链的每一步都应该在物理上可连续执行的范围内不能天马行空。2.3 训练目标中间动作与最终目标的联合优化训练目标这一节我直接给个简洁的公式描述吧。整个模型的loss由三部分组成第一思维链阶段的动作预测loss。每一个思维链动作token都和真实标注的中间动作计算交叉熵。这部分loss是训练模型“学会推理”的主要驱动力——它逼着模型在每个中间点上输出准确的、可执行的动作而不是随便过渡一下就行。第二最终动作阶段的动作预测loss。这部分跟普通VLA模型的loss完全一样计算最终输出token和真实目标动作的交叉熵。它保证模型在完成思维链之后能收敛到正确的最终姿态。第三一致性正则loss。也就是前面提到的相邻动作token之间的距离约束它的权重我一般设在总loss的0.1到0.2倍之间。太小了起不到约束作用太大了会让动作链变得过于“平滑”反而损失了推理阶段的语义跳变能力——这个平衡点需要自己调不同任务最优值不一样。还有一个训练上的trick两段loss的权重不是固定的而是随着训练轮次动态调整。前期让最终动作loss占主导保证模型先把“视觉-语言-动作”的映射学对中期逐渐提高思维链动作loss的权重让模型精细打磨中间动作的准确性后期再加入一致性正则把整条链路修顺。这种课程式的训练策略比上来就同时优化三个目标要稳定得多。我试过把三个loss从一开始就全部等权打开结果训练了大概几千步之后loss发散了——模型在试图同时满足“中间动作准确”和“最终动作准确”的时候互相拉扯更新方向打架。后来改成阶梯式权重才稳定下来。3. 从零复现ACoT-VLA的实操路径3.1 环境与硬件准备先说明一下我用来复现的硬件条件方便你评估自己能不能跑一块显存不低于24GB的GPU跑训练推理一台六自由度机械臂带力传感或视觉相机做真机验证相机用常规的RGB工业相机就够了。如果手头没有真机用仿真器也能完成大部分实验只是最后一步真机部署需要额外适配。软件环境我用的是目前比较主流的深度学习框架和机器人仿真组件。核心依赖包括PyTorch、HuggingFace Transformers的基础组件、用于机械臂控制的ROS 2接口以及一个开源的机器人仿真环境。这里不展开装包细节但建议用conda单独建一个虚拟环境避免跟其他项目互相污染——我吃过这个亏一次为了更新依赖把整个环境搞崩溃了浪费了整整一天。数据采集这一环我用的是动觉示教加上远程操作结合的方式。动觉示教就是人工拖着机械臂按期望轨迹走一遍软件记录下每个时间戳的关节角度和末端位姿这种方式采集轨迹质量高但采集效率低一条多步任务轨迹要重复演示好几遍。远程操作相对快一些但噪音更大。我的做法是先用远程操作快速采集一批低质量数据再挑其中关键的任务用动觉示教精采一遍两种数据混合使用。3.2 数据集构建与标注动作思维链标注是关键普通VLA数据集的标注只需要三样东西图像、指令、目标动作。但ACoT-VLA还需要一样额外的东西——中间动作链的标注。怎么给“中间动作”做标注呢我最初也犯难后来是这么处理的每条演示轨迹按时间切段把完整的任务轨迹切成几个语义阶段每个阶段的目标点作为思维链的“中间节点”。比如“拿起杯子放到托盘”这个任务我先在轨迹上手动标出四个关键帧第一帧是机械臂末端移动到杯子正上方20厘米处的位置第二帧是末端下降到抓取高度第三帧是闭合夹爪后把杯子抬起来第四帧是移动到托盘上方最后一帧是松开夹爪完成放置。这五个节点对应的末端位姿就构成了这条演示轨迹的“动作思维链标注”。每个节点之间的轨迹训练时不需要模型一步不差地复现只要求模型能从当前节点平滑地推进到下一节点。这个标注策略的好处是大大降低了手工标注的负担——你不需要给每个控制周期都打标签只需要标出关键转折点。为了提升标注效率我还写了个半自动标注脚本先用一个简单的运动规划器自动切分出轨迹的候选关键帧然后人眼检查一遍做微调。一条两分钟的任务轨迹大概十几分钟能完成标注效率可以接受。数据集整体规模方面我用了约5000条演示轨迹其中3000条带完整动作链标注2000条只带最终目标动作标注用于预训练阶段两者分开使用。3.3 模型训练的关键参数设置训练阶段我分成两步走跟前面讲的目标设计是一致的。第一步是VLA基础能力预训练。用那2000条不带动作链标注的数据训练模型学会基础的“图像指令→动作”映射。这一阶段我用较大的学习率1e-4批量大小设成32训练大概20个epoch。这一阶段结束后模型已经能完成基本的抓取、搬运动作但还没有展现出“长程推理”能力。第二步是ACoT微调。用带动作链标注的3000条数据加载预训练权重之后进行微调。学习率降到5e-5批量大小减半到16训练15个epoch。这个阶段才真正开始让模型建立“动作思维链”的预测模式——因为标注数据里同时包含中间动作节点和最终目标模型会被反复训练成“先生成中间动作、再生成最终动作”的序列模式。损失权重的阶梯式切换我大概是这样安排的前三轮训练让最终动作loss主导权重0.6中间动作loss权重0.4第4轮到第10轮两边权重各0.5第10轮之后引入一致性正则三个部分的权重设为0.4、0.4、0.2。这个区间可以根据实际效果微调。训练过程中的一个关键监控指标是“动作思维链的完成率”——也就是模型生成的思维链是否能在EOC token出现之前成功覆盖所有关键中间节点。我在验证集上追踪这个指标它的增长曲线比最终动作准确率更能反映模型是否真正学会了“在动作空间中推理”。如果这个指标涨得很慢基本可以断定是数据标注质量问题而不是模型容量问题。3.4 真机部署与推理效率优化模型训练完之后拿到真机上跑又是另一个世界。第一个挑战就是推理速度。自回归生成动作token每一步都需要一次前向推理而机械臂控制频率哪怕只有10Hz也要求整个“图像输入→动作输出”的单步推理控制在100毫秒以内。普通的VLA模型用一张24GB显卡跑单步推理大约需要200到300毫秒直接超标。我的优化方案有三个组合拳。第一图像编码器的特征缓存。任务执行过程中如果机械臂位置变化不大画面内容的变化对运动目标影响不显著时可以每隔几帧才重新提取视觉特征中间帧直接复用上一帧的特征。这类近似的代价是模型对快速移动物体的感知会滞后但在桌面抓取这类低速任务里完全够用。第二KV-Cache复用。动作解码器在自回归生成思维链和最终动作时前面已经算过的注意力键值可以缓存起来后面每步只需要算新的token。这一点跟LLM推理优化是同一个套路效果直接且代码改动不大。第三动作token并行化采样。当思维链长度比较长的时候可以把它拆成两段前一半和后一半如果任务不需要前后严格依赖并行预测能省将近一半的推理时间。但这里要小心不是所有任务都适合并行——步骤之间有严格顺序依赖时并行会导致动作错乱所以我在程序里加了一个开关默认关闭只在特定任务上打开。部署时还做了一层动作平滑模型输出的动作token反量化之后先过一个低通滤波器再下发到控制器这样可以大幅减少机械臂的抖动。这个细节在仿真里完全不需要但真机上没有它机械臂会频繁抖动甚至触发安全急停。4. 训练和部署中踩过的坑4.1 数据层面的坑数据标注是我整个复现过程里最耗时、也最容易出问题的环节总结下来有三个坑值得重点说。第一个坑动作链的“粒度不一致”。不同标注员对“中间节点”的切分标准不同有人习惯每0.5秒标一个节点导致一条轨迹标出几十个节点有人习惯只标语义转折点一条轨迹只有三四个节点。这两种标注风格训练出来的模型行为差异非常大——节点过多的模型倾向于输出高频的微小动作看起来像抖动节点过少的模型输出大跨度的跳跃动作在真机上执行时会出现明显的不平滑。我最后通过一个预处理脚本把所有标注统一到“每个节点之间的末端位移不少于5厘米”的标准上低于这个阈值的中间节点会被合并掉之后模型的行为才稳定下来。第二个坑标注数据里的“不可达中间节点”。有些中间节点是从真实轨迹里切出来的但切出来的姿态在机械臂运动学上就是没法从上一个节点直接到达的——比如上一个节点在物体左上方下一个节点直接跳到右下方中间隔着一个障碍物。模型被迫模仿这种物理上不可能的动作链训练时loss居高不下推理出来的动作链也经常自相矛盾。解决办法是要在标注后做一个运动学可行性校验用正运动学逆解检查每个相邻节点之间是否存在合法路径不合格的轨迹直接丢弃或手动修正。第三个坑时间对齐问题。图像和关节角度记录频率如果不一致相机30Hz关节角度100Hz数据对齐就会出偏差。我用的是ROS 2的消息同步机制按时间戳最近邻对齐同时丢弃时间戳差距超过50毫秒的样本。这个不处理好的话模型会学到“图像和动作错位”的错误映射怎么调参都救不回来。4.2 模型层面的坑模型训练中遇到过两个比较棘手的问题都是ACoT架构特有的。第一个是“动作链的累积漂移”。模型在推理时是一步一步生成动作token的每一步的误差虽然不大但经过十几步累积之后中间动作链会逐渐偏离正常路径甚至出现机械臂越走越远、最后没法收敛到目标的情况。这在训练初期尤其明显一度让我怀疑是不是模型容量不够。后来排查下来问题出在两个地方一是中间动作的loss权重在前几轮太低模型根本还没学会把中间动作做准二是缺少对“全局方向”的监督——每一步动作只跟相邻动作做了一致性约束却没有跟最终目标做方向约束。我加了一项“方向引导loss”把每个中间节点到最终目标的方向余弦相似度也加入计算漂移问题明显缓解。第二个是“思维链长度失控”。我前面提到用EOC token让模型自己决定何时结束推理但训练初期模型经常会滥用EOC——有的任务简单它走了一步就急着结束导致中间动作链太短推理不足有的任务复杂它迟迟不输出EOC导致动作序列无限延长推理时计算量暴增甚至超过显存。解决方式是给EOC token的出现位置设定一个约束范围训练时如果EOC出现在过早或过晚的位置就对那个时间步的loss乘以一个惩罚系数。这样模型会学到在合理的长度范围内结束推理。4.3 真机层面的坑真机部署跟仿真完全是两回事这里分享两个印象最深的坑。第一个是模型推理的延迟抖动。我预计单步推理优化到80毫秒左右就能满足控制需求但真机上跑的时候发现推理时间不是固定的——图像分辨率大、场景复杂时前向计算时间会波动到130毫秒甚至更高导致控制周期不稳定机械臂动作一卡一卡的。后来我把控制架构改成异步模式推理线程持续输出动作目标控制线程按自己的固定频率读取最近的目标并执行。这样即使推理偶发波动控制频率也保持稳定代价是动作目标最多延迟一个周期才生效但在低速抓取任务里完全可以接受。第二个是安全保护机制导致的“误伤”。很多机械臂控制器内置了碰撞检测和力矩限制一旦检测到异常撞击或力矩超限就急停。ACoT模型在探索阶段会生成一些“边缘动作”——比如夹爪高度算错了一点、或者移动速度过快在仿真里这顶多是任务失败在真机上直接触发急停甚至把夹爪撞坏。我后来在模型输出的末端位姿上加了一个安全约束层任何位姿如果超出预先设定的工作区间或者与工作台面的距离小于安全阈值就自动被截断到最近的安全位姿。这个约束层是在模型之外加的一层硬保护不参与网络训练只做推理时的后处理非常有效。5. 常见问题速查与避坑清单5.1 常见问题速查表下面把我在复现和部署ACoT-VLA过程中遇到的常见问题整理成一个速查表按“问题现象、可能原因、解决手段”三列对应方便你直接对号入座。问题现象可能原因解决手段训练时loss不降动作链标注粒度不一致统一中间节点间距标准合并过密节点中间动作链前后矛盾缺少相邻动作一致性约束加入相邻动作欧氏距离正则动作链逐渐漂移、偏离目标缺少方向引导监督加入中间节点到最终目标的方向余弦loss推理时EOC过早出现简单任务推理不足对过早EOC时间步施加惩罚系数推理时EOC过晚、序列过长模型不知道何时结束约束EOC位置范围超长则截断真机执行时机械臂抖动动作token反量化后不平滑加低通滤波器平滑动作指令真机执行时偶发卡顿推理延迟抖动改成异步推理与控制线程真机边缘动作触发急停模型生成的姿态超出安全范围加模型外后处理安全约束层模型在仿真中效果好但真机差sim-to-real gap增加本体感觉输入、添加随机扰动训练这张表里有些问题是一次性的解决了就不再犯有些需要持续监控比如推理延迟和动作平滑——因为这些不仅取决于模型本身还取决于当前负载和机械臂的状态。5.2 一些实操心得最后聊几个我个人的实操心得不一定对所有人都适用但是我自己验证过确实好用的。心得一ACoT的价值在小模型上体现得尤其明显。我一开始用的大模型参数量将近几十亿推理速度慢而且模型本身已经具备一部分隐式推理能力ACoT带来的增益没有特别夸张。反而是在参数量几个亿的中小模型上ACoT带来的动作成功率提升非常显著——小模型本身的端到端映射能力偏弱但通过显式的动作思维链监督可以把“逐步逼近目标”的能力直接注入进去相当于把模型不擅长的隐式推理改成了它更擅长的显式序列生成。所以如果你的算力有限ACoT是一个性价比很高的增强方向。心得二数据质量比模型结构更重要。我可以很直接地讲在这个方向上标注好的动作链数据对最终效果的影响超过模型结构设计。如果你只能做一个优化优先把精力花在构建高质量、粒度一致、运动学可行的动作链标注数据集上收益比调任何网络模块都立竿见影。心得三动作空间思考这个概念天然适合那些“任务边界模糊、需要多步试错”的场景。我以前用普通VLA跑“把散落的积木推进框里”这种任务效果一直不好因为最终目标没有一个精确的位姿可以定义——而ACoT的中间动作链反而能给出阶段性的目标比如先把积木推到中间、再转个方向、再推进框。每一步都有一个具体的中间位置可以做监督。如果你手头任务也是这种“目标不是单一姿态、而是过程性”的类型ACoT值得一试。我个人在实际操作中的体会是这套方案并不是要完全抛弃语言空间的推理而是提供了一个重要的互补视角在动作执行这个最需要“想清楚怎么做”的环节与其用抽象文字去指导具体动作不如让动作本身承载推理。我踩过很多次坑才真正理解了这句话的分量——模型生成的动作链能不能稳定地收敛到最终目标本质上是它有没有真的在动作空间里建立起一条从起点到终点的“思考路径”这条路径越清晰机器人就越像一个有经验的执行者。这个内容后续还可以往两个方向扩展一是把动作链跟语言推理做一个混合在抽象计划层和精细执行层各取所长二是给动作链加上“可中断、可纠错”的机制让模型在遇到意外时能重新规划这样真机部署的上限会更高。

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价 →
↑