跳到主要内容

SQL AI 代理节点#

功能已移除

n8n 已于 2025 年 2 月移除此功能。

SQL 代理使用 SQL 数据库作为数据源。它能够理解自然语言问题,将其转换为 SQL 查询语句,执行查询,并以用户友好的格式呈现结果。该代理对于构建数据库的自然语言接口具有重要价值。

有关 AI 代理节点本身的更多信息,请参阅 AI 代理

节点参数#

通过以下参数配置 SQL 代理:

数据源#

选择作为节点数据源的数据库。选项包括:

  • MySQL:选择此选项以使用 MySQL 数据库。
    • 同时选择 MySQL 凭据
  • SQLite:选择此选项以使用 SQLite 数据库。
    • 必须在代理节点前添加 读写磁盘文件 节点来读取 SQLite 文件。
    • 同时输入来自读写磁盘文件节点的 SQLite 文件 输入二进制字段 名称。
  • Postgres:选择此选项以使用 Postgres 数据库。
    • 同时选择 Postgres 凭据

Postgres 和 MySQL 代理

若使用 PostgresMySQL,此代理不支持凭据隧道选项。

提示语#

选择节点构建提示语的方式(也称为用户查询或聊天输入):

  • 自动从前序节点获取:选择此选项时,节点将从前序节点名为 chatInput 的输入中获取内容
  • 下方定义:选择此选项时,在 提示语(用户消息) 字段中提供静态文本或动态内容表达式作为提示语

节点选项#

通过以下选项优化 SQL 代理节点的行为:

忽略表#

若需要节点忽略数据库中的特定表,请输入以逗号分隔的表名列表。

若留空,代理将不忽略任何表。

包含样本行数#

输入要包含在代理提示语中的样本行数。默认值为 3

样本行有助于代理理解数据库架构,但也会增加使用的令牌数量。

包含表#

若仅需包含数据库中的特定表,请输入以逗号分隔的要包含的表名列表。

若留空,代理将包含所有表。

前缀提示语#

输入要在 提示语 文本之前发送给代理的消息。此初始消息可为代理提供更多上下文和指导,说明其可执行和不可执行的操作以及响应格式。

n8n 在此字段中预填了示例内容。

后缀提示语#

输入要在 提示语 文本之后发送给代理的消息。

可用的 LangChain 表达式:

  • {chatHistory}:当前对话的消息历史记录,有助于保持上下文连贯
  • {input}:包含用户提示语
  • {agent_scratchpad}:供下一次迭代记忆的信息

n8n 在此字段中预填了示例内容。

限制#

输入要返回的最大结果数量。

默认值为 10

模板与示例#

请参阅主 AI 代理节点的 模板与示例 部分。

常见问题#

关于常见问题/故障及建议解决方案,请参阅 常见问题