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

LangChain Chroma向量数据库持久化后加载及查询实现求助

解决方案

你的问题出在RetrievalQA.from_chain_type()不接受vectorstore参数,正确的做法是从加载好的Chroma向量库中生成retriever,再将retriever传入该方法。

正确代码示例

# 加载已持久化的Chroma向量库
vectordb = Chroma(persist_directory=persist_directory, embedding_function=embeddings)

# 从向量库生成retriever(可调整搜索参数,比如k=3表示返回top3相关文档)
retriever = vectordb.as_retriever(search_kwargs={"k": 3})

# 创建RetrievalQA链,传入retriever参数
qa = RetrievalQA.from_chain_type(llm=llm, chain_type="stuff", retriever=retriever)

# 接收用户输入并生成回复
user_query = input("请输入你的问题:")
result = qa.run(user_query)
print(result)

关键说明

  • Chroma实例加载持久化目录后,通过as_retriever()方法将向量库转换为LangChain标准的Retriever对象,这是RetrievalQA所需的参数类型。
  • 可以通过search_kwargs调整检索策略,比如设置返回文档数量、过滤条件等,优化回答的准确性。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.21 22:32:35