tei-rerank 部署重排模型bge-reranker-v2-m3
这份记录聚焦在用 Hugging Face Text Embeddings Inference 的 CPU 镜像部署 BAAI/bge-reranker-v2-m3 重排模型,场景是为检索结果增加一个独立的 rerank 服务,而不是普通 embedding 服务。流程先通过 snapshot_download 将模型完整下载到本地目录,再安装 optimum、onnx、onnxruntime,并用 ORTModelForSequenceClassification.from_pretrained(export=True) 将 PyTorch 模型导出到模型目录下的 onnx 子目录,同时保存 tokenizer。docker-compose 配置的关键点包括使用 ghcr.io/huggingface/text-embeddings-inference:cpu-1.5,挂载本地模型目录到 /data/rerank,开放 38190:80 端口,并通过 --model-id 指向容器内路径,配合 --auto-truncate 和 --dtype float32 启动服务。文章特别强调 shm_size: 1g 的必要性,因为 Docker 默认共享内存只有 64MB,AI 推理程序在并发或大矩阵数据传输时可能因共享内存不足直接 Bus error 崩溃。最后用 /rerank 接口测试“我想买一个手机”与三星、苹果、联想笔记本三段文本的相关性排序,结果显示手机相关文本得分约 0.3,而笔记本得分接近 0.0001。读者可以从中获得一套可复现的 TEI rerank 部署步骤,并理解重排模型更应关注候选项之间的相对差距和排序效果,而不是孤立解读绝对分值。

