前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >RAG与向量数据库

RAG与向量数据库

作者头像
MySQLSE
发布2024-06-26 18:27:08
1010
发布2024-06-26 18:27:08
举报

Retriveal Augmented Generation(RAG)检索增强生成,是一种结合了知识检索和生成模型的技术方法,用于减少“幻觉”的产生,主要使用在问答系统,为用户提供正确的答案。

传统的生成模型,通常是基于大量的通用数据进行训练,但在处理特定领域或专业知识时可能存在一定的限制。为了解决这个问题,RAG 引入了知识检索的概念。在 RAG 中,生成模型与一个知识检索模块相结合。知识检索模块可以通过检索相关的知识库、文档或其他资源来获取特定领域的知识。生成模型可以利用这些检索到的知识来辅助生成过程,提供更准确、丰富的内容。具体而言,当生成模型需要生成一段文本时,它可以首先使用知识检索模块来检索相关的知识片段。然后,生成模型可以将这些知识片段作为输入或参考,以更好地理解任务要求,并生成更具准确性和一致性的文本。

RAG 可以帮助解决私有知识问题,让私有知识库和 AI 大模型更好地融合。通过将私有知识库与大模型结合,RAG 能够使大模型“知道”更多的私有知识,从而提高其回答的准确性和可靠性。

RAG框架

RAG技术

RAG技术主要分为两类, RAG Sequence和RAG Token。

  • RAG Sequence:一种通过检索后的文档生成完整序列的方法。对应于每个输入,模型找寻一组相关的文档信息,将这一组文档整体考虑、生成单一的反映组合信息的响应。
  • RAG Token:对响应的每个部分,模型找寻相关的文档,响应是以增量方式构造的,每个部分都反映为该特定部分检索到的文档中的信息。

RAG应用程序示意图如下:

如果仅使用LLM,查询仅依靠预训练时使用的数据集来提供结果,如果使用LLM+RAG的方式,查询会使用向量数据库作为额外的数据集来提供正确的结果。向量数据库是RAG方式的一个重要的数据来源,下面的内容对于向量数据库进行一个简要的介绍。

向量

向量是一组称为维度的数字序列,用于捕捉数据的重要特性。LLM中的嵌入本质上是高纬度的向量。向量通过深度学习的嵌入模型生成,表示数据的语义内容,并不是底层的单词或像素。例如,一个单词可以表示为一个向量,其中每个元素表示该单词在某个维度上的特征。这些特征可以是词频、词性、语义等。通过将文本数据表示为向量,可以使用机器学习算法对其进行处理和分析。

为了帮助理解,这里以2维图形进行说明。这里有三组词汇,基于语义它们分为动物、水果,和城市。当增加一个新的词汇“老虎”时,它最接近的是动物这一组词汇,甚至更接近“猫”,并且远离水果和城市两个组。因此,向量数据库实际上是针对多维空间进行了优化,其中关系基于高维向量空间中的距离和相似性。

向量之间的距离在自然语言处理中,通常用于衡量两个文本之间的语义相似度。例如,在文本分类任务中,可以计算每个文本与各个类别的中心向量之间的 距离,以确定该文本属于哪个类别。向量之间的距离可以通过多种方式计算,例如,余弦距离,点积等。其中,余弦距离是一种常用的方法,它计算的是两个向量之间的夹角余弦值,取值范围在[-1,1]之间,值越大表示两个向量越相似。

向量数据库工作流程

常见的向量数据库如下:

在OCI的云服务中,MySQL Heatwave未来也将提供向量存储和检索。

LLM中向量数据库的角色

  • 解决LLM中的幻觉问题。
  • 在提示中增加企业特定的内容,以生成更好的响应。
  • 使用最相关的内容来避免超过LLM标记限制。
  • 相对于LLM的微调而言,成本低廉。
  • 实时更新知识库。
  • 缓存之前LLM提示/应答,以改进性能降低成本。

由此可见,向量数据库在生成式AI中起到的重要作用,这也是当前众多数据库纷纷增加向量存储功能的原因。

以上内容是关于LLM中Retriveal Augmented Generation(RAG)和向量数据库的简介。暂时是这一系列的最后一篇,后续会继续发布MySQL的相关内容。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2024-06-14,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 MySQL解决方案工程师 微信公众号,前往查看

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

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
对象存储
对象存储(Cloud Object Storage,COS)是由腾讯云推出的无目录层次结构、无数据格式限制,可容纳海量数据且支持 HTTP/HTTPS 协议访问的分布式存储服务。腾讯云 COS 的存储桶空间无容量上限,无需分区管理,适用于 CDN 数据分发、数据万象处理或大数据计算与分析的数据湖等多种场景。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档