中文 Emebedding & Reranker 模型选型
Author: ninehills
Labels: blog
Created: 2023-12-28T04:58:44Z
Link and comments: https://github.com/ninehills/blog/issues/111
结论
选型建议:
- 大部分模型的序列长度是 512 tokens。 8192 可尝试 tao-8k,1024 可尝试 stella。
- 在专业数据领域上,嵌入模型的表现不如 BM25,但是微调可以大大提升效果。
- 有微调需求且对模型训练了解较少的,建议选择 bge 系列(完善的训练脚本、负例挖掘等)。但多数模型都基于BERT,训练脚本也通用,其他模型也可以参考。
- 重排模型选择很少,推荐使用 bge-reranker,也支持微调。reranker 模型因为单次输入较多,只能通过 GPU 部署。
Embedding 模型
PEG
作者:腾讯 模型地址: https://huggingface.co/TownsWu/PEG 论文: https://arxiv.org/pdf/2311.11691.pdf
重点优化检索能力。
GTE 系列
作者:阿里巴巴 模型地址: https://huggingface.co/thenlper/gte-large-zh 论文: https://arxiv.org/abs/2308.03281
picolo 系列
作者:商汤 地址: https://huggingface.co/sensenova/piccolo-large-zh
有一些微调的小tips
stella 系列
地址:https://huggingface.co/infgrad/stella-large-zh-v2 博客文章: https://zhuanlan.zhihu.com/p/655322183
基于piccolo 模型fine-tuning,支持1024 序列长度。博客文章记录了一些训练思路。
BGE 系列
作者:智源研究院 地址:https://huggingface.co/BAAI/bge-large-zh-v1.5 论文:https://arxiv.org/pdf/2309.07597.pdf Github:https://github.com/FlagOpen/FlagEmbedding
开放信息最多的模型,也提供了fine-tuning 示例代码。同时也是 C-MTEB 榜单的维护者。
m3e 系列
作者:MokaAI 地址:https://huggingface.co/moka-ai/m3e-large Github:https://github.com/wangyuxinwhy/uniem
研究的比较早,算是中文通用 Embedding 模型、数据集以及评测比较早的开拓者。
multilingual-e5-large
地址:https://huggingface.co/intfloat/multilingual-e5-large 论文:https://arxiv.org/pdf/2212.03533.pdf
多语言支持。
tao-8k
地址: https://huggingface.co/amu/tao-8k
支持8192 序列长度,但是信息很少。
Reranker 模型
bge-reranker 系列
作者:智源研究院 地址:https://huggingface.co/BAAI/bge-reranker-large Github:GitHub - FlagOpen/FlagEmbedding: Dense Retrieval and Retrieval-augmented LLMs
基于 xlm-roberta 模型。
alime-reranker-large-zh
地址: https://huggingface.co/Pristinenlp/alime-reranker-large-zh
信息很少。也是基于 xlm-roberta 模型。
C-MTEB
我们只关心 Rerank 和 Retrieval 评测,结果见 mteb