创建问题解决代理
在Langchain中开发代理是一项复杂的工作。
AgentComponent
(代理组件)是一个用于轻松创建AI代理的组件,该代理能够使用您提供的工具分析任务。
该组件包含了创建代理所需的所有元素。无需管理LLM模型和提供商,只需选择您的模型并输入API密钥即可。无需连接提示词组件,只需在组件的代理指令字段中输入指令。
了解如何从工具调用代理组件开始构建流程,并了解它如何帮助您解决问题。
前提条件
使用AgentComponent创建问题解决代理
从工具调用代理开始创建一个问题解决代理。
- 点击新建流程,然后点击空白流程。
- 点击并拖动一个代理组件到您的工作区。 默认设置目前是可接受的,因此本指南假设您使用Open AI作为LLM。
- 将您的Open AI API密钥添加到代理组件中。
- 添加聊天输入和聊天输出组件到您的流程中,并将它们连接到工具调用代理。
这个基本流程使您能够在连接了一些工具后在Playground中与代理聊天。
- 将Search API工具组件连接到您的代理。
- 将您的Search API密钥添加到组件中。 您的代理现在可以查询Search API获取信息。
- 连接一个计算器工具用于解决基本的数学问题。
- 将一个API请求组件连接到代理。 该组件不在工具类别中,但通过启用工具模式,代理仍然可以将其用作 工具。 工具模式通过添加一个可以连接到代理的工具端口的工具集端口,将组件转换为工具。 要在组件上启用工具模式,请点击工具模式。 组件的字段会根据其所处的模式动态变化。
使用代理解决问题
您的代理现在具有执行网络搜索、进行基本数学运算和执行API请求的工具。仅使用这些功能就可以解决许多问题。
- 您的桌面游戏小组取消了,您被困在家里。
将API请求指向在线规则文档,告诉您的代理
您是一个使用可用工具的有趣游戏组织者
,然后开始玩游戏。 - 您需要快速学习一门新的软件语言。
将API请求指向一些文档,告诉您的代理
您是一个使用可用工具的知识渊博的软件开发人员
,然后开始学习。
看看您可以用这个流程解决哪些问题。随着您的问题变得更加专业化,添加一个工具。例如,数学代理项目添加了一个Python REPL组件来解决对计算器来说太具挑战性的数学问题。
编辑工具的元数据
要 编辑工具的元数据,请点击工具中的编辑工具按钮来修改其名称
或描述
元数据。这些字段帮助连接的代理理解如何使用工具,而无需修改代理的提示指令。
例如,URL组件在启用工具模式时有三个可用工具。
工具名称 | 描述 |
---|---|
URL-fetch_content | 使用此工具从URL获取和检索原始内容,包括HTML和其他结构化数据。返回完整的响应内容。 |
URL-fetch_content_text | 使用此工具从网页获取和提取干净、可读的文本内容。仅返回纯文本内容。 |
URL-as_dataframe | 使用此工具从URL获取结构化数据并将其转换为表格格式。数据以结构化DataFrame表格格式返回。 |
连接的代理将根据名称
和描述
元数据清楚地了解每个工具的功能。如果您认为代理使用工具的方式不正确,请编辑工具的元数据以帮助它更好地理解工具。
工具名称和描述可以编辑,但默认工具标识符不能更改。如果您想更改工具标识符,请创建自定义组件。
要了解代理正在使用哪些工具以及如何使用它们,请询问代理,您使用什么工具来回答我的问题?
将代理用作工具
代理组件本身也支持工具模式,用于创建多代理流程。
为您的问题解决流程添加一个使用不同OpenAI模型进行更专业化问题解决的代理。
- 点击并拖动一个代理组件到您的工作区。
- 将您的Open AI API密钥添加到代理组件中。
- 在模型名称字段中,选择
gpt-4o
。 - 点击工具模式以将这个新代理用作工具。
- 将新代理的工具集端口连接到之前创建的代理的工具端口。
- 将Search API和API请求连接到新代理。
新代理将使用
gpt-4o
处理需要大上下文窗口的更大规模的抓取和搜索信息任务。 问题解决代理现在将使用这个代理作为工具,具有其独特的LLM和工具集。
- 可以编辑新代理的元数据以帮助问题解决代理理解如何使用它。
点击编辑工具以修改新代理的
名称
或描述
元数据,使其用途对问题解决代理来说很清晰。 例如,默认工具名称是Agent
。将名称编辑为Agent-gpt-4o
,并将描述编辑为使用gpt-4o模型进行复杂问题解决
。问题解决代理将理解这是gpt-4o
代理,并将其用于需要更大上下文窗口的任务。
添加自定义组件作为工具
代理可以使用自定义组件作为工具。