任务1:初始RAG
1. 大型语言模型的局限性
(1) 模型幻觉问题:生成内容可能不准确或不一致
(2) 时效性问题:生成的内容不具有当前时效性
(3) 数据安全问题:可能存在敏感信息泄露风险
2. RAG目标
RAG被构建为一个应用于大型语言模型的框架,其目标是通过结合大模型的生成能力和外部知识库的检索机制,提升自然语言处理任务的效果。
3. RAG典型模板
你是一个{task}方面的专家,请结合给定的资料,并回答最终的问题。请如实回答,如果问题在资料中找不到答案,请回答不知道。
问题:{question}
资料:
- {information1}
- {information2}
- {information3}
4. RAG优点
(1) 提高准确性和相关性
(2) 改善时效性,使模型适应当前事件和知识
(3) 降低生成错误风险,依赖检索系统提供的准确信息
5. RAG和SFT对比
RAG优点:结合检索系统和生成模型。优点是能利用最新信息,提高答案质量,具有更好的可解释性和适应性
RAG缺点:是可能面临检索质量问题和增加额外计算资源需求
SFT优点:针对特定任务调整预训练模型。优点是可针对特定任务优化
SFT缺点:更新成本高,对新信息适应性较差
6. RAG流程
(1) 问题理解:准确把握用户的意图
(2) 知识检索:从知识库中相关的知识检索
(3) 答案生成:将检索结果与问题组合生成答案
7. RAG技术模块
(1) 意图理解:意图理解模块负责准确把握用户提出的问题,确定用户的意图和主题。处理用户提问的模糊性和不规范性,为后续流程提供清晰的任务目标。
(2) 文档解析:文档解析模块用于处理来自不同来源的文档,包括PDF、PPT、Neo4j等格式。该模块负责将文档内容转化为可处理的结构化形式,为知识检索提供合适的输入。
(3) 文档索引:文档索引模块将解析后的文档分割成短的Chunk,并构建向量索引。或通过全文索引进行文本检索,使得系统能够更快速地找到与用户问题相关的文档片段。
(4) 向量嵌入:向量嵌入模块负责将文档索引中的内容映射为向量表示,以便后续的相似度计算。这有助于模型更好地理解文档之间的关系,提高知识检索的准确性。
(5) 知识检索:知识检索模块根据用户提问和向量嵌入计算的相似度检索或文本检索打分。这一步骤需要解决问题和文档之间的语义关联,确保检索的准确性。
(6) 重排序:重排序模块在知识检索后对文档库