前几天看到一个图,感觉能帮助理解 AI Agent 的基本思想和原理,特摘过来备忘。顺道加上自己目前对相关部分的理解,不一定对,权当做个记录。
另外,专门查了下图的来源,应该是源自 Lilian Weng 的博客文章《LLM Powered Autonomous Agents》-June 23, 2023
原图:
中文重置版:
Memory(记忆):
- 短期记忆:特指利用上下文学习(In-Context Prompting,又称为提示工程 Prompt Engineering)让模型在短时间内“记住”并利用这些信息来提高其在特定任务上的表现。
>>简单说就是——在提问时一并给出背景资料,引导其思想,让结果更符合我们的预期。好处是不需要去调整和专门训练大模型。
>>现在对话模式的AI应该都是用的这个技术。包括给定资料,让大模型出题也是这个方式。 - 长期记忆:这种设计使得 AI Agents 能够在长时间内保留和回忆大量信息的能力,一般通过外部向量存储和快速检索来实现。
>>对这块的理解不一定对,我认为是——将以往的交流记录存储下来,并建立索引。当提问时,优先从历史信息中找到最相似的记录,来辅助这次的任务。相当于额外记录了你的喜好,而这个是不需要“写入”大模型的。
- Planning(规划):
- 子目标和分解:将一个大的、复杂的任务分解成多个小的、可管理的子目标。这样做可以让任务变得更加容易处理,并且可以提高任务执行的效率。
>>这个相对好理解。通过这种方法来增强处理复杂任务的能力。
>>这块应该是调用大模型来做到的? - 反思和调整:在执行任务后,对自己的行为进行评估和分析,以识别错误并找出改进的方法。通过这种方式,代理可以从经验中学习,逐步提高自己的智能和适应性,从而提高最终结果的质量。
>>通过这种策略,来提升任务处理质量、提升“智能”,从而能较好处理复杂任务。
- 子目标和分解:将一个大的、复杂的任务分解成多个小的、可管理的子目标。这样做可以让任务变得更加容易处理,并且可以提高任务执行的效率。
- Tool use(工具使用):
- AI Agents 可以学习如何调用外部 API,以获取模型权重中缺少的额外信息,这些信息通常在预训练后很难更改,包括当前信息、代码执行能力、对专有信息源的访问等。
>>大模型侧重在于其强大的语言处理能力和与外部工具结合的能力,
- AI Agents 可以学习如何调用外部 API,以获取模型权重中缺少的额外信息,这些信息通常在预训练后很难更改,包括当前信息、代码执行能力、对专有信息源的访问等。
补充资料1:
- 大模型(LLM,Large Language Model)的概念:是指拥有大量参数的预训练语言模型,能够理解和生成自然语言文本。这些模型通过在大规模数据上进行训练,能够捕捉到语言的各种模式和规律,从而在各种语言任务中表现出色,如问答、翻译、摘要生成等。
- AI Agent的概念:是指一种自主系统,能够感知环境并采取行动以实现特定目标。AI Agents通常具有一定的智能,能够进行决策、学习和适应环境变化。它们可以在各种应用场景中发挥作用,如自动驾驶、智能家居控制、虚拟助手等。
- 大模型与AI Agent之间的关系: |-大模型可以作为AI Agent的核心组件,提供语言理解和生成的能力。
|-AI Agent 利用“大模型+外部工具”在真实世界中执行各种任务,拥有交互能力,可表现出较高的自主性和智能性。
补充资料2:另一个图(应该是来源于孚知流),它加上了感知(似乎也叫“多模态”):