字节三面被问到RAG原理,结果5分钟就出来了…

【AI大模型应用开发】【RAG评估】1. 通俗易懂:深度理解RAGAS评估方法的原理与应用 本文我们针对RAGAS评估方法进行详细介绍。我们将深入其原理,理解其评估指标背后是怎么实现的。都是我根据自己的理解用大白话解释,保证大家能看懂。 阅读详情

大型语言模型(LLMs)已经成为我们生活和工作的一部分,它们以惊人的多功能性和智能化改变了我们与信息的互动方式。

然而,尽管它们的能力令人印象深刻,但它们并非无懈可击。这些模型可能会产生误导性的 “幻觉”,依赖的信息可能过时,处理特定知识时效率不高,缺乏专业领域的深度洞察,同时在推理能力上也有所欠缺。

在现实世界的应用中,数据需要不断更新以反映最新的发展,生成的内容必须是透明可追溯的,以便控制成本并保护数据隐私。

因此,简单依赖于这些 “黑盒” 模型是不够的,我们需要更精细的解决方案来满足这些复杂的需求。

正是在这样的背景下,检索增强生成技术(Retrieval-Augmented Generation,RAG)应时而生,成为 AI 时代的一大趋势。

RAG 通过在语言模型生成答案之前,先从广泛的文档数据库中检索相关信息,然后利用这些信息来引导生成过程,极大地提升了内容的准确性和相关性。

RAG 有效地缓解了幻觉问题,提高了知识更新的速度,并增强了内容生成的可追溯性,使得大型语言模型在实际应用中变得更加实用和可信。RAG 的出现无疑是人工智能研究领域最激动人心的进展之一。

本篇综述将带你全面了解 RAG,深入探讨其核心范式、关键技术及未来趋势,为读者和实践者提供对大型模型以及 RAG 的深入和系统的认识,同时阐述检索增强技术的最新进展和关键挑战。

01

RAG 是什么?

图片

图 1:RAG 技术在 QA 问题中的案例

一个典型的 RAG 案例如图所示。如果我们向 ChatGPT 询问 OpenAI CEO Sam Atlman 在短短几天内突然解雇随后又被复职的事情。

由于受到预训练数据的限制,缺乏对最近事件的知识,ChatGPT 则表示无法回答。RAG 则通过从外部知识库检索最新的文档摘录来解决这一差距。在这个例子中,它获取了一系列与询问相关的新闻文章。

这些文章,连同最初的问题,随后被合并成一个丰富的提示,使 ChatGPT 能够综合出一个有根据的回应。

02

RAG 技术范式发展

RAG 的概念首次于 2020 年被提出,随后进入高速发展。RAG 技术的演进历程如图所示,相关研究进展可以明确地划分为数个关键阶段。

在早期的预训练阶段,研究的焦点集中在如何通过预训练模型注入额外的知识,以此增强语言模型的能力。

随着 ChatGPT 的面世,对于运用大型模型进行深层次上下文学习的兴趣激增,这推动了 RAG 技术在研究领域的快速发展。

随着 LLMs 的潜力被进一步开发,旨在提升模型的可控性并满足不断演变的需求,RAG 的研究逐渐聚焦于增强推理能力,并且也探索了在微调过程中的各种改进方法。

特别是随着 GPT-4 的发布,RAG 技术经历了一次深刻的变革。研究重点开始转移至一种新的融合 RAG 和微调策略的方法,并且持续关注对预训练方法的优化。

图片

图 2:RAG 技术发展的科技树

在 RAG 的技术发展过程中,我们从技术范式角度,将其总结成如下几个阶段:

1.朴素(Naive RAG)

前文案例中展示了经典的 RAG 流程,也被称为 Naive RAG。

主要包括包括三个基本步骤:

  • 索引 — 将文档库分割成较短的 Chunk,并通过编码器构建向量索引。
  • 检索 — 根据问题和 chunks 的相似度检索相关文档片段。
  • 生成 — 以检索到的上下文为条件,生成问题的回答。

2.进阶的 RAG(Advanced RAG)

Naive RAG 在检索质量、响应生成质量以及增强过程中存在多个挑战。

Advanced RAG 范式随后被提出,并在数据索引、检索前和检索后都进行了额外处理。

通过更精细的数据清洗、设计文档结构和添加元数据等方法提升文本的一致性、准确性和检索效率。

在检索前阶段则可以使用问题的重写、路由和扩充等方式对齐问题和文档块之间的语义差异。

在检索后阶段则可以通过将检索出来的文档库进行重排序避免 “Lost in the Middle ” 现象的发生。或是通过上下文筛选与压缩的方式缩短窗口长度。

3.模块化 RAG(Modular RAG)

随着 RAG 技术的进一步发展和演变,新的技术突破了传统的 Naive RAG 检索 — 生成框架,基于此我们提出模块化 RAG 的概念。

在结构上它更加自由的和灵活,引入了更多的具体功能模块,例如查询搜索引擎、融合多个回答。

技术上将检索与微调、强化学习等技术融合。流程上也对 RAG 模块之间进行设计和编排,出现了多种的 RAG 模式。然而,模块化 RAG 并不是突然出现的,三个范式之间是继承与发展的关系。

Advanced RAG 是 Modular RAG 的一种特例形式,而 Naive RAG 则是 Advanced RAG 的一种特例。

图片

图 3:RAG 范式对比图

03

如何进行检索增强?

RAG 系统中主要包含三个核心部分,分别是 “检索”,“增强” 和 “生成”。正好也对应的 RAG 中的三个首字母。

想要构建一个好的 RAG 系统,增强部分是核心,则需要考虑三个关键问题:检索什么?什么时候检索?怎么用检索的内容?

检索增强的阶段: 在预训练、微调和推理三个阶段中都可以进行检索增强,这决定了外部知识参数化程度的高低,对应所需要的计算资源也不同。

检索增强的数据源: 增强可以采用多种形式的数据,包括非结构化的文本数据,如文本段落、短语或单个词汇。此外,也可以利用结构化数据,比如带有索引的文档、三元组数据或子图。

另一种途径是不依赖外部信息源,而是充分发挥 LLMs 的内在能力,从模型自身生成的内容中检索。

检索增强的过程: 最初的检索是一次性过程,在 RAG 发展过程中逐渐出现了迭代检索、递归检索以及交由 LLMs 自行判断检索时刻的自适应检索方法。

图片

图 4:RAG 核心组件的分类体系

04

RAG 和微调应该如何选择?

除了 RAG,LLMs 主要优化手段还包括了提示工程 (Prompt Engineering)、微调 (Fine-tuning,FT)。

他们都有自己独特的特点。根据对外部知识的依赖性和模型调整要求上的不同,各自有适合的场景。

图片

RAG 就像给模型一本教科书,用于定制的信息检索,非常适合特定的查询。

另一方面,FT 就像一个学生随着时间的推移内化知识,更适合模仿特定的结构、风格或格式。

FT 可以通过增强基础模型知识、调整输出和教授复杂指令来提高模型的性能和效率。

然而,它不那么擅长整合新知识或快速迭代新的用例。RAG 和 FT,并不是相互排斥的,它们可以是互补的,联合使用可能会产生最佳性能。

图片

图 5:RAG 与其他大模型微调技术对比

05

如何评价 RAG?

RAG 的评估方法多样,主要包括三个质量评分:上下文相关性、答案忠实性和答案相关性。

此外,评估还涉及四个关键能力:噪声鲁棒性、拒答能力、信息整合和反事实鲁棒性。

这些评估维度结合了传统量化指标和针对 RAG 特性的专门评估标准,尽管这些标准尚未统一。

在评估框架方面,存在如 RGB 和 RECALL 这样的基准测试,以及 RAGAS、ARES 和 TruLens 等自动化评估工具,它们有助于全面衡量 RAG 模型的表现。

表中汇总了如何将传统量化指标应用于 RAG 评估以及各种 RAG 评估框架的评估内容,包括评估的对象、维度和指标,为深入理解 RAG 模型的性能和潜在应用提供了宝贵信息。

图片

图片

06

未来 RAG 还有哪些发展前景?

RAG 的发展方兴未艾,还有哪些问题值得进一步去研究?

我们从三个方面进行展望:

1.RAG 的垂直优化

垂直优化旨在进一步解决 RAG 当前面临的挑战。

长下文长度。检索内容过多,超过窗口限制怎么办 ?如果 LLMs 的上下文窗口不再受限制,RAG 应该如何改进?

鲁棒性。检索到错误内容怎么处理?怎么对检索出来内容进行过滤和验证?怎么提高模型抗毒、抗噪声的能力。

与微调协同。如何同时发挥 RAG 和 FT 的效果,两者怎么协同,怎么组织,是串行、交替还是端到端?

Scaling-Law:RAG 模型是否满足 Scaling Law?RAG 是否会,或是在什么场景下会出现 Inverse Scaling Law 的现象?

LLM 的角色。LLMs 可以用于检索(用 LLMs 的生成代替检索或检索 LLMs 记忆)、用于生成、用于评估。如何进一步挖掘 LLMs 在 RAG 中的潜力?

工程实践。如何降低超大规模语料的检索时延?如何保证检索出来内容不被大模型泄露?

2. RAG 的多模态的拓展

如何将 RAG 不断发展的技术和思想拓展到图片、音频、视频或代码等其他模态的数据中?

一方面可以增强单一模态的任务,另一方面可以通过 RAG 的思想将多模态进行融合。

3. RAG 的生态

RAG 的应用已经不仅仅局限于问答系统,其影响力正在扩展到更多领域。现在,推荐系统、信息抽取和报告生成等多种任务都开始受益于 RAG 技术的应用。与此同时,RAG 技术栈也在井喷。

除了已知的 Langchain 和 LlamaIndex 等工具,市场上涌现出更多针对性的 RAG 工具,例如:用途定制化,满足更加聚焦场景的需求;使用简易化,进一步降低上手门槛的;功能专业化,逐渐面向生产环境。

图片

图 6:RAG 的生态系统概览

更多详细内容,请参考原论文:

  • 论文原文:https://arxiv.org/abs/2312.10997
  • 官方仓库:https://github.com/Tongji-KGLLM/RAG-Survey

​

如何学习AI大模型?

作为一名热心肠的互联网老兵,我决定把宝贵的AI知识分享给大家。 至于能学习到多少就看你的学习毅力和能力了 。我已将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。

这份完整版的大模型 AI 学习资料已经上传优快云,朋友们如果需要可以微信扫描下方优快云官方认证二维码免费领取【保证100%免费】

一、全套AGI大模型学习路线

AI大模型时代的学习之旅:从基础到前沿,掌握人工智能的核心技能!

img

二、640套AI大模型报告合集

这套包含640份报告的合集,涵盖了AI大模型的理论研究、技术实现、行业应用等多个方面。无论您是科研人员、工程师,还是对AI大模型感兴趣的爱好者,这套报告合集都将为您提供宝贵的信息和启示。

img

三、AI大模型经典PDF籍

随着人工智能技术的飞速发展,AI大模型已经成为了当今科技领域的一大热点。这些大型预训练模型,如GPT-3、BERT、XLNet等,以其强大的语言理解和生成能力,正在改变我们对人工智能的认识。 那以下这些PDF籍就是非常不错的学习资源。

img

四、AI大模型商业化落地方案

img

作为普通人,入局大模型时代需要持续学习和实践,不断提高自己的技能和认知水平,同时也需要有责任感和伦理意识,为人工智能的健康发展贡献力量。

别再只用GWR了!用Python的mgtwr包搞定时空地理加权回归(GTWR)实战 本文详细介绍了如何使用Python的mgtwr包进行时空地理加权回归(GTWR)实战,突破传统GWR模型的局限。通过核心差异解析、实战全流程演示和进阶技巧,帮助读者掌握GTWR在房价波动、污染物扩散等时空数据分析中的应用,提升模型预测精度。 阅读详情

相关推荐

Arduino IDE 2.3.2 配置 UNO R4 WIFI 开发环境避坑指南(附LED矩阵驱动测试)

本文详细介绍了如何在Arduino IDE 2.3.2中配置UNO R4 WIFI开发环境,并提供了LED矩阵驱动的实战指南。从开发环境搭建到硬件连接,再到LED矩阵的初始化和弹球动画实现,手把手教你避开常见配置陷阱,最终实现流畅的动画效果。特别适合刚接触UNO R4 WIFI的开发者快速上手。

weixin_28675839的博客 220

RAGAS框架,通过无须依赖人类注释的方式,提供一种更有效的评估机制

RAGAS(Retrieval Augmented Generation Assessment)框架的核心是为检索增强生成(RAG)架构提供一套全面的评估标准。这些标准主要集中在三个重要维度上:忠实性、答案相关性和上下文相关性

XianxinMao的博客 1048

UniApp实战:从文件下载到本地保存与预览的一站式解决方案

本文深入解析了UniApp开发中文件下载、保存与预览的完整流程,提供了基于uni.downloadFile、uni.saveFile和uni.openDocument API的一站式实战解决方案。文章详细拆解了核心API的使用方法、多平台(App、H5)的兼容性处理、常见坑点(如文件路径、权限、格式支持)以及进阶优化技巧(如进度提示、文件管理),旨在帮助开发者构建健壮、用户体验良好的跨平台文件处理功能。

d3e4f的博客 614

为什么你的RAG不起作用?失败的主要原因和解决方案

我们正在见证AI的新时代的到来。这个时代的新颖之处不在于NLP和语言模型的出现,而是现成技术降低了企业利用自然语言技术针对他们特定用例的门槛。但是,我们还要清楚的认识到,目前这项技术仍处于早期开发阶段,在为你的AI构建RAG时,其实是在构建一个复杂的搜索引擎,这是可行的,但是要认识到这里的复杂性和挑战并解决这些问题才能让我们向成功迈出第一步。

deephub 6208

VCSA 6.7证书更新全流程指南:从故障诊断到完整替换

本文详细介绍了VCSA 6.7证书更新的全流程,包括故障诊断、证书替换操作步骤及常见问题解决方案。通过使用官方脚本和证书管理器,帮助管理员快速解决证书过期问题,确保vCenter系统的稳定运行。特别强调了STS证书修复和全量证书重置的关键步骤,适用于vcsa6.7环境下的证书管理需求。

weixin_42634811的博客 450

达梦数据库连接报错6001网络通信异常

本文主要记录客户端连接达梦数据库报错6001网络通信异常问题分析过程、问题原因以及问题解决方法。

chen_zizi2025的博客 2772

字节三面被问RAG原理,5分钟就出来了…

与此同时,RAG 技术栈也在井喷。本篇综述将带你全面了解 RAG,深入探讨其核心范式、关键技术及未来趋势,为读者和实践者提供对大型模型以及 RAG 的深入和系统的认识,同时阐述检索增强技术的最新进展和关键挑战。随着 LLMs 的潜力被进一步开发,旨在提升模型的可控性并满足不断演变的需求,RAG 的研究逐渐聚焦于增强推理能力,并且也探索了在微调过程中的各种改进方法。随着 RAG 技术的进一步发展和演变,新的技术突破了传统的 Naive RAG 检索 — 生成框架,基于此我们提出模块化 RAG 的概念。

m0_64752471的博客 1355

GJB设计开发各阶段的文件和记录要求

GJB设计开发各阶段的文件和记录要求

Abel的博客 4055

《字节跳动RAG实践手册》解读(附免费下载)

为什么RAG成为行业必争之地? RAG,即检索增强生成,其核心思想简而言之:让AI在回答问题前先“查阅资料”。相比传统大模型,RAG系统通过引入外部知识库,将模型事实准确性提升30%以上,同时大幅降低幻觉现象。 在字节跳动内部,RAG已不再是实验性技术,而是支撑10亿用户产品的核心基础设施。从抖音电商智能客服到飞书文档助手,从金融研报解读到剪映视频脚本生成,RAG技术已渗透至字节跳动所有核心业务线。

2401_84204207的博客 2129

开源项目evo2安装教程

Evo 2 是一种先进的 DNA 语言模型,用于长上下文建模和设计。Evo 2 使用 StripedHyena 2 架构在单核苷酸分辨率下对 DNA 序列进行建模,上下文长度可达 100 万碱基对。Evo 2 使用 Savanna 进行预训练,并在 OpenGenome2 数据集上进行自回归训练,该数据集包含来自所有生命领域的 8.8 万亿个标记。

猿小白的博客 927

Office系列完全干净卸载工具合集(最全)

使用 Microsoft Fix it 卸载 Microsoft Office 套件 一、Windows 7、Windows Vista或Windows XP下卸载Office 1.MicrosoftEasyFix50416 工具用来卸载office 2003 MicrosoftEasyFix50416_Office2003.msi 2.MicrosoftEasyFix50154 工具用来卸载office 2007 MicrosoftEasyFix50154_Office2007.msi 3.Microso

业精于勤,荒于嬉 3万+

字节AI Agent面试核心考察与RAG优化实践

AI Agent作为企业智能化转型的核心组件,其核心技术架构涉及工具动态调度、知识检索增强(RAG)等关键模块。在工程实现层面,需要解决工具调用的安全控制、多阶段检索优化等挑战,其中RAG系统通过混合索引策略和分层处理显著提升企业知识库的查询效率。以字节跳动飞连团队为例,其面试重点考察候选人在企业级场景下设计高可用AI系统的能力,包括处理合规要求、优化端到端延迟等实际问题。掌握Transformer变体应用和Redis深度优化等技能,能有效支撑AI Agent在会议纪要生成、智能排障等业务场景中的高性能表现

diaogan4202的博客 378

6、基因组数据可视化与甲基化分析:从基础操作到深入洞察

本文详细介绍了基因组数据可视化和全基因组DNA甲基化分析的方法和技术,包括基因组查看器(IGV)的基本操作、单核苷酸变异的可视化、DNA甲基化与CpG岛的关联分析、统计建模与显著甲基化区域识别,以及不同细胞系之间的甲基化模式差异分析。通过具体案例展示了如何利用MATLAB进行数据分析和可视化,为基因组研究、疾病机制探索及个性化医疗提供了技术支撑和实践参考。

qsc901234的博客 295

10分钟上手RAG技术,零基础拥有知识库

为什么有些人能让电脑瞬间"读懂"上万份文档,为什么有些人能让AI精准回答任何专业问题,为什么有些人能把海量知识变成私人智囊团?

huang9604的博客 1012

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

字节跳动RAG系统全解析:架构设计、实战案例与学习指南,程序员必看的AI增强技术

字节跳动发布《RAG实践手册》,系统展示其国内最大规模RAG系统的实战经验。该技术通过"查阅资料"提升AI回答准确率30%以上,降低幻觉现象。文章详解四层架构(数据层、索引层、检索层、生成层)及抖音电商、飞书等业务场景应用案例,探讨多模态融合、成本管控等技术挑战与未来发展方向。

2401_84204207的博客 890

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

百度算法岗三面面经,已上岸了!!!

节前,我们星球组织了一场算法岗技术&面试讨论会,邀请了一些互联网大厂朋友、参加社招和校招面试的同学.针对算法岗技术趋势、大模型落地项目经验分享、新手如何入门算法岗、该如何准备、面试常考点分享等热门话题进行了深入的讨论。个人背景:985硕士,一篇一作,感受球友的鼎力支持。。。

2201_75499313的博客 3018

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

小白也能懂!一文吃透 RAG:从原理到调优,让你的 AI 回答精准翻倍

小白也能懂!一文吃透 RAG:从原理到调优,让你的 AI 回答精准翻倍

qq_46094651的博客 843

字节跳动AI产品经理1h45min面试(贼难)

一面是“认知筛选”,面试官会快速判断你对AI产品的基础认知是否达标。重点考察行业视野、基础技术认知以及基础产品感。

weixin_58753619的博客 394

Java实习模拟面试|字节跳动后端日常实习三面面经:千万级数据导出、CDC同步、OOM排查与高并发设计全解析

面试官提问:先做个简单的自我介绍吧,重点说说你的技术栈和项目经历。我好的!我是XX大学计算机专业的大三学生,主攻Java后端开发,熟悉Spring Boot、MyBatis、MySQL、Redis等主流技术栈。最近在实习中参与了一个基于Agent架构的数据处理平台,负责ETL流程优化和CDC(Change Data Capture)同步模块的设计。此外,我也对大模型应用中的RAG、MCP等技术有一定实践。面试官提问:说说类加载过程?双亲委派解决了什么问题?我。

吾为热爱计科,致力于知识分享的践行者,此博客是我在这条道路上留下的足迹。 999
上一篇: 赋能百业:多模态处理技术与大模型架构下的AI解决方案落地实践
下一篇: 面试必备!值得收藏!不容错过的100+ 大语言模型面试问题及答案
我爱学大模型
博客等级 码龄3年 7883粉丝 687原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值