基于大语言模型的RAG系统搭建及优化-embedding嵌入向量

简介: embedding嵌入向量

免费体验阿里云高性能向量检索服务https://www.aliyun.com/product/ai/dashvector

向量banner制作-用于日常发文章.png


大语言模型的简介

大语言模型是RAG系统的核心,咱们先来看看大语言模型发展的历史情况。 1.jpg

大语言模型的发展简史

大语言模型的发展主要为了解决NLU和NLG两类问题,简单说就是让大语言模型要理解人类语言,还要对人类生成反馈,近些年随着技术发展,已有论文论证,归根到底还是NLG的问题。

2.jpg

NLP发展要解决的关键问题

3.jpg

大语言模型的“涌现”

什么叫“涌现”?通俗讲,就是模型在小规模参数下不能胜任的复杂任务,在大规模参下能力出现“跃迁”,以前不能完成的任务,现在也可以完成了。

参数增加后,大语言模型的能力获得数量级的提升,由量变引起质变后,我们可以得知大语言模型已具有较强的推理能力以及较强的对人类语言体系的理解能力,这些能力是如何达成的呢?这个需要从embedding词嵌入向量说起。

什么是词嵌入向量

词嵌入(word embedding)实际是一个用来表示自然语言中每一个字或词的向量一组数字,这组数字里的每一个数字可以表征该字或词某一维度的信息),具体如下:

词嵌入向量word embedding示例

那么,使用word embedding这样的方式来表达自然语言的好处是什么呢?主要有如下两个好处:

1、将自然语言映射为代数向量,便于机器计算-创建文字的向量表示

2、可以很容易地计算出相似的向量之间的相互关系,便于大模型推理-映射文字的相互关系

进一步,这些向量是怎么生成的呢?答案是通过机器学习模型进行训练得到的。我们知道我们的语言天然就具有机器学习中的“标签”的属性,也就是我们的文字都是现成的有上下文,给定某一段文字,上一句和下一句正好对应机器学习中的x->y,也就是天然具有样本和标签,也就非常适合进行自监督学习,大大节省了准备数据集的时间。具体准备数据集的方法有如下两种:

embedding嵌入向量训练的方法

开始随机初始embedding向量矩阵和上下文context矩阵,此时将准备好(标注)的数据集输入模型,得到的结果和预期结果肯定相差很大,这样就需要对embedding向量矩阵和上下文context矩阵进行更新,如此反复循环,直到误差最小,这个时候得到的embeding向量矩阵就是我们想要得到的结果,context矩阵可以抛弃掉。使用数学表达式表达这一过程就是如下:

带反向传播的神经网络训练的数学表达过程

注意途中的正向传播和反向传播,这也是神经网络训练过程的简单描述。

最终得到的词嵌入向量,纵向vocabulary size就是词表大小,代表有多少个单词向量,横向768、1024、1280、1600代表向量的长度。

有了词向量,我们就相当于有了大语言模型的“单词表”,大语言模型理解人类语言,做出合理推理就有了根基,接下来要解决的是让大语言模型理解人类语言的意图。

在RAG系统中,我们要让大语言模型和人类交互最新、最实时的资讯和问题,我们需要将最新的资讯信息告诉给大语言模型,要想让大语言模型进行实时问答,我们需要将实时资讯要么通过训练方式“灌入”大语言模型中,要么通过外挂的方式,将信息放入问题的上下文中,让大语言模型在回答通过上下文结合自身强大的推理能力进行实时推理回答。

第一种方式目前来讲不论是全量训练还是微调,代价都不小,第二种方式就是RAG采用的方式,将资讯先放入向量数据库,用户提出问题后,将问题与向量数据库中存在的资讯进行相似性比对,将最相似的资讯放入用户问题的上下文中,一起传给大语言模型,这样,大语言模型就能回答实时的问题。要将信息放入向量数据库,就需要先将信息转化成嵌入向量也是RAG系统性能优化过程中需要高度重视的一个环节。


了解更多阿里云向量检索服务DashVector的使用方法,请点击:

https://help.aliyun.com/product/2510217.html?spm=a2c4g.2510217.0.0.54fe155eLs1wkT

向量banner制作-用于日常发文章.png


相关文章
|
20天前
|
存储 自然语言处理 算法
【学习大模型】RAG基础
RAG(Retrieval-Augmented Generation)技术是为了解决大模型中的幻觉问题、实时交互、数据安全和知识动态性挑战。它结合了搜索和大模型的提示功能,使模型能基于检索到的信息生成更准确的回答。RAG通过向量数据库和向量检索,将文本转化为向量表示,然后进行相似度计算和检索,以提供上下文相关的信息。
165 1
|
3月前
|
存储 人工智能 机器人
使用CLIP和LLM构建多模态RAG系统
在本文中我们将探讨使用开源大型语言多模态模型(Large Language Multi-Modal)构建检索增强生成(RAG)系统。本文的重点是在不依赖LangChain或LLlama index的情况下实现这一目标,这样可以避免更多的框架依赖。
199 0
|
5月前
LSTM+Transformer混合模型时间序列预测实战教学
LSTM+Transformer混合模型时间序列预测实战教学
205 0
|
1月前
|
存储 自然语言处理 物联网
2024年大模型最快的应用落地技术-Embedding向量优化
大模型技术的发展,对向量检索模型起到了促进的作用,未来可能会把向量检索模型合并成大模型的一个子任务。
|
2月前
|
机器学习/深度学习 人工智能 自然语言处理
NNLM - 神经网络语言模型 | 高效的单词预测工具
NNLM - 神经网络语言模型 | 高效的单词预测工具
40 1
|
2月前
|
存储 JSON 自然语言处理
千帆大模型——自定义【知识库】——Embedding式数据
千帆大模型——自定义【知识库】——Embedding式数据
117 0
|
3月前
|
存储 机器学习/深度学习 人工智能
基于Megatron-Core的稀疏大模型训练工具:阿里云MoE大模型最佳实践
随着大模型技术的不断发展,模型结构和参数量级快速演化。大模型技术的应用层出不穷。大模型展现惊人效果,但训练和推理成本高,一直是巨大挑战。模型稀疏化能降低计算和存储消耗。近期以Mixtral为代表的MoE(多专家混合)大模型证明了稀疏MoE技术能大幅降低计算量、提升推理速度,模型效果甚至超过同规模稠密模型。阿里云PAI和NVIDIA团队深入合作,基于Megatron-Core MoE框架,解决了MoE大模型训练落地时会遇到的可拓展性、易用性、功能性以及收敛精度等核心问题,在下游任务上取得了很好的模型效果。
|
4月前
|
机器学习/深度学习 自然语言处理 数据挖掘
预训练语言模型中Transfomer模型、自监督学习、BERT模型概述(图文解释)
预训练语言模型中Transfomer模型、自监督学习、BERT模型概述(图文解释)
63 0
|
4月前
|
机器学习/深度学习 自然语言处理 PyTorch
PyTorch搭建RNN联合嵌入模型(LSTM GRU)实现视觉问答(VQA)实战(超详细 附数据集和源码)
PyTorch搭建RNN联合嵌入模型(LSTM GRU)实现视觉问答(VQA)实战(超详细 附数据集和源码)
74 1
|
4月前
|
机器学习/深度学习 自然语言处理 算法
【Tensorflow深度学习】优化算法、损失计算、模型评估、向量嵌入、神经网络等模块的讲解(超详细必看)
【Tensorflow深度学习】优化算法、损失计算、模型评估、向量嵌入、神经网络等模块的讲解(超详细必看)
56 1