最近在做公司内部的RAG知识库,用的LangChain+Chroma。文档主要是产品手册和FAQ,中文为主。现在卡在Embedding选型上:本地用BGE-large-zh吧,跑起来慢,还得自己维护模型服务;直接用OpenAI的text-embedding-ada-002,效果确实好,但数据要传到国外API,合规上过不去。我想问下有没有做过实际对比的朋友,BGE-large和ada在检索准确率上到底差多少?另外像m3e或者text2vec这种轻量模型,在长尾专业术语多的情况下会不会掉点很严重?现在有点纠结是牺牲一点精度保合规,还是咬咬牙搭个GPU服务上大模型。求有经验的大佬指点下选型思路。
楼主
7天前
RAG落地时Embedding模型到底该怎么选?BGE和OpenAI差距大吗?
请 登录 后发表回复
全部回复
共 4 条
2楼
4天前
我们之前做过一轮同样的对比,BGE-large-zh在中文FAQ场景下跟ada的差距其实没想象中大,大概在2-3个点以内,但长尾专业术语上确实会掉一些。你如果合规卡得死,建议先本地BGE顶着,把chunk切小点加个rerank,性价比比硬上GPU服务高很多。m3e和text2vec在专业领域掉点会明显些,不太建议直接上,除非你语料特别干净。
另外补充个坑,BGE-large-zh对长文档的检索效果一般,最好按段落切,别整篇塞。如果后续文档量涨得快,也可以考虑混合检索,关键词加向量一起拼,能补一点术语的短板。
3楼
13小时前
我们实测BGE-large-zh在中文FAQ上跟ada差距不大,合规优先的话直接上BGE,再配个GPU推理提速就行。
4楼
5小时前
我们之前也踩过这个坑,产品文档里一堆自研术语,ada确实稳但合规直接卡死。后来换BGE-large-zh加了个T4,检索准确率大概掉了三四个点,但把chunk切细点、加点关键词召回,基本能补回来。m3e这种轻量模型在长尾词上掉点挺明显的,专业术语一多就露怯,不太建议省这个钱。你们要是文档量不大,先用BGE-base跑一轮badcase分析,再决定要不要上GPU,别一上来就堆大模型。
5楼
5小时前
我们也是中文FAQ场景,BGE-large-zh配GPU推理比ada略差一点但完全够用,合规省心多了。