大家好,我是程序锅。
github上的代码封装程度高,不利于小白学习入门。
常规的大模型RAG框架有langchain等,但是langchain等框架源码理解困难,debug源码上手难度大。
因此,我写了一个人人都能看懂、人人都能修改的大模型RAG框架代码。
整体项目结构如下图所示:
本篇文章将介绍2.RAG原理介绍,不需要编程,理解整体思路。
一、为什么要用RAG?
LLM会产生误导性的 “幻觉”,训练数据会过时,处理特定知识时效率不高,缺乏专业领域的深度洞察,同时在推理能力上也有所欠缺。
正是在这样的背景下,检索增强生成技术(Retrieval-Augmented Generation,RAG)应时而生,成为大模型时代的一大趋势。
RAG通过在语言模型生成答案之前,先从广泛的专业文档数据库中检索相关信息,然后利用这些专业信息来引导大模型生成的结果,极大地提升了内容的准确性和相关性。
RAG有效地缓解了幻觉问题,提高了知识更新的速度(大模型+搜索引擎),并增强了内容生成的可追溯性,使得大型语言模型在实际应用中变得更加实用和可信。
二、RAG的技术路线
RAG整体技术路线可分为3大块8个小点见图1,其中包含知识库构建、知识检索和知识问答。其中核心在于