
第一卷大模型 基础篇第2章 大模型基础原理第5节Embedding详解——AI为什么能理解“苹果”和“水果”是相近的《Agent开发工程师成长指南》系列教程引言学习到这里我们已经了解了TransformerAttentionToken接下来我们要进入整个大模型应用开发中最重要的一个概念Embedding向量化如果说Transformer负责思考Attention负责理解那么Embedding负责让AI认识世界。几乎所有企业级AI应用都会用到Embedding例如RAG知识库向量数据库语义搜索文档去重相似问题推荐智能客服Agent长期记忆Memory可以说不会Embedding就不可能真正理解RAG和Agent。一、什么是Embedding先来看一个问题。下面三个词苹果 香蕉 西瓜请问它们有什么关系人类会立即回答都属于水果。再看苹果 西红柿 CPU我们的大脑会认为CPU明显不是水果。为什么因为我们的大脑能够理解词语之间存在语义距离。AI也是一样。但是计算机不能理解苹果是什么意思。它只能理解101010101所以需要一种方式把文字转换成模型能够计算的数字。这就是Embedding。一句话定义Embedding就是把文字、图片、声音等内容转换成数学向量并尽可能保留它们之间的语义关系。二、什么是向量Vector很多人第一次看到[0.21, -0.35, 0.84, ……]都会懵。其实这就是一个向量。例如苹果 ↓ [0.31,0.52,-0.18,0.66......]再例如香蕉 ↓ [0.30,0.55,-0.20,0.63......]可以发现数字非常接近。说明它们语义接近。而CPU ↓ [-0.82,0.13,0.91,-0.52......]完全不同。说明语义距离很远。所以模型真正比较的。不是文字。而是向量。三、为什么Embedding能够表示语义来看下面几个词苹果 香蕉 西瓜 汽车 飞机 火车如果画到二维空间。可能是水果 苹果 香蕉 西瓜 汽车 飞机 火车可以发现水果。聚集在一起。交通工具。聚集在一起。这就是Embedding空间。也叫Vector Space向量空间。模型训练过程中。会自动学习哪些词应该靠近。哪些词应该远离。因此Embedding实际上就是语义地图。四、Embedding是如何生成的来看整个流程。文本 ↓ Tokenizer ↓ Token ↓ Embedding Model ↓ 向量(Vector) ↓ Transformer例如输入苹果很好吃Tokenizer苹果 很 好吃然后Embedding模型把每一个Token。变成768维。或者1024维。甚至3072维向量。例如苹果 ↓ [0.18,0.21,-0.56……]最后Transformer。继续处理。五、什么是Embedding模型很多新人认为GPT负责Embedding。其实不是。通常Embedding。由专门模型完成。例如企业开发中常见BGEE5m3etext-embedding-3-smalltext-embedding-3-large它们专门负责文本向量化。而不是聊天。因此RAG项目。一般至少两个模型。Embedding LLM分别负责向量。生成答案。六、为什么RAG离不开Embedding例如知识库文档A 员工请假制度 文档B 服务器部署规范 文档C Java编码规范用户提问年假怎么算如果关键词检索。可能找不到请假制度因为没有年假。这个词。但是Embedding。发现年假 ↓ 请假 ↓ 休假 ↓ 假期语义接近。于是仍然能够找到正确文档。这就是语义检索。七、什么是向量相似度两个向量。如何比较常见方法方法一余弦相似度Cosine Similarity也是最常见方法。例如苹果 香蕉 ≈ 0.95说明非常相似。而苹果 CPU ≈ 0.12说明几乎无关。企业里面。绝大多数RAG。都是Cosine Similarity。方法二点积Dot Product速度快。适合部分模型。方法三欧氏距离计算空间距离。目前使用较少。八、Embedding在Agent中的应用Embedding。不仅仅用于RAG。实际上Agent。大量使用Embedding。例如Memory长期记忆。全部向量化。工具推荐根据用户问题。找到最适合Tool。Skills匹配自动找到最适合Agent。多Agent协作寻找最相关专家Agent。因此Embedding。其实贯穿整个Agent。九、企业中如何选择Embedding模型主要考虑中文效果例如BGE。m3e。通常中文更好。多语言例如E5。支持多语言。向量维度768。1024。3072。越高。效果通常更好。但是存储。检索。成本。也更高。推理速度在线API。还是本地部署。也是重要因素。十、Agent开发工程师需要掌握到什么程度至少需要理解✅ Embedding是什么✅ 为什么Embedding能够表示语义✅ 什么是向量空间✅ 什么是余弦相似度✅ Embedding模型与LLM的区别✅ 为什么RAG离不开Embedding如果掌握这些。后面学习向量数据库FAISSMilvusElasticsearchHybrid Search都会轻松很多。面试题问题1什么是Embedding参考答案Embedding是将文本、图片等非结构化数据转换为高维向量表示的方法使模型能够计算语义相似度是RAG和语义检索的基础。问题2为什么Embedding能够理解语义参考答案因为Embedding模型通过大规模训练将语义相近的内容映射到向量空间中相近的位置使相似内容具有相似的向量表示。问题3RAG为什么需要Embedding参考答案RAG依赖Embedding将文档和用户问题转换为向量通过计算向量相似度实现语义检索而不仅仅依赖关键词匹配。问题4常见的向量相似度计算方法有哪些参考答案常见方法包括余弦相似度Cosine Similarity、点积Dot Product和欧氏距离Euclidean Distance其中余弦相似度是RAG应用中最常用的方法。问题5Embedding模型和大语言模型有什么区别参考答案Embedding模型专门用于生成向量表示适合检索、聚类和相似度计算大语言模型主要负责理解、推理和文本生成两者通常在RAG系统中协同工作。本章小结本节我们学习了✅ Embedding 的定义与作用✅ 向量Vector和向量空间✅ Embedding 模型的工作流程✅ 语义相似度计算原理✅ Embedding 在 RAG 和 Agent 中的应用✅ 企业级 Embedding 模型选型思路至此你已经掌握了RAG 的第一块基石——Embedding。