RAG(Retrieval-Augmented Generation,检索增强生成)是目前大语言模型(LLM)应用中最主流的架构。简单来说,它的核心思想是:“在大模型回答问题之前,先去外部知识库里找找答案,把找到的资料喂给大模型,让它参考着回答。” 这就像是一场“开卷考试”:大模型不再只靠死记硬背(训练数据)来回答,而是可以翻阅教科书(外部知识库)。 RAG 的标准工作流程主要分为三个阶段:Index(索引)、Retrieve(检索)和 Generate(生成)。下面我为你详细拆解这三个步骤: --- 第一阶段:Index(索引/构建知识库) ——这是“考前准备”阶段,目的是把资料整理好,方便查找。 这个阶段通常是离线进行的,主要包含以下几个动作: 1. 数据提取(Data Loading): 从各种来源(PDF、Word、网页、数据库)获取原始文本数据。 清洗数据,去除乱码、无用符号等。 2. 文本切分(Chunking): 为什么要切? 因为大模型有上下文长度限制(Context Window),而且如果把整本书丢进去,检索精度会下降。 怎么切? 将长文本切分成一个个小的“块...