前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >大模型相关技术-初识RAG

大模型相关技术-初识RAG

原创
作者头像
西门呀在吹雪
修改2024-04-28 13:50:39
2400
修改2024-04-28 13:50:39
举报
文章被收录于专栏:架构之巅架构之巅
没有RAG介入情况下的大模型架构
没有RAG介入情况下的大模型架构

这个时候如果想对用户输入做一些过滤、对某种回答有了固定的答案怎么办呢?java程序员肯定就会想到写个filter或者intercepter,RAG就是在做类似的事情,只不过流程更加复杂。

RAG是什么

检索增强生成(RAG)是对大型语言模型输出进行优化的方法,使其能够在生成响应之前引用训练数据来源之外的权威知识库。

简单来讲就是让用户的问题先经过一个提前预置的专业知识库,先检索知识库,将知识库的响应提交给大模型,让大模型总结输出,或者直接就输出了,不经过大模型总结。

RAG在整体流程中的位置
RAG在整体流程中的位置
整体流程图
整体流程图

为什么需要RAG

  • 大模型在没有答案的情况下提供幻象数据,也就是胡说八道。
  • 当用户需要特定的当前响应时,提供过时或通用的信息,模型提供的最新信息为训练模型时的数据。
  • 数据来源不权威,缺少来源依据和出处
  • 无法提供实时数据:天气预报、报时、股票行情等。
  • 敏感词、停止词过滤

RAG的基石:向量数据库

复习一下向量的概念:在几何中一个同时具有大小和方向的对象就叫向量,还有一个定义大家可能更加熟悉,“既有大小,又有方向的量叫做向量”。

看到这,能回忆起你的青春痘痘了吗?
看到这,能回忆起你的青春痘痘了吗?

向量(vector)是在大语言模型、知识库交互、计算过程中的重要指标。它可以将文本和知识表示为数学向量,实现文本相似度计算、知识库检索和推理等功能。向量(vector)为语义理解和应用提供了一种方便有效的表示方法。

向量有N维度,向量的检索过程就是对向量进行算术运算的过程,例如:通过向量之间的夹角来描述它们之间的关系。在二维坐标系中,如果夹角越小,说明两个向量之间的关联性越高。我们可以使用公式计算任意两个向量之间的余弦相似度。在三维坐标系里,也可以用同样的原理来计算任意两个向量之间的夹角和余弦相似度。

当维度比较低的时候向量计算可以很快的完成,如果存在一个9999维的向量计算将会比较耗费CPU资源,此时我们借鉴关系型数据的经验,就会用到向量索引了,通过索引实现快速比较

RAG的实现EmbeddingModel&RerankModel

阶段一:将自然语言分割成向量,EmbeddingModel专门用于生成语义向量,在语义搜索和问答中起着关键作用。

Embedding模型是指将高维度的数据(例如文字、图片、视频)映射到低维度空间的过程。简单来说,embedding向量就是一

个N维的实值向量,它将输入的数据表示成一个连续的数值空间中的点。本文主要关注文本embedding。

阶段二:RerankModel擅长优化语义搜索结果和语义相关顺序精排。

划重点,说人话就是:

通俗的讲就是embedding实现了自然语言的向量化,提供检索能力,提供检索结果,rerank模型实现了根据语义的排序

这个阶段一、阶段二是不是特别像搜索引擎里面的倒排索引和评分排序呢?是的,整体的流程是和es类似,哪思考一个问题为

什么不用es,反而用这么复杂的模型来实现呢?

参考:

什么是向量数据库_向量数据库简介_向量数据库的优势以及应用场景-腾讯云开发者社区 (tencent.com)

AIGC|人人都在说的向量数据库究竟是什么?小白也能读懂! - 哔哩哔哩 (bilibili.com)

我正在参与2024腾讯技术创作特训营最新征文,快来和我瓜分大奖!

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • RAG是什么
  • 为什么需要RAG
  • RAG的基石:向量数据库
  • RAG的实现EmbeddingModel&RerankModel
相关产品与服务
大模型知识引擎
大模型知识引擎(LLM Knowledge Engine),是面向企业客户及合作伙伴的,基于大语言模型的知识应用构建平台,结合企业专属数据,提供知识问答等应用范式,更快更高效地完成大模型应用的构建,推动大语言模型在企业服务场景的应用落地。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档