微信扫码
与创始人交个朋友
我要投稿
我是芝士AI吃鱼,原创 NLP、LLM、超长文知识分享
热爱分享前沿技术知识,寻找志同道合小伙伴
公众号 :芝士AI吃鱼
知识星球:https://wx.zsxq.com/group/88888881284242
内容开源地址GitHub:https://github.com/alg-bug-engineer/Cheesy-AI-Fish
原文: Retrieval Augmented Generation (RAG) and Beyond: A Comprehensive Survey on How to Make your LLMs use External Data More Wisely
每当我向非技术背景的朋友解释大语言模型时,我常常用"博学但缺乏实践经验的应届生"作比喻。这些模型确实掌握了海量的知识,但在特定领域的实际应用中,常常会暴露出"经验不足"的问题。就像一位刚毕业的法学生,虽然能流畅地背诵法条,但面对真实的案件时可能会觉得无从下手。
微软亚洲研究院的研究团队近期发布的这篇综述,正是致力于解决这个"经验不足"的问题。这篇论文不仅系统地梳理了检索增强生成(RAG)技术的发展脉络,更重要的是提供了一个全新的视角,帮助我们理解和解决大模型在实际应用中遇到的各种挑战。
让我们先看一个真实的场景。某金融机构尝试用ChatGPT来回答客户的投资咨询问题。为了确保答案的准确性,他们实施了一个基础的RAG方案:把投资产品说明书、市场分析报告等文档接入模型。但实际效果却不尽如人意。
当客户问"这个基金适合我吗?"时,模型往往会直接从产品说明书中摘录风险收益特征。但一个专业的投资顾问会怎么做?
他会先了解客户的投资目标、风险承受能力、投资期限等信息,然后结合市场环境和产品特点给出建议。这种专业的咨询过程涉及到复杂的推理和判断,远非简单的文档检索所能支持。
论文首次系统地定义了RAG应用中的四个层次需求。这个分层框架源于对大量实际应用案例的观察和总结,让我们通过具体例子来理解每个层次:
**第一层是显式事实查询。**比如"公司的退休金政策是什么?"这类问题只需要从员工手册中找到相关段落即可。这是最基础的RAG应用场景。
**第二层是隐式事实查询,需要综合多个信息源。**例如"我现在的工资和工龄,五年后能拿到多少退休金?"这就需要检索并关联多个政策条款,还要进行简单的计算。
**第三层是可解释推理查询,要求理解和运用专业的决策流程。**以医疗诊断为例,医生会遵循"望闻问切"的次序,逐步收集信息,形成诊断。模型需要理解并模仿这种专业的思维过程。
**第四层是隐性推理查询,这可能是最接近人类专家直觉的层次。**比如经验丰富的医生看到某些症状组合,就能联想到可能的罕见病因,这种判断往往基于大量病例经验,而非明确的诊断规则。
理解了不同层次的需求,我们就能更有针对性地设计解决方案。
对于第一层的显式事实查询,传统的RAG方案其实已经够用,但在工程实现上还有优化空间。比如文档切分的策略就很关键。如果切分得太细,可能会丢失上下文信息;切分得太粗,又会引入无关信息。一个实用的做法是根据文档的逻辑结构来切分,比如保持完整的段落或章节,而不是机械地按字数切分。
对于第二层的隐式事实查询,核心挑战是如何让模型"主动"获取必要信息。迭代式RAG是一个有效的解决方案:模型先基于初始问题检索一部分信息,发现信息不足时,自动形成新的检索请求,直到收集足够的信息才给出最终答案。
在处理第三层的可解释推理查询时,"提示调优"显示出独特优势。以医疗问诊为例,我们可以设计这样的提示模板:
1. 请先详细了解患者的主诉和症状;
2. 根据症状有针对性地询问病史;
3. 建议必要的检查;
4. 结合所有信息作出初步诊断;
5. 制定治疗方案。
这种结构化的提示能有效引导模型遵循专业的诊疗规范。
第四层的隐性推理查询最具挑战性,因为我们要让模型学习专家的"直觉"。一个可行的方案是构建特定领域的案例库,并通过精心设计的标注来捕捉专家的判断依据。
比如在医疗领域,除了记录最终诊断,还要让专家解释为什么会想到这个诊断,看到了哪些关键线索。这些解释可以帮助模型学习专家的思维模式。
这篇综述不仅梳理了当前RAG技术的现状,也为未来发展指明了方向。一个明显的趋势是,RAG正在从单纯的知识检索,向知识的结构化表达和专业化推理演进。
未来的RAG系统可能会更像一个"数字学徒",不断从与人类专家的互动中学习和改进。它不仅要会查资料,还要学会专家思考问题的方式。
53AI,企业落地应用大模型首选服务商
产品:大模型应用平台+智能体定制开发+落地咨询服务
承诺:先做场景POC验证,看到效果再签署服务协议。零风险落地应用大模型,已交付160+中大型企业
2025-01-10
分块的艺术:提升 RAG 效果的关键
2025-01-09
Java开发者LLM实战——使用LangChain4j构建本地RAG系统
2025-01-09
RAG 的总结整理
2025-01-09
RAG的技术困境:为何单纯依赖向量嵌入不可靠?
2025-01-09
Cache-Augmented Generation(CAG):一种更快、更简单的RAG替代方案
2025-01-09
搭建RAG架构,如何选择向量数据库产品?
2025-01-09
搭建RAG应用,Embedding模型如何选?
2025-01-08
EdgeRAG: 检索增强生成的新篇章,开启边缘智能新时代
2024-07-18
2024-09-04
2024-05-05
2024-06-20
2024-05-19
2024-07-09
2024-07-09
2024-06-13
2024-07-07
2024-07-07
2025-01-09
2025-01-09
2025-01-09
2025-01-06
2025-01-04
2024-12-30
2024-12-27
2024-12-26