Qwen3 与 BGE 编码模型原理是什么,Qwen3 编码模型如何训练?
未标记
考查重点:编码骨干、池化与对比训练。Qwen3 Embedding 用因果骨干和末尾表示做对比训练;BGE 需明确具体型号,再比较骨干、池化和正负样本目标
本题目录
参考答案
核心回答
这里的Qwen3编码模型应指Qwen3 Embedding,而不是直接拿Qwen3聊天模型的输出当向量。它基于Qwen3的因果注意力骨干,取末尾EOS位置的最后层隐藏状态形成文本表示,通过对比学习让相关query与document更接近。
BGE也是一个系列:常见BGE稠密模型采用双向编码骨干提取句向量;以BGE-M3为例,它不仅输出一个稠密向量,还统一支持词项稀疏权重和多向量交互。不能把所有BGE版本都当成同一个结构,也不能把Embedding与成对打分的Reranker混为一谈。
编码与检索怎样工作
双编码器分别计算q与d的表示,可预先离线编码文档,在线只编码query,再按余弦或内积检索。query和document可以共享编码器权重;“双”描述两路输入独立编码,不必是两个不同模型。
Qwen3 Embedding的末尾EOS能通过因果注意力看到全部前文。检索时按模型要求给query加任务指令,文档通常保持原文,再做池化与归一化;不能对不同padding位置机械取同一数组下标。BGE-M3的稠密表示取归一化CLS状态;稀疏路径估计token权重,多向量路径保留细粒度表示并做后期交互。
Qwen3 Embedding如何训练
按2025年技术报告,它采用三阶段流程:
- 大规模弱监督对比训练:利用基座模型生成多任务、多语言、不同难度和长度的相关文本对,学习广泛的语义关系。
- 高质量监督微调:结合标注数据与筛选后的高质量合成对,继续优化检索和语义任务能力。
- 模型合并:合并监督阶段的多个检查点,改善不同数据分布上的稳健性;它不是再加一个“生成答案”训练目标。
Embedding的核心是InfoNCE式对比损失。简化地说,将正对相似度经过温度缩放,与正例及负例一起归一化,提高正例概率。报告还包含困难负例、批内负例和假负例掩码;负例中若混入真正相关文档,直接推远会损害表示。
例如正负候选的缩放后logits为[2,0,0],正例概率为e²/(e²+2)≈0.787,对比损失约0.240。这是简化算例,不代表完整Qwen3训练配置。
BGE-M3的训练侧重点与选型
BGE-M3先学习稠密表示,再联合训练稠密、稀疏和多向量功能,并用多路组合分数进行自知识蒸馏,协调不同表示的训练。选型时应固定具体检查点,按真实语言、长度、任务指令和检索评测比较质量、存储与延迟。换Embedding模型通常需要重建文档向量与索引;同样维数不代表新旧向量处于同一语义空间。
对应教程
- 18-向量数据库与Embedding实战:理解稠密、稀疏和元数据的职责,本文补充Qwen3与BGE-M3训练机制。
参考资料
- 国内:Qwen团队:Qwen3 Embedding:依据因果注意力、EOS 池化和对比学习,说明正文中 Qwen3 Embedding 的编码方式及弱监督、监督、合并三阶段训练。
- 国内:BAAI等:BGE M3-Embedding:借鉴 CLS 稠密表示、词项权重、多向量与自蒸馏,说明正文中 BGE-M3 的表示及联合训练。
- 国内:JavaGuide:RAG向量存储与索引:依据向量归一化与索引使用的边界,说明正文中换模型通常需重建向量、同维度不代表语义空间一致的原因。
- 国外:Reimers、Gurevych / TU Darmstadt:Sentence-BERT:依据双编码器可预计算文档向量的结构,说明正文中 query 与 document 独立编码及与成对联合打分的区别。
- 国外:van den Oord等 / DeepMind:Representation Learning with Contrastive Predictive Coding:依据 InfoNCE 的正负样本归一化目标,解释正文中提高正例概率的对比学习和假负例风险。