一、LLMs 已经具备了较强能力,为什么还需要 RAG?
尽管大语言模型(LLM)已展现出显著的能力,但以下几个挑战依然值得关注:
- 幻觉问题:LLM 采用基于统计的概率方法逐词生成文本,这一机制内在地导致其可能出现看似逻辑严谨实则缺乏事实依据的输出,即所谓的'郑重其事的虚构陈述'。
- 时效性问题:随着 LLM 规模扩大,训练成本与周期相应增加。鉴于此,包含最新信息的数据难以融入模型训练过程,导致 LLM 在应对诸如'请推荐当前热门影片'等时间敏感性问题时力有未逮。
- 数据安全问题:通用的 LLM 没有企业内部数据和用户数据。企业想要在保证安全的前提下使用 LLM,最好的方式就是把数据全部放在本地,企业数据的业务计算全部在本地完成。而在线的大模型仅仅完成一个归纳的功能。
二、什么是 RAG?
RAG(Retrieval Augmented Generation,检索增强生成)是一种技术框架,其核心在于当 LLM 面对解答问题或创作文本任务时,首先会在大规模文档库中搜索并筛选出与任务紧密相关的素材,继而依据这些素材精准指导后续的回答生成或文本构造过程,旨在通过此种方式提升模型输出的准确性和可靠性。
三、RAG 主要包含哪些模块?
- 版面分析:本地知识文件读取(pdf、txt、html、doc、excel、png、jpg、语音等),并进行知识文件复原。
- 知识库构建:知识文本分割,构建 Doc 文本;Doc 文本 embedding;Doc 文本构建索引。
- 大模型微调:针对特定领域对模型进行参数调整。
- 基于 RAG 的知识问答:用户 query embedding,query 召回,query 排序,将 Top K 个相关的 Doc 进行拼接构建 context,基于 query 和 context 构建 Prompt,将 prompt 喂给大模型生成答案。
四、RAG 相较于直接使用 LLMs 进行问答有哪些优点?
RAG(检索增强生成)方法赋予了开发者无需为每个特定任务重新训练大型模型的能力,仅需连接外部知识库,即可为模型注入额外的信息资源,从而显著提升其回答的精确度。这一方法尤其适用于那些高度依赖专业知识的任务。
以下是 RAG 模型的主要优势:
- 可扩展性:减小模型规模及训练开销,同时简化知识库的扩容更新过程。
- 准确性:通过引用信息源,用户能够核查答案的可信度,进而增强对模型输出结果的信任感。
- 可控性:支持知识内容的灵活更新与个性化配置。
- 可解释性:展示模型预测所依赖的检索条目,增进理解与透明度。
- 多功能性:RAG 能够适应多种应用场景的微调与定制,涵盖问答、文本摘要、对话系统等领域。
- 时效性:运用检索技术捕捉最新信息动态,确保回答既即时又准确,相比仅依赖固有训练数据的语言模型具有明显优势。
- 领域定制性:通过对接特定行业或领域的文本数据集,RAG 能够提供针对性的专业知识支持。
- 安全性:通过在数据库层面实施角色划分与安全管控,RAG 有效强化了对数据使用的管理,相较于微调模型在数据权限管理上的潜在模糊性,展现出更高的安全性。
五、对比一下 RAG 和 SFT,说一下两者有哪些区别?
实际上,对于 LLM 存在的上述问题,SFT(Supervised Fine Tuning,监督微调)是一个最常见最基本的解决办法,也是 LLM 实现应用的基础步骤。那么有必要在多个维度上比较一下两种方法:
当然这两种方法并非非此即彼的,合理且必要的方式是结合业务需要与两种方法的优点,合理使用两种方法。
六、模块一:版面分析
为什么需要版面分析?
尽管 RAG 技术的核心价值在于其结合检索与生成手段以提升文本内容的精确度与连贯性,然而在一些具体应用领域,如文档解析、智能化写作及对话系统构建中,特别是在面对结构化或半结构化信息的处理需求时,其功能边界可能拓展至版面分析。
这是由于此类信息往往嵌于特定的布局结构中,需要对页面元素及其相互关系进行深入理解。
此外,当 RAG 模型面对包含丰富多媒体或多模态成分的数据源,诸如网页、PDF 文件、富文本记录、Word 文档、图像资料、语音片段、表格数据等复杂内容时,为了能高效地摄取并利用这些非文本信息,具备基本的版面分析能力变得至关重要。这种能力有助于模型精准解析各类信息单元,并成功将它们融合成有意义的整体解读。


