合合信息Embedding模型:引领中文文本向量化技术新高度

目录

  • 🍅前言
    • 🍓赛事含金量
    • 🍓Embedding技术简介
    • 🍓Embedding在大模型中的价值
    • 🍓合合信息Embedding模型特点及优势
    • 🍓合合信息Embedding模型测试
    • 🍓技术突破
    • 🍓公司介绍
  • 🍅总结

🍅前言

目前,随着 LangChain + LLM模型的火热,除了层出不穷的大模型外,因为检索的能力会很大程度影响最终的问答效果,所以文本的向量表示模型也是大家比较关注的。在人工智能的世界里,文本向量化技术是连接自然语言处理(NLP)与机器学习的桥梁。它能将复杂的文本数据转换成机器可理解的向量形式,从而使得机器能够更加高效地处理和分析文本数据。最近,合合信息发布的acge_text_embedding 句子向量模型在中文文本向量化领域取得了突破性进展,荣获MTEB中文榜单(C-MTEB)第一的成绩。

🍓赛事含金量

MTEB(Multilingual Text Embedding Benchmark)是一个国际公认的文本向量化技术评估标准,它覆盖了多种语言、多种评测任务,是衡量文本向量化技术先进性和实用性的重要尺度。该评测基准涵盖了分类、聚类、检索、排序、文本相似度等多个经典任务,通过丰富的数据集,全面检验了文本向量模型在中文环境下的性能表现。合合信息的模型能在C-MTEB榜单上获得第一,充分证明了其技术的先进性和实用价值。

榜单地址:https://huggingface.co/spaces/mteb/leaderboard

🍓Embedding技术简介

在机器学习和自然语言处理中,Embedding是指将高维度的数据(例如文字、图片、音频)映射到低维度空间的过程。Embedding向量通常是一个由实数构成的向量,它将输入的数据表示成一个连续的数值空间中的点。
简单来说,Embedding就是一个N维的实值向量,它几乎可以用来表示任何事情,如文本、音乐、视频等。在这里,我们也主要是关注文本的Embedding。
在这里插入图片描述
Embedding重要的原因在于它可以表示单词或者语句的语义。实值向量的Embedding可以表示单词的语义,主要是因为这些Embedding向量是根据单词在语言上下文中的出现模式进行学习的。例如,如果一个单词在一些上下文中经常与另一个单词一起出现,那么这两个单词的嵌入向量在向量空间中就会有相似的位置。这意味着它们有相似的含义和语义。

🍓Embedding在大模型中的价值

在自然语言处理(NLP)的诸多应用场景中,包括情感分析、机器翻译、问答系统等,Embedding扮演了核心角色。它们赋予了模型处理和理解人类语言、从而完成复杂任务的能力。然而,在大型语言模型,如ChatGPT等流行后,人们发现Embedding在解决模型输入限制方面展现出了新的价值。

传统上,如GPT3.5这类语言模型在处理输入文本的能力上存在限制,这通常介于几千至数万个tokens之间,具体取决于模型的架构及可用的硬件资源。这意味着对于较长的文本,如整本书或长篇文章,可能无法一次性完整输入语言模型进行处理。在这种情况下,需要将文本分割成较小的块或“片段”,以便模型单独处理。但这种分割方式可能会造成输出内容的上下文连贯性及整体连贯性问题,进而影响生成文本的质量。

Embedding的价值在此时凸显。通过将单词和短语转化为高维向量,Embedding使得语言模型可以以一种紧凑而高效的方式编码输入文本的上下文信息。借助这些上下文信息,模型能够产生更为连贯、上下文恰当的输出文本,即便是输入文本被分割成多个片段。此外,Embedding还可以在大量文本数据上进行预训练,之后在较小的数据集上进行微调,这有助于提升语言模型在多种NLP应用中的准确性与效率。

🍓合合信息Embedding模型特点及优势

在这里插入图片描述

如上图所示,与目前C-MTEB榜单上排名前五的开源模型相比,合合信息本次发布的acge模型较小,占用资源少;同时,使用过ChatGPT等大语言模型的应该知道MaxTokens上下文的概念很重要,它决定了我们的上下文对话长度,而acge_text_embedding模型输入文本长度为1024,满足绝大部分场景的需求。此外,acge模型还支持可变输出维度,让企业能够根据具体场景去合理分配资源。

合合信息的acge_text_embedding模型基于最新的深度学习技术,具有以下几个显著特点和优势:

  • 高分类、聚类准确率:模型通过对大量中文文本数据的深入学习,能够有效提取文本特征,使其在分类和聚类任务中展现出高准确率。

  • 广泛的应用场景:从相似性搜索、信息检索到推荐系统,acge_text_embedding模型都能提供强有力的技术支撑,极大地提升系统的性能和用户体验。

  • 模型的灵活性和可扩展性:合合信息的模型设计考虑到了不同行业、不同规模应用的需要,支持定制化服务,满足企业多样化的需求。

🍓合合信息Embedding模型测试

我们使用合合信息的acge_text_embedding模型来做一下句子的相似度计算吧!步骤如下:

安装 sentence_transformers:

pip install --upgrade sentence_transformers -i https://pypi.tuna.tsinghua.edu.cn/simple

代码:

from sentence_transformers import SentenceTransformersentences = ["我喜欢学习机器学习", "我对深度学习很感兴趣"]
# 使用合合信息的acge_text_embedding模型
model = SentenceTransformer('aspire/acge_text_embedding')
print(model.max_seq_length) # 输出上下文长度
embeddings_1 = model.encode(sentences, normalize_embeddings=True)
embeddings_2 = model.encode(sentences, normalize_embeddings=True)
similarity = embeddings_1 @ embeddings_2.T
print(similarity) # 输出相似矩阵

运行结果:

在这里插入图片描述

可以看到这段代码输出这两个句子之间的相似度矩阵,根据输出的相似度值,值越接近 1 表示两个句子越相似,值越接近 0 表示两个句子越不相似,上述结果表明这两个句子较为相似!

注意:若无法访问huggingface,请使用魔法或者在镜像网站下载模型到本地!当然,也可以在huggingface线上体验该模型。地址:https://huggingface.co/aspire/acge_text_embedding

在这里插入图片描述

🍓技术突破

Embedding模型在当前大模型实际落地应用过程中扮演着至关重要的角色,而Embedding模型的训练通常需要大量的文本数据,这些数据使模型能够学习到单词间丰富的关系和语义,常见的文本embedding模型包括Word2Vec、GloVe和BERT等,这些模型通过不同的机制学习单词的向量表示,但它们的共同目标都是将文本信息压缩到一个连续的、低维的向量空间中。

为了更好地发挥大模型在应用过程中的价值,合合信息技术团队重点从数据集、训练策略等方面针对Embedding模型进行了优化,打造了acge模型。在数据集方面,技术人员收集构造了大量的数据集,保证训练的质量与场景覆盖面;在模型训练方面,引入多种有效的模型调优技术,比如Matryoshka训练方式,能够实现一次训练,获取不同维度的表征提取;为了不同任务针对性学习,使用策略学习训练方式,显著提升了检索、聚类、排序等任务上的性能;引入持续学习训练方式,克服了神经网络存在灾难性遗忘的问题,使模型训练迭代能够达到最优收敛空间,最终产出了目前业界第一的Embedding模型。

🍓公司介绍

合合信息是一家人工智能及大数据科技企业,基于自主研发的领先的智能文字识别及商业大数据核心技术,为全球C端用户和多元行业B端客户提供数字化、智能化的产品及服务。公开资料显示,公司的C端产品覆盖了全球百余个国家和地区的亿级用户,B端服务覆盖了近30个行业的企业客户。《财富》杂志2022年发布的世界500强公司名单中,公司客户已覆盖超过125家。

合合信息的更多产品信息可前往:https://www.textin.com/

🍅总结

在AI蓬勃发展的时代,作为开发者,我们需要与时俱进。不仅要熟练运用大模型的表层功能,更要深入底层,积极了解大模型相关技术的细节和原理。这样才能更好地理解和应用人工智能技术,不断提升自己的技能水平,跟上技术发展的步伐。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/2978699.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

Matplotlib官网查阅资料

Matplotlib官网详细的地址: 英文文档:https://matplotlib.org/stable/contents.html中文文档:https://www.matplotlib.org.cn/ Matplotlib英文官网: 查找属性: 1.进入官网。 2.查找参数属性。 Matplotlib中文官网: 查找属性:…

光纤、以太网电缆和 DSL 的比较:技术指南

了解光纤、以太网电缆和 DSL 之间的差异对于做出有关互联网连接的明智决策至关重要。本技术指南对这些技术进行了全面比较,讨论了它们的独特功能、性能指标和应用。它旨在为您提供必要的知识,以选择最适合您的特定需求的选项。 光纤、以太网电缆和 DSL …

Qwen1.5微调

引子 由于工作上需要,一直在用Qwen做大模型推理,有个再训练的需求,特此琢磨下Qwen的训练。OK,我们开始吧。 一、安装环境 查看显卡驱动版本 根据官网推荐 OK,docker在手,天下我有。 docker pull qwenll…

Recommended Azure Monitors

General This document describes the recommended Azure monitors which can be implemented in Azure cloud application subscriptions. SMT incident priority mapping The priority “Blocker” is mostly used by Developers to prioritize their tasks and its not a…

论文辅助笔记:处理geolife数据

论文笔记:Context-aware multi-head self-attentional neural network model fornext location prediction-CSDN博客 对应命令行里 python preprocessing/geolife.py 20 这一句 1 读取geolife数据 pfs, _ read_geolife(config["raw_geolife"], print_…

Spring的过滤器、拦截器、切面区别及案例分析

Spring的过滤器、拦截器、切面 三者的区别,以及对应案例分析 一、三者的实现方式 1.1 过滤器 xxxFilter 过滤器的配置比较简单,直接实现Filter接口即可,也可以通过WebFilter注解实现对特定URL的拦截,Filter接口中定义了三个方法…

工作记录:vue-grid-layout 修改 margin 导致 item 高度剧烈变化

问题 用 vue-gird-layout 时发现,当改变 margin 值时,item 的尺寸也会跟着变化。 如下图:row height 和每个 item 的 h 都保持不变。修改 margin-y,item 的实际高度也跟着变了: 原因 研究了一番,发现原…

如何查看全球历史影像

目录 示例 2024年3月28日 2022年9月21日 2021年11月3日 2020年11月18日 2019年5月15日 2017年2月27日 2016年12月20日 如何在ArcGIS中加载 如何查看全球历史影像,今天给大家分享一个可以在线直接访问查看全球历史影像的网站(网址见文末&#xf…

flutter 设置启屏页 flutter_native_splash 坑记录

flutter_native_splash | Flutter packageCustomize Flutters default white native splash screen with background color and splash image. Supports dark mode, full screen, and more.https://pub.dev/packages/flutter_native_splash 发现一直白屏 原因是 代码中 下面…

前端路由的实现原理

当谈到前端路由时,指的是在前端应用中管理页面导航和URL的机制。前端路由使得单页应用(Single-Page Application,SPA)能够在用户与应用交互时动态地加载不同的视图,而无需每次都重新加载整个页面。 在前端开发中&…

vue3+elementui-plus实现无限递归菜单

效果图 实现方式是&#xff1a;通过给定的数据结构层数来动态生成多级菜单 menu.vue<template><el-menu:default-active"activeIndex"class"el-menu-demo"mode"horizontal"select"handleSelect"background-color"#f8f…

Echarts的饼图有哪些配置项,一文告诉你。

Echarts中的饼图&#xff08;Pie Chart&#xff09;有以下一些常用的配置项&#xff1a; 配置项一 Echarts中的饼图&#xff08;Pie Chart&#xff09;有以下一些常用的配置项&#xff1a; title&#xff1a;饼图的标题配置&#xff0c;包括text&#xff08;标题文本&#xf…

冈萨雷斯数字图像处理资源(课后习题答案+代码+图片)

冈萨雷斯数字图像处理相关资源整理&#xff0c;资源全部来源互联网&#xff0c;方便大家下载 冈萨雷斯数字图像处理相关资源整理 课后习题 冈萨雷斯数字图像处理源代码

程序猿成长之路之数据挖掘篇——朴素贝叶斯

朴素贝叶斯是数据挖掘分类的基础&#xff0c;本篇文章将介绍一下朴素贝叶斯算法 情景再现 以挑选西瓜为例&#xff0c;西瓜的色泽、瓜蒂、敲响声音、触感、脐部等特征都会影响到西瓜的好坏。那么我们怎么样可以挑选出一个好的西瓜呢&#xff1f; 分析过程 既然挑选西瓜有多个…

静态缺省路由的应用

静态缺省路由的应用 缺省路由是目的地址全零的特殊路由&#xff0c;可以由路由协议自动生成&#xff0c;也可以由手动配置。手动配置缺省路由&#xff0c;可以简化网络的配置&#xff0c;称为静态缺省路由。如果报文的目的地址无法匹配路由表中的任何一项&#xff0c;路由器将…

查看项目go代码cpu利用率

1.代码添加&#xff1a; "net/http"_ "net/http/pprof"第二步&#xff0c;在代码开始运行的地方加上go func() {log.Println(http.ListenAndServe(":6060", nil))}() 2.服务器上防火墙把6060打开 3.电脑安装&#xff1a;Download | Graphviz …

合并二叉树【c++】

#include <iostream> #include <vector> using namespace std;//双链表节点结构 typedef struct treeNode {int value;struct treeNode* left;struct treeNode* right;treeNode(int x) : value(x), left(nullptr), right(nullptr) {} } TreeNode;TreeNode* mergeTr…

BFS解决FloodFill算法:(Leetcode:733. 图像渲染)

题目链接&#xff1a;733. 图像渲染 - 力扣&#xff08;LeetCode&#xff09; 使用广度优先遍历算法解决该问题&#xff1a; 从初始位置开始搜索&#xff0c;初始位置符合条件就入栈&#xff0c;并修改初始位置值。初始位置出栈。 再从初始位置开始广度优先搜索&#xff08;…

免 Administrator 权限安装软件

以欧路词典为例, 从官网下载的安装包 https://www.eudic.net/v4/en/app/download 直接运行会弹出 UAC 提示需要管理员权限. 一个词典而已, 为啥要管理员权限呢? 答案是安装程序默认使用的安装路径是 C:\Program Files\ 这就不难理解了. 对于这种不需要其他额外权限的软件, 可以…

【大模型开源篇1】彦宏您怎么看LLaMA3的开源

Meta LLaMA是Meta公司开源的大模型&#xff0c;作为大模型开源界得鼻祖&#xff0c; 刚刚发布LLaMA3。从ChatGPT 拉开了大模型竞赛的序幕&#xff0c;Meta 选择了开源&#xff0c;至此大模型也开始百花齐放的时期&#xff0c;但是开源模型一直无法超过必源模型&#xff0c;如今…