文本向量化(Embedding)模型

文本向量化(Embedding)模型


📚 文本向量化(Embedding)模型知识总结


1. ✅ 什么是文本向量化(Embedding)?

➡️ 定义

将文本(单词、句子、段落、文档)通过特定模型映射为 稠密向量(Dense Vector),用于表示文本的 语义信息

➡️ 为什么需要?

  • 计算机不理解自然语言,只能理解数字。
  • 向量化后可以:
    • 相似度计算(语义检索、聚类)
    • 分类任务(情感分析、标签分类)
    • 问答系统(向量检索+大模型)
    • 推荐系统(基于语义的推荐)

2. ✅ 向量化的核心任务

场景目标技术路径
文本相似度判断文本之间语义是否相似向量表示 + 相似度计算
信息检索检索与查询语义相关的文档向量索引 + 相似度排名
文本分类判断文本属于哪个类别向量表示 + 分类模型(ML/DL)
问答系统(RAG)基于知识库回答用户提问向量搜索 + 大模型生成
多模态分析跨模态(图片、视频、音频)表示统一跨模态向量模型(CLIP)

3. ✅ 常见的文本向量模型分类

3.1 静态词向量(单词级别,已过时但基础)

模型特点缺点
Word2Vec词向量,能表达词之间相似性不能解决多义词问题
GloVe结合全局与局部信息表达能力弱
FastText子词嵌入,处理 OOV 词更好表达句子无能为力

3.2 句子/文档级别嵌入(现代主流)

模型简介适用语言
SBERT基于BERT,优化为句子嵌入多语言
SimCSE无监督/有监督句子嵌入英文为主,部分中文
Text2Vec中文优化的句子嵌入模型中文
M3E中英文双语句向量模型中英文
BGE专为检索优化的通用嵌入模型中文/英文

3.3 多模态向量模型(图文/视频/音频)

模型简介适用场景
CLIP图文对齐嵌入图文搜索
OFA图文、OCR、VQA多模态任务更复杂
BLIP图文生成/理解多模态任务

4. ✅ 主流文本嵌入模型介绍

4.1 BGE(BAAI General Embedding)系列

  • 出自:北京智源研究院(BAAI)
  • 版本:
    • bge-small(256维,轻量)
    • bge-base(768维,效果平衡)
    • bge-large(1024维,效果最优)
  • 亮点:
    • 针对检索任务优化
    • 多语言支持(M3版本)
    • 文本检索与RAG问答强项
  • 适合场景:知识库、问答系统、相似度计算

4.2 M3E

  • 出自:Moka AI
  • 优势:
    • 支持中英文
    • 轻量高效
  • 版本:
    • moka-ai/m3e-small(CPU友好)
    • moka-ai/m3e-base / m3e-large
  • 适合场景:信息检索、分类、知识库

4.3 Text2Vec

  • 出自:Shibing624(开源社区)
  • 专注中文优化
  • 优势:
    • 轻量级(低内存/CPU可用)
    • 适合中文分类、相似度任务
  • 场景:资源有限的中文文本任务

4.4 GTE (General Text Embedding)

  • 出自:Google
  • 覆盖多语言
  • 版本:
    • gte-small
    • gte-base
    • gte-large
  • 场景:多语言检索、分类

4.5 MiniLM / SBERT

  • 适合英语任务
  • 模型小,计算快
  • SBERT更适合做相似度匹配

5. ✅ 文档向量化处理流程

➡️ 文档预处理

  1. 文件加载
    • PDF:PyMuPDF、pdfminer、PyPDFLoader
    • Word:python-docx
    • 文本:标准读取
  2. 清洗
    • 去除噪声、图片、表格(可选)
    • 正则提取内容
  3. 切分
    • 按段落、句子、字符切分
    • 推荐使用 LangChainRecursiveCharacterTextSplitter

➡️ 嵌入生成

from langchain.embeddings import HuggingFaceEmbeddings
embedding_model = HuggingFaceEmbeddings(model_name="BAAI/bge-large-zh")
vectors = embedding_model.embed_documents(text_chunks)

6. ✅ 向量检索/存储(向量数据库)

常见数据库

名称特点推荐场景
FAISS轻量,单机快速小型应用
Milvus分布式,支持亿级数据企业级
Chroma快速上手,支持多模态轻量应用
Weaviate自动化管理,带API快速构建

基本流程

  1. 文档 → 嵌入向量
  2. 存入向量库
  3. 查询时:
    • 输入查询 → 嵌入 → 最近邻检索 → 返回文档

7. ✅ 模型评估指标和方法

➡️ 常用指标

指标含义
Recall@K前K个结果中包含正确答案比例
MRRMean Reciprocal Rank
NDCG排名质量衡量

➡️ 评估方法

  1. 构造问答对 / 检索对
  2. 生成查询向量,查找相似向量
  3. 计算准确率/召回率/排名指标
  4. 比较不同模型效果

8. ✅ 模型选型建议(总结)

场景推荐模型推荐数据库
中文RAG检索BGE-Large-zh / M3EFAISS/Milvus
英文或多语言检索M3E / GTEFAISS/Weaviate
中小型项目,轻量需求Text2Vec / M3E-smallChroma/FAISS
跨模态搜索(图文)Taiyi-CLIP / OpenAI-CLIPMilvus/Weaviate

9. ✅ 推荐资源

➡️ 开源模型地址

  • BAAI/BGE: https://huggingface.co/BAAI/bge-large-zh
  • M3E: https://huggingface.co/moka-ai/m3e-base
  • Text2Vec: https://huggingface.co/shibing624/text2vec-base-chinese
  • GTE: https://huggingface.co/models?search=gte
  • Taiyi-CLIP: https://huggingface.co/IDEA-CCNL/Taiyi-CLIP-Roberta-large-326M-Chinese

➡️ 向量数据库

  • FAISS:https://github.com/facebookresearch/faiss
  • Milvus:https://milvus.io/
  • Chroma:https://github.com/chroma-core/chroma
  • Weaviate:https://weaviate.io/

10. ✅ 未来趋势

  • 更轻量化和高效的多语言模型
  • 多模态嵌入统一化(文本、图片、视频等)
  • 向量数据库自动优化(智能索引、混合搜索)
  • 私有化RAG系统与大模型紧密集成

🚀 总结一句话

如果做中文知识检索和问答系统,用 BGE 系列准没错!
如果是多语言或者轻量级部署,M3EText2Vec 是很好的选择!
跨模态搜索就上 CLIPTaiyi-CLIP

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

翱翔-蓝天

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值