个性化记忆需要世界模型来协助构建
业界有一个精简的Agent表达公示,即:Agent=大模型(LLM)+记忆(Memory)+主动规划(Planning)+工具使用(Tool Use)。基于该公式,一个基于LLM的 AI Agent可以拆分为LLM、规划、记忆与工具使用四个组件部分。
Agent的记忆库负责存储和管理AI Agent在执行任务和与环境交互过程中产生的信息和数据,以支持AI Agent的决策和行为,所以当有决策和行动时,也需要Agent增加Tool Use的能力。
随着大模型自身的发展,特别是大模型在推理能力和反思能力上的增强,Agent平台都需要拥有个性化记忆和工具使用的能力。
记忆库不仅仅只是存储,还包括个性化记忆,另外Agent之间共享记忆也很重要。经过一年多实践,我们发现,最难实现的是个性化记忆,个性化记忆还需要与Tool Use结合起来,而个性化记忆需要世界模型来协助构建。
在To B场景下,“世界模型”不仅包括业务流程的脉络、对话或者工作流的上下文和状态,还包括数字世界中的各种系统和智能世界中的其他Agent和员工。有了这些,Agent才能更加准确地理解和预测现实物理世界中的各种情况,并据此作出最佳决策。
以销售管理Agent为例。通过各种视频、书籍、理论等预训练出来一个类似于只拥有数字世界的“销售管理AlphaGo”,然后通过一个优秀的世界仿真器,让“销售管理AlphaGo”通过历史数据以及相应的观测去与真实的物理世界互动,比如可以与一线的人类销售进行对话、主动获取行业动态等,使得它能够更好的与物理世界和数字世界进行观测和互动,最终成为销售负责人的智能助手。
在这个销售管理Agent的构建过程中,专家知识是构建这个独特Agent的“天花板”,因为专家知识——销售负责人的管理理念、风格、策略和其制定的规则,决定了整个Agent的流程、方向甚至是边界。而大语言模型于这个Agent而言,它只是一个底座——负责理解和生成自然语言,使Agent能够更好地与人类员工进行沟通和协作。
为什么Tool Use很重要?
当Agent对Action和目标做完判断,并且判断需要工具时,就进入了Tool Use阶段。
在这个阶段,需要考虑到多Agent协作、Agent编排、函数&API&组件等的调用,同时也包括安全质量相关的鉴权和监控等等。
当Agent判断需要有Action时,Function Call(函数调用)能力尤为重要。特别是随着开源模型能力逐渐追平GPT-4,AI Agent将可以依赖Function Call。
Function Call是编程中的一种机制,它允许一个函数(或方法)在另一个函数中执行。为什么Function Call能力尤为重要?
在To B业务场景下,Agent的工作实现方式和路径的关键在于业务目标的实现。这里提到的“业务目标”可以理解为企业在特定时间内期望达成的某个商业成果或状态,实现这个目标的过程,可以被看作是一种“状态机的转移”。
“状态机”是计算机科学中一个常用的概念,它描述了一个系统在不同的离散状态之间转换的模型,在这个模型中,系统可以在多个状态之间根据预设的规则进行转换。在To B业务场景中,每个状态都代表了业务过程中的一个阶段或步骤,状态之间的转化则对应着从当前业务阶段向下一个阶段的过渡。
而在业务流程的状态机模型中,Function Call负责推动状态之间的转换和执行相关的业务逻辑,是实现状态转换、执行业务逻辑和处理业务流程中各种情况的关键机制,通过合理地设计和使用Function Call,可以确保业务流程的顺畅进行,并最终实现企业的业务目标,因此它起着至关重要的作用。
想情况下,Agent执行完Action后,还需要反馈给记忆模块(Memory)去更新记忆,从而能让Agent更好地处理复杂的任务和场景,提供更加智能和个性化的服务。
总结
2024年已过半,大语言模型能力特别是开源模型能力在不断增强、逐步追近GPT-4的水平,然而市场上可见的Agent仍然显得不智能。
主要是因为大语言模型的幻觉问题尚未得到有效解决——在完全没有引导的情况下,基于LLM的Agent很难做到“靠谱”,特别是在To B场景下,为了确保Agent的准确率,开发者构建的Agent更偏向自动化而非真正的自主化。
工具使用和个性化记忆两大基础设施的优化和提升有望改变上述状况。
同时应该聚焦以下两件事情:
集成Function Call的能力,让ToB场景下的Agent/数字员工具备选择工具、使用工具、反思工具的能力;
根据多层状态机构建一个目标定义以及怎样完成目标的学习算法。
Agent规划和完成目标的能力依赖于它在执行过程中的状态(State)和可采取的行动(Action)。特别是在业务流程自动化和数字员工的场景下,Agent为了有效地完成目标,还需要具备相应的领域知识,这些知识可以帮助Agent选择正确的Action,从而推动业务流程的自动化,并最终实现既定的目标。