欢迎来到 RAG101 第二课,本文我们将介绍如何建立一个针对 CSV 文件的 RAG 工作流。
往期课程请划到文末查看。
首先我们需要加载环境变量和初始化模型(LLM & 嵌入模型):

加载 CSV 文件
在加载 CSV 文件之前,我们先预览一下:


CSVLoader 加载 CSV 文件后也是得到了一个 Document 对象列表,CSV 文件的每行表示一个 Document 对象。
将 CSV 文件插入向量数据库

我们可以前往 Qdrant 控制面板验证是否插入成功了:

创建 RAG 工作流
首先创建一个检索器:retriever,然后验证一下语义检索功能:

然后我们便可以创建一个完整的 RAG 工作流:rag_chain

我们再次验证一下 rag_chain 是否可以正常工作:

可以看到 rag_chain 根据给定的 input,按照配置参数 search_kwargs={“k”: 3} 检索到了前 3 个相关度高的上下文 context,最后 LLM 产生了正确的答案 answer。
本文源码:
https://github.com/realyinchen/RAG/blob/main/RAG101/002-Simple_CSV_RAG.ipynb
查阅此前文章:
《RAG101第一课:一个简单的RAG工作流》
文章来源:PyTorch研习社
(文:PyTorch研习社)