本文详细介绍了多模态RAG技术的原理与实现。首先,阐述了RAG(检索增强生成)的概念,即通过检索信息辅助大型语言模型生成答案,以提升知识密集型任务中的准确性和可信度。接着,文章探讨了为何需要RAG,如解决大模型知识过时和“幻觉”问题。随后,分步骤解析了RAG的实现过程,包括数据准备、检索、增强和生成。最后,重点介绍了多模态RAG的发展,如何利用多模态大模型直接处理图像等非结构化数据,以及DSE和ColPali等前沿技术的应用,展示了多模态RAG在商业应用中的巨大潜力。

1、什么是RAG

什么是RAG: Retrieval Augmented Generation,检索增强生成。是一种结合了信息检索技术和大型语言模型提示功能的框架。它通过从数据源检索信息来辅助LLM生成答案,提高了模型在知识密集型任务中的准确性和可信度。

我们为什么需要RAG: 大型语言模型通常基于固定的历史数据集进行训练,这意味着它们的知识是过时的,无法涵盖最新的信息或特定领域的专业知识。RAG的目的是通过引入额外知识库,检索其中的相关信息,并根据检索结果给予用户回答。这也可以显著减少大模型因为并不具备相关知识,而出现的“幻觉”现象。当然我们也可以直接把整个数据库作为LLM的prompt输入,但由于transformer架构O(N2)复杂度的限制,LLM支持的最长输入长度通常有限,多数支持到128k token已经是极限,使得在面临更长知识库输入时,RAG依然是当下唯一可行的解决方案。

如何实现RAG: 在实际应用时,我们常需要给定一系列文档,并使用RAG方法,让LLM针对这些文档进行检索与交互。RAG的实现主要包含以下几个步骤:

  • 数据准备阶段: 包括数据提取、分块(chunking)、向量化(embedding)、数据入库等环节。数据提取涉及将不同格式的数据(如PDF、Word、数据库等)处理为统一的格式。分块是将大文档分割成较小的、语义完整的单元,以便于后续处理和检索。
  • 检索阶段: 系统根据输入查询检索相关文档或信息。这个阶段依赖于搜索算法和索引方法来快速识别大量集合中最相关的数据。
  • 增强阶段: 将 用户查询和检索到的额外上下文放入一个提示模板中,以增强提示。
  • 生成阶段: 使用大型语言模型来针对检索结果,生成对用户的回复。

2、走向多模态RAG

从RAG的应用可以看出,多数时候,我们需要把一些文档作为RAG的输入,用于检索和生成。而现实应用中,文档通常是以图文交错的形式存在的,比如网页、PDF、PPT文件等等。

通常的做法是,只保留文档中的文本信息。对于PDF文档,则进行OCR文字识别,读取其中的文本。但这样会导致大量图片中至关重要的信息被丢失,以及很多结构化内容的错乱,比如标题、表格、页眉页脚等格式错乱。

改进的做法是,把所有模态信息都转换为纯文本,再进行RAG。我们可以使用多种计算机视觉模型,比如检测模型对文档结构进行识别,然后对文档中不同的模块,使用不同的“广义OCR模型”进行解析。比如对于文本段落,使用OCR模型进行文本识别;对于表格,可以用表格模型进行识别转换为Markdown或LaTeX文本;对于公式,则套用公式识别转换为LaTeX;对于图片,则可使用多模态大模型如GPT-4o进行文本解读(caption),保存为文本描述。有很多开源的工具可以完成这些事情,比如MinerU等。通过解析算法,多模态数据就被完全转换为纯文本的格式了,也就可以照葫芦画瓢套用纯文本的RAG方法了。

图像来源: 张颖峰 | 所见即所得:多模态RAG正在向我们走来

我们注意到,使用上述的方法,信息不可避免会存在丢失,而且依赖过多的解析模型。而时间来到2024年,多模态大模型实现了爆发式的技术突破,高分辨率的视觉输入已经取得了巨大突破,使用单一的多模态大模型做广义OCR也变得非常容易。比如QWen2-VL以及InternVL-2等开源多模态大模型,在文档的广义OCR上都有非常好的效果。

多模态大模型成功,让端到端(end-to-end)的算法已经成为了主流。原生多模态的RAG算法也成为了可能:既然多模态大模型有能力理解文本,那我们其实即无需再把图像转换为文本,而可以直接使用图像,提取embedding去做RAG。

即从图(a)转变为图(b)的模式

DSE

https://arxiv.org/abs/2406.11251

DSE,即Document Screenshot Embedding,是一个不使用广义OCR的多模态RAG方法,直接把原始文档的扫描图片,切片后,使用视觉语言模型的编码器编码。其对query和docunment使用了双编码的架构。验证了这一想法的可行性。

ColPali

https://arxiv.org/abs/2407.01449

ColPali架构也是利用视觉语言模型来从文档页面的图像中产生高质量的上下文化嵌入。ColPali使用了延迟交互(late interaction)技术,大大提高了检索效率,同时在检索性能上超越了现有的文档检索系统,并且具有更快的处理速度和可端到端训练的特点。上图对比了传统的文档RAG与多模态RAG的区别。因为减少了广义OCR的解析过程,使得处理速度也有了质的提升。

CoPali其实从名字上看,就知道灵感来源于两个工作,PaliGemma和CoBERT。PaliGemma 是 Google 开发的一款具有多模态功能的视觉语言模型,它结合了视觉模型 SigLIP 和大型语言模型 Gemma。“Col” 则来自于ColBERT 的延迟交互编码器。ColPali 算是延迟交互编码器在多模态 RAG 检索的应用,并且极大提高了检索召回的精度。

延迟交互编码结合了双编码器和交叉编码器的优点。在这种架构中,query和文档被分别编码成独立的embedding集合,然后通过一个高效的交互机制来计算它们之间的相似度。

延迟交互编码的核心思想是将查询和文档的编码过程分开,这样文档的编码可以离线完成,而查询的编码则在在线阶段进行。这种方法的优点是可以在查询时仅对查询进行编码,从而大大提高了处理速度。此外,由于文档的编码是预先完成的,可以将其存储在数据库中,这样就可以对更多的文档进行排序,从而提高查询的精度。

在延迟交互编码中,一个关键的计算是最大相似性(MaxSim)函数,它计算每个查询Token向量与所有文档Token向量之间的相似度,并跟踪每个查询Token的最大得分。查询和文档的总相似度分数是这些最大余弦相似度分数的总和。这种方法允许模型在保持较高排序质量的同时,也具备较高的性能。

随着多模态大语言模型能力的增强,以它为基础的多模态RAG,也早已突破了传统的图像检索的应用方式,而是真正具备大规模非结构化多模态数据深度理解的能力,将会有更多toB的商业应用价值。

最后

对于正在迷茫择业、想转行提升,或是刚入门的程序员、编程小白来说,有一个问题几乎人人都在问:未来10年,什么领域的职业发展潜力最大?

答案只有一个:人工智能(尤其是大模型方向)

当下,人工智能行业正处于爆发式增长期,其中大模型相关岗位更是供不应求,薪资待遇直接拉满——字节跳动作为AI领域的头部玩家,给硕士毕业的优质AI人才(含大模型相关方向)开出的月基础工资高达5万—6万元;即便是非“人才计划”的普通应聘者,月基础工资也能稳定在4万元左右

再看阿里、腾讯两大互联网大厂,非“人才计划”的AI相关岗位应聘者,月基础工资也约有3万元,远超其他行业同资历岗位的薪资水平,对于程序员、小白来说,无疑是绝佳的转型和提升赛道。
图片
图片
对于想入局大模型、抢占未来10年行业红利的程序员和小白来说,现在正是最好的学习时机:行业缺口大、大厂需求旺、薪资天花板高,只要找准学习方向,稳步提升技能,就能轻松摆脱“低薪困境”,抓住AI时代的职业机遇。

如果你还不知道从何开始,我自己整理一套全网最全最细的大模型零基础教程,我也是一路自学走过来的,很清楚小白前期学习的痛楚,你要是没有方向还没有好的资源,根本学不到东西!

下面是我整理的大模型学习资源,希望能帮到你。

图片

👇👇扫码免费领取全部内容👇👇

在这里插入图片描述

最后

1、大模型学习路线

img

2、从0到进阶大模型学习视频教程

从入门到进阶这里都有,跟着老师学习事半功倍。

在这里插入图片描述

3、 入门必看大模型学习书籍&文档.pdf(书面上的技术书籍确实太多了,这些是我精选出来的,还有很多不在图里)

在这里插入图片描述

4、 AI大模型最新行业报告

2026最新行业报告,针对不同行业的现状、趋势、问题、机会等进行系统地调研和评估,以了解哪些行业更适合引入大模型的技术和应用,以及在哪些方面可以发挥大模型的优势。

img

5、面试试题/经验

img

【大厂 AI 岗位面经分享(107 道)】

img

【AI 大模型面试真题(102 道)】

img

【LLMs 面试真题(97 道)】

img

6、大模型项目实战&配套源码

img

适用人群

在这里插入图片描述

四阶段学习规划(共90天,可落地执行)
第一阶段(10天):初阶应用

该阶段让大家对大模型 AI有一个最前沿的认识,对大模型 AI 的理解超过 95% 的人,可以在相关讨论时发表高级、不跟风、又接地气的见解,别人只会和 AI 聊天,而你能调教 AI,并能用代码将大模型和业务衔接。

  • 大模型 AI 能干什么?
  • 大模型是怎样获得「智能」的?
  • 用好 AI 的核心心法
  • 大模型应用业务架构
  • 大模型应用技术架构
  • 代码示例:向 GPT-3.5 灌入新知识
  • 提示工程的意义和核心思想
  • Prompt 典型构成
  • 指令调优方法论
  • 思维链和思维树
  • Prompt 攻击和防范
第二阶段(30天):高阶应用

该阶段我们正式进入大模型 AI 进阶实战学习,学会构造私有知识库,扩展 AI 的能力。快速开发一个完整的基于 agent 对话机器人。掌握功能最强的大模型开发框架,抓住最新的技术进展,适合 Python 和 JavaScript 程序员。

  • 为什么要做 RAG
  • 搭建一个简单的 ChatPDF
  • 检索的基础概念
  • 什么是向量表示(Embeddings)
  • 向量数据库与向量检索
  • 基于向量检索的 RAG
  • 搭建 RAG 系统的扩展知识
  • 混合检索与 RAG-Fusion 简介
  • 向量模型本地部署
第三阶段(30天):模型训练

恭喜你,如果学到这里,你基本可以找到一份大模型 AI相关的工作,自己也能训练 GPT 了!通过微调,训练自己的垂直大模型,能独立训练开源多模态大模型,掌握更多技术方案。

到此为止,大概2个月的时间。你已经成为了一名“AI小子”。那么你还想往下探索吗?

  • 为什么要做 RAG
  • 什么是模型
  • 什么是模型训练
  • 求解器 & 损失函数简介
  • 小实验2:手写一个简单的神经网络并训练它
  • 什么是训练/预训练/微调/轻量化微调
  • Transformer结构简介
  • 轻量化微调
  • 实验数据集的构建
第四阶段(20天):商业闭环

对全球大模型从性能、吞吐量、成本等方面有一定的认知,可以在云端和本地等多种环境下部署大模型,找到适合自己的项目/创业方向,做一名被 AI 武装的产品经理。

  • 硬件选型

  • 带你了解全球大模型

  • 使用国产大模型服务

  • 搭建 OpenAI 代理

  • 热身:基于阿里云 PAI 部署 Stable Diffusion

  • 在本地计算机运行大模型

  • 大模型的私有化部署

  • 基于 vLLM 部署大模型

  • 案例:如何优雅地在阿里云私有部署开源大模型

  • 部署一套开源 LLM 项目

  • 内容安全

  • 互联网信息服务算法备案

  • 👇👇扫码免费领取全部内容👇👇

    在这里插入图片描述

3、这些资料真的有用吗?

这份资料由我和鲁为民博士(北京清华大学学士和美国加州理工学院博士)共同整理,现任上海殷泊信息科技CEO,其创立的MoPaaS云平台获Forrester全球’强劲表现者’认证,服务航天科工、国家电网等1000+企业,以第一作者在IEEE Transactions发表论文50+篇,获NASA JPL火星探测系统强化学习专利等35项中美专利。本套AI大模型课程由清华大学-加州理工双料博士、吴文俊人工智能奖得主鲁为民教授领衔研发。

资料内容涵盖了从入门到进阶的各类视频教程和实战项目,无论你是小白还是有些技术基础的技术人员,这份资料都绝对能帮助你提升薪资待遇,转行大模型岗位。
在这里插入图片描述
在这里插入图片描述

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

在这里插入图片描述

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐