LangChain
组件包 包含支持与 Langflow 特定第三方集成的自定义组件。
本页面介绍 LangChain 组件包中可用的组件。
CSV Agent
此组件基于 Agent 核心组件。
此组件从 CSV 文件和 LLM 创建 CSV 代理。 有关更多信息,请参阅 LangChain CSV 代理文档。
CSV Agent 参数
名称 | 类型 | 描述 |
---|---|---|
llm | LanguageModel | 输入参数。代理使用的语言模型。 |
path | File | 输入参数。CSV 文件的路径。 |
agent_type | String | 输入参数。要创建的代理类型。 |
agent | AgentExecutor | 输出参数。CSV 代理实例。 |
OpenAI Tools Agent
此组件基于 Agent 核心组件。
此组件创建 OpenAI Tools Agent。 有关更多信息,请参阅 LangChain OpenAI 代理文档。
OpenAI Tools Agent 参数
名称 | 类型 | 描述 |
---|---|---|
llm | LanguageModel | 输入参数。要使用的语言模型。 |
tools | List of Tools | 输入参数。给代理访问的工具。 |
system_prompt | String | 输入参数。为代理提供上下文的系统提示。 |
input_value | String | 输入参数。用 户对代理的输入。 |
memory | Memory | 输入参数。代理用于上下文持久化的内存。 |
max_iterations | Integer | 输入参数。允许代理执行的最大迭代数。 |
verbose | Boolean | 输入参数。这决定是否打印代理的中间步骤。 |
handle_parsing_errors | Boolean | 输入参数。这决定是否处理代理中的解析错误。 |
agent | AgentExecutor | 输出参数。OpenAI Tools 代理实例。 |
output | String | 输出参数。在输入上执行代理的输出。 |
OpenAPI Agent
此组件基于 Agent 核心组件。
此组件创建用于与 OpenAPI 服务交互的代理。 有关更多信息,请参阅 LangChain OpenAPI 工具包文档。
OpenAPI Agent 参数
名称 | 类型 | 描述 |
---|---|---|
llm | LanguageModel | 输入参数。要使用的语言模型。 |
openapi_spec | String | 输入参数。服务的 OpenAPI 规范。 |
base_url | String | 输入参数。API 的基础 URL。 |
headers | Dict | 输入参数。API 请求的可选标头。 |
agent_executor_kwargs | Dict | 输入参数。代理执行器的可选参数。 |
agent | AgentExecutor | 输出参数。OpenAPI 代理实例。 |
Prompt Hub
此组件从 LangChain Hub 获取提示。
与 提示模板 核心组件类似,会为提示中的每个变量向组件添加额外字段。
例如,默认提示 efriis/my-first-prompt
为 profession
和 question
添加字段。
Prompt Hub 参数
名称 | 显示名称 | 描述 |
---|---|---|
langchain_api_key | 您的 LangChain API 密钥 | 输入参数。要使用的 LangChain API 密钥。 |
langchain_hub_prompt | LangChain Hub 提示 | 输入参数。要使用的 LangChain Hub 提示。 |
prompt | 构建提示 | 输出参数。由 build_prompt 方法返回的构建提示消息。 |
SQL Agent
此组件基于 Agent 核心组件。
此组件创建用于与 SQL 数据库交互的代理。 有关更多信息,请参阅 LangChain SQL 代理文档。
SQL Agent 参数
Name | Type | Description |
---|---|---|
llm | LanguageModel | Input parameter. The language model to use. |
database | Database | Input parameter. The SQL database connection. |
top_k | Integer | Input parameter. The number of results to return from a SELECT query. |
use_tools | Boolean | Input parameter. This determines whether to use tools for query execution. |
return_intermediate_steps | Boolean | Input parameter. This determines whether to return the agent's intermediate steps. |
max_iterations | Integer | Input parameter. The maximum number of iterations to run the agent. |
max_execution_time | Integer | Input parameter. The maximum execution time in seconds. |
early_stopping_method | String | Input parameter. The method to use for early stopping. |
verbose | Boolean | Input parameter. This determines whether to print the agent's thoughts. |
agent | AgentExecutor | Output parameter. The SQL agent instance. |
SQL Database
LangChain SQL Database 组件建立与 SQL 数据库的连接。
此组件与 SQL Database 核心组件不同,后者在 SQLAlchemy 兼容的数据库上执行 SQL 查询。
文本分割器
LangChain 组件包包含以下文本分割器组件:
- 字符文本分割器
- 语言递归文本分割器
- 自然语言文本分割器
- 递归字符文本分割器
- 语义文本分割器
Tool Calling Agent
此组件基于 Agent 核心组件。
此组件创建用于与各种语言模型进行结构化工具调用的代理。 有关更多信息,请参阅 LangChain 工具调用文档。
Tool Calling Agent 参数
Name | Type | Description |
---|---|---|
llm | LanguageModel | Input parameter. The language model to use. |
tools | List[Tool] | Input parameter. The list of tools available to the agent. |
system_message | String | Input parameter. The system message to use for the agent. |
return_intermediate_steps | Boolean | Input parameter. This determines whether to return the agent's intermediate steps. |
max_iterations | Integer | Input parameter. The maximum number of iterations to run the agent. |
max_execution_time | Integer | Input parameter. The maximum execution time in seconds. |
early_stopping_method | String | Input parameter. The method to use for early stopping. |
verbose | Boolean | Input parameter. This determines whether to print the agent's thoughts. |
agent | AgentExecutor | Output parameter. The tool calling agent instance. |
XML Agent
此组件基于 Agent 核心组件。
此组件使用 LangChain 创建 XML Agent。 代理使用 XML 格式化向 LLM 提供工具指令。 有关更多信息,请参阅 LangChain XML Agent 文档。
XML Agent 参数
Name | Type | Description |
---|---|---|
llm | LanguageModel | Input parameter. The language model to use for the agent. |
user_prompt | String | Input parameter. The custom prompt template for the agent with XML formatting instructions. |
tools | List[Tool] | Input parameter. The list of tools available to the agent. |
agent | AgentExecutor | Output parameter. The XML Agent instance. |
其他 LangChain 组件
LangChain 组件包中的其他组件包括:
- 虚拟嵌入
- HTML 链接提取器
- 可运行执行器
- Spider 网络爬虫和采集器
遗留 LangChain 组件
以下 LangChain 组件被认为是遗留组件。 您仍然可以在流程中使用这些组件,但它们不再维护,并可能在未来的版本中被移除。
- 对话链
- LLM 检查器链
- LLM 数学链
- 自然语言转 SQL
- 检索 QA
- 自查询检索器
JSON Agent
此组件从 JSON 或 YAML 文件和 LLM 创建 JSON 代理。
它接受以下参数:
Name | Type | Description |
---|---|---|
llm | LanguageModel | Input parameter. The language model to use for the agent. |
path | File | Input parameter. The path to the JSON or YAML file. |
agent | AgentExecutor | Output parameter. The JSON agent instance. |
Vector Store Info/Agent
此组件使用 LangChain 创建向量存储代理。
它接受以下参数:
Name | Type | Description |
---|---|---|
llm | LanguageModel | Input parameter. The language model to use for the agent. |
vectorstore | VectorStoreInfo | Input parameter. The vector store information for the agent to use. |
agent | AgentExecutor | Output parameter. The Vector Store Agent instance. |
VectorStoreRouterAgent
此组件使用 LangChain 创建向量存储路由代理。
它接受以下参数:
Name | Type | Description |
---|---|---|
llm | LanguageModel | Input parameter. The language model to use for the agent. |
vectorstores | List[VectorStoreInfo] | Input parameter. The list of vector store information for the agent to route between. |
agent | AgentExecutor | Output parameter. The Vector Store Router Agent instance. |