玩了几天Axis
@axisrobotics 的机械臂任务,我才慢慢摸到一点门道。
一开始真当它是个网页小游戏。鼠标键盘一起上,夹爪歪了就挪,物体滑了就重来。龙虾放盘子、豆腐挪位置,这些看着简单的动作,我经常要折腾五六分钟。有时候屏幕上弹出Task Completed,我还挺高兴,觉得自己贡献了一条“数据”。
后来才发现,事情没这么直接。
完成任务只是第一步。系统会把你的整条操作轨迹重新丢进模拟环境回放,看动作平不平滑、有没有多余停顿、夹爪有没有真正对准、物理状态是否合理。分数不是靠最后成功与否拍脑袋给的,而是整条路径的质量。同一个任务最多做五次,最后取平均。你前面认真做的高分,后面随便糊弄两遍,会被直接拉下来。失败的尝试不上传,成功但乱七八糟的轨迹,却可能留下一个不高的分数。
更细的地方在于,人接管机器人的那几秒,也不是全都能用。
Axis最近那组V2实验挺有意思。他们收了660条人类纠正数据,结果真正进入训练的只有161条。平均每段有效动作大概0.8秒。为什么?因为不是所有干预都有价值。人操作时会犹豫、绕路、甚至多做一些本来没必要的动作。如果把整段轨迹一股脑拿去学,模型反而会变差——原来40%的成功率,掉到了36.7%。反过来,只保留那些真正把机器人从失败边缘救回来的片段,效果就开始往上走,最高测到了52.5%。
这让我想起自己操作时的样子。手残归手残,可当机械臂快要碰歪或者掉落的时候,我下意识的那两三个调整,可能比前面慢悠悠的完美示范更有用 🤔
再往上看他们最近的工程更新,感觉更对味了。
browser前端、policy server和物理引擎之间的replay路径,之前一直有裂缝。策略在仿真里跑通了,一到浏览器重放就对不上;人类纠正的轨迹看着漂亮,拿去训练成功率却掉。根因往往不是模型本身,而是运行时不同步、场景加载时序有差、空闲时引擎还在空转。这些mismatch不修,灌再多数据都是在给噪声加权重。他们这周把这些补上了——进度条、加速加载、空闲自动暂停、运行时对齐。听起来很技术,但对整个数据飞轮来说,几乎是基础中的基础。
TaskGen也在拉开覆盖。铰接物体家族进了生成路径,RoboCasa全场景以50×50的布局和风格网格上线。厨房任务不再是从少数几个手挑房间里采样,而是能从更真实、更多样的几何和视觉分布里直接抽。多样性不是事后增强出来的,是生成时就内嵌进去的。
公开的结果也不含糊。Dataset V1拿去继续预训练π0.5,LIBERO-Plus上的成功率从83.9%提到了88.8%。数据量从25%用到100%,表现还在持续往上走,没有明显饱和。论文、数据集、代码都开了,别人可以验证。
说到底,机器人时代真正难复制的,可能不是更灵活的机械臂,也不是更快的芯片。硬件可以流水线复制,芯片明年就会更强。可是要让机器在真实世界里真正“会做事”,需要的是海量、干净、可验证的操作经验。这些经验不是实验室多跑几轮仿真就能轻松堆出来的。
Axis做的事情很直白:把训练机器人这件事,拆成普通人也能参与的网页任务。每一次操作、每一次试错,经过验证和清洗后,变成可以喂给模型的动作数据。链上再签个名,记录这条数据是谁贡献的、对应哪项任务。
数据飞轮能不能转起来,关键不在谁收集得多,而在管道是否干净、筛选是否诚实、贡献是否真的被系统吃进去了。很多人还在比场景炫不炫、数量大不大,他们这周在做的,是把那些不起眼的裂缝一点点缝上。
先把基础修干净,再谈compounding。这个顺序,比听起来更重要。
一起来嘴吧❤:
@axisrobotics @KaitoAI
#
AxisRobotics# #
PhysicalAI# #
KaitoAi#