Vector Store Retriever sub-node fails at runtime with Cannot read properties of undefined (reading ‘asRetriever’) when used with Question an

该报错通常发生在用 Question and Answer Chain(chainRetrievalQa)接收 Vector Store Retriever(retrieverVectorStore)子节点输出的场景;问题在运行期出现,静态配置看起来正常。优先排查 n8n 版本是否已包含该修复,而不

快速结论:该报错通常发生在用 Question and Answer Chain(chainRetrievalQa)接收 Vector Store Retriever(retrieverVectorStore)子节点输出的场景;问题在运行期出现,静态配置看起来正常。优先排查 n8n 版本是否已包含该修复,而不是反复调整 Vector Store 或 Embeddings 参数。

适用环境:Issue 中确认的环境为 n8n Cloud,n8n 2.28.5,Node.js 由 n8n Cloud 托管,数据库为 SQLite(默认),执行模式为 main(默认)。涉及的节点版本:Question and Answer Chain v1.7、Vector Store Retriever v1、Pinecone Vector Store v1.3、Simple Vector Store v1.3、OpenAI Chat Model v1.3。

最快修复方案:暂无确认的一步修复方案。Issue 已关闭并说明修复会包含在后续版本中,可优先尝试升级到包含该修复的新版本 n8n 后重新执行工作流。

注意事项:Issue 未给出具体修复版本号,也没有说明升级后必须执行的额外操作;不要据此修改 Vector Store 节点参数或 Embeddings 配置。若升级后问题仍复现,应在原 Issue 下留言反馈。

问题场景

用户在 n8n 中搭建聊天问答工作流:Chat Trigger → Question and Answer Chain,并为 Chain 接入 OpenAI Chat Model 作为 ai_languageModel 输入,接入 Vector Store Retriever 作为 ai_retriever 输入;Retriever 下再连接处于 retrieve 模式的 Vector Store(附 Embeddings 子节点)。执行工作流并输入任意聊天内容时,Vector Store Retriever 子节点在运行期失败。该问题在 Pinecone Vector Store 和 Simple / In-Memory Vector Store 上都能复现,因此与具体向量库提供商无关。

报错原文

Error in sub-node Vector Store Retriever — Cannot read properties of undefined (reading 'asRetriever')

另外,将 Vector Store 直接连接到 Question and Answer Chain(绕过 Retriever)会报:

retrieveDocumentsChain.withConfig is not a function

原因分析

从报错来看,Question and Answer Chain 通过 Retriever 获取向量库对象时,取到的是 undefined,随后读取其 asRetriever 属性时抛出异常。问题只出现在 Question and Answer Chain + Vector Store Retriever 这条路径上;同样使用 Vector Store 的 retrieve-as-tool 模式配合 AI Agent 则工作正常。因此可能原因是 Chain 与 Retriever 子节点之间的运行期连接或对象解析存在缺陷,而不是静态参数缺失或凭据错误。绕过 Retriever 直接连接 Vector Store 时报 retrieveDocumentsChain.withConfig is not a function,也说明 Chain 依赖 Retriever 子节点完成向量库到检索器的转换。Issue 未公布根因细节,上述为基于报错与复现信息的推断。

环境排查

  • 确认 n8n 版本:Issue 报告版本为 2.28.5,先确认当前实例是否已升级到包含修复的后续版本。
  • 确认部署方式:Issue 为 n8n Cloud;自托管实例需确认升级渠道和版本。
  • 确认节点版本:Question and Answer Chain v1.7、Vector Store Retriever v1、Pinecone Vector Store v1.3、Simple Vector Store v1.3、OpenAI Chat Model v1.3。
  • 确认工作流连接关系:Question and Answer Chain 的 ai_retriever 输入是否由 Vector Store Retriever 提供,Retriever 的 ai_vectorStore 输入是否连接处于 retrieve 模式的 Vector Store。
  • 排除提供商因素:Issue 已在 Pinecone 和 In-Memory 两种 Vector Store 上复现,无需只针对某一向量库排查。

解决步骤

  1. 先确认当前 n8n 版本,记录 Editor → About n8n / Settings 中显示的版本信息。
  2. 将该工作流另存或导出备份,便于升级后复测和对比。
  3. 升级到包含该修复的较新 n8n 版本;Issue 只说明修复会进入后续版本,未给出具体版本号,可优先尝试升级到最新可用版本。
  4. 升级后重新打开原工作流,保持 Chat Trigger → Question and Answer Chain → Vector Store Retriever → Vector Store(retrieve 模式)的连接结构不变。
  5. 重新执行工作流并输入聊天内容,观察 Vector Store Retriever 子节点是否仍报 asRetriever 错误。
  6. 若问题仍存在,回到原 Issue 留言,并附上升级后的 n8n 版本、节点版本和完整子节点报错信息。

验证方法

用与复现步骤相同的结构执行工作流:Chat Trigger 输入任意问题,Question and Answer Chain 应能通过 Vector Store Retriever 查询向量库,并返回基于检索文档的答案;执行记录中 Vector Store Retriever 子节点不再出现 Cannot read properties of undefined (reading ‘asRetriever’)。如果仍报错,则说明当前版本尚未包含修复,或需要进一步反馈。

参考来源

n8n-io/n8n #33452

GamsGo AI

AI 工具推荐

想把多个 AI 模型放在一个入口?

GamsGo AI 集成 ChatGPT、DeepSeek、Gemini、Claude、Midjourney、Veo 等常用模型,适合写作、绘图、视频和日常 AI 工作流。

了解 GamsGo AI

推广链接:通过此链接购买,我可能获得佣金,不影响你的价格。

这个方案解决了吗?

celebrityanime
celebrityanime
文章: 35208

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注