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代码。

模板和示例#

🤖 AI Powered RAG Chatbot for Your Docs + Google Drive + Gemini + Qdrant

by Joseph LePage

View template details
Telegram AI bot with LangChain nodes

by n8n Team

View template details
Agentic Telegram AI bot with with LangChain nodes and new tools

by Yulia

View template details
Browse LangChain 代码 integration templates, or search all templates

相关资源#

查看 n8n 的高级 AI文档。

AI 术语表#

  • completion(完成/补全): 完成是由 GPT 等模型生成的响应。
  • hallucinations(幻觉): AI 中的幻觉是指大语言模型(LLM)错误地感知到不存在的模式或对象。
  • vector database(向量数据库): 向量数据库存储信息的数学表示。与嵌入和检索器一起使用,创建 AI 在回答问题时可以访问的数据库。
  • vector store(向量存储): 向量存储或向量数据库,存储信息的数学表示。与嵌入和检索器一起使用,创建 AI 在回答问题时可以访问的数据库。