RAG中的Embedding入门基础教程(非常详细),过百度二面看这篇就够了!

张开发
2026/4/15 4:57:30 15 分钟阅读

分享文章

RAG中的Embedding入门基础教程(非常详细),过百度二面看这篇就够了!
面试官RAG 里的 Embedding 是什么你是怎么选模型的‍♂️我Embedding 就是把文本变成向量用 OpenAI 的模型就行了效果最好。面试官「把文本变成向量」说了等于没说。向量的关键特性是什么为什么语义相似的文本向量就靠近这个原理你能解释吗而且 OpenAI 的模型在中文场景上效果就一定好吗‍♂️我那我就选排行榜分数最高的模型MTEB 排行榜第一名应该没问题吧面试官MTEB 用的是通用数据集你的业务是做医疗问答还是法律咨询通用排行榜能代表你的场景效果你有没有在自己的数据上做过评估HitK 是什么指标你知道吗‍♂️我呃……HitK 没听过我们就直接用 OpenAI 的没测过别的。面试官选模型不测试全靠感觉和排行榜这样做出来的系统能好用就怪了。好吧Embedding 这块看似只是调个 API但选型不当整个 RAG 的检索质量都会受影响。下面我来讲清楚。 简要回答Embedding 我理解就是把一段文本转成一串数字向量的过程。它有一个很关键的特性就是语义相近的文本转出来的向量在数学空间里的距离也近。RAG 里的语义检索就是靠这个实现的不是关键词匹配而是看两段内容的意思相不相近。选模型的话我主要看三个维度第一是中文支持中文场景我会优先选 BGE 系列效果其实比 OpenAI 的模型还要好第二是向量维度维度越高精度越好但存储成本也越大第三是最大输入长度这个决定了能处理多长的 chunk。评估这块我的建议是不要只看通用排行榜一定要在自己的业务数据上跑召回测试那个才是真正有参考价值的。 详细解析Embedding 是什么?Embedding 模型做的事情本质上是「语义压缩」把一段自然语言文本映射成一个固定长度的浮点数向量。比如一个 1024 维的 Embedding 模型不管输入的文本是 10 个字还是 500 个字输出都是一个长度为 1024 的数字列表。这个映射最关键的性质是语义相近的文本向量的余弦相似度高。余弦相似度衡量的是两个向量的方向有多接近方向越一致余弦值越接近 1说明语义越相近。你可以把它理解成两段话如果「指向同一个意思」它们的向量箭头就朝着同一个方向。你可能会觉得这没什么了不起的关键词搜索不也能找到相关内容吗还真不一样。比如「苹果手机怎么截图」和「iPhone 如何截屏」这两句话一个字都不一样关键词搜索根本匹配不上但经过 Embedding 之后两个向量的余弦相似度可能高达 0.95而「苹果手机」和「苹果汁」虽然都有「苹果」但语义相差很远向量距离也会拉开。这就是语义检索比关键词匹配强的核心原因它能处理同义词、近义词和不同的表达方式。很多人以为向量检索就是高级的关键词匹配其实完全不是一回事它是从「意思」层面在做匹配。常见 Embedding 模型对比理解了 Embedding 的原理接下来就是选模型了。目前主流的选择大概分三类。第一类是OpenAI 的 text-embedding 系列text-embedding-3-small是性价比最高的1536 维支持降维到 256 维来节省存储调用方便英文效果非常好缺点是 API 调用有费用而且数据要发到 OpenAI 服务器有些企业有数据出境合规问题。第二类是BGE 系列北京智源研究院出品这是目前中文 RAG 场景的首选开源模型bge-large-zh在中文语义检索上的效果甚至超过 OpenAI 的模型1024 维可以本地部署数据不出境。如果你的知识库主要是中文内容BGE 几乎是最优解。第三类是多语言模型比如bge-m3同时支持中英日等多种语言向量维度 1024适合知识库里中英文混排的场景。如何选择 Embedding 模型聊完了模型分类具体到你自己的项目该怎么选选模型的时候主要看这几个判断点。第一是中英文比例知识库以中文为主选bge-large-zh中英混合选bge-m3纯英文或追求省事选text-embedding-3-small。第二是数据合规要求数据不能出境就必须用可以本地部署的开源模型BGE 系列是最优选择。第三是向量维度对存储和检索速度的影响维度越高精度越好但存储空间和检索时间都会增加。百万量级的知识库1024 维是个合理的平衡点如果规模很小1536 维也无所谓。如何评估 Embedding 模型这里有一个常见的误区很多人拿 MTEB 这类通用排行榜的分数来选模型觉得分数高就一定好。MTEB 是一个权威的文本 Embedding 通用排行榜用多种标准数据集评测模型的语义搜索能力是好的参考。但它用的是通用数据集你的业务场景比如医疗问诊、法律文档、客服知识库和通用数据分布差异很大排行榜第一的模型不一定适合你。就好比高考状元不一定擅长你那个行业的专业考试测评的数据分布不对分数就没有参考意义。正确的评估方法是在自己的业务数据上测准备几百条业务相关的「问题 正确答案 chunk」对分别用候选模型做检索看正确的 chunk 有没有出现在前 K 条结果里。这个指标叫 HitKHit5 0.8 的意思就是80% 的问题它对应的答案都出现在了检索结果的前 5 条里。通常 Hit5 低于 0.7 就要考虑换模型或者改进 Chunking 策略了。这种贴近真实场景的评估比排行榜分数更有参考价值。把常见的选型维度汇总对比一下模型维度中文效果是否开源适用场景text-embedding-3-small1536可降维一般否API英文为主、快速上手text-embedding-3-large3072可降维一般否API英文为主、精度要求高bge-large-zh1024很好是中文知识库首选bge-m31024好是中英混合、多语言场景 面试总结回到开头那段面试Embedding 这个问题考察的是你对 RAG 检索层基础的理解。回答要讲清三点。第一Embedding 不只是「文本变向量」关键是语义相近的文本向量距离近这才是语义检索的基础。第二选模型要看场景中文首选 BGE中英混合用 bge-m3有数据合规要求就用开源模型本地部署。第三评估模型不要只看 MTEB 排行榜要在自己的业务数据上跑 HitK 测试这才是真正有参考价值的。如果面试官追问「你用的什么模型为什么选它」你就说「中文场景用 bge-large-zh在自己的业务数据上 Hit5 达到 0.8 以上」这个回答有理有据。学AI大模型的正确顺序千万不要搞错了2026年AI风口已来各行各业的AI渗透肉眼可见超多公司要么转型做AI相关产品要么高薪挖AI技术人才机遇直接摆在眼前有往AI方向发展或者本身有后端编程基础的朋友直接冲AI大模型应用开发转岗超合适就算暂时不打算转岗了解大模型、RAG、Prompt、Agent这些热门概念能上手做简单项目也绝对是求职加分王给大家整理了超全最新的AI大模型应用开发学习清单和资料手把手帮你快速入门学习路线:✅大模型基础认知—大模型核心原理、发展历程、主流模型GPT、文心一言等特点解析✅核心技术模块—RAG检索增强生成、Prompt工程实战、Agent智能体开发逻辑✅开发基础能力—Python进阶、API接口调用、大模型开发框架LangChain等实操✅应用场景开发—智能问答系统、企业知识库、AIGC内容生成工具、行业定制化大模型应用✅项目落地流程—需求拆解、技术选型、模型调优、测试上线、运维迭代✅面试求职冲刺—岗位JD解析、简历AI项目包装、高频面试题汇总、模拟面经以上6大模块看似清晰好上手实则每个部分都有扎实的核心内容需要吃透我把大模型的学习全流程已经整理好了抓住AI时代风口轻松解锁职业新可能希望大家都能把握机遇实现薪资/职业跃迁这份完整版的大模型 AI 学习资料已经上传CSDN朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】

更多文章