开发RAG应用,你必须知道的7个Embedding模型

【AIGC调研系列】embeding模型有哪些,各有什么优势 在AIGC中,Embedding模型是一种将文本数据转换为多维向量数组的技术,这些向量可以代表任何事物,如文本、音乐、视频等。有几种不同的Embedding模型,它们各有其优势和应用领域。 阅读详情
AI摘要

本文精选2023年NLP领域7款先进Embedding模型,包括BGE、GTE、E5Embedding等,覆盖多语言、多场景应用,展示在文本相似度、信息检索等任务上的卓越性能。

在自然语言处理(NLP)领域,Embedding模型是将文本数据转化为数值向量的核心技术,从而让计算机能够便捷地衡量文本间的语义关联,这种表示法已成为多种基础NLP任务的核心,如文本相似度判定、语义搜索、信息检索、文本重新排序、聚类以及作为下游任务的特征输入。

最近,随着大语言模型的升温,Embedding技术在检索增强生成(RAG)应用中的文档检索环节中也得到了广泛应用,开源社区也涌现出了众多高效的Embedding模型,选择合适的文本Embedding模型对于检索阶段的效果至关重要,本文将为你梳理2023年AI和NLP应用开发中,值得关注的7种Embedding模型。

1.BGE

BGE,即BAAI General Embedding,是由智源研究院(BAAI)团队开发的一款文本Embedding模型。该模型可以将任何文本映射到低维密集向量,这些向量可用于检索、分类、聚类或语义搜索等任务。此外,它还可以用于LLMs的向量数据库。

BGE模型在2023年有多次更新,包括发布论文和数据集、发布新的reranker模型以及更新Embedding模型。BGE模型已经集成到Langchain中,用户可以方便地使用它。此外,BGE模型在MTEB和C-MTEB基准测试中都取得了第一名的成绩。

BGE模型的主要特点如下:

  1. 多语言支持:BGE模型支持中英文。
  2. 多版本:BGE模型有多个版本,包括bge-large-en、bge-base-en、bge-small-en等,以满足不同的需求。
  3. 高效的reranker:BGE提供了reranker模型,该模型比Embedding模型更准确,但比Embedding模型更耗时。因此,它可以用于重新排名Embedding模型返回的前k个文档。
  4. 开源和许可:BGE模型是开源的,并在MIT许可下发布。这意味着用户可以免费用于商业目的。
  5. 丰富集成:用户可以使用FlagEmbedding、Sentence-Transformers、Langchain或Huggingface Transformers等工具来使用BGE模型。

总的来说,BGE是一个强大的文本Embedding模型,适用于多种NLP任务。它的多语言支持、多版本选择和高效的reranker使其成为文本Embedding领域的领先模型。

2.GTE

GTE模型,也称为General Text Embeddings,是阿里巴巴达摩院推出的文本Embedding技术。它基于BERT框架构建,并分为三个版本:GTE-large、GTE-base和GTE-small。

该模型在大规模的多领域文本对语料库上进行训练,确保其广泛适用于各种场景。因此,GTE可以应用于信息检索、语义文本相似性、文本重新排序等任务。

尽管GTE模型的参数规模为110M,但其性能卓越。它不仅超越了OpenAI的Embedding API,在大型文本Embedding基准测试中,其表现甚至超过了参数规模是其10倍的其他模型。更值得一提的是,GTE模型可以直接处理代码,无需为每种编程语言单独微调,从而实现优越的代码检索效果。

3.E5 Embedding

E5-embedding是由intfloat团队研发的一款先进的Embedding模型。E5的设计初衷是为各种需要单一向量表示的任务提供高效且即用的文本Embedding,与其他Embedding模型相比,E5在需要高质量、多功能和高效的文本Embedding的场景中表现尤为出色。

以下是E5-embedding的一些特点:

  1. 新的训练方法:E5采用了“EmbEddings from bidirEctional Encoder rEpresentations”这一创新方法进行训练,这意味着它不仅仅依赖传统的有标记数据,也不依赖低质量的合成文本对。
  2. 高质量的文本表示:E5能为文本提供高质量的向量表示,这使得它在多种任务上都能表现出色,尤其是在需要句子或段落级别表示的任务中。
  3. 多场景:无论是在Zero-shot场景还是微调应用中,E5都能提供强大的现成文本Embedding,这使得它在多种NLP任务中都有很好的应用前景。

4.Jina Embedding

jina-embedding-s-en-v1是Jina AI的Finetuner团队精心打造的文本Embedding模型。它基于Jina AI的Linnaeus-Clean数据集进行训练,这是一个包含了3.8亿对句子的大型数据集,涵盖了查询与文档之间的配对。这些句子对涉及多个领域,并已经经过严格的筛选和清洗。值得注意的是,Linnaeus-Clean数据集是从更大的Linnaeus-Full数据集中提炼而来,后者包含了高达16亿的句子对。

Jina Embedding有这些亮点:

  • 广泛应用:jina-embedding-s-en-v1适合多种场景,如信息检索、语义文本相似性判断和文本重新排序等。
  • 卓越性能:虽然该模型参数量仅为35M,但其性能出众,而且能够快速进行推理。
  • 多样化版本:除了标准版本,用户还可以根据需求选择其他大小的模型,包括14M、110M、330M、

5.Instructor

Instructor是由香港大学自然语言处理实验室团队推出的一种指导微调的文本Embedding模型。该模型可以生成针对任何任务(例如分类、检索、聚类、文本评估等)和领域(例如科学、金融等)的文本Embedding,只需提供任务指导,无需任何微调。Instructor在70个不同的Embedding任务(MTEB排行榜)上都达到了最先进的性能。该模型可以轻松地与定制的sentence-transformer库一起使用。

Instructor 模型主要特点如下:

  • 多任务适应性:只需提供任务指导,即可生成针对任何任务的文本Embedding。
  • 高性能:在MTEB排行榜上的70个不同的Embedding任务上都达到了最先进的性能。
  • 易于使用:与定制的sentence-transformer库结合使用,使得模型的使用变得非常简单。

此外,模型还提供了其他使用案例,如计算句子相似性、信息检索和聚类等。

6.XLM-Roberta

XLM-Roberta(简称XLM-R)是Facebook AI推出的一种多语言版本的Roberta模型。它是在大量的多语言数据上进行预训练的,目的是为了提供一个能够处理多种语言的强大的文本表示模型。XLM-Roberta模型在多种跨语言自然语言处理任务上都表现出色,包括机器翻译、文本分类和命名实体识别等。

模型主要特点如下:

  • 多语言支持:XLM-Roberta支持多种语言,可以处理来自不同语言的文本数据。
  • 高性能:在多种跨语言自然语言处理任务上,XLM-Roberta都表现出了最先进的性能。
  • 预训练模型:XLM-Roberta是在大量的多语言数据上进行预训练的,这使得它能够捕获跨语言的文本表示。

7.text-embedding-ada-002

text-embedding-ada-002是一个由Xenova团队开发的文本Embedding模型。该模型提供了一个与Hugging Face库兼容的版本的text-embedding-ada-002分词器,该分词器是从openai/tiktoken适应而来的。这意味着它可以与Hugging Face的各种库一起使用,包括Transformers、Tokenizers和Transformers.js。

模型主要特点如下:

  • 兼容性:该模型与Hugging Face的各种库兼容,包括Transformers、Tokenizers和Transformers.js。
  • 基于openai/tiktoken:该模型的分词器是从openai/tiktoken适应而来的。

轻松部署Embedding模型的新纪元

在深入了解了这些先进的Embedding模型后,你可能会思考如何轻松地部署和使用这些模型。这时,Xinference成为了你的完美选择。Xinference是一个开源AI模型推理引擎(https://github.com/xorbitsai/inference),专为轻松部署大语言模型、Embedding模型和多模态模型而设计,预置了BGE、GTE和E5 Embedding等在内的最热门的Embedding模型。

例如,要在Xinference中运行和部署GTE模型,你只需要执行以下简单的命令:

xinference launch --model-name "gte-base" --model-type "embedding" --endpoint http://127.0.0.1:9997

一旦启动,就可以轻松地使用HTTP与模型进行交互,如下所示:

在这里插入图片描述

返回如下:

在这里插入图片描述

Xinference不仅简化了模型部署的过程,还为你提供了与模型的无缝交互方式。如果你正在寻找一个轻松、高效地部署和运行AI模型的解决方案,那么Xinference绝对值得你的关注和探索。

​

如何学习大模型

现在社会上大模型越来越普及了,已经有很多人都想往这里面扎,但是却找不到适合的方法去学习。

作为一名资深码农,初入大模型时也吃了很多亏,踩了无数坑。现在我想把我的经验和知识分享给你们,帮助你们学习AI大模型,能够解决你们学习中的困难。

我已将重要的AI大模型资料包括市面上AI大模型各大白皮书、AGI大模型系统学习路线、AI大模型视频教程、实战学习,等录播视频免费分享出来,需要的小伙伴可以扫取。

一、AGI大模型系统学习路线

很多人学习大模型的时候没有方向,东学一点西学一点,像只无头苍蝇乱撞,我下面分享的这个学习路线希望能够帮助到你们学习AI大模型。

在这里插入图片描述

二、AI大模型视频教程

在这里插入图片描述

三、AI大模型各大学习书籍

在这里插入图片描述

四、AI大模型各大场景实战案例

在这里插入图片描述

五、结束语

学习AI大模型是当前科技发展的趋势,它不仅能够为我们提供更多的机会和挑战,还能够让我们更好地理解和应用人工智能技术。通过学习AI大模型,我们可以深入了解深度学习、神经网络等核心概念,并将其应用于自然语言处理、计算机视觉、语音识别等领域。同时,掌握AI大模型还能够为我们的职业发展增添竞争力,成为未来技术领域的领导者。

再者,学习AI大模型也能为我们自己创造更多的价值,提供更多的岗位以及副业创收,让自己的生活更上一层楼。

因此,学习AI大模型是一项有前景且值得投入的时间和精力的重要选择。

2、embedding模型 NLP 阅读详情

相关推荐

embedding模型有哪些?如何选择合适的embedding模型?

embedding模型是一种将数据映射到低维空间的模型,常用于自然语言处理、推荐系统、图像识别等领域。

bvip911的博客 3255

【文本分类】深入理解embedding层的模型、结构与文本表示

深入理解embedding层的模型、结构与文本表示

十一月廿七风雨大作 1万+

新版MQL语言程序设计:用vscode编写编译调试mt4和mt5程序

使用VScode搭建MT4与MT5开发环境,实现编辑编译调试统一。

超哥量化的博客 6872

Spring AI Embedding模型概念、源码分析和使用示例

Embedding模型是指将高维度的数据(例如文字、图片、视频)映射到低维度空间的过程。简单来说,embedding向量就是一个N维的实值向量,它将输入的数据表示成一个连续的数值空间中的点。嵌入就相当于给文本穿上了“数字化”的外衣,目的是让机器更好的理解和处理。

2401_85378759的博客 2591

人脸情绪识别(使用深度学习和OpenCV)

基于opencv与深度学习的人脸情绪识别系统

mx0390304的博客 8251

TI Sitara PRU可编程实时单元:工业自动化中的硬实时协处理器解析

在嵌入式系统与工业自动化领域,实时性和确定性是核心需求。实时性指系统对外部事件做出响应的可预测时间,确定性则要求响应时间严格一致,不受其他任务干扰。其技术原理通常通过专用硬件或实时操作系统实现,例如采用独立于主CPU的协处理器来处理高精度时序任务。这种设计的技术价值在于,它能将主CPU从高实时性要求的任务中解放出来,专注于复杂业务逻辑,同时确保关键IO操作达到纳秒级延迟和极低抖动。应用场景广泛覆盖伺服电机控制、工业通信协议加速和多接口扩展等。本文聚焦的TI Sitara系列PRU(可编程实时单元),正是此类

weixin_42526068的博客 284

开发RAG应用,你必须知道的7个Embedding模型_embedding模型有哪些

2023年值得关注的7大Embedding模型在NLP领域展现出卓越性能。BGE模型在MTEB基准测试中夺冠,支持中英文并集成reranker功能;阿里巴巴的GTE模型超越OpenAI API,能直接处理代码;E5采用创新训练方法提供高质量向量;Jina基于3.8亿句子对训练,兼顾性能与速度;Instructor通过任务指导实现多任务适配;XLM-Roberta展现强大跨语言能力;text-embedding-ada-002与Hugging Face生态兼容。这些开源模型为文本检索、语义分析等任务提供了多样

lyy2017175913的博客 2375

【gridsample】地平线征程6芯片中gridsample算子的优化与部署实践

本文详细介绍了地平线征程6芯片中gridsample算子的优化与部署实践,重点探讨了PTQ和QAT量化方案在BEV感知任务中的应用。通过双线性插值优化、内存布局调整和混合精度配置等关键技术,显著提升了算子在自动驾驶场景下的性能和精度,为开发者提供了实用的部署指南和调优建议。

zero1的博客 1019

开发RAG应用,你必须知道的7个Embedding模型_免费的embedding模型

本文介绍了2023年值得关注的7种文本Embedding模型,它们广泛应用于NLP任务和RAG系统。重点介绍了BGE(智源研究院开发的多语言模型,支持reranker功能)、GTE(阿里巴巴达摩院推出的高效模型,支持代码处理)、E5(intfloat团队研发的创新训练方法模型)和Jina Embedding(基于大规模清洗数据集的轻量高效模型)四种代表性模型。这些模型在文本检索、语义相似度计算等任务中表现出色,具有开源、多语言支持、不同参数规模可选等特点,为开发者提供了丰富的选择。

qkh1234567的博客 2362

S32K144驱动TPS929120避坑实录:从原理图设计到PWM调光漏电流的完整解决流程

本文详细解析了S32K144驱动TPS929120在车规LED驱动中的常见问题与解决方案,重点解决了PWM调光漏电流的行业难题。从原理图设计、FlexWire通信到软件调试,提供了一套完整的工程化避坑指南,特别针对车规MCU应用中的温度漂移、地址冲突等痛点给出了实用建议。

weixin_30872157的博客 561

Kaamel白皮书:IoT设备安全隐私评估实践

明确评估的目的和预期结果。

kaamelai的博客 1317

开发RAG应用,你必须知道的11款Embedding模型_gte-qwen2-7b-instruct

bge-en-icl 是一款专为英语语境下的嵌入任务设计的模型。

jennycisp的博客 1770

专为AI打造的浏览器:内存占用仅为Chrome的1/9、比Chrome快11倍(Docker部署教程,支持飞牛nas等服务器部署)

🚀 专为AI打造的无头浏览器来了! 用Zig从零构建,内存仅Chrome的1/9,速度快11倍,原生CDP协议支持Docker部署,适合爬虫、自动化测试和AI代理应用。✨

XiaoqiangClub的博客 732

开发RAG应用,你必须知道的11款Embedding模型

bge-en-icl 是一款专为英语语境下的嵌入任务设计的模型。

2401_85390073的博客 1万+

C#里用HttpListener实现WEB API接口服务端

本文介绍了一个基于WinForm的HTTP服务实现方案。该方案使用HttpListener类创建了一个支持JSON POST请求处理的轻量级Web服务器,主要特点包括:1) 纯线程方式实现请求监听和处理;2) 提供标准化的JSON响应格式;3) 支持自定义请求处理逻辑;4) 包含完整的日志记录功能。代码示例展示了如何初始化服务、处理不同类型的请求(包括JSON POST),并提供了线程安全的UI更新机制。该实现适用于需要简单HTTP接口的Windows桌面应用程序,可作为程序间通信的基础设施。

大坡3D软件开发 228

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

上一篇: 手把手教你本地部署清华大模型 ChatGLM3
下一篇: RAG:在LangChain中使用本地向量embedding模型
AI_小站
博客等级 码龄3年 6255粉丝 1152原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值