如果你用过 ChatGPT 的"知识库"功能,或者听说过"语义搜索",那你已经间接接触过 Embedding 了。它是现代 AI 最基础也最重要的概念之一。
一句话解释
Embedding(嵌入)就是把一段文字、一张图、一段音频变成一串数字,这串数字代表它的"语义"——意思相近的东西,数字也相近。
一个直观的比喻
想象一张巨大的地图。地图上每个城市有一个坐标(经纬度)。北京和天津的坐标很近,北京和纽约的坐标很远。Embedding 就是给每个词、每个句子、每篇文章分配一个"语义坐标"。
比如:
- “猫"和"狗"的 Embedding 向量很接近(都是宠物)。
- “猫"和"汽车"的 Embedding 向量就离得很远。
- “王”-“男”+“女”≈“后”——向量的数学运算甚至能表达语义关系!
Embedding 有什么用?
Embedding 是现代 AI 基础设施的核心组件,主要应用场景包括:
1. 语义搜索
传统搜索只能匹配关键词。你搜"怎么减肥”,它只找包含"减肥"这个词的文档。而语义搜索用 Embedding,你搜"怎么减肥”,它也能找到"快速瘦身的方法"——因为两者的向量很接近。
2. RAG(检索增强生成)
这是当前最火的大模型应用模式。简单说就是:先把你的文档转换成 Embedding 存起来,用户提问时,找到最相关的文档片段,一起喂给大模型。这样大模型就能基于你的文档回答问题了。
3. 推荐系统
把用户和内容都映射到同一个 Embedding 空间。用户向量附近的内容,就是他可能感兴趣的。
4. 分类和聚类
Embedding 向量可以直接用来做分类(垃圾邮件检测)或聚类(自动把相似新闻归为一组)。
常用的 Embedding 模型
- OpenAI text-embedding-3-small / large:当前最常用的云端 Embedding 服务,价格便宜效果好。
- BGE(BAAI General Embedding):智源研究院开源的 Embedding 模型,中文效果很好。
- Sentence-BERT:经典的开源方案,适合句子级别的语义表示。
小结
Embedding 是把"语义"变成"数学"的桥梁。它让计算机能够"理解"内容的含义,而不仅仅是匹配表面的文字。理解了 Embedding,你就理解了为什么大模型能够做搜索、做推荐、做知识库问答。