Redis Vector Store 节点#
使用 Redis Vector Store 节点将你的 Redis 数据库作为向量存储进行交互。你可以将文档插入向量数据库、从向量数据库获取文档、使用连接到链的检索器检索文档,或将其直接连接到代理以用作工具。
在此页面上,你将找到 Redis Vector Store 节点的节点参数以及更多资源的链接。
凭据
你可以在这里找到此节点的身份验证信息。
子节点中的参数解析
子节点在使用表达式处理多个项目时的行为与其他节点不同。
大多数节点,包括根节点,接受任意数量的项目作为输入,处理这些项目,并输出结果。您可以使用表达式引用输入项目,节点会依次为每个项目解析表达式。例如,给定五个 name 值的输入,表达式 {{ $json.name }} 会依次解析为每个名称。
在子节点中,表达式始终解析为第一个项目。例如,给定五个 name 值的输入,表达式 {{ $json.name }} 始终解析为第一个名称。
先决条件#
在使用此节点之前,你需要一个启用了 Redis Query Engine 的 Redis 数据库。使用以下选项之一: - Redis Open Source(v8.0 及更高版本)- 默认包含 Redis Query Engine - Redis Cloud - 完全托管的服务 - Redis Software - 自管理部署
如果你没有索引,将创建一个新索引。
只有在你想要使用自定义索引架构或重用现有索引时,才需要提前创建自己的索引。 否则,你可以跳过此步骤,让节点根据你指定的选项为你创建新索引。
节点使用模式#
你可以在以下模式中使用 Redis Vector Store 节点:
用作常规节点来插入和检索文档#
你可以将 Redis Vector Store 用作常规节点来插入或获取文档。此模式将 Redis Vector Store 放置在常规连接流中而不使用代理。
你可以在此模板的场景 1 中看到此示例(模板使用 Supabase Vector Store,但模式相同)。
直接连接到 AI 代理作为工具#
你可以将 Redis Vector Store 节点直接连接到 AI 代理的工具连接器,以在回答查询时将向量存储用作资源。
在这里,连接将是:AI agent(tools 连接器)-> Redis Vector Store 节点。
使用检索器获取文档#
你可以将 Vector Store Retriever 节点与 Redis Vector Store 节点一起使用,从 Redis Vector Store 节点获取文档。这通常与 Question and Answer Chain 节点一起使用,从向量存储中获取与给定聊天输入匹配的文档。
连接流示例(链接的示例使用 Pinecone,但模式相同)将是:Question and Answer Chain(Retriever 连接器)-> Vector Store Retriever(Vector Store 连接器)-> Redis Vector Store。
使用 Vector Store Question Answer Tool 回答问题#
另一种模式使用 Vector Store Question Answer Tool 来总结结果并回答来自 Redis Vector Store 节点的问题。此模式使用专门设计用于总结向量存储中数据的工具,而不是将 Redis Vector Store 直接连接作为工具。
在这种情况下,连接流(链接的示例使用 Qdrant,但模式相同)如下所示:AI agent(tools 连接器)-> Vector Store Question Answer Tool(Vector Store 连接器)-> Redis Vector store。
节点参数#
操作模式#
此向量存储节点有四种模式:获取多个、插入文档、检索文档(作为链/工具的向量存储)和检索文档(作为 AI 代理的工具)。您选择的模式决定了您可以使用节点执行的操作以及可用的输入和输出。
Get Many 获取多个#
在此模式下,您可以通过提供提示从向量数据库中检索多个文档。提示会被嵌入并用于相似性搜索。节点返回与提示最相似的文档及其相似性分数。如果您想检索相似文档列表并将其作为附加上下文传递给代理,这很有用。
Insert Documents 插入文档#
使用插入文档模式将新文档插入到您的向量数据库中。
Retrieve Documents (as Vector Store for Chain/Tool) 检索文档(作为链/工具的向量存储)#
使用检索文档(作为链/工具的向量存储)模式与向量存储检索器一起从向量数据库检索文档并将其提供给连接到链的检索器。在此模式下,您必须将节点连接到检索器节点或根节点。
Retrieve Documents (as Tool for AI Agent) 检索文档(作为 AI 代理的工具)#
使用检索文档(作为 AI 代理的工具)模式在回答查询时将向量存储用作工具资源。在制定响应时,当向量存储名称和描述与问题详情匹配时,代理会使用向量存储。
Rerank Results 重新排序结果#
重新排序结果#
启用重新排序。如果启用此选项,您必须将重新排序节点连接到向量存储。然后该节点将为查询重新排序结果。您可以在 获取多个、检索文档(作为链/工具的向量存储)和检索文档(作为 AI 代理的工具)模式下使用此选项。
Get Many 参数#
- Redis Index Redis 索引:输入要使用的 Redis 向量搜索索引的名称。可选择从列表中选择现有索引。
- Prompt 提示:输入搜索查询。
- Limit 限制:输入要从向量存储检索的结果数量。例如,将其设置为
10以获取十个最佳结果。
此操作模式包括一个节点选项,Metadata Filter 元数据过滤器。
Insert Documents 参数#
- Redis Index Redis 索引:输入要使用的 Redis 向量搜索索引的名称。可选择从列表中选择现有索引。
Retrieve Documents (As Vector Store for Chain/Tool) 参数#
- Redis Index Redis 索引:输入要使用的 Redis 向量搜索索引的名称。
此操作模式包括一个节点选项,Metadata Filter 元数据过滤器。可选择从列表中选择现有索引。
Retrieve Documents (As Tool for AI Agent) 参数#
- Name 名称:向量存储的名称。
- Description 描述:向 LLM 解释此工具的作用。良好、具体的描述可以让 LLM 更频繁地产生预期结果。
- Redis Index Redis 索引:输入要使用的 Redis 向量搜索索引的名称。可选择从列表中选择现有索引。
- Limit 限制:输入要从向量存储检索的结果数量。例如,将其设置为
10以获取十个最佳结果。
Include Metadata 包含元数据#
是否包含文档元数据。
你可以将此选项与 Get Many 和 Retrieve Documents (As Tool for AI Agent) 模式一起使用。
节点选项#
Metadata Filter 元数据过滤器#
元数据过滤器可用于 Get Many、Retrieve Documents (As Vector Store for Chain/Tool) 和 Retrieve Documents (As Tool for AI Agent) 操作模式。
这是一个 OR 查询。如果你指定多个元数据过滤器字段,至少有一个必须匹配。
插入数据时,使用文档加载器设置元数据。有关加载文档的更多信息,请参考 Default Data Loader。
Redis Configuration Options Redis 配置选项#
适用于所有操作模式:
- Metadata Key 元数据键:输入 Redis 哈希中元数据字段的键(默认值:
metadata)。 - Key Prefix 键前缀:输入用于存储文档的键前缀(默认值:
doc:)。 - Content Key 内容键:输入 Redis 哈希中内容字段的键(默认值:
content)。 - Embedding Key 嵌入键:输入 Redis 哈希中嵌入字段的键(默认值:
embedding)。
Insert Options 插入选项#
适用于 Insert Documents 操作模式:
- Overwrite Documents 覆盖文档:选择是否覆盖现有文档(打开)或不覆盖(关闭)。还会删除索引。
- Time-to-Live 生存时间:输入文档的生存时间(秒)。不会使索引过期。
模板和示例#
相关资源#
参考:
- Redis Vector Search 文档,了解有关 Redis 向量功能的更多信息。
- RediSearch 文档,了解有关 RediSearch 的更多信息。
- LangChain 的 Redis Vector Store 文档,了解有关该服务的更多信息。
查看 n8n 的高级 AI文档。
自托管 AI 入门套件#
刚开始使用 AI 和自托管 n8n?尝试 n8n 的自托管 AI 入门套件,使用 Ollama、Qdrant 和 PostgreSQL 开始概念验证或演示游乐场。