代理(Agent)指能自主感知环境并采取行动实现目标的智能体。基于大语言模型(LLM)的 AI Agent 利用 LLM 进行记忆检索、决策推理和行动顺序选择等,把Agent的智能程度提升到了新的高度。LLM驱动的Agent具体是怎么做的呢?
什么是AI Agent?
代理(Agent)这个词来源于拉丁语“agere”,意为“行动”。现在可以表示在各个领域能够独立思考和行动的人或事物的概念。它强调自主性和主动性 [1][1]。智能代理/智能体是以智能方式行事的代理;Agent感知环境,自主采取行动以实现目标,并可以通过学习或获取知识来提高其性能 [8][8]。
可以把单个Agent看成是某个方面的专家。
一个精简的Agent决策流程:
Agent:P(感知)→ P(规划)→ A(行动)
感知(Perception)是指Agent从环境中收集信息并从中提取相关知识的能力。
规划(Planning)是指Agent为了某一目标而作出的决策过程。
行动(Action)是指基于环境和规划做出的动作。
其中,Policy是Agent做出Action的核心决策,而行动又通过观察(Observation)成为进一步Perception的前提和基础,形成自主地闭环学习过程。
类 LangChain 中的各种概念 [4][4]:
- Models,也就是我们熟悉的调用大模型API。
- Prompt Templates,在提示词中引入变量以适应用户输入的提示模版。
- Chains,对模型的链式调用,以上一个输出为下一个输入的一部分。
- Agent,能自主执行链式调用,以及访问外部工具。
- Multi-Agent,多个Agent共享一部分记忆,自主分工相互协作。
LangChain 中 Agent 和 Chain 的区别:
The core idea of agents is to use an LLM to choose a sequence of actions to take. In chains, a sequence of actions is hardcoded (in code). In agents, a language model is used as a reasoning engine to determine which actions to take and in which order.
背景知识
做决策的过程中,一个很重要的信息来源是 记忆(Memory)。作为重要的背景知识,下面简单介绍下都有哪些种类的记忆 [2][2]。
记忆(Memory)[2][2]
记忆可以被定义为获取、储存、保留以及后来检索信息的过程。人脑中有几种类型的记忆。
- 感觉记忆(Sensory Memory):这是记忆的最早阶段,提供在原始刺激结束后保留感官信息(视觉、听觉等)的印象的能力。感觉记忆通常只持续几秒钟。子类别包括视觉记忆(iconic memory)、回声记忆(echoic memory)和触觉记忆(haptic memory)。
- 短期记忆(Short-Term Memory, STM)或工作记忆(Working Memory):它储存我们当前意识到的信息,以执行复杂的认知任务,如学习和推理。短期记忆被认为有大约7个项目的容量(Miller 1956)并持续20-30秒。
- 长期记忆(Long-Term Memory, LTM):长期记忆可以储存信息很长一段时间,从几天到几十年,其储存容量基本上是无限的。LTM有两个子类型:
- 显性 / 陈述记忆(Explicit / declarative memory):这是对事实和事件的记忆,指的是那些可以被有意识地回忆的记忆,包括情景记忆(事件和经验)和语义记忆(事实和概念)。
- 隐性 / 程序记忆(Implicit / procedural memory):这种记忆是无意识的,涉及自动执行的技能和例行程序,如骑自行车或在键盘上打字。
可以大致考虑以下对应关系:
- 将感觉记忆视为学习原始输入(包括文本、图像或其他模式)的嵌入表示;
- 将短期记忆视为在上下文中(prompt)学习。它是短暂且有限的,因为它受到Transformer的上下文窗口长度的限制。
- 将长期记忆视为代理在查询时可以注意到的外部向量存储,可以通过快速检索访问。
怎么写好Prompt:ReAct
- LangChain中的ReAct: