简易向量存储节点#
使用Simple Vector Store节点在n8n应用内内存中存储和检索embeddings。
本页面将介绍Simple Vector Store节点的参数配置,并提供更多相关资源的链接。
子节点中的参数解析
在使用表达式处理多个项目时,子节点的行为与其他节点不同。
大多数节点(包括根节点)可以接收任意数量的项目作为输入,处理这些项目并输出结果。您可以使用表达式来引用输入项,节点会依次为每个项目解析该表达式。例如,给定五个name值的输入,表达式{{ $json.name }}会依次解析为每个名称。
在子节点中,表达式总是解析为第一项。例如,给定五个name值输入时,表达式{{ $json.name }}总是解析为第一个名称。
仅限开发使用
This node stores data in memory only and isn't recommended for production use. All data is lost when n8n restarts and may also be purged in low-memory conditions.
节点使用模式#
您可以在以下模式中使用Simple Vector Store节点。
作为常规节点使用以插入和检索文档#
您可以将Simple Vector Store作为常规节点使用,用于插入或获取文档。这种模式将Simple Vector Store置于常规连接流中,而不使用智能体。
你可以在此模板的第2步中查看示例。
直接连接AI智能体作为工具#
您可以将Simple Vector Store节点直接连接到工具连接器上的AI智能体,以便在回答查询时将向量存储作为资源使用。
这里的连接关系是:AI智能体(工具连接器)-> 简单向量存储节点。
使用检索器获取文档#
你可以将Vector Store Retriever节点与Simple Vector Store节点配合使用,从Simple Vector Store节点获取文档。这通常与Question and Answer Chain节点一起使用,从向量存储中获取与给定聊天输入匹配的文档。
一个连接流程示例(链接示例使用Pinecone,但模式相同)如下:问答链(检索器连接器)-> 向量存储检索器(向量存储连接器)-> 简单向量存储。
使用向量存储问答工具来回答问题#
另一种模式使用Vector Store Question Answer Tool来汇总结果并回答来自Simple Vector Store节点的问题。这种模式不是直接将Simple Vector Store作为工具连接,而是使用专门设计用于汇总向量存储中数据的工具。
在这种情况下,connections flow将如下所示:AI智能体(工具连接器)->向量存储问答工具(向量存储连接器)->简单向量存储。
内存管理#
Simple Vector Store 实现了内存管理功能,以防止内存使用过量:
- 当内存压力增加时自动清理旧的向量存储
- 移除那些在可配置时间内未被访问的非活跃存储
- 每个工作流都有其独立的存储空间,由工作流ID和内存键标识
配置选项#
您可以通过以下环境变量控制内存使用:
| 变量 | 类型 | 默认值 | 描述 |
|---|---|---|---|
N8N_VECTOR_STORE_MAX_MEMORY |
Number | -1 | Maximum memory in MB allowed for all vector stores combined (-1 to disable limits). |
N8N_VECTOR_STORE_TTL_HOURS |
Number | -1 | Hours of inactivity after which a store gets removed (-1 to disable TTL). |
在n8n Cloud上,这些值预设为100MB(约8000个文档,具体取决于文档大小和元数据)和7天。对于自托管实例,两个值默认为-1(无内存限制或基于时间的清理)。
节点参数#
操作模式#
该向量存储节点具有四种模式:获取多条、插入文档、检索文档(作为链/工具的向量存储)和检索文档(作为AI智能体的工具)。您选择的模式决定了节点可执行的操作以及可用的输入和输出。
获取多个#
在此模式下,您可以通过提供提示从向量数据库中检索多个文档。该提示将被嵌入并用于相似性搜索。节点将返回与提示最相似的文档及其相似度分数。如果您想检索相似文档列表并将其作为额外上下文传递给智能体,此功能非常有用。
插入文档#
使用插入文档模式将新文档插入到您的向量数据库中。
检索文档(作为链/工具的向量存储)#
使用"检索文档(作为链/工具的向量存储)"模式配合向量存储检索器,从向量数据库中检索文档并将其提供给连接到链的检索器。在此模式下,必须将该节点连接到检索器节点或根节点。
检索文档(作为AI智能体的工具)#
使用"检索文档(作为AI智能体工具)"模式,在回答查询时将向量存储作为工具资源使用。当智能体在构建响应时,如果向量存储的名称和描述与问题细节匹配,则会使用该向量存储。
获取多个参数#
- 记忆键: 输入用于在工作流数据中存储向量记忆的键名。n8n会自动添加工作流ID作为前缀以避免冲突。
- 提示: 输入搜索查询。
- 限制: 输入要从向量存储中检索的结果数量。例如,设置为
10可获取最佳的十个结果。
插入文档参数#
- 记忆键: 输入用于在工作流数据中存储向量记忆的键名。n8n会自动添加工作流ID作为前缀以避免冲突。
- 清空存储: 使用此参数控制是否在插入数据前清除此工作流指定记忆键的向量存储(默认开启)。
检索文档(作为链/工具的向量存储)参数#
- 记忆键: 输入用于在工作流数据中存储向量记忆的键名。n8n会自动添加工作流ID作为前缀以避免冲突。
检索文档(作为AI智能体的工具)参数#
- 名称: 向量存储的名称。
- 描述: 向大语言模型解释这个工具的功能。一个具体清晰的描述能让大语言模型更频繁地产生预期结果。
- 记忆键: 输入用于在工作流数据中存储向量记忆的键名。n8n会自动添加工作流ID作为前缀以避免冲突。
- Limit: 输入要从向量存储中检索的结果数量。例如,设置为
10可获取最佳的十个结果。
模板和示例#
相关资源#
有关该服务的更多信息,请参阅LangChains的内存向量存储文档。
查看n8n的高级AI文档。
AI术语表#
- completion: 补全(completion)是指由GPT等模型生成的响应内容。
- 幻觉: AI中的幻觉是指大型语言模型(LLM)错误地感知到不存在的模式或对象。
- 向量数据库: 向量数据库存储信息的数学表示。与嵌入和检索器配合使用,可创建AI在回答问题时能够访问的数据库。
- 向量存储: 向量存储(或称向量数据库)用于存储信息的数学表示。结合嵌入模型和检索器使用,可创建供AI在回答问题时访问的数据库。