Skip to content

Reranker 模型怎么选 | 从零理解如何构建 AI Agent

帮助你快速判断本章定位、前置要求与学习目标。

说明:本文是截至 2026-06 的选型图谱,不是实时排名。模型能力、价格、部署选项和版本会变化,采购或上线前请以官方文档、价格页、版本说明和业务样本评测为准。

阅读定位

这篇只解决 Reranker 模型和方案选型,默认你已经知道 Rerank 在检索链路中的位置。如果你还没判断问题是召回漏、排序错、chunk 错还是权限错,先看 检索组件怎么选

这个类别解决什么

Reranker 负责对已经召回的候选结果重新排序。

text
query
  -> retriever 召回 candidates
  -> reranker 重新打分
  -> 选择更少、更准的 context
  -> LLM 生成答案

它解决的是排序质量,不是召回覆盖。

必须先记住一句话:

text
Reranker 不能召回新文档。
如果正确 chunk 没进候选集,Reranker 救不了。

主流选择有哪些

方案本质强项代价适合场景不适合场景
Cohere Rerank托管 Rerank API企业搜索、多语言、接入简单成本、外部调用、数据合规快速生产、高精度通用 RAG、多语言知识库强私有化、极低延迟
Voyage Rerank托管 Rerank API检索任务优化,适合和 Voyage Embedding 组合评估成本和供应商绑定专业领域 RAG、代码/法律/金融等候选评估数据不能出域
Jina Reranker开源/托管 Reranker多语言、开源部署选项、长文档方向可评估版本差异和部署性能要测试多语言、本地化、长文本候选重排不想维护模型服务
BGE Reranker开源 Cross-Encoder中文和多语言私有化友好,生态常见推理成本高于 Embedding,吞吐要压测中文企业知识库、本地 RAG、私有化超低延迟高并发场景
bge-reranker-v2 系列开源 Reranker 系列中文、多语言和不同尺寸选择需要按业务样本选尺寸本地部署、中文 RAG、成本可控生产没有 GPU/推理资源
ColBERT / Late InteractionLate Interaction 检索/重排保留 token 级匹配信息,精度和可解释性好存储和系统复杂度高学术检索、高精度搜索、复杂检索系统普通企业 RAG 起步
LLM-as-reranker用大模型给候选排序可解释、可处理复杂意图和领域规则成本高、延迟高、稳定性要评估小候选集、高价值任务、复杂判断高频查询、大候选集、低延迟场景
自训练 Reranker用业务标注数据训练最贴近业务分布标注、训练、评估和维护成本高大规模稳定业务、强领域术语、长期产品没有标注样本、需求还在变化

什么时候需要 Reranker

适合加 Reranker 的情况:

text
1. 正确 chunk 已经进了 TopK,但经常排得靠后
2. 向量检索召回了很多相似但无关的候选
3. LLM 上下文预算紧,需要只保留更准的片段
4. 答案质量对引用片段顺序很敏感
5. 企业知识库、客服知识库、法规文档需要更高精度

不该先加 Reranker 的情况:

text
1. 正确文档没进候选集
   -> 先修召回、Hybrid、Query Rewrite

2. chunk 切坏了
   -> 先修 chunk,不要重排破碎片段

3. metadata 或 ACL 错了
   -> 先修过滤,Reranker 不能做权限系统

4. 文档版本错了
   -> 先修 source/version/timestamp

5. 最终生成编造
   -> 先修 citation 和 answer grounding

API Reranker 什么时候用

托管 Reranker 的价值是快速、稳定、少运维。

适合:

  • 团队不想维护模型服务;
  • 数据可以外发;
  • 需要快速验证 Rerank 收益;
  • 查询量还没大到成本失控;
  • 多语言能力需要稳定基线。

不适合:

  • 数据不能出内网;
  • 极低延迟;
  • 高频大流量;
  • 成本对每次查询非常敏感;
  • 强定制领域排序规则。

开源 Cross-Encoder 什么时候用

开源 Cross-Encoder 适合私有化和成本可控场景。

适合:

  • 中文知识库;
  • 企业内网;
  • 数据合规要求强;
  • 可以部署 GPU / 推理服务;
  • 希望长期降低 API 成本。

代价:

  • 需要模型服务;
  • 需要批量推理优化;
  • 需要监控延迟和吞吐;
  • 需要定期评估模型版本。

LLM-as-reranker 什么时候用

LLM-as-reranker 不是默认方案,它适合少量、高价值、复杂判断。

适合:

  • 候选数量少;
  • 每次查询价值高;
  • 需要按复杂业务规则排序;
  • 需要解释为什么某个候选更相关;
  • 普通 Reranker 难以理解任务意图。

不适合:

  • 高频客服问答;
  • 大量候选重排;
  • 严格低延迟;
  • 成本敏感;
  • 需要稳定打分的一致性评估。

怎么选

text
只是想验证 Rerank 是否有收益?
  -> 先用托管 Rerank API 做 A/B

中文私有化知识库?
  -> BGE Reranker / Jina Reranker 本地部署候选

多语言 SaaS?
  -> Cohere / Voyage / Jina 托管方案进入评测

代码库 RAG?
  -> 先做 Hybrid + 符号索引,再评估代码友好的 Rerank 或 LLM-as-reranker

候选集很大?
  -> 先缩小 candidates,再 rerank;不要让 Reranker 吃几百上千个 chunk

高价值复杂研究任务?
  -> LLM-as-reranker 可以作为第二阶段判断

长期大规模稳定业务?
  -> 考虑自训练 Reranker

选型指标

指标为什么重要
TopK 排名提升判断 Rerank 是否真的把正确 chunk 排上来
Recall@K 输入覆盖正确 chunk 不在输入里,Rerank 无意义
MRR / nDCG衡量排序质量
延迟每次查询多一层模型调用
成本高频场景成本会快速放大
吞吐本地部署必须压测并发能力
语言能力中文、多语言、代码场景差异很大
上下文长度长 chunk 可能被截断或效果下降
可解释性评审和 debug 是否能解释排序变化

典型误判

误判问题
RAG 不准就加 Rerank可能根因是召回漏、chunk 错、metadata 错
Reranker 越大越好延迟、成本和吞吐会反噬系统
Rerank 后最终答案变好就算成功要看正确 chunk 排名是否稳定提升
把几百个 chunk 都交给 Reranker成本和延迟爆炸,候选质量也未必好
用 Reranker 做权限过滤权限必须在检索前或检索时控制

最小推荐

场景推荐
POC托管 Rerank API 快速验证收益
中文私有化BGE / Jina 本地 Reranker
多语言 SaaSCohere / Voyage / Jina 托管方案评测
企业知识库Hybrid + metadata filter + Rerank
代码库 AgentHybrid + 符号索引优先,再评估 Rerank
高价值复杂任务小候选集 + LLM-as-reranker
大规模稳定业务自训练 Reranker

最终判断

text
召回漏:别加 Rerank
排序错:加 Rerank
中文私有化:开源 Reranker
快速验证:托管 Rerank API
复杂判断:LLM-as-reranker
大规模稳定:自训练 Reranker

Reranker 是排序层,不是万能补丁。先证明正确候选已经进来了,再谈重排。