摘要

  • embedding是什么
  • 特点
  • 为什么需要
  • 应用场景
  • Embedding 怎么用?

embedding是什么

Embedding是将高维空间中的点映射到低维空间中的点的过程,他的作用是把 “非结构化数据”(文字、图片、音频、视频)变成 “计算机能理解的数字向量。
Embedding是把现实世界中的东西,映射成一串固定长度的数字(向量)。

特点

  • 降低纬度:纬度固定,通常是一个固定长度的向量,比如768 1024等,不同的模型有不同的Embedding长度
  • 结构化:将非结构化的数据映射到结构化的向量空间中
  • 保留语义:每个维度的数值都代表了不同的语义信息
  • 语义相似性:语义/内容越相似,向量之间的距离就越小
  • 可计算性:向量之间的距离可以用来计算相似度,比如余弦相似度

为什么需要

计算机只懂数字,而不懂文字、图片等语义信息,我们需要将这些非结构化的内容转为空间向量,再进行加减、比较和检索。
这样,计算机就可以根据向量来进行计算、比较、检索和聚类等操作。

应用场景

  • 文本embedding:将文本映射为向量,用于文本分类、情感分析、信息检索等任务

  • 图片embedding:将图片映射为向量,用于图片分类、检索等任务

Embedding 怎么用?

RAG(检索增强生成):

  • 构建:
    1、将文本切成小块
    2、调用embedding模型 / 接口,将文本块映射为向量
    3、把向量、原文存储到向量数据库
  • 检索:
    1、用户输入问题
    2、对用户的输入进行向量化
    3、在向量数据库里搜索相似性最高的x条
    4、将这些向量对应的原文和用户提问交给大模型 5、大模型根据原文和用户提问,生成回答

总结

Embedding 是将文本映射到高维语义空间中的向量表示,使语义相近的文本在向量空间中距离更近,从而支持语义检索。相似度检索本质是计算 query 向量与文档向量之间的相似度(通常使用 cosine similarity)。Token 是模型处理文本的最小单位,主要影响上下文长度和调用成本,与 embedding 维度不同。在 RAG 场景中,通常使用句级或段落级 embedding,通过合理的 chunk 策略在语义表达能力和检索效率之间取得平衡。