具备记忆功能的强大GPT智能体:烹饪、冲咖啡、打扫家务无所不能!
随着人工智能技术的不断进步,语音助手如Alexa、Siri、小度、天猫精灵等逐渐融入我们的日常生活。然而,在自然语言理解和完成复杂任务方面,它们仍然面临许多挑战。
语音作为一种复杂的交流方式,充满了多样性和地方特色。传统的语音处理方法往往难以适应不同用户的自定义语言和领域特定的语义解析需求。因此,为了更好地满足用户需求,语音助手需要针对特定领域设计语义解析方案,而无法对完全开放的语言进行建模。
为了解决这一难题,卡内基梅隆大学的研究人员推出了一种名为HELPER的大语言模型。该模型基于大语言模型和视觉模型,旨在提高语音助手的自然语言理解和复杂任务完成能力。
HELPER模型采用了检索增强的方法,将人机对话、指令和错误纠正转换为一系列参数化的视觉运动。在成功执行指令后,HELPER会将语言指令和执行计划作为记忆进行存储。当用户再次提出类似请求时,HELPER会自动检索相关记忆并进行适当修改来满足新的要求,从而实现个性化交互。
在实验中,HELPER在TEACh任务中表现出色,任务成功率和目标条件成功率分别提高了1.7倍和2.1倍,超过了之前最好的模型。在从历史对话中执行任务方面,HELPER也取得了非常好的效果。
该模型的开源地址为:https://github.com/Gabesarch/HELPER。研究人员通过物理模拟的方式展示了多个示例,包括洗锅、煮咖啡、做面包、整理卡片、制作饮料等一系列拟人化操作。只要用户详细告知一次,HELPER就能记住用户的需求,并在以后无需多说的情况下执行相应的操作。
从论文内容来看,HELPER的技术架构主要由规划器、执行器和视觉语言模型三大块组成。
规划器模块利用检索增强的大语言模型进行语义解析和生成一系列执行计划。它还配备了一个文本到程序的外部记忆存储器,相当于该模型的“大脑”。在进行语言解析时,规划器会先基于当前语言的输入,使用大语言模型的编码器计算输入文本的向量表示,然后检索出记忆库中语义最相关的若干条记录,将其中的文本-程序对作为LLM的文本示例,随后让LLM生成新的程序。生成的程序使用Python语言描述,涵盖一系列参数化的视觉运动函数,如pickup(X)、goto(X)等,同时也负责处理执行失败后的重新规划。例如,当某个动作执行失败时,系统会调用外部的视觉语言模型来分析失败原因并生成文本反馈,规划器随后会根据反馈提示LLM生成修正后的新程序。此外,规划器也会在任务成功执行后,将用户指令语言和对应的执行程序加入记忆库中,实现个性化学习。
执行器模块主要负责解析规划器生成的程序,并基于当前环境执行指令操作。它包括场景解析器、动作执行器和前提检查器等组件。场景解析器构建环境的语义地图、占用地图以及通过目标检测跟踪对象信息。动作执行器将程序中的函数调用翻译成具体的导航和操作动作执行。前提检查器在执行每个动作前验证必要的前提条件是否满足。位置检查器则当需要找到不在场景地图中的目标物体时提示LLM生成可能的搜索位置。简单来说执行器模块相当于HELPER的“四肢”用来执行具体的内容。
视觉语言模型ALIGN用于在执行计划出现错误时进行纠错和审查通过将当前视觉输入与一系列预定义的错误文本进行匹配输出最相似的错误类型帮助规划器模块快速找到错误所在。这种方法比简单的像素对比判断故障类型更加精准和通用。