Lucent's Blog

当时明月在 曾照彩云归

人生不相见,动如参与商。

6LCi5Y2O5qKFLOaIkeaDs+S9oOS6hg==


AI Agent 智能体

智能体是什么

智能体的英文是 Agent,AI 业界对智能体提出了各种定义。个人理解,智能体是一种通用问题解决器。从软件工程的角度看来,智能体是一种基于大语言模型的,具备规划思考能力、记忆能力、使用工具函数的能力,能自主完成给定任务的计算机程序。

大语言模型很强大,就像人类的大脑一样拥有思考的能力。如果人类只有大脑,没有四肢,没有工具,是没办法与世界互动的。如果我们能给大模型配备上四肢和工具呢?大模型是不是就会打破次元壁,从数字世界走向现实世界,与现实世界实现梦幻联动呢?

大语言模型(后文将用 LLM 指代)可以接受输入,可以分析&推理、可以输出文字\代码\媒体。然而,其无法像人类一样,拥有规划思考能力、运用各种工具与物理世界互动,以及拥有人类的记忆能力。

  • LLM:接受输入、思考、输出

  • 人类LLM(接受输入、思考、输出)+ 记忆 + 工具 + 规划

如果我们给 LLM 配备上:与物理世界互动的工具、记忆能力、规划思考能力。LLM 是否就可以像人类一样,能够自主思考并规划完成任务的过程,能检索记忆,能使用各种工具提高效率,最终完成某个任务,这便是智能体。

由LLM驱动的智能体系统

如上图所示,在基于 LLM 的智能体中,LLM 的充当着智能体的“大脑”的角色,同时还有 3 个关键部分:

  • 规划(Planning) : 智能体会把大型任务分解为子任务,并规划执行任务的流程;智能体会对任务执行的过程进行思考和反思,从而决定是继续执行任务,或判断任务完结并终止运行。

  • 记忆(Memory): 短期记忆,是指在执行任务的过程中的上下文,会在子任务的执行过程产生和暂存,在任务完结后被清空。长期记忆是长时间保留的信息,一般是指外部知识库,通常用向量数据库来存储和检索。

  • 工具使用(Tool use) 为智能体配备工具 API,比如:计算器、搜索工具、代码执行器、数据库查询工具等。有了这些工具 API,智能体就可以是物理世界交互,解决实际的问题。

智能体对比模型

为了更清晰地理解智能体和模型的区别,我们可以从以下几个方面进行对比:

模型

智能体

知识范围

仅限于训练数据中包含的内容

可通过工具接入外部系统获取扩展知识

推理能力

仅能进行单次查询响应,除非特别设计,否则无法维护会话历史和上下文连续性

能够维护完整会话历史,支持基于用户查询和编排层决策的多轮对话

工具使用

不具备内置工具调用能力

在架构层面直接支持工具集成

逻辑处理

无内置逻辑处理层,需要用户通过简单问询或利用CoT、ReAct等推理框架构建复杂提示来引导预测

具备完整的认知架构,能够集成CoT、ReAct或LangChain等预置智能体框架

*注:在智能体语境中,一轮对话指的是系统接收一个查询并生成一个响应的完整交互过程。

总结

智能体其实就是通过代码开发的,给大模型配上了一些可以调用的工具(例如计算器、网络搜索引擎等)的程序,又或者是通过一些特殊提示词让大模型执行特定的动作(例如输入一段内容,由大模型判断其对错或者对其进行分类)的程序。

智能客服、RAG知识库就是智能体

上一篇

AI 应用程序并没有官方概念,简单来说就是一个程序中应用到了AI,这个程序就可以算是AI 应用程序 为什么开发AI应用程序? 大模型的能力很强大,但是如果我们只是把它应用在对话方面,那就太大材小用了。…

阅读
下一篇

构建一个可以在单个查询中多次运行RAG系统的一个重要特性是聊天逻辑,考虑到对话上下文,就像在 LLM 时代之前的经典聊天机器人一样。这是支持后续问题,重复指代,或任意用户命令相关的以前对话上下文所必需的。查询压缩技术可以同时考虑聊天上下文和用户查询。 有几种方法可以实现上下文压缩: 一种流行且相对简…

阅读