Note

如何选择和评估 Embedding 模型?

从任务匹配、语言领域、检索指标和部署开销整理嵌入模型选型。

如何选择一个合适的嵌入模型?评估一个 Embedding 模型的好坏有哪些指标?

选择合适的嵌入模型(Embedding Model)是决定RAG系统检索效果的基石。一个好的嵌入模型应该能够将语义相近的文本映射到向量空间中相近的位置。

如何选择合适的嵌入模型?

  1. 参考公开排行榜(Leaderboards):

    • MTEB (Massive Text Embedding Benchmark) 是目前最权威、最全面的嵌入模型评测基准。它涵盖了多种任务和语言,是选择模型的首要参考。可以直接查看MTEB排行榜,选择在 检索(Retrieval) 任务上得分高的模型。
    • C-MTEB是专门针对中文的排行榜。
  2. 考虑具体应用场景:

    • 领域特异性: 如果你的知识库是某个专业领域(如医疗、法律、金融),可以考虑使用在该领域数据上预训练或微调过的嵌入模型,它们通常比通用模型表现更好。
    • 语言支持: 确保模型支持你的业务所涉及的语言,特别是对于多语言场景。
    • 模型大小与速度: 模型越大通常效果越好,但推理速度也越慢,成本越高。需要在效果和性能之间做出权衡。对于需要低延迟的实时应用,可能需要选择一个更小的模型。
  3. 私有模型 vs. 开源模型:

    • 私有模型(如OpenAI的Ada系列): 优点是性能强大,使用方便。缺点是数据需要通过API传输,存在隐私风险,且成本较高。
    • 开源模型(如BGE, M3E, Jina-embeddings等): 优点是可本地部署,数据安全可控,成本低,且有大量高质量模型可供选择。缺点是需要自己进行部署和维护。

评估Embedding模型好坏的指标:

评估指标主要来自MTEB基准,可以分为几大类:

  1. 检索(Retrieval): 这是对RAG最重要的评估任务。

    • nDCG@k (Normalized Discounted Cumulative Gain): 综合衡量了检索结果的相关性和排名。是检索任务中最核心和最全面的指标。
    • Recall@k: 衡量在前k个结果中,召回了多少比例的相关文档。
    • MRR (Mean Reciprocal Rank): 衡量第一个相关文档出现在第几位。适用于那些只需要找到一个正确答案的场景。
  2. 语义文本相似度(Semantic Textual Similarity, STS):

    • 指标: Spearman或Pearson相关系数。
    • 评估方式: 衡量模型计算出的向量余弦相似度,与人类判断的两句话的语义相似度分数之间的相关性。一个好的模型,其相似度计算结果应该与人类的直觉高度一致。
  3. 分类(Classification):

    • 指标: 准确率(Accuracy)。
    • 评估方式: 将文本嵌入向量作为特征,训练一个简单的逻辑回归分类器,看其在文本分类任务上的表现。这衡量了嵌入向量作为“特征”的质量。
  4. 聚类(Clustering):

    • 指标: V-measure。
    • 评估方式: 看模型生成的嵌入向量能否在无监督的情况下,将语义相似的文本自然地聚集在一起。