AboutPosts

如何构建有效的 Agent

Zhanghao,6 min read

代理系统

代理系统(agentic systems)分为两类:

  1. 工作流(Workflows)。通过预定义的代码路径编排 LLM 和工具,系统按固定的流程执行任务;
  2. 代理(Agents)。代理动态指导自己的流程和使用工具,能自主掌握任务的完成;

如何选择代理系统?

首先需要明确,任何方案存在利弊,工具流设计简单且便于维护,但是无法处理多变的场景,代理具有更高的性能,但是会增加不确定性和延迟。所以,在大部分情况下都应该从最简单、可组合的模式开始,只有在必要时才增加复杂度。

使用框架可以更高效的进行业务开发,但是由于其增加了抽象层,会使得调试变得困难,所以,跟之前的一样,尽可能从简开始,然后根据业务需求增加复杂度。

三大设计原则:

  1. 保持简洁。在代理设计中维持简单性,避免引入难以诊断的错误;
  2. 优先考虑透明。清晰的展示代理的规划步骤,使其易于理解和评估;
  3. 精心设计人机接口。通过详尽的工具文档和测试,仔细构建代理和计算机的接口;

增强型大语言模型

LLM 本质是可以理解为是一个无状态的纯函数,它的能力依赖于用以训练的数据,根据用户的输入和已知的训练数据对下一个 token 进行概率上的预测,所以,它不具备训练数据以外的知识储备,也无法做到记忆和逻辑处理。

增强型大语言模型是构成代理系统的基础构建模块。它指的是一个核心的 LLM 通过以下方式得到增强:

增强型大语言模型和 RAG 不是一个概念,它们的区别如下:

特征增强型大型语言模型 (Augmented LLM)RAG (检索增强生成)
定义一个广义概念,指通过集成外部组件来扩展LLM能力的系统。一种具体技术,通过检索外部知识来增强LLM的生成内容。
目的全面提升LLM的能力,包括知识、交互和记忆。主要解决LLM的知识局限性,减少“幻觉”。
包含组件可以包括RAG、工具使用、记忆、代理逻辑等。核心组件是“检索器(Retriever)”和“生成器(Generator)”。
关系RAG是实现增强型LLM的一种核心手段。RAG是增强型LLM的一个子集或具体实例。

常见的工作流模式(Workflow Patterns)

工作流模式可以看作是构建更复杂代理系统的“乐高积木”。

Twitter · GitHub · Email
© Zhang Hao.