如何使用LangChain的RetrievalQA返回生成回答所用的源文档
获取RAG回答对应的上下文Document内容
你已经在初始化RetrievalQA时设置了return_source_documents=True,这个配置会让返回的结果自动包含用于生成回答的源文档。
- 从返回的
result字典中提取source_documents字段,它是一个Document对象的列表 - 遍历该列表,通过Document对象的
page_content属性获取文本内容,metadata属性获取元数据信息
示例代码:
# 提取作为上下文的源文档列表 source_documents = result["source_documents"] # 遍历输出每个文档的内容和元数据 for index, doc in enumerate(source_documents): print(f"上下文文档 {index + 1}:") print(f"内容: {doc.page_content}") print(f"元数据: {doc.metadata}") print("-" * 50)
这些source_documents就是从你之前处理的splits集合中检索出来的、支撑回答生成的上下文Document对象,直接访问对应属性即可获取所需内容。
内容的提问来源于stack exchange,提问作者french_fries
相关产品推荐
相关产品推荐

