代理(Agents)
代理(Agents)可以用于各种任务。
代理(Agents)将语言模型的决策能力与工具相结合,以创建一个可以代表您执行和实现解决方案的系统
在继续阅读之前,强烈建议您阅读 agent
模块中的文档,以更好地理解与代理(agents)相关的概念。
具体而言,在继续阅读之前,您应该熟悉 agent
、tool
和 agent executor
的抽象概念。
- 代理(Agent)文档(用于与外部世界进行交互)
创建自己的代理(Agent)
Create Your Own Agent
阅读完文档后,您应该准备创建自己的代理(Agent)。 那具体是什么意思? 以下是我们建议开始创建自己的代理(Agent)的方式:
第 1 步:创建工具(Tools)
代理(Agents)的定义很大程度上取决于它们可以使用的工具(Tools)。 如果您有特定的任务要求代理(Agent)完成,您必须使其能够访问合适的工具(Tools)。 我们在 LangChain 中本地提供了许多工具(Tools),因此您应首先查看是否有任何工具(Tools)满足您的需求。 但我们也提供了定义自定义工具(Tools)的简化方式,所以如果您需要自定义工具(Tools),绝对可以这样做。
(可选)第 2 步:修改代理(Agent)
内置的 LangChain 代理(Agent)类型被设计用于在一般情况下发挥良好的作用, 但是通过修改代理(Agent)实现,您可能能够提高性能。 有几种方法可以做到这一点:
- 修改基本提示(base prompt)。这可用于为代理(Agent)提供更多关于其行为方式等方面的上下文。
- 修改输出解析器(output parser)。如果代理(Agent)在解析语言模型输出时遇到问题,这是必要的。
(可选)第 3 步:修改代理执行器(Agent Executor)
通常情况下,这一步骤是不必要的,因为这是相当通用的逻辑。 您希望修改此部分的原因可能包括添加不同的停止条件或处理错误。
示例
代理(Agent)的具体示例包括:
- AI 插件代理(AI Plugins):一个实现了能够使用所有 AI 插件的代理(Agent)。
- Plug-and-PlAI(插件数据库):一个实现了能够使用从 PlugNPlAI 检索到的所有 AI 插件的代理(Agent)。
- Wikibase 代理(Agent):一个与 Wikibase 进行交互的代理(Agent)的实现。
- 销售 GPT 代理(Sales GPT):此 notebook 演示了一个上下文感知的 AI 销售代理(Agent)的实现。
- 多模态输出代理(Agent):一个可以生成文本和图像的多模态输出代理(Agent)的实现。