Skip to main content

代理类型 agent_types

LangChain

行动代理​

代理使用 LLM 确定采取哪些行动以及顺序。 行动可以是使用工具并观察其输出,或向用户返回响应。 以下是 LangChain 中可用的代理。

零-shot ReAct​

此代理使用 ReAct 框架确定使用哪个工具 仅基于工具的描述。可以提供任意数量的工具。 此代理要求为每个工具提供描述。

注意:这是最通用的行动代理。

结构化输入 ReAct​

结构化工具聊天代理能够使用多个输入工具。 旧的代理配置为将行动输入指定为单个字符串,但此代理可以使用工具的参数 模式创建结构化行动输入。这对于更复杂的工具使用很有用,例如精确 导航浏览器。

OpenAI 函数​

特定的 OpenAI 模型(如 gpt-3.5-turbo-0613 和 gpt-4-0613)已被明确微调,以检测何时 应调用函数,并响应应该传递给函数的输入。 OpenAI 函数代理旨在与这些模型配合使用。

对话型​

此代理旨在用于对话环境。 提示旨在使代理有帮助性和对话性。 它使用 ReAct 框架决定使用哪个工具,并使用内存记住先前的对话交互。

带搜索的自问自答​

此代理利用一个名为 Intermediate Answer 的单个工具。 此工具应该能够查找问题的事实性答案。此代理 等同于原始的 self ask with search paper, 其中提供了一个 Google 搜索 API 作为工具。

ReAct 文档存储​

此代理使用 ReAct 框架与文档存储进行交互。必须提供两个工具 :一个 Search 工具和一个 Lookup 工具(必须准确命名)。 Search 工具应搜索文档,而 Lookup 工具应在最近找到的文档中查找 术语。 此代理等同于 原始的 ReAct 论文,特别是维基百科示例。

计划和执行代理​

计划和执行代理通过首先规划要做什么,然后执行子任务来实现目标。这个想法主要受到 BabyAGI 的启发,然后是 "计划与解决" 论文。