跳到主要内容

PGVector 向量存储节点#

PGVector 是 PostgreSQL 的扩展功能。通过此节点可与 PostgreSQL 数据库中的 PGVector 表进行交互。您可以将文档插入向量表、从向量表获取文档、检索文档以提供给连接至的检索器,或直接作为工具连接至智能体

凭证认证

此节点的身份验证信息请参阅此处

子节点中的参数解析

使用表达式处理多项数据时,子节点的行为模式与其他节点不同。

多数节点(包括根节点)可接收任意数量的输入项进行处理并输出结果。您可以使用表达式引用输入项,节点会依次解析每个输入项对应的表达式。例如输入五个name值时,表达式{{ $json.name }}会依次解析每个名称。

在子节点中,表达式始终解析首个输入项。例如输入五个name值时,表达式{{ $json.name }}始终解析第一个名称。

节点使用模式#

PGVector 向量存储节点支持以下使用模式。

作为常规节点插入和检索文档#

可将 PGVector 向量存储作为常规节点进行文档插入或获取操作。此模式将 PGVector 向量存储置于常规连接流中,无需使用智能体。

具体应用示例可参考此模板的场景1(该模板使用 Supabase 向量存储,但模式原理相同)。

作为工具直接连接 AI 智能体#

可将 PGVector 向量存储节点直接连接至 AI 智能体的工具连接器,使向量存储在回答查询时作为资源使用。

此时连接方式为:AI 智能体(工具连接器)→ PGVector 向量存储节点。

使用检索器获取文档#

可将向量存储检索器节点与 PGVector 向量存储节点配合使用,从 PGVector 向量存储节点获取文档。此模式常与问答链节点搭配使用,以从向量存储中获取与当前聊天输入匹配的文档。

连接流示例(链接示例使用 Pinecone,但模式原理相同)为:问答链(检索器连接器)→ 向量存储检索器(向量存储连接器)→ PGVector 向量存储。

使用向量存储问答工具回答问题#

另一种模式使用向量存储问答工具来总结 PGVector 向量存储节点的结果并回答问题。此模式并非直接将 PGVector 向量存储作为工具连接,而是使用专门用于总结向量存储中数据的工具。

此模式的连接流(链接示例使用简单向量存储,但模式原理相同)如下:AI 智能体(工具连接器)→ 向量存储问答工具(向量存储连接器)→ 简单向量存储。

节点参数#

操作模式#

此向量存储节点提供四种模式:获取多项插入文档检索文档(作为链/工具的向量存储)检索文档(作为 AI 智能体的工具)。所选模式将决定节点可执行的操作及可用输入输出项。

获取多项#

在此模式下,可通过输入提示词从向量数据库检索多个文档。提示词会经过嵌入处理并用于相似性搜索,节点将返回与提示词最相似的文档及其相似度评分。若需检索相似文档列表并将其作为附加上下文传递给智能体,此模式非常实用。

插入文档#

使用插入文档模式可将新文档插入向量数据库。

检索文档(作为链/工具的向量存储)#

检索文档(作为链/工具的向量存储)模式需与向量存储检索器配合使用,从向量数据库检索文档并提供给连接至链的检索器。此模式下必须将节点连接至检索器节点或根节点。

检索文档(作为 AI 智能体的工具)#

使用检索文档(作为 AI 智能体的工具)模式可在回答查询时将向量存储作为工具资源使用。当向量存储名称和描述与问题细节匹配时,智能体将在构建回复时使用该向量存储。

重排结果#

启用重排功能。启用后需将重排节点连接至向量存储,该节点将对查询结果进行重排。此选项适用于获取多项检索文档(作为链/工具的向量存储)检索文档(作为 AI 智能体的工具)模式。

获取多项参数#

  • 表名称:输入要查询的表名
  • 提示词:输入搜索查询内容
  • 数量限制:设置从向量存储检索的结果数量。例如设为10可获取最优的十个结果

插入文档参数#

  • 表名称:输入要查询的表名

检索文档参数(作为链/工具的向量存储)#

  • 表名称:输入要查询的表名

检索文档(作为 AI 智能体的工具)参数#

  • 名称:向量存储的名称
  • 描述:向大语言模型说明此工具的功能。准确具体的描述有助于大语言模型更稳定地输出预期结果
  • 表名称:输入要使用的 PGVector 表
  • 数量限制:设置从向量存储检索的结果数量。例如设为10可获取最优的十个结果

节点选项#

集合#

PGVector 中用于分隔数据集的方式,通过创建独立表和列来追踪向量所属的集合。

  • 使用集合:选择是否使用集合(开启/关闭)
  • 集合名称:输入要使用的集合名称
  • 集合表名称:输入存储集合信息的表名称

列名称#

以下选项用于指定存储向量及对应信息的列名称:

  • ID 列名称
  • 向量列名称
  • 内容列名称
  • 元数列名称

元数据过滤#

适用于获取多项模式。搜索数据时,通过此功能匹配与文档关联的元数据。

此为AND查询。若指定多个元数据过滤字段,则需全部匹配才生效。

插入数据时,元数据通过文档加载器设置。关于加载文档的更多信息,请参阅默认数据加载器

模板与示例#

支持语音转录的人力资源与 IT 服务台聊天机器人

作者:Felipe Braga

查看模板详情

可视化参考库中的 n8n 节点探索

作者:I versus AI

查看模板详情

具备 RAG、CRM 日志记录与预约功能的跨平台 AI 销售助手

作者:Vansh Arora

查看模板详情

浏览 PGVector 向量存储集成模板搜索所有模板

相关资源#

更多服务相关信息请参阅 LangChain 的 PGVector 文档

查看 n8n 的高级 AI 文档。

自托管 AI 入门套件#

初次接触 AI 并使用自托管 n8n?尝试 n8n 的自托管 AI 入门套件,通过 Ollama、Qdrant 和 PostgreSQL 快速构建概念验证或演示环境。