微信扫码
与创始人交个朋友
我要投稿
向量嵌入驱动现代的搜索和检索增强生成 (RAG) 应用。嵌入技术捕捉数据对象 (如文本) 的语义意义,并将其表示为一组数字。在当今的生成式 AI (Generative AI) 应用中,这些向量嵌入通常由称为嵌入模型的技术生成。
但是,如何为搜索或RAG应用程序选择正确的嵌入模型呢?
通用模型是否能够满足您的需求,还是您有特定的需求,例如模式(如仅文本或多模态)、主题领域(如编码、法律、医学、多语言等)和部署模式?在大多数情况下,从适用于您所需模式的通用模型开始会是一个合理的基线。
大型文本嵌入基准 (MTEB) 排行榜是概览当前广泛存在的专有和开源文本嵌入模型的良好起点。MTEB 为每个嵌入模型列出了多种指标,如模型大小、内存使用量、嵌入维度、最大 Token 数量,以及在检索、摘要等任务中的得分。
以下是为您的应用选择最佳模型时需要考虑的一些因素:
任务:在 MTEB 排行榜上,您会看到各种标签。您需要先确定是想要一个全能型模型,还是一个特定任务(如分类、聚类、检索、摘要等)匹配的模型。例如,如果您正在构建一个 RAG 应用,您可能需要重点关注“检索”任务。如果您有更具体的需求,例如特定语言(如英语、中文、法语、波兰语)或领域(如法律),也需要进一步细化选择。
得分:得分显示了模型在特定基准数据集或多个基准数据集上的表现。根据任务不同,评估指标也不同。通常,这些指标的取值范围在 0 到 1 之间,数值越高表示性能越好。
模型大小和内存使用量:这些指标帮助您了解运行模型所需的计算资源。尽管较大的模型通常具有更好的检索性能,但它们也会增加延迟。此外,较大的模型可能会过拟合,从而在实际应用中表现不佳。因此,在生产环境中,您需要在延迟和性能之间找到平衡。理想情况下,可以先使用一个小型、轻量的模型快速构建基线,然后在管道工作正常后,替换为更大、更高性能的模型。
嵌入维度:这是嵌入向量的长度。虽然较大的嵌入维度能够捕捉更多数据细节和关系,但并不总是必要。例如,与 PDF 进行对话可能并不需要 2048 维度的嵌入。相反,较小的嵌入维度能够提供更快的推理速度,并且在存储和内存方面更高效。因此,您需要在数据复杂性和操作效率之间找到平衡。
最大 Token 数:这是单个嵌入可以处理的最大 Token 数。对于常见的 RAG 应用,合适的嵌入块大小通常是一个段落或更少。在这种情况下,最大 Token 数为 512 的模型应该足够了。然而,在某些特殊情况下,您可能需要嵌入更长的文本,这就需要使用具有更大上下文窗口的模型。
虽然 MTEB 排行榜是一个很好的起点,但您应该谨慎对待其结果。请记住,这些结果是模型自行报告的。某些模型的性能分数可能被夸大,因为它们可能在训练数据中包含了公开可用的 MTEB 数据集。最后,用于基准测试的这些数据集可能无法准确代表您所处理的数据。因此,我们建议您在自己的数据集上评估嵌入模型。
可以生成一个包含 50 到 100 个数据对象的小型手工标注数据集,以观察能达到的性能。
可以使用milvus或者Weaviate矢量数据库来存储相应的矢量嵌入。
各种评估指标可用,例如精确度,召回率,MRR,MAP和NDCG。
在使用用例构建了一个小型基线模型的初始管道后,可以尝试使用几种不同的嵌入模型,看看能否超越基线模型的表现。
微调嵌入模型是一个可选步骤。理想情况下,可以找到一个合适的现成模型,微调仅在需要进一步提升性能时才有必要。
53AI,企业落地应用大模型首选服务商
产品:大模型应用平台+智能体定制开发+落地咨询服务
承诺:先做场景POC验证,看到效果再签署服务协议。零风险落地应用大模型,已交付160+中大型企业
2024-05-28
2024-04-26
2024-08-21
2024-04-11
2024-08-13
2024-07-09
2024-07-18
2024-10-25
2024-07-01
2024-06-17