RAG(Retrieval-Augmented Generation)
1.RAG是什么?在大模型中充当了什么角色定位?
RAG (Retrieval-Augmented Generation)是一门检索增强生成的技术。
试想某一个开卷考试的场景,学生A正在进行考一场期末考试中历史(文科类)学科的考试,其中一题:第一次鸦片战争是哪一年爆发的?这个属于概念性很强的题目,书本上有个很明确的定义描述,学生A不记得直接去翻书得到了答案,很明确的写上了1840年。
如果把这个题目交给大模型要怎么做呢?且将知识库比作开卷考试的那本书 ;把大模型比作人的大脑
问题:第一次鸦片战争是哪一年爆发的?
知识库:历史书上的记录着鸦片战争是1840年至1842年英国对中国发动的一次侵略战争,它的爆发标志着中国近代史的开始,中国从此进入了半殖民地半封建社会。
大模型:输出答案是1840年。
上面如果没有知识库,大模型也不知道答案是什么的,因此要知道这个答案,知识库是必要的。那么知识库是如何构建的呢?大模型中也可能会知道的,前提学生A之前平时学习认真,把这些信息记忆在大脑中
1).历史书知识库构建步骤
-
-
- 文本切割分块
- 将分出的若干块通过Embedding向量化模型进行向量化处理,存储到向量数据库(Qdrant)。
- 知识库构建完成,对外开放服务:http://localhost:6333
-
2).知识库构建完成后,拿到问题去知识库中查询,因为问题也是自然语言,所以想去知识库中查询也要通过向量化,与知识库中信息处于同一维度,因此将问题向量的模型要与知识库构建的模型保持一致。
3).前面两步会得出一个上下文文本,交给LLM去推理识别,得出答案1840年。
上面大模型工作流程RAG在干嘛呢?步骤二就是在RAG在其中充当的角色,在知识库中根据问题提取到精确的上下文信息,如何提取到精确的上下文信息给到大模型是RAG技术深入研究的方向。

浙公网安备 33010602011771号