Skip to main content

Blaflow 中的组件

组件定义了流程中 AI 智能体的行为和能力。

智能体使用 LLM 作为推理引擎来决定使用哪些连接的工具组件来解决问题。

在组件功能中,工具本质上是智能体可以调用来执行任务或访问外部资源的函数。函数被包装为Tool对象,具有智能体理解的通用接口。组件通过工具注册了解工具,通常在组件初始化时提供可用工具列表。Tool对象的描述告诉智能体该工具能做什么。

智能体然后使用连接的 LLM 通过推理来决定哪个工具最适合这项工作。

在流程中使用组件

基础智能体使用智能体组件连接到 URL 和 计算器 工具来回答用户的问题。OpenAI LLM 充当组件的大脑来决定使用哪个工具。工具通过工具端口连接到组件。

简单智能体入门流程

关于多智能体示例,请参阅创建问题解决智能体

智能体组件

该组件创建一个可以使用工具根据给定指令回答问题并执行任务的智能体。

该组件包括 LLM 模型集成、系统消息提示和工具端口以连接工具扩展其能力。

有关此组件的更多信息,请参阅工具调用智能体文档

输入

名称类型描述
agent_llm下拉菜单智能体将用于生成响应的语言模型提供商。选项包括 OpenAI 和其他提供商,或自定义。
system_prompt字符串系统提示:提供初始指令和上下文以指导智能体行为。
tools列表智能体可用的工具列表。
input_value字符串智能体要处理的输入任务或问题。
add_current_date_tool布尔值如果为 true,则添加一个返回当前日期的工具给智能体。
memory内存用于维护对话历史记录的可选内存配置。
max_iterations整数智能体可以执行的最大迭代次数。
handle_parsing_errors布尔值是否处理智能体执行期间的解析错误。
verbose布尔值启用详细输出以进行详细日志记录。

输出

名称类型描述
response消息智能体对给定输入任务的响应。

CSV 智能体

该组件从 CSV 文件和 LLM 创建一个 CSV 智能体。

输入

名称类型描述
llm语言模型用于智能体的语言模型
path文件CSV 文件的路径
agent_type字符串要创建的智能体类型(zero-shot-react-description, openai-functions, 或 openai-tools)

输出

名称类型描述
agent智能体执行器CSV 智能体实例

CrewAI 智能体

该组件代表 CrewAI 的一个智能体,允许在团队内创建具有定义角色、目标和能力的专用 AI 智能体。

更多信息请参阅CrewAI 文档

输入

名称显示名称信息
role角色智能体的角色
goal目标智能体的目标
backstory背景故事智能体的背景故事
tools工具智能体可用的工具
llm语言模型将运行智能体的语言模型
memory内存智能体是否应具有内存
verbose详细启用详细输出
allow_delegation允许委托智能体是否允许将任务委托给其他智能体
allow_code_execution允许代码执行智能体是否允许执行代码
kwargskwargs智能体的附加关键字参数

输出

名称显示名称信息
output智能体构建的 CrewAI 智能体对象

分层团队

该组件代表一组智能体,管理它们应如何协作以及它们应在分层结构中执行的任务。该组件允许创建一个由经理监督任务执行的团队。

更多信息请参阅CcrewAI 文档

输入

名称显示名称信息
agents智能体代表团队成员的一系列智能体对象
tasks任务代表要执行的任务的一系列分层任务对象
manager_llm经理 LLM经理智能体的语言模型(可选)
manager_agent经理智能体充当经理的特定智能体(可选)
verbose详细启用详细输出以进行详细日志记录
memory内存指定团队的内存配置
use_cache使用缓存启用结果缓存
max_rpm最大 RPM设置每分钟最大请求数
share_crew共享团队确定是否在智能体之间共享团队信息
function_calling_llm函数调用 LLM指定用于函数调用的语言模型

输出

名称显示名称信息
crew团队构建的具有分层任务执行的团队对象

JSON 智能体

该组件从 JSON 或 YAML 文件和 LLM 创建一个 JSON 智能体。

输入

名称类型描述
llm语言模型用于智能体的语言模型
path文件JSON 或 YAML 文件的路径

输出

名称类型描述
agent智能体执行器JSON 智能体实例

OpenAI 工具智能体

该组件使用 LangChain 创建一个 OpenAI 工具智能体。

更多信息请参阅LangChain 文档

输入

名称类型描述
llm语言模型用于智能体的语言模型(必须支持工具)
system_prompt字符串智能体的系统提示
user_prompt字符串用户提示模板(必须包含'input'键)
chat_history数据列表智能体的可选聊天历史记录
tools工具列表智能体可用的工具列表

输出

名称类型描述
agent智能体执行器OpenAI 工具智能体实例

OpenAPI 智能体

该组件创建一个 OpenAPI 智能体,与由 OpenAPI 规范定义的 API 交互。

更多信息请参阅 LangChain 关于 OpenAPI 智能体的文档。

输入

名称类型描述
llm语言模型用于智能体的语言模型
path文件OpenAPI 规范文件的路径(JSON 或 YAML)
allow_dangerous_requests布尔值是否允许潜在危险的 API 请求

输出

名称类型描述
agent智能体执行器OpenAPI 智能体实例

SQL 智能体

该组件创建一个与 SQL 数据库交互的 SQL 智能体。

输入

名称类型描述
llm语言模型用于智能体的语言模型
database_uri字符串要连接的 SQL 数据库的 URI
extra_tools工具列表提供给智能体的额外工具(可选)

输出

名称类型描述
agent智能体执行器SQL 智能体实例

顺序团队

该组件代表一组智能体,其任务按特定顺序执行。该组件允许创建一个按特定顺序执行任务的团队。

更多信息请参阅CrewAI 文档

输入

名称显示名称信息
tasks任务代表要执行的任务的一系列顺序任务对象
verbose详细启用详细输出以进行详细日志记录
memory内存指定团队的内存配置
use_cache使用缓存启用结果缓存
max_rpm最大 RPM设置每分钟最大请求数
share_crew共享团队确定是否在智能体之间共享团队信息
function_calling_llm函数调用 LLM指定用于函数调用的语言模型

输出

名称显示名称信息
crew团队构建的具有顺序任务执行的团队对象

顺序任务智能体

该组件创建一个 CrewAI 任务及其关联智能体,允许定义具有特定智能体角色和能力的顺序任务。

更多信息请参阅CcrewAI 文档

输入

名称显示名称信息
role角色智能体的角色
goal目标智能体的目标
backstory背景故事智能体的背景故事
tools工具智能体可用的工具
llm语言模型将运行智能体的语言模型
memory内存智能体是否应具有内存
verbose详细启用详细输出
allow_delegation允许委托智能体是否允许将任务委托给其他智能体
allow_code_execution允许代码执行智能体是否允许执行代码
agent_kwargs智能体 kwargs智能体的附加 kwargs
task_description任务描述详细说明任务目的和执行的描述性文本
expected_output预期任务输出预期任务结果的明确定义
async_execution异步执行指示异步任务执行的布尔标志
previous_task前一个任务序列中的前一个任务(用于链接)

输出

名称显示名称信息
task任务构建的 CrewAI 任务对象

工具调用智能体

该组件使用 LangChain 创建一个工具调用智能体。

输入

名称类型描述
llm语言模型用于智能体的语言模型
system_prompt字符串智能体的系统提示
user_prompt字符串用户提示模板(必须包含'input'键)
chat_history数据列表智能体的可选聊天历史记录
tools工具列表智能体可用的工具列表

输出

名称类型描述
agent智能体执行器工具调用智能体实例

向量存储智能体

该组件使用 LangChain 创建一个向量存储智能体。

输入

名称类型描述
llm语言模型用于智能体的语言模型
vectorstore向量存储信息智能体使用的向量存储信息

输出

名称类型描述
agent智能体执行器向量存储智能体实例

向量存储路由智能体

该组件使用 LangChain 创建一个向量存储路由智能体。

输入

名称类型描述
llm语言模型用于智能体的语言模型
vectorstores向量存储信息列表智能体在之间路由的一系列向量存储信息

输出

名称类型描述
agent智能体执行器向量存储路由智能体实例

XML 智能体

该组件使用 LangChain 创建一个 XML 智能体。

智能体使用 XML 格式向语言模型提供工具指令。

输入

名称类型描述
llm语言模型用于智能体的语言模型
user_prompt字符串智能体的自定义提示模板(包括 XML 格式化指令)
tools工具列表智能体可用的工具列表

输出

名称类型描述
agent智能体执行器XML 智能体实例