说起用自然语言命令机器人,可能很多朋友会觉得奇怪。现在的智能机器人不早就能语音控制和聊天交互了吗?且不说公共场合商业中心等地方的商业服务智能机器人,聊天引导,语音交互服务,只看看身边的和大众离得很近的智能音箱,大家也能感觉到,语言命令机器人怎么能说指日可待,现在不已经用上了?
非也,此语音命令非彼语音命令。现在的智能机器人也好,智能音箱也罢,几乎都是单句命令或者根据关键词识别执行命令的。说到这里,机智客希望各位朋友就别列举诸如某音短视频里那种娱乐的能说会道斗嘴的机器人了,别把那娱乐玩意儿当技术就行,就好比你不必要把短视频段子过分当真真实一样。可以说,现在商用的非娱乐的成熟智能机器人,你可以命令“向前走两步,给我唱首歌”而无法命令“去左边桌子上拿个杯子过来”。
后者,就是自然语言命令。它其实不仅仅是具体命令,更像是包含大量隐含信息的分支行动,更何况还有很多时候自然语言中的命令很不明显。而这个让机器人听懂自然语言命令相关功能的实现,就是谷歌最新的研究。他们提出了一个名为「Saycan」(DO AS I CAN, NOT AS I SAY)的算法,旨在让机器人充当语言模型的手和眼睛,而语言模型提供有关任务的高级语义知识。
这里机智客换句大白话就是,你用自然语言交互,大语言模型理解稍微复杂你的话里的高级指令,将里面的有效信息提取出来,然后驱动机器人分解有效信息中的任务,做好步骤分解,做好一系列完全的执行。这个就是大型语言模型(LLM)与机器人的物理任务组合到一起。
据悉,这个方法是评估单个动作对完成整个高级指令有帮助的概率。机智客摘自这则科技资讯的方法概述是,每个动作都有一个语言描述,通过prompt语言模型让模型给这些动作打分。此外,如果每个动作都有一个相应的affordance函数,可以量化它从当前状态(比如学到的价值函数)获得成功的可能性。两个概率值的乘积就是机器人能成功地完成一个对于指令有帮助的动作的概率。根据这个概率将一系列动作排序,选取概率最高的一个。
上述就是摘自资讯报道里的概述。这里举个具体的例子就是,如果用户说,你会怎么给我一个可乐罐?大语言模型则会以一个明确的顺序来回应,比如它的理解会是,1、我找到一个可乐罐;2、把可乐罐捡起来;3、把它拿给你;4、完成。这里你的自然语言你的话就是高级指令,你传达的有效信息就是语言模型指挥机器人要做的事情。
经多种测试显示的结果总结出来,谷歌的这个算法方法实现101个任务的总计划成功率为 70%,执行成功率为61%,如果去掉affordance grouding,大致会损失一半的性能。不过,进步已经不小了。