WALL-OSS与QwenVL 2.5的深度耦合:如何通过VL FFN与Action FNN实现具身智能的离散与连续动作协同
1. 从“看”和“说”到“做”:具身智能的核心挑战
大家好,我是老张,在AI和机器人这块摸爬滚打了十来年。最近,具身智能这个领域真是火得不行,简单说,就是让AI模型不仅能看懂图像、听懂人话,还能控制实体(比如机器人手臂)去完成物理世界的任务。听起来很酷,对吧?但实际操作起来,难度系数直接拉满。
想象一下,你让一个家用机器人“把餐桌收拾干净”。一个普通人完成这个任务,需要先“看”(识别碗碟、剩菜、抹布)、“想”(规划步骤:先收碗,再擦桌子)、“做”(控制手臂以合适的力度和轨迹拿起碗,走到水池边)。对于现有的AI模型来说,“看”和“想”(视觉-语言理解)可能已经不错了,但一到“做”这个环节,就很容易掉链子。这背后是几道巨大的鸿沟:模态鸿沟、数据鸿沟和目标鸿沟。
视觉和语言信息本质上是高度压缩和离散的(一张图片被编码成一系列特征,一句话被拆分成单词token),而机器人的动作是连续、高频、高维的信号(比如机械臂每个关节在每一毫秒的角度和速度)。这就好比让一个习惯了处理文字和图片的编辑,突然要去操作一台精密的数控机床,工具和语言完全不对等。更麻烦的是,互联网上有海量的图文数据来训练“看”和“说”的能力,但机器人执行任务的具体动作数据却非常稀缺、昂贵,而且五花八门。
过去,大家想了不少办法。一种思路是“打补丁”:在一个训练好的视觉-语言大模型(VLM)后面,直接接上一个“动作头”,用机器人数据去微调,希望模型能学会输出动作。但实测下来,这往往会导致“灾难性遗忘”——模型为了学会新动作,把原来优秀的图文理解能力给忘得差不多了。另一种思路是“分而治之”:让VLM专门负责理解和规划,输出一个高级指令(比如“移动到杯子处”),再交给一个独立的、专门训练的动作控制器去执行。这种流水线设计的问题在于误差会累积,而且两个模块之间沟通不畅,VLM可能规划出一个动作控制器根本实现不了的动作。
所以,核心问题就变成了:如何让一个模型既保有强大的世界知识(视觉-语言先验),又能精准地输出复杂的物理动作,并且两者还要深度绑定,确保机器人严格听从你的语言指令? 最近,自变量机器人(X SQUARE)开源的 WALL-OSS 模型,联合 QwenVL 2.5 这个强大的视觉语言模型,提出了一套让我眼前一亮的解决方案。它没有在“打补丁”或“分家”里二选一,而是玩了一手更高级的“融合术”。
2. WALL-OSS的核心设计:VL FFN与Action FNN的“黄金搭档”
WALL-OSS模型架构的精髓,在于它引入了一个 紧密耦合的混合专家(MoE) 设计。别被“混合专家”这个词吓到,你可以把它理解为一个公司里的两个王牌团队:视觉-语言专家团队(VL FFN) 和 动作专家团队(Action FNN)。他们共享公司最核心的“认知中枢”(也就是模型中的注意力机制),这个中枢负责处理输入的图像和文本,提取出最关键的信息。
当任务需要理解和推理时——比如模型需要回答“桌子上红色的物体是什么?”或者进行思维链推理“要擦桌子,得先找到抹布”——就主要由 VL FFN 这位专家来工作。它擅长处理离散的符号信息,比如文本单词、图像标签,以及,关键来了,离散化的动作token。
等等,动作不是连续的吗?怎么又有离散token?这就是一个很妙的桥接设计。WALL-OSS借鉴了之前一些工作(比如FAST分词器),将一段连续的动作轨迹(比如机械手从A点平滑移动到B点),压缩编码成一系列有意义的离散符号,就像把一段旋律转换成乐谱。在训练的初期阶段,模型的一个学习目标就是预测这些“动作乐谱”的下一个音符。这让VL FFN在精通图文的同时,也初步建立了对“动作语义”的感知,知道“拿起”、“旋转”、“松开”这些词对应着什么样的动作模式。
而当任务需要生成最终驱动机器人的、毫秒级精度的 连续动作 时,就轮到 Action FNN 这位专家大显身手了。它接收来自共享认知中枢的信息,但内部是专门为建模连续信号而优化的网络结构。它不输出离散的符号,而是直接输出一条平滑、精确的动作轨迹。这里,WALL-OSS采用了 流匹配(Flow Matching) 这种先进的生成模型技术来训练Action FNN,非常适合对连续分布进行建模。
那么,两位专家如何无缝协作,而不是各自为政呢?关键在于 静态路由。这不是一个需要学习的、复杂的开关,而是一个设计好的固定规则。模型根据当前训练阶段和任务目标,确定性地将信息流导向对应的专家。比如,在学习预测离散动作token的阶段,信息就固定流向VL FFN;在学习生成连续动作的阶段,信息就固定流向Action FNN。这种设计确保了专家们能专注深化自己的领域技能,同时又能通过共享的注意力机制进行深度沟通,实现了 紧耦合。这比之前那些让VLM和动作模块松散通信的方案,在“听指挥”这方面要强得多。
2.1 为什么是QwenVL 2.5?
你可能会问,为什么选QwenVL 2.5作为骨干网络?在我实际对比测试过几个开源VLM之后,我觉得这个选择很务实。QwenVL 2.5在3B这个参数量级上,在通用视觉-语言任务上表现出了非常好的均衡性:识图准确、语义理解到位、推理能力也不错。对于具身智能来说,一个轻量但能力扎实的VLM主干至关重要,因为我们要在上面添加复杂的动作模块,模型不能太大,否则实时控制就谈不上了;但基础能力又不能弱,否则就是“巧妇难为无米之炊”。
WALL-OSS等于是给QwenVL 2.5这位“文科高材生”进行了全方位的“工科特训”,既保留了它博览群书(互联网图文)得来的广博知识,又让它深入车间(机器人数据)练就了一身硬功夫,最终目标是成为一个“文武双全”的工程师。
3. 两阶段训练策略:先“启蒙”,后“精修”
光有好的架构还不够,训练方法不对,照样白搭。WALL-OSS采用了一个非常符合学习规律的 两阶段课程学习 策略,我称之为 “先启蒙,后精修”。这个策略完美对应了其双专家架构。
3.1 第一阶段:启发阶段——注入动作“语感”
这个阶段的目标,是给原本只懂图文和离散token的VL FFN专家“启蒙”,让它对动作产生基本的“语感”。训练数据除了常规的图文对,重点加入了两种特殊数据:
- 具身视觉问答(VQA)数据:比如给一张机器人第一视角的杂乱桌子图片,问“抹布在哪个位置?”或者“要拿起杯子,应该先移开哪个障碍物?”。这专门锻炼模型在机器人视角下的空间推理和场景理解能力,补足了通用VLM在特定视角(如鱼眼、遮挡严重)下的短板。
- 离散动作token数据:使用FAST等方法,将真实的机器人动作轨迹转化为离散序列。让模型学习在给定视觉和指令输入下,预测这些动作token。
这个阶段,Action FNN专家基本处于“旁观”状态,主要训练VL FFN。训练完成后,这个模型已经能做得不错了:你给它一个指令“把门打开”,它能进行思维链推理(“我需要先走到门前,然后握住门把手,最后拉动”),并能输出对应的、粗略的离散动作步骤。这就像一个人学会了关于“开门”的详细文字说明书和示意图,但还没实际动手操作过。
3.2 第二阶段:集成阶段——修炼动作“手感”
“启蒙”之后,就要“精修”了。这个阶段的目标是让模型获得输出精确、平滑、可直接执行的 连续动作 的能力。此时,Action FNN专家正式登场。
这个阶段又细分为两步,非常讲究:
- 第一步:冻结VL FFN,只练Action FNN。 此时,共享的注意力机制和VL FFN的参数全部锁定,只训练Action FNN和它顶端的流匹配头。训练目标是用流匹配技术,学习如何将简单的噪声分布,“塑造”成我们想要的复杂动作轨迹分布。为什么先冻结?就是为了防止动作训练的巨大梯度“冲垮”上一阶段好不容易建立起来的视觉-语言先验。这就像让动作专家先在一个稳定的知识框架(VL专家已搭建好)下,专心练习自己的“手感”。
- 第二步:联合微调,深度耦合。 当Action FNN初步掌握动作生成技巧后,就解锁VL FFN的参数,让两位专家一起进行联合训练。这时,视觉、语言和动作信号在共享的注意力层里进行更深层次的交融。VL FFN提供的丰富语义信息,能指导Action FNN生成更符合指令意图的动作;而Action FNN反馈的动作需求,也能让VL FFN的理解更贴近物理执行的实际约束。通过这种联合优化,模型最终实现了从高层指令到低层连续动作的 端到端精准映射。
我特别喜欢这个训练策略,因为它非常“人性化”,循序渐进,有效避免了灾难性遗忘,让模型稳健地从一个学者成长为一位匠人。
4. Uni-CoT:统一思维链,打通任督二脉
WALL-OSS还有一个核心贡献,是提出了 Uni-CoT(统一思维链) 的概念。这可不是简单地把大语言模型里那种文字推理链搬过来,而是进行了一次重要的 泛化。
传统的CoT是“文本→文本”的推理。而Uni-CoT定义了一个从最高层抽象到最底层执行的完整谱系: 高层指令 → 思维链推理(文本) → 子任务规划(文本) → 连续动作轨迹(数值)
关键在于,WALL-OSS用一个 单一的、可微分的模型 来学习这个谱系中任意两级之间的映射。它可以根据需要,进行完整的“指令→推理→子任务→动作”映射,也可以跳过中间步骤,直接进行“指令→动作”的映射。甚至在推理时,它可以“边想边做”:先推理并执行前几个子任务的动作,然后根据执行后的新观察(新的图像输入),继续推理后面的步骤。
这种设计带来了巨大优势:
- 消除误差累积:传统流水线方法,规划器出错,控制器再厉害也没用。Uni-CoT端到端训练,中间表示都是可微分的,误差可以反向传播调整,整体更鲁棒。
- 灵活性极高:对于简单任务(比如“向左转”),模型可以直接输出动作;对于复杂任务(比如“做一顿番茄炒蛋”),模型可以自动展开详细推理和规划。这适应了真实场景中任务难度的多样性。
- 进度感知能力强:因为模型始终以当前视觉观察为条件,它能知道自己执行到哪一步了,下一步该做什么,这在长时序任务中至关重要。
我举个实际场景的例子。让模型执行“把电池放进充电座”。一个传统流水线模型可能规划出“1.定位电池;2.抓起电池;3.定位充电座;4.放入”。但如果第3步因为遮挡没找到充电座,流程就卡死了。而具备Uni-CoT能力的WALL-OSS模型,在“抓起电池”这个动作执行后,会获得新的视觉输入(手里拿着电池的视角),然后基于此重新进行推理:“我现在手里有电池,我需要寻找充电座。哦,它在桌子边缘。”然后直接输出将电池移向充电座的动作。这种动态调整的能力,是智能体走向实用的关键。
5. 实战展望与个人思考
聊了这么多原理,最后说说我的实际看法和可能的应用场景。WALL-OSS这套架构和训练思路,确实为VLM与机器人控制的深度结合提供了一个非常扎实的范本。它不是暴力堆数据,而是在结构设计和学习路径上做了大量精巧的思考。
在实际部署中,我觉得有几点值得开发者注意:
- 数据仍是关键:虽然WALL-OSS通过两阶段训练和具身VQA数据缓解了数据稀缺问题,但高质量、多样化的机器人动作轨迹数据仍然是提升性能的基石。如何高效地收集、清洗、标注这些数据,是工程上的主要挑战。
- 对计算资源的要求:两阶段训练,尤其是集成阶段的流匹配训练和联合微调,对算力有不低的要求。不过好在推理阶段,模型可以根据任务复杂度选择路径,对于简单指令可以走轻量路径,有利于实时控制。
- 泛化到新形态:论文中提到其设计有利于跨不同机器人形态(如双足、轮式、机械臂)的泛化。这非常吸引人,但实际效果还需要在更多样化的机器人平台上进行验证。我司正在探索的轮式人形在自动充电场景的应用,就非常适合用这类模型来尝试。
从我过去踩过的坑来看,把AI模型从数字世界拉进物理世界,最大的难点就是“不确定性”。仿真环境再逼真,也和真实世界有差距。WALL-OSS通过紧耦合的架构和Uni-CoT设计,让模型的基础理解能力和动作生成能力深度绑定,并且具备基于实时观察的动态推理能力,这无疑是朝着应对“不确定性”迈出的坚实一步。
它不再只是一个“看图说话”的模型,也不是一个“盲动”的控制器,而是一个真正开始具备“眼、脑、手”协同能力的具身智能体雏形。对于从事机器人、自动驾驶(可视为一种特殊形态的具身智能)研发的朋友来说,这套开源方案非常值得深入研究和尝试。至少,它给我们提供了一个清晰的技术路标,告诉我们如何将强大的大模型能力,更优雅、更有效地注入到物理世界的执行终端中去。
更多推荐
所有评论(0)