Skip to content

LangChain Code 节点#

使用 LangChain Code 节点导入 LangChain。这意味着如果您需要 n8n 尚未创建节点的功能,您仍然可以使用它。通过配置 LangChain Code 节点连接器,您可以将其用作常规节点、根节点或子节点。

在此页面上,您将找到节点参数、配置节点的指导和更多资源的链接。

云端不可用

此节点仅在自托管的 n8n 上可用。

节点参数#

Add Code 添加代码#

添加您的自定义代码。选择 Execute 执行Supply Data 提供数据 模式。您只能使用一种模式。

Code 节点 不同,LangChain Code 节点不支持 Python。

  • Execute 执行:像 n8n 自己的 Code 节点一样使用 LangChain Code 节点。这从工作流程中获取输入数据,处理它,并将其作为节点输出返回。此模式需要主输入和输出。您必须在 InputsOutputs 中创建这些连接。
  • Supply Data 提供数据:将 LangChain Code 节点用作子节点,向根节点发送数据。这使用主输出以外的输出。

默认情况下,您无法在此节点中加载内置或外部模块。自托管用户可以启用内置和外部模块

Inputs 输入#

选择输入类型。

主输入是所有 n8n 工作流程中的常规连接器。如果您在节点中设置了主输入和输出,则需要 Execute 代码。

Outputs 输出#

选择输出类型。

主输出是所有 n8n 工作流程中的常规连接器。如果您在节点中设置了主输入和输出,则需要 Execute 代码。

节点输入和输出配置#

通过配置 LangChain Code 节点连接器(输入和输出),您可以将其用作应用程序节点、根节点或子节点。

Screenshot of a workflow with four LangChain nodes, configured as different node types

节点类型 输入 输出 代码模式
应用程序节点。类似于 Code 节点 Main Main Execute
根节点 Main;至少一个其他类型 Main Execute
子节点 - 主要以外的类型。必须匹配您要连接到的输入类型。 Supply Data
带有子节点的子节点 主要以外的类型 主要以外的类型。必须匹配您要连接到的输入类型。 Supply Data

内置方法#

n8n 提供这些方法,使在 LangChain Code 节点中执行常见任务变得更容易。

方法 描述
this.addInputData(inputName, data) 填充指定非主输入的数据。用于模拟数据。
  • inputName 是输入连接类型,必须是以下之一:ai_agentai_chainai_documentai_embeddingai_languageModelai_memoryai_outputParserai_retrieverai_textSplitterai_toolai_vectorRetrieverai_vectorStore
  • data 包含您要添加的数据。有关 n8n 期望的数据结构信息,请参阅数据结构
this.addOutputData(outputName, data) 填充指定非主输出的数据。用于模拟数据。
  • outputName 是输出连接类型,必须是以下之一:ai_agentai_chainai_documentai_embeddingai_languageModelai_memoryai_outputParserai_retrieverai_textSplitterai_toolai_vectorRetrieverai_vectorStore
  • data 包含您要添加的数据。有关 n8n 期望的数据结构信息,请参阅数据结构
this.getInputConnectionData(inputName, itemIndex, inputIndex?) 从指定的非主输入获取数据。
  • inputName 是输入连接类型,必须是以下之一:ai_agentai_chainai_documentai_embeddingai_languageModelai_memoryai_outputParserai_retrieverai_textSplitterai_toolai_vectorRetrieverai_vectorStore
  • itemIndex 应始终为 0(此参数将在即将推出的功能中使用)
  • 如果有多个节点连接到指定输入,请使用 inputIndex
this.getInputData(inputIndex?, inputName?) 从主输入获取数据。
this.getNode() 获取当前节点。
this.getNodeOutputs() 获取当前节点的输出。
this.getExecutionCancelSignal() 用于在工作流停止时停止函数的执行。在大多数情况下 n8n 会处理这个问题,但如果您构建自己的链或代理,可能需要使用它。它替代了在正常构建 LangChain 应用程序时使用的取消正在运行的 LLMChain代码。

模板和示例#

Template widget placeholder.

相关资源#

查看 n8n 的高级 AI文档。