客户嫌叠餐巾的机器人太慢。Dyna 团队查看运行记录,却发现机器有时连续半小时没有开工。

餐巾用完了,没人及时补上,机器就等在那里。为了不让它停下来,店员在手机里设闹钟,隔半小时到一小时过来看一次。机器人接过了折叠的动作,员工又多了一件需要惦记的事。

这段经历来自张小珺对 Dyna 创始人兼 CEO Lindon Gao 的访谈。让客户不满意的,还不止补料。早期部署时,餐厅要的是五折餐巾,机器只叠四折。折到最后,餐巾已经又厚又小。折过去还得压平,否则会散开。团队和客户商量,先让服务员完成最后一步。客户答应了,实际用起来却觉得浪费时间。

Lindon 说,机器只完成了任务,没有做完整份工作。他因此曾经决定,不继续扩大当时那个还不完整的产品的部署规模。这个决定针对的是早期产品,并不意味着 Dyna 此后停止了商业部署。最近在 Latent Space 接受采访的另一位联合创始人、首席科学家 Jason Ma,讲到的已是模型升级和客户扩展使用的进展。

两期访谈放在一起,值得追的就是中间这段变化。餐厅留下的麻烦,怎样影响一家机器人公司决定下一步做什么?从叠餐巾到洗衣房,Dyna 扩大的不只是机器能做的动作,也包括它答应替客户接走的工作。

为什么选可以返工的活

为什么从折叠开始?Lindon 给出的一个理由很朴素:做错了,可以再叠。

一杯拿铁洒了,损失的是原料,还多了一份清洁工作。餐巾折坏了,摊开重来即可。对一个还在学习的系统,这种容错空间很有价值。他也看重折叠本身的难度:拿 T 恤来说,尺码、款式和面料都会变化,机器不能只记住一套固定动作。

早期客户当然希望机器人少出错,但创业公司也需要一个允许产品在真实使用中变好的地方。既有反复发生的需求,又能承受部分失败,餐巾给了团队这样的机会。

Lindon 回忆,机器人偶尔会一次抓起两张餐巾。按他描述的那个阶段,正常叠一张约二十秒,处理一次双抓却要约两分钟。机器最终恢复了,一天的产出仍会被拖下来。餐厅要的数量不变,团队就得继续缩短处理时间。

叠完之后,怎么放也成了问题。餐巾散乱地落进筐里,不了解情况的人看过来,还以为没折好。团队还得让它按位置整齐码放。原本似乎属于“叠完以后”的琐事,进入现场后,成了产品必须完成的部分。

这些麻烦也改变了研发。抓取、折叠、摆放分别做得不错,不能直接相加成一个好产品。客户的工作从哪里开始、到哪里结束,需要一起考虑。如果只按研究团队划定的任务验收,补料、取走成品所花的人力,就容易被漏算。

Dyna 后来公开介绍 Dyna-2.1 时,也回顾了这个缺口:此前连续叠餐巾的长时间测试,仍需要人补充餐巾、拿走成品。持续做同一个动作,与持续完成客户的工作,中间还有一段距离。

从现场回来,重新决定模型该学什么

Lindon 的部署复盘,给 Jason 谈到的训练路线提供了背景:客户留下的麻烦,正在改变团队对模型的要求。

如果没有前面的客户经历,“需要更多数据”是一句很宽泛的话。到底缺什么?是分不清两张叠在一起的布,还是出了错之后不会尽快恢复?是折叠不够稳,还是不知道成品应该放到哪里?问题不同,研发投入也会不同。

Lindon 说,部署中的问题让他们更清楚预训练需要做什么,后来投入也明显向预训练倾斜。不过,他并没有说所有现场问题都能靠预训练解决;处理抓到两张餐巾的问题时,他提到了用强化学习等方法让模型学会应对。

Jason 介绍的 Dyna-2,使用了超过一百万小时、以第一视角为主的人类视频进行预训练。这里的“一百万小时”指人类活动视频,并不是机器人已经在客户现场独立干活一百万小时。

人做家务、操作工具的视频,比逐项采集机器人的操作示范更容易扩大规模,能够让模型接触更多物体和情境。但人手与机械臂不是一回事。看懂一个人怎样拉开抽屉,并不等于自己的夹爪就能在正确位置施力。

Dyna 所说的世界—动作模型,在训练中学习预测后续画面和机器人动作。公司希望,对画面变化的学习能够帮助模型掌握物体的运动规律,再改善操作。这不要求机器人每次行动前都先生成一段未来视频;技术报告用于研究规模规律的版本,实际推理时就没有这样做。

到了具体任务,仍然需要示范和适配。主持人在节目中提到,切菜任务用了约四十五分钟示范数据。Jason 的说法是,新任务通常需要几小时数据,有些只要几十分钟。这些是特定任务的例子;教会新工作的成本,仍要看具体条件。

从经营上看,我认为这条路线值得检验的地方,是下一次部署能否少从头教一些东西。去了一家布料不同的餐厅,已有训练能帮上多少忙?遇到一个新错误,修好之后,其他机器能不能也少犯一次?如果大量数据只能换来某个演示更熟练,商业价值仍然有限;如果它能减少每个新现场的调试负担,训练投入才开始与交付联系起来。

硬件也会限制这个过程。Jason 谈到灵巧手的耐用性、发热等问题时,提醒了一个常被视频忽略的条件:机器得能持续运行,团队才有机会持续训练、测试。会不会做,与能做多久,要一起解决。

洗衣房里,下一步未必是继续叠

Dyna-2.1 展示的 Taku 是一个带轮子的机器人,能够弯折身体,伸手够到低处的洗衣机和高处的架子。洗衣房把之前留给人的事情,重新摆到了机器面前:搬运、装卸、折叠、收纳,都得有人做。

难处还在于安排先后顺序。设想桌上有毛巾等着叠,烘干机却刚刚完成一个周期。机器人要不要先停下手头工作?里面是哪一批毛巾,拿出来之后放哪里?它需要记住刚才发生过什么,判断现在应该先处理哪件事。几台设备同时运转,等哪一台、先处理哪一批毛巾,都不能只照着预先排好的动作顺序来。

Dyna 公布的 Taku 洗衣房演示画面:机器人位于折叠台、洗衣设备与置物架之间。

Dyna 官方演示画面,经裁切;不代表客户现场的独立验收。

因此,Dyna-2.1 应该被看作一套系统,不能只理解为模型版本号加了一点。根据公司公开的说明,上面的视觉语言模型负责判断工作进度、安排任务;Dyna-2 负责具体操作;底层的全身控制负责让身体和手臂配合行动。

这种分工在洗衣房里很直观:安排“先去取毛巾”,和把一条柔软的毛巾从滚筒深处拿出来,是两种不同的问题。前者答对了,后者仍可能失败;手臂足够熟练,若总在错误的时间做事,整段工作也不会顺畅。

公司给出了一段持续约一小时的自主洗衣流程演示。取出毛巾、搬到折叠台、收纳上架,原来由人衔接的环节也进入了连续测试。在 9 月的 Dyna-2.1 发布说明里,公司把进入真实客户现场列为下一步目标。

它与二十四小时叠餐巾测的是不同的事:一段覆盖多道工序,一段重复较窄的任务。对于洗衣房的新系统,更有用的后续材料,会是进现场后哪些环节仍要人接手,以及多久发生一次。

员工能不能放心去做别的事

Jason 在节目中说,Dyna 已进入鼎泰丰、Best Western 等客户场景,并谈到客户向更多地点扩展部署。这些属于公司自述。它们还不足以让外部读者算清,客户每班究竟节省多少工时,或者 Dyna 每次交付要付出多少维护成本。

这不妨碍我们辨认产品选择的变化。早期,团队与客户商量把最后一折留给人;后来,团队开始追问为什么补料和收纳仍需要人随时过来。要交付的工作范围扩大了,模型和机器人的形态跟着调整,测试也从反复折叠,扩展到取放、移动和任务切换。

我认同把客户现场作为研究起点,但这条路也有成本。客户提出的每个要求都接下来,团队容易变成随叫随到的工程服务队。餐厅里的一个小麻烦,究竟值得写一段临时处理程序,还是值得投入更通用的模型训练,没有一条口号能替公司决定。

接下来值得等的,是 Taku 进入客户现场后的使用记录。员工把毛巾交给它之后,能否离开洗衣房,做完另一项工作再回来?如果机器遇到没见过的情况,需要的是隔一会儿过来处理,还是立刻停下手头工作赶回来?这两种求助,对用工安排的影响很不一样。

卖出一台机器之后,客户还要决定下一班怎样排人。这张排班表,才会告诉 Dyna:它接走的究竟只是几道动作,还是一份可以放心交出去的工作。

原节目:Latent Space|Jason Ma 谈 Dyna-2 · 张小珺 154|对 Dyna 创始人 Lindon 的访谈

技术与图片资料:Dyna 官方 Dyna-2、Dyna-2.1。封面及正文图来自公司演示,经裁切与排版。