AI 文摘

什么是检索增强生成(RAG)?





作者: 诺特扬 来源: 诺特扬

什么是检索增强生成(RAG)?

前言

随着 AI 的发展,各种术语层出不群。本来这些术语是确定的,但因为普通人也不会去深究这些术语真正的内容,这些术语的内涵就变得像在知识的边缘游走,既是又不太确切。

那么什么是 RAG 呢?RAG 到底是哪几个词?

RAG

RAG,Retrieval-Augmented Generation,从字面意思看:↳

Retrieva:检索

Augmented:增强↳

Generation:all of the people born and living at about the same time, regarded collectively.(这个词直译是代,似乎很难解释清楚这个词的意思,所以我加了英文的解释)

所以 RAG 翻译过来就是检索增强生成。

RAG 就是帮助大语言模型的输出变得更准确、更多更新(more up date)的框架。

RAG 的意义

在直接与大模型对话的过程中,我们没办法确定大模型输出内容的准确性。这句话怎么理解呢?

如果我们向大模型提问的内容是我们所不熟悉的内容,大模型生成的内容就很难说是准确的内容。这与我们自己去搜索内容不一样。打个比方说,我要查昨天的气象数据,我可以去中国国家的气象信息网站查询,无论这个信息真假,我只能相信这个数据,因为这个数据是有背书、且唯一的。

但是这时候我去问大模型,大模型给出的答案就没办法证明其是真的,因为这个输出过程是完全看不到的(用户看不到这个输出到底是大模型编的还是查询到的)。

为了解决这种不准确和大模型输出的幻觉(虚假内容),于是就有了 RAG 这种框架。

RAG 框架的运行逻辑

有了 RAG,大模型在输出之前就有了一个新的步骤,那就是它会先去检索这个框架中的内容存储,找到跟用户提问相关的内容,再与输出相结合,输出相对准确的内容。这个过程大概像流程图展示的这样。

在一些预处理(经受过数据训练的)大模型中,如果外部数据已经更新了,这些预处理的大模型为了更新数据就需要重新训练模型。这一过程,大概需要数月的时间。

但因为有了 RAG,只需要更新数据库,就可以实现同样的效果。

但 RAG 也是有质量区别的,那么 RAG 框架的研发人员主要任务就是提高 RAG 增强检索的效率和效果。

更多AI工具,参考Github-AiBard123国内AiBard123

可关注我们的公众号:每天AI新工具