You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

VectorStoreRetrieverMemory与AgentExecutor集成异常求助

问题解决:VectorStoreRetrieverMemory与AgentExecutor集成的类型错误

错误根源

你遇到的ValueError是因为**VectorStoreRetrieverMemory的return_docs=True参数与return_messages=True冲突**,导致返回的是Document对象列表,而MessagesPlaceholder需要的是LangChain的BaseMessage类型(比如HumanMessage、AIMessage)列表。

修复方案

直接移除return_docs=True参数,只保留return_messages=True,让内存返回正确的消息格式:

memory = VectorStoreRetrieverMemory(
    retriever=retriever,
    return_messages=True
    # 删除return_docs=True
)

补充说明

VectorStoreRetrieverMemory的核心作用是把检索到的对话历史转换为Agent能识别的消息格式。当你设置return_docs=True时,它会跳过消息转换流程,直接返回原始的检索文档,这就和Agent对history变量的类型要求不匹配了。如果确实需要获取原始文档,可以单独调用内存的检索方法,不要让内存直接把文档返回给Agent。

内容的提问来源于stack exchange,提问作者ancm

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.06 03:27:50