Navigate to WaytoAGI Wiki →
Home/Question List/Question Detail

RAG最新进展

Answer

RAG(检索增强生成)是由 Lewis 等人于 2020 年中期提出的一种大语言模型领域的范式。

其发展经历了以下阶段:

  1. 2017 年创始阶段,重点是通过预训练模型吸收额外知识以增强语言模型,主要集中在优化预训练方法。
  2. 大型语言模型如 GPT 系列在自然语言处理方面取得显著成功,但在处理特定领域或高度专业化查询时存在局限性,易产生错误信息或“幻觉”,特别是在查询超出训练数据或需要最新信息时。
  3. RAG 包括初始的检索步骤,查询外部数据源获取相关信息后再回答问题或生成文本,此过程为后续生成提供信息,确保回答基于检索证据,提高输出准确性和相关性。
  4. 在推断阶段动态检索知识库信息能解决生成事实错误内容的问题,被迅速采用,成为完善聊天机器人能力和使大语言模型更适用于实际应用的关键技术。

RAG 在多个基准测试中表现出色,如在 Natural Questions、WebQuestions 和 CuratedTrec 等中表现抢眼。用 MS-MARCO 和 Jeopardy 问题进行测试时,生成的答案更符合事实、具体和多样,FEVER 事实验证使用后也有更好结果。基于检索器的方法越来越流行,常与 ChatGPT 等流行大语言模型结合使用提高能力和事实一致性,在 LangChain 文档中有相关使用例子。

同时,对增强生成检索的兴趣增长促使了嵌入模型质量的提高,传统 RAG 解决方案中的问题也得到解决。

Content generated by AI large model, please carefully verify (powered by aily)

References

开发:产品视角的大模型 RAG 应用

开发:产品视角的大模型RAG应用[heading1]一文看懂RAG:大语言模型落地应用的未来[heading2]RAG发展的四个阶段大型语言模型(LLMs)如GPT系列在自然语言处理方面取得了显著的成功,Super-GLUE等各种基准测试中表现出色。尽管有了这些进展,LLMs仍然存在显著的局限性,特别是在处理特定领域或高度专业化的查询时,一个常见问题是产生错误的信息,或者称为“幻觉”。特别是当查询超出模型的训练数据或需要最新信息时。所以说在直接将LLMs部署运行到生产环境中时,其就是一个黑盒,鬼知道它会输出什么的结果...解决这些问题的一种有希望的方法是检索增强生成(RAG),它将外部数据检索整合到生成过程中,从而提高模型提供准确和相关回答的能力。RAG于2020年中期由Lewis等人提出,是LLMs领域中的一种范式,可增强生成任务。具体而言,RAG包括一个初始的检索步骤,LLMs在此步骤中查询外部数据源以获取相关信息,然后才回答问题或生成文本。这个过程不仅为后续的生成阶段提供信息,还确保回答基于检索到的证据,从而显著提高了输出的准确性和相关性。在推断阶段动态检索来自知识库的信息使RAG能够解决生成事实错误内容的问题,通常被称为“幻觉”。将RAG整合到LLMs中已经迅速被采用,并成为完善聊天机器人能力和使LLMs更适用于实际应用的关键技术。RAG的演进轨迹在四个不同阶段展开,如下图所示。在2017年的创始阶段,与Transformer架构的出现相一致,主要重点是通过预训练模型(PTM)来吸收额外的知识以增强语言模型。这个时代见证了RAG的基础工作主要集中在优化预训练方法上。

2024人工智能报告|一文迅速了解今年的AI界都发生了什么?

合成数据是Phi family的主要训练数据来源,Anthropic在培训Claude 3时使用合成数据,来代表可能在训练数据中缺失的场景。Hugging Face使用Mixtral-8x7B Instruct生成超过3000万份文件和250亿个合成教科书、博客文章和故事,以重新创建Phi-1.5训练数据集,他们将其称为Cosmopedia。为了使合成数据更容易,NVIDIA发布了Nemotron-4-340B家族,这是一个专为合成数据生成设计的模型套件,可通过许可协议获得。另外Meta的Llama也可以用于合成数据生成。通过直接从对齐的LLM中提取它,也有可能创建合成高质量指令数据。使用像Magpie这样的技术,有时可以将模型进行微调,以达到与Llama-3-8B-Instruct相当的表现。RAG提高嵌入模型质量虽然检索和嵌入不是新的,但对增强生成检索(RAG)的兴趣增长促使了嵌入模型质量的提高。在常规的LLMs中,证明有效的剧本是大规模性能改进的关键(GritLM有约47亿个参数,而之前的嵌入模型只有1.1亿个)。同样,大规模语料库的使用和改进过滤方法导致了小型模型的巨大改善。同时,ColPali是一种利用文档的视觉结构而不是文本嵌入来改进检索的视图-语言嵌入模型。检索模型是少数几个开放模型通常优于大型实验室专有模型的子领域之一。在MTEB检索排行榜上,OpenAI的嵌入模型排名第29位,而NVIDIA的开放NV-Embed-v2排名第一。传统RAG解决方案中的问题得到解决

检索增强生成 (RAG)

RAG在[Natural Questions(opens in a new tab)](https://ai.google.com/research/NaturalQuestions)、[WebQuestions(opens in a new tab)](https://paperswithcode.com/dataset/webquestions)和CuratedTrec等基准测试中表现抢眼。用MS-MARCO和Jeopardy问题进行测试时,RAG生成的答案更符合事实、更具体、更多样。FEVER事实验证使用RAG后也得到了更好的结果。这说明RAG是一种可行的方案,能在知识密集型任务中增强语言模型的输出。最近,基于检索器的方法越来越流行,经常与ChatGPT等流行LLM结合使用来提高其能力和事实一致性。LangChain文档中可以找到[一个使用检索器和LLM回答问题并给出知识来源的简单例子(opens in a new tab)](https://python.langchain.com/docs/use_cases/question_answering/quickstart)。

Others are asking
RAG的原理是啥
RAG(RetrievalAugmented Generation,检索增强生成)是一种结合检索和生成能力的自然语言处理架构,其原理如下: 对于大语言模型(LLM),RAG 的作用类似于开卷考试对学生的作用。在开卷考试中,学生可借助参考资料查找解答问题的相关信息,重点考察推理能力而非记忆能力。同样,在 RAG 中,事实性知识与 LLM 的推理能力相分离,被存储在易于访问和及时更新的外部知识源中,包括参数化知识(模型在训练中学习得到,隐式存储在神经网络权重中)和非参数化知识(存储在外部知识源,如向量数据库中)。 回顾 LLM 的原理,是将互联网文献材料降维到 latent space 中,并通过 transformer 方式学习其中的“经验”。但固定文献资料可能导致无法回答某些问题,RAG 的出现解决了这一问题,它允许模型到搜索引擎上搜索问题相关资料,并结合自身知识体系综合回复。 RAG 中的“检索”环节并非简单操作,涉及传统搜索的逻辑,如对输入问题的纠错、补充、拆分,以及对搜索内容的权重逻辑等。例如,对于“中国界世杯夺冠那年的啤酒销量如何”的问题,会先纠错为“中国世界杯夺冠那年的啤酒销量如何”,然后拆分为两个问题进行综合搜索,再将搜索到的资料提供给大模型进行总结性输出。 LLM 需要 RAG 是因为 LLM 存在一些缺点: 1. 无法记住所有知识,尤其是长尾知识,对长尾知识的接受能力不高。 2. 知识容易过时且不好更新,微调效果不佳且有丢失原有知识的风险。 3. 输出难以解释和验证,存在黑盒、不可控和幻觉等问题。 4. 容易泄露隐私训练数据。 5. 规模大,训练和运行成本高。 而 RAG 具有以下优点: 1. 数据库对数据的存储和更新稳定,不存在模型学不会的风险。 2. 数据库的数据更新敏捷,增删改查可解释,不影响原有知识。 3. 数据库内容明确、结构化,结合模型理解能力,降低大模型输出出错的可能。 4. 知识库存储用户数据,便于管控用户隐私数据,且可控、稳定、准确。 5. 数据库维护可降低大模型训练成本,新知识存储在数据库即可,无需频繁更新模型。
2025-02-20
RAG和微调是什么,分别详细讲讲一下它是怎么实现的
RAG(RetrievalAugmented Generation,检索增强生成)是解决大语言模型在实际应用中存在的一些问题的有效方案。 大语言模型存在以下问题: 1. 知识的局限性:模型自身的知识完全源于训练数据,对于实时性、非公开或离线的数据无法获取。 2. 幻觉问题:基于数学概率的文字预测导致可能提供虚假、过时或通用的信息。 3. 数据安全性:企业担心私域数据上传第三方平台训练导致泄露。 RAG 可以让大语言模型从权威的、预先确定的知识来源中检索、组织相关信息,更好地控制生成的文本输出,用户也能深入了解模型如何生成最终结果。它类似于为模型提供教科书,适用于回答特定询问或解决特定信息检索任务,但不适合教模型理解广泛领域或学习新的语言、格式或样式。 微调类似于让学生通过广泛学习内化知识。这种方法在模型需要复制特定结构、样式或格式时非常有用。微调可以提高非微调模型的性能,使交互更有效率,特别适合强调基础模型中的现有知识,修改或自定义模型的输出,并向模型提供复杂的指令。然而,微调不适合合并模型中的新知识或需要新用例的快速迭代。 参考资料:《RetrievalAugmented Generation for Large Language Models:A Survey》(https://arxiv.org/pdf/2312.10997.pdf)
2025-02-19
rag
RAG(RetrievalAugmented Generation,检索增强生成)是一种结合检索和生成能力的自然语言处理架构。 通用语言模型通过微调可完成常见任务,而更复杂和知识密集型任务可基于语言模型构建系统,访问外部知识源来实现。Meta AI 引入 RAG 来完成这类任务,它把信息检索组件和文本生成模型结合,可微调且内部知识修改高效,无需重新训练整个模型。 RAG 接受输入并检索相关支撑文档,给出来源,与原始提示词组合后送给文本生成器得到输出,能适应事实变化,让语言模型获取最新信息并生成可靠输出。 大语言模型(LLM)存在一些缺点,如无法记住所有知识尤其是长尾知识、知识易过时且不好更新、输出难以解释和验证、易泄露隐私训练数据、规模大导致训练和运行成本高。而 RAG 具有数据库存储和更新稳定、数据更新敏捷且不影响原有知识、降低大模型输出出错可能、便于管控用户隐私数据、降低大模型训练成本等优点。 在 RAG 系统开发中存在 12 大痛点及相应的解决方案,旨在帮助理解设计和实施 RAG 系统面临的复杂挑战,激发开发更强大且适用于生产环境的 RAG 应用。
2025-02-18
有什么提升 RAG 知识库问答的好的 prompt
以下是一些提升 RAG 知识库问答的好的 prompt 相关内容: RAG 在 Natural Questions、WebQuestions 和 CuratedTrec 等基准测试中表现出色,在使用 MSMARCO 和 Jeopardy 问题进行测试时,生成的答案更符合事实、具体且多样,FEVER 事实验证使用 RAG 后也有更好结果,说明 RAG 是可行方案,能增强知识密集型任务中语言模型的输出,基于检索器的方法常与 ChatGPT 等流行 LLM 结合提高能力和事实一致性,可在 LangChain 文档中找到相关例子。 RAG 能显著提高大模型在处理私域知识或垂直领域问答时的效果。其流程包括:上传文档(支持多种格式,会转换为 Markdown 格式)、文本切割、文本向量化(存入向量数据库)、问句向量化、语义检索匹配(匹配出与问句向量最相似的 top k 个)、提交 Prompt 至 LLM、生成回答返回给用户。RAG 研究范式分为基础 RAG、高级 RAG 和模块化 RAG。 高级 RAG 特点:支持多模态数据处理,增强对话性,具备自适应检索策略,能进行知识融合,扩展了基础 RAG 功能,解决复杂任务局限,在广泛应用中表现出色,推动自然语言处理和人工智能发展。 模块化 RAG 侧重于提供更高定制性和灵活性,将系统拆分成多个独立模块或组件,每个组件负责特定功能,便于根据不同需求灵活组合和定制。
2025-02-18
大语言模型、多模态、数据、算力、算法、预训练、微调、RAG、自注意力机制、transformer、token、神经网络、向量、scaling law这些内容的含义
以下是对您所提到的这些内容含义的解释: 大语言模型:是一种基于大量文本数据进行训练的语言处理模型,其工作原理包括训练数据、算力、模型参数等。在训练数据一致的情况下,模型参数越大能力越强。 多模态:指能够处理多种不同类型的数据模态,如文本、图像、音频等,并将它们融合进行理解和生成。 数据:是大语言模型训练和应用的基础,包括各种文本、图像、音频等信息。 算力:指用于支持大语言模型训练和运行的计算能力。 算法:是大语言模型实现各种功能的数学和逻辑方法。 预训练:在大语言模型中,先在大规模数据上进行无特定任务的初步训练。 微调:基于通用大模型,针对特定领域任务提供数据进行学习和调整,以适应特定领域的需求。 RAG:检索增强生成,通过引用外部数据源为模型做数据补充,适用于动态知识更新需求高的任务。其工作流程包括检索、数据库索引、数据索引、分块、嵌入和创建索引、增强、生成等步骤。 自注意力机制:是 Transformer 架构中的重要部分,能理解上下文和文本关联,通过不断检索和匹配来寻找依赖关系,处理词和词之间的位置组合,预测下一个词的概率。 Transformer:是大语言模型训练架构,用于翻译等任务,具备自注意力机制。 Token:在自然语言处理中,是文本的基本单位。 神经网络:是大语言模型的基础架构,模拟人脑神经元的连接和信息处理方式。 向量:在大语言模型中,用于表示文本等数据的数学形式。 Scaling Law:关于大语言模型规模和性能之间关系的规律。
2025-02-18
大语言模型、多模态、数据、算力、算法、预训练、微调、RAG、自注意力机制、transformer、token、神经网络、向量、scaling law这些内容的含义
以下是对您所提到的这些内容含义的解释: 大语言模型:是一种基于大量文本数据进行训练的语言处理模型,其工作原理包括训练数据、算力、模型参数等。在训练数据一致的情况下,模型参数越大能力越强。 多模态:指能够处理多种不同类型的数据模态,如文本、图像、音频等,并将它们融合进行理解和生成。 数据:是大语言模型训练和应用的基础,包括各种文本、图像、音频等信息。 算力:指用于支持大语言模型训练和运行的计算能力。 算法:是大语言模型实现各种功能的数学和逻辑方法。 预训练:在大语言模型中,先在大规模数据上进行无特定任务的初步训练。 微调:基于通用大模型,针对特定领域任务提供数据进行学习和调整,以适应特定领域的需求。 RAG:检索增强生成,通过引用外部数据源为模型做数据补充,适用于动态知识更新需求高的任务。其工作流程包括检索、数据库索引、数据索引、分块、嵌入和创建索引、增强、生成等步骤。 自注意力机制:是 Transformer 架构中的重要部分,能理解上下文和文本关联,通过不断检索和匹配来寻找依赖关系,处理词和词之间的位置组合,预测下一个词的概率。 Transformer:是大语言模型训练架构,用于翻译等任务,具备自注意力机制。 Token:在自然语言处理中,是文本的基本单位。 神经网络:是大语言模型的基础架构,模拟人脑神经元的连接和信息处理方式。 向量:在大语言模型中,用于表示文本等数据的数学形式。 Scaling Law:关于大语言模型规模和性能之间关系的规律。
2025-02-18
国产AI大模型的最新进展
以下是国产 AI 大模型的最新进展: 通义千问的 Qwen 系列表现出色:Qwen 是国内唯一出现在 OpenAI 视野里、能参与国际竞争的国产大模型。Qwen 多次冲进相关榜单,得分不断提高,其开源模型累计下载量突破 1600 万,国内外有大量开发者基于 Qwen 开发模型和应用,尤其在企业级领域。通义大模型证明了开源开放的力量。 国内大模型落地情况:2024 年被称为国内大模型落地元年,1 至 11 月,大模型中标项目共 728 个,是 2023 年全年的 3.6 倍;中标金额 17.1 亿元,是 2023 年全年的 2.6 倍。中标项目数前五的行业分别是运营商、能源、教育、政务、金融。厂商方面,百度以 40 个中标项目数、2.74 亿元的中标金额排名所有厂商之首,科大讯飞居第二。 其他进展:智谱一年间推出了 4 代 GLM,一直是国内能力较好的模型之一。MiniMax 推出了 MoE 架构的新模型和“星野”这个目前国内较成功的 AI 陪聊 APP。月之暗面专注长 Token 能力,在记忆力和长 Token 能力上有一定优势。但硬件层上的卡脖子问题仍未缓解,国内目前仍无胜任大模型训练的芯片,在推理上虽有 Nvidia 的替代产品逐渐出现,但华为昇腾在单卡指标上距离不远,因稳定性不足和缺乏 Cuda 生态,仍需时间打磨。
2025-01-09
AI方面有什么最新进展
以下是 AI 方面的一些最新进展: 1. 2024 人工智能现状报告:由剑桥大学和 AI 风险投资公司 Air Street Capital 的相关人员共同发表,围绕人工智能领域的最新进展、政治动态、安全挑战及未来预测几大方面进行说明。 2. AI 绘画:从生成艺术作品到辅助艺术创作,逐渐改变传统艺术面貌。技术进步使创作质量和速度取得突破,为艺术家提供新工具和可能性,但也引发了关于艺术本质、创造性、版权和伦理的讨论,带来对从业者职业安全的焦虑和“侵权”嫌疑的反对之声。 3. 技术历史和发展方向: 发展历程:包括早期阶段的专家系统、博弈论、机器学习初步理论;知识驱动时期的专家系统、知识表示、自动推理;统计学习时期的机器学习算法;深度学习时期的深度神经网络等。 前沿技术点:大模型(如 GPT、PaLM 等)、多模态 AI(视觉语言模型、多模态融合)、自监督学习、小样本学习、可解释 AI、机器人学、量子 AI、AI 芯片和硬件加速。
2024-12-05
人工智能与AI诈骗最新进展
以下是关于人工智能与 AI 诈骗的最新进展: 在 2024 年,AI 领域有诸多进展。在图像和视频方面,超短视频的精细操控,如表情、细致动作、视频文字匹配等有所发展,有一定操控能力的生成式短视频中,风格化、动漫风最先成熟,真人稍晚。AI 音频能力长足进展,带感情的 AI 配音基本成熟。“全真 AI 颜值网红”出现,可稳定输出视频并直播带货。游戏 AI NPC 有里程碑式进展,出现新的游戏生产方式。AI 男/女朋友聊天基本成熟,在记忆上有明显突破,能较好模拟人的感情,产品加入视频音频,粘性提升并开始出圈。实时生成的内容开始在社交媒体内容、广告中出现。AI Agent 有明确进展,办公场景“AI 助手”开始有良好使用体验。AI 的商业模式开始有明确用例,如数据合成、工程平台、模型安全等。可穿戴全天候 AI 硬件层出不穷,虽然大多数不会成功。中国 AI 有望达到或超过 GPT4 水平,美国可能出现 GPT5,世界上开始出现“主权 AI”。华为昇腾生态开始形成,国内推理芯片开始国产替代(训练替代稍晚)。然而,AI 造成的 DeepFake、诈骗、网络攻击等开始进入公众视野,并引发担忧,AI 立法、伦理讨论仍大规模落后于技术进展。 在 3 月底的 23 个最新 AI 产品中,有室内装修自动渲染的 HomeByte,生成效果超赞的新视觉模型 Playground v1,“图生文”反向工具 Clip Interrogator 以及致力于解决电话诈骗的 GPTCHA 等。 在技术应用方面,LLMs 能自动化写代码等流程,交通应用如 Google Maps 和 CityMapper 也使用了 AI。AI 在银行业的欺诈检测、信用管理和文件处理等方面发挥作用。同时,AI 还在药物研发、解决气候危机等领域有重要应用。 总之,AI 技术在不断发展的同时,也带来了如诈骗等问题,需要关注和解决。
2024-12-02
AI加教育的最新进展
以下是 AI 加教育的最新进展: 案例方面: “AI 赋能教师全场景”,来自 MQ 老师的投稿贡献。 “未来教育的裂缝:如果教育跟不上 AI”,揭示了人工智能在教育领域从理论走向实际应用带来的颠覆性改变。 “化学:使用大型语言模型进行自主化学研究”。 “翻译:怎么把一份英文 PDF 完整地翻译成中文?”,介绍了 8 种方法。 对未来的预判: 个性化学习时代已到来,AI 将作为教育生态系统的一部分与人类教师协作,为孩子提供不同的学习体验,如混合式教学、定制学习路径等。 教育工作者将成为学习的引导者和伙伴,更多关注孩子的全人发展,如创造力和社交智慧。 未来 3 年,提升人机协作效率的领域,如 AI 作业批改、备课、定制教育规划、学前启蒙等,对教育从业者蕴藏着巨大机遇。 探索实践: 过去半年多,梳理教学和育儿工作流,每个环节与 AI 协作可大幅提升效率,但也加剧了知识获取的不平等。从家长的“育”、老师的“教”和学生的“学”进行了落地实践的拆解。
2024-11-05
Ai最新进展
AI 技术的发展历程如下: 1. 早期阶段(1950s 1960s):包括专家系统、博弈论、机器学习初步理论。 2. 知识驱动时期(1970s 1980s):有专家系统、知识表示、自动推理。 3. 统计学习时期(1990s 2000s):出现了机器学习算法,如决策树、支持向量机、贝叶斯方法等。 4. 深度学习时期(2010s 至今):深度神经网络、卷积神经网络、循环神经网络等得到广泛应用。 当前 AI 的前沿技术点包括: 1. 大模型,如 GPT、PaLM 等。 2. 多模态 AI,例如视觉 语言模型(CLIP、Stable Diffusion)、多模态融合。 3. 自监督学习,包含自监督预训练、对比学习、掩码语言模型等。 4. 小样本学习,如元学习、一次学习、提示学习等。 5. 可解释 AI,涉及模型可解释性、因果推理、符号推理等。 6. 机器人学,包括强化学习、运动规划、人机交互等。 7. 量子 AI,有量子机器学习、量子神经网络等。 8. AI 芯片和硬件加速。 此外,绿洲资本张津剑认为 AI 技术正在加速发展,并且没有看到任何减缓的迹象。尽管媒体报道可能有所减少,但 AI 的实际进展非常迅速。
2024-09-03
LLM写ABAP代码的最新进展
大型语言模型(LLM)在编写ABAP代码方面的能力正在不断提升。ABAP(高级业务应用编程)是SAP系统的编程语言,专门用于开发企业资源规划(ERP)软件。以下是一些LLM编写ABAP代码的最新进展: 1. 代码生成:LLM可以基于自然语言描述生成ABAP代码片段,帮助开发者快速实现特定功能。 2. 代码补全:通过机器学习技术,LLM能够预测并补全ABAP代码,提高开发效率。 3. 代码审查:LLM可以分析ABAP代码,识别潜在的错误和不规范的编程实践。 4. 文档生成:LLM能够根据ABAP代码自动生成文档,包括函数描述、参数说明等。 5. 模式识别:LLM可以识别ABAP编程中的常见模式和最佳实践,并在代码生成时应用这些模式。 6. 交互式学习:一些LLM提供交互式学习环境,帮助开发者通过实例学习ABAP编程。 7. 集成开发环境(IDE)插件:LLM技术被集成到ABAP开发工具中,提供智能代码提示和错误检测。 8. 自动化测试:LLM可以生成测试用例,帮助自动化ABAP代码的测试过程。 9. 性能优化:LLM可以分析ABAP代码的性能瓶颈,并提出优化建议。 10. 跨语言能力:一些LLM能够理解多种编程语言的概念,并将其应用于ABAP代码的编写。 然而,尽管LLM在编写ABAP代码方面取得了进展,但它们仍然面临一些挑战,例如: 领域特定知识:ABAP是一种领域特定的语言,需要对SAP系统有深入的理解。 复杂逻辑处理:企业级应用的逻辑可能非常复杂,LLM需要能够处理这些复杂性。 代码维护性:自动生成的代码需要易于理解和维护。 随着技术的发展,LLM在ABAP编程领域的应用将越来越广泛,但它们可能仍然需要与人类开发者合作,以确保生成的代码既高效又可靠。
2024-08-05