部署形态与选型43 条

Rerank 模型服务化

重排模型(如 bge-reranker)对召回候选二次打分;较新的 TEI 提供 /rerank 接口,Xinference 等平台也可直接托管 rerank 类模型。

Rerank 服务化是什么

重排模型对召回的候选做二次打分,按与查询的相关度重新排序,典型用法是挂在向量召回之后,把几十条候选收窄到送入大模型的几条。专门的重排推理服务提供重排接口,多模型托管平台也能直接托管这类模型。它的输入是查询加一批候选文本,输出是按相关度排序的分数。

基本信息

输入查询语句 + 一批候选文本
输出按相关度排序的分数列表
链路位置向量召回之后、送入大模型之前
部署形态专用重排推理服务,或多模型托管平台
取舍点候选数量与延迟的平衡

典型使用场景

  • 检索增强问答:把粗排结果精排后再拼进提示词,减少无关上下文
  • 搜索结果重排:同一批候选按相关度重新呈现给用户
  • 候选筛选:从大量片段里挑出最相关的几条,控制上下文长度
  • 质量评估:用重排分数作为检索质量的一个可量化信号
  • 多路召回融合:把不同召回源的结果合并后再统一排序

重排接口调用(示意)

重排接口调用(示意)
# 接口名与参数字段随版本演进,接入前对照当前版本文档
curl http://127.0.0.1:8080/rerank -H 'Content-Type: application/json' \
  -d '{"query": "如何排查显存不足", "texts": ["候选文档一", "候选文档二"]}'

# 输出为按相关度排序的分数列表:取前 N 条进入大模型上下文
# 校验:构造一条明显无关的候选,确认它的分数排在末尾

链路中的位置与作用

阶段特点注意
向量召回快、覆盖广,精度有限候选数决定后续开销
重排精排慢但更准,逐候选打分候选越多延迟越高
送入大模型按分数截断上下文条数直接决定提示词长度
重排分数是同一查询内部的相对排序依据:不同查询之间的分数分布不同,不适合直接拿一个固定阈值跨查询比较。
接口名与参数字段随版本调整较快,迁移或升级时先对照当前版本文档,再改调用代码。

易错点

  • 把重排分数当作跨查询可比的绝对值:不同查询的分数分布不同,阈值应逐场景校准
  • 候选给太多:延迟随候选数量上升,收益却递减,应在压测中定一个平衡点
  • 候选给太少:精排无从发挥,召回阶段漏掉的内容补不回来
  • 重排后不做长度控制:送入大模型的上下文仍然超出预算,等于精排白做

数据来源与参考

  • Hugging Face TEI 文档(huggingface.co/docs/text-embeddings-inference)
  • Xinference 官方文档(inference.readthedocs.io)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌