Redis 向量存储节点#
使用 Redis 向量存储节点可将 Redis 数据库作为向量存储进行交互。您可以将文档插入向量数据库、从向量数据库获取文档、使用连接到链的检索器检索文档,或直接将其连接到智能体作为工具使用。
本页将介绍 Redis 向量存储节点的参数配置,并提供相关资源链接。
凭证认证
此节点的身份验证信息请参阅此处。
子节点中的参数解析
使用表达式处理多个数据项时,子节点的行为与其他节点不同。
大多数节点(包括根节点)可接受任意数量的数据项作为输入,处理这些数据项后输出结果。您可以使用表达式引用输入数据项,节点会依次解析每个数据项对应的表达式。例如,给定五个name值作为输入,表达式{{ $json.name }}会依次解析为每个名称。
在子节点中,表达式始终解析为第一个数据项。例如,给定五个name值作为输入,表达式{{ $json.name }}始终解析为第一个名称。
前置要求#
使用此节点前,需准备已启用 Redis 查询引擎的 Redis 数据库。可选择以下方案:
- Redis 开源版(v8.0 及更高版本)- 默认包 含 Redis 查询引擎
- Redis Cloud - 全托管服务
- Redis Software - 自主部署方案
如果尚未创建索引,系统将自动创建新索引。
仅当需要使用自定义索引架构或复用现有索引时,才需要提前创建索引。否则可跳过此步骤,由节点根据您指定的选项创建新索引。
节点使用模式#
Redis 向量存储节点支持以下使用模式:
作为常规节点插入和检索文档#
可将 Redis 向量存储作为常规节点插入或获取文档。此模式将 Redis 向量存储置于常规连接流中,无需使用智能体。
此模板的场景1展示了具体示例(该模板使用 Supabase 向量存储,但模式相同)。
直接连接 AI 智能体作为工具#
可将 Redis 向量存储节点直接连接到 AI 智能体的工具连接器,使向量存储在回答查询时作为资源使用。
此时连接方式为:AI 智能体(工具连接器)-> Redis 向量存储节点。
使用检索器获取文档#
可将向量存储检索器节点与 Redis 向量存储节点配合使用,从 Redis 向量存储节点获取文档。此模式常与问答链节点结合使用,从向量存储中获取与给定聊天输入匹配的文档。
连接流示例(链接示例使用 Pinecone,但模式相同)为:问答链(检索器连接器)-> 向量存储检索器(向量存储连接器)-> Redis 向量存储。
使用向量存储问答工具回答问题#
另一种模式使用向量存储问答工具总结结果并回答来自 Redis 向量存储节点的问题。此模式不是将 Redis 向量存储直接作为工具连接,而是使用专门设计的工具来总结向量存储中的数据。
此种情况的连接流(链接示例使用 Qdrant,但模式相同)为:AI 智能体(工具连接器)-> 向量存储问答工具(向量存储连接器)-> Redis 向量存储。
节点参数#
操作模式#
此向量存储节点提供四种模式:获取多个、插入文档、检索文档(作为链/工具的向量存储) 和 检索文档(作为 AI 智能体的工具)。所选模式决定了节点可执行的操作以及可用的输入输出。
获取多个#
在此模式下,可通过提供提示词从向量数据库检索多个文档。提示词会被嵌入并用于相似性搜索。节点返回与提示词最相似的文档及其相似度分数。适用于需要检索相似文档列表并将其作为附加上下文传递给智能体的场景。
插入文档#
使用插入文档模式可将新文档插入向量数据库。
检索文档(作为链/工具的向量存储)#
此模式需与向量存储检索器配合使用,从向量数据库检索文档并提供给连接到链的检索器。在此模式下必须将节点连接到检索器节点或根节点。
检索文档(作为 AI 智能体的工具)#
使用此模式可在回答查询时将向量存储作为工具资源使用。当向量存储名称和描述与问题细节匹配时,智能体会在构 建响应时使用向量存储。
重排结果#
启用重排功能。启用此选项后,必须将重排节点连接到向量存储。该节点将对查询结果进行重排。此选项可用于获取多个、检索文档(作为链/工具的向量存储)和检索文档(作为 AI 智能体的工具)模式。
获取多个参数#
- Redis 索引:输入要使用的 Redis 向量搜索索引名称。也可从列表中选择现有索引。
- 提示词:输入搜索查询。
- 限制:输入要从向量存储检索的结果数量。例如设置为
10可获取十个最佳结果。
此操作模式包含一个节点选项:元数据过滤器。
插入文档参数#
- Redis 索引:输入要使用的 Redis 向量搜索索引名称。也可从列表中选择现有索引。
检索文档(作为链/工具的向量存储)参数#
- Redis 索引:输入要使用的 Redis 向量搜索索引名称。
此操作模式包含一个节点选项:元数据过滤器。也可从列表中选择现有索引。
检索文档(作为 AI 智能体的工具)参数#
- 名称:向量存储的名称。
- 描述:向 LLM 说明此工具的功能。具体准确的描述可让 LLM 更频繁地产生预期结果。
- Redis 索引:输入要使用的 Redis 向量搜索索引名称。也可从列表中选择现有索引。
- 限制:输入要从向量存储检索的结果数量。例如设置为
10可获取十个最佳结果。
包含元数据#
是否包含文档元数据。
此选项可用于获取多个和检索文档(作为 AI 智能体的工具)模式。
节点选项#
元数据过滤器#
元数据过滤器适用于获取多个、检索文档(作为链/工具的向量存储)和检索文档(作为 AI 智能体的工具)操作模式。
此为OR查询。如果指定多个元数据过滤字段,则至少有一个字段必须匹配。
插入数据时,元数据通过文档加载器设置。有关加载文档的更多信息,请参阅默认数据加载器。
Redis 配置选项#
适用于所有操作模式:
- 元数据键:输入 Redis 哈希中元数据字 段的键(默认:
metadata)。 - 键前缀:输入存储文档的键前缀(默认:
doc:)。 - 内容键:输入 Redis 哈希中内容字段的键(默认:
content)。 - 嵌入键:输入 Redis 哈希中嵌入字段的键(默认:
embedding)。
插入选项#
适用于插入文档操作模式:
- 覆盖文档:选择是否覆盖现有文档(开启)或不覆盖(关闭)。同时会删除索引。
- 生存时间:输入文档的生存时间(秒)。不会使索引过期。
模板和示例#
可视化参考库中探索 n8n 节点
作者 I versus AI
🐶 宠物店预约 AI 智能体
作者 Bruno Dias
🤖 餐厅与配送自动化的 AI 驱动 WhatsApp 助手
作者 Bruno Dias
相关资源#
参考:
- Redis 向量搜索文档获取 Redis 向量功能详情。
- RediSearch 文档获取 RediSearch 相关信息。
- LangChain 的 Redis 向量存储文档获取服务详情。
查看 n8n 的高级 AI 文档。
自托管 AI 入门套件#
初次接触 AI 并使用自托管 n8n?尝试 n8n 的自托管 AI 入门套件,通过 Ollama、Qdrant 和 PostgreSQL 快速创建概念验证或演示环境。