作者:来自 jina.ai/

一个 0.6B 参数的 listwise reranker,在 BEIR 基准测试中超过 Qwen3-Reranker-4B,相比 v3 最多提升 1.56 倍 reranking 速度,并在半结构化检索中提升 9.6 nDCG@10。
今天,我们发布了 jina-reranker-v3.5,这是一个 0.6B 参数的 listwise reranker。它保留了 jina-reranker-v3 的 last but not late interaction 机制,并使其速度更快,同时在企业实际搜索的数据场景中具备更强的能力。
它在 BEIR 上达到 63.20 nDCG@10 ,超过了 Qwen3-Reranker-4B,但参数量大约只有后者的 1/7。在长文档场景下,它的 reranking 速度相比 v3 最快提升 1.56 倍。
它最大的提升来自半结构化检索:在字段约束记录场景中,相比 v3 提升 +9.6 nDCG@10。
我们通过三个改进实现了这些提升:
-
混合 Attention 调度
使用 sliding window attention 替代大多数 global 层,同时将最后一层固定为 global attention。
-
针对失败模式优化的训练数据混合
训练数据经过精心筛选,覆盖法律、医疗、金融、多语言以及结构化检索中的典型失败场景。
-
三阶段自蒸馏训练方案
teacher 和 student 使用相同规模的模型,唯一差异在于 Attention 模式。
下图展示了四种 benchmark 场景下,模型质量与参数量之间的关系。
jina-reranker-v3.5 在所有四个场景中都处于 Pareto 前沿:我们评估的模型中,没有任何模型能够同时做到更小且效果更好。
在基于 jina-embeddings-v5-text-small 召回的 top-100 候选结果上进行 reranking 后,在 BEIR 的 13 个数据集上测量英文 zero-shot retrieval 效果,指标为 nDCG@10。
红线表示 Pareto 前沿,阴影区域表示被支配区域:对于该区域中的任何模型,都存在另一个模型在规模更小、效果更好,或者两者兼具。
jina-reranker-v3.5 以 63.20 的成绩直接定义了 Pareto 前沿,高于:
1.5B 参数的 mxbai-rerank-large-v2(62.45)4B 参数的 Qwen3-Reranker-4B(62.28)
我们评估的更大模型,没有任何一个能够在 BEIR 质量上超过它。
在 MIRACL 的 18 种语言多语言检索任务中进行评估,采用相同的 top-100 reranking 流程。
jina-reranker-v3.5 在 0.6B 参数规模这一角落占据 Pareto 前沿,达到 74.11 ,是所有紧凑型模型中的最高分。
与此同时,Qwen3-Reranker-4B 在 4B 参数规模下达到 76.56 。
相比 jina-reranker-v3,v3.5 在单语言上的最大提升来自:
Yoruba(约鲁巴语): +4.4 Farsi(波斯语): +3.1 French(法语): +3.0
专业领域检索评估基于 RTEB,覆盖法律、金融、编程和医疗语料库。
jina-reranker-v3.5 达到 70.95 ,以 0.6B 参数规模超过了:
同等规模的 Qwen3-Reranker-0.6B(68.41)1.5B 参数的 mxbai-rerank-large-v2(70.81)
而它自身仅运行在 0.6B 参数规模下。
与 Qwen3-Reranker-4B(77.68)之间的剩余差距,主要集中在少数法律和医疗任务上。
在 Struct-IR 的受控候选池(controlled candidate pool)上进行半结构化检索评估。该评估将所有正确文档(gold documents)与第一阶段检索中最难的 30 个干扰文档(distractors)一起注入候选池,因此该指标专门衡量模型在字段约束条件下的区分能力,而不是第一阶段检索覆盖能力。
jina-reranker-v3.5 达到 48.3 ,相比 jina-reranker-v3 提升 9.6 分 ,这是本次发布中单项任务最大的提升。
需要注意的是,该评估协议与 SSRB retrieval leaderboard 不具备可比性。
架构
Listwise reranking 会在一次 forward pass 中为所有候选文档打分,因此,对于一个包含 100 个文档的列表,完整 self-attention 的计算量会呈平方增长,并且会增加 KV cache 的开销。
显而易见的优化方式是使用 sliding-window attention。但在 LBNL interaction 架构中,这种直接优化会破坏模型效果。
在 LBNL 中,query 和所有候选文档会组成一个因果序列(causal sequence),而 query embedding token 位于序列最末端。它必须能够一直关注到第一个候选文档,以构建具备跨文档感知能力的表示。
有限窗口会切断这种依赖关系。
因此,我们始终将最后一层固定为 global attention,使 query 和 document embedding token 在提取表示时能够观察完整的候选上下文。
如果将这一层也替换为 sliding-window attention,listwise ranking 能力会显著下降;而只保留这一层为 global attention,则可以在不使用完整 global attention 堆栈的情况下保留联合编码能力。
对于剩余的 27 层,我们测试了多种 attention 调度方案:
-
1L1G
-
1L2G
-
3L2G
-
5L1G
最终 3L2G 获胜:
即连续三层 sliding-window attention,然后接两层 global attention,循环执行。
该方案最终形成:
-
17 层 local attention
-
11 层 global attention
-
window size 为 1,024 tokens
其中:
-
local layer 将 attention 计算成本从 O(L²) 降低到 O(L·w)
-
每隔三层插入 global layer,在网络不同深度持续刷新跨候选文档的长距离信息
更密集的 global attention 调度并没有带来吞吐提升;更激进的 5L1G 方案在复杂多文档任务上的表现反而呈下降趋势。
基于 3L2G 混合 Qwen3-0.6B backbone 的 LBNL listwise 编码架构。
Query 和所有候选文档共享同一个 causal context:
L 层 使用大小为 1,024 tokens 的 sliding window attention。 G 层 使用 global attention。最后一层 G * 始终固定为 global attention,因此位于序列末端的 query embedding 可以看到整个候选列表。
随后,通过一个 MLP 将表示投影到共享空间,并使用 cosine similarity 计算相似度,从而生成排序结果。
右图:三阶段训练方案。
其中,Stage I 的 full-attention teacher 模型保持冻结,并在 Stage III 中指导 student 模型训练。
跨 Attention 差异的自蒸馏
这里的蒸馏方式比较特殊。我们并不是将一个大模型压缩成小模型。Teacher 和 student 都是 0.6B 参数规模,唯一差异在于 Attention 模式:
-
Teacher 使用完整 full attention,计算成本为平方级。
-
Student 使用 3L2G 混合 Attention。
如果同时要求 student 切换 Attention mask,并且匹配 teacher 的输出,模型会在两个目标上都失败。因此,该训练方案将这两个压力拆开处理:
-
阶段 I --- full-attention teacher
从公开的 jina-reranker-v3 checkpoint 开始,在完整的 v3.5 训练数据混合集上进行 full fine-tuning。
此时不使用 sliding-window 限制,训练出一个 teacher 模型,用于建立该参数规模下的质量上限。
-
阶段 II --- sparse-attention 适配
Student 从 Stage I 的权重初始化,并启用 3L2G Attention。
首先,只训练 Attention projection,其余参数全部冻结。这样可以让 sparse mask 学习如何路由信息,同时避免破坏 full attention 阶段已经学习到的表示。
然后解冻全部参数,让 student 重新适配新的 Attention 结构。
在这一阶段,student 已经可以部署,并且速度更快,但在 BEIR、RTEB-legal 和 MIRACL 上仍然与 teacher 存在稳定差距。
-
阶段 III --- teacher 引导的蒸馏
保持 teacher 冻结,同时从四个层面让 student 对齐:
-
基于 softmax 归一化 score 分布的 listwise KL loss
-
绝对 score 的 MSE loss
-
最后一层 hidden state 的 MSE loss
-
投影后 embedding 的 cosine loss
此外,还加入:
-
in-context similarity 正则化
-
dispersion 正则化
-
顺序非常重要。
仅执行 Stage II 会留下明显差距,因为 student 必须先在较弱的 Attention mask 下改变信息路由方式,然后才能安全地模仿 teacher 的 score 和状态表示。
Stage III 随后恢复了大部分差距,这说明:一旦 sparse student 完成结构适配,full attention 模型中的能力可以有效迁移过去。
该方案针对 3L2G 设计,但整体方法可以推广到其他 Attention 调度不匹配的场景。
训练数据
v3 的训练数据混合在通用检索方面表现良好,但在专业领域上的表现较弱。
我们没有简单地增加更多数据,而是对 RTEB 和 STARK 开发集进行了错误分析,并构建了每个新的数据分片(shard),使其精准覆盖通用模型容易失败的检索模式。
困难负样本(hard negatives)同时来自多个 retriever:
-
BM25
-
Jina
-
BGE
-
GTE
-
E5
-
ColBERT
这样可以避免模型学习某一个 retriever 特有的捷径。
法律领域数据分片包含:
-
EUR-Lex multilingual
-
CLERC
-
AILA
-
Canadian case law
-
Swiss case summarization
-
EuroVoc
由于法律文本通常具有大量引用关系,并且文本长度较长,因此法律数据被进行了过采样。
医疗领域数据分片针对:
-
临床表达方式
-
实体密集型文本片段
金融领域数据分片重点关注:
-
数值声明
-
监管语言
-
表格相关文本
多语言覆盖范围也扩展到了 MIRACL 和 mMARCO 之外,包括:
-
支持 50 多种语言的 WebFAQ
-
SWIM-IR 跨语言负样本
-
Ruri-v3 日语语义匹配数据
结构化数据获得了最高的采样权重,因为它处于标准 benchmark 假设的自由文本分布之外。
记录和表格中的相关性判断依赖:
-
等值匹配(equality)
-
数值和日期范围约束
-
列表成员关系
-
跨字段逻辑组合
而不是简单的词汇重叠。
早期实验中,结构化数据场景的表现下降最明显,因此我们直接合成了大量具有约束条件的训练 pair,以覆盖这些检索模式。
用于字段约束检索的合成监督数据。
我们从一个 anchor record(锚点记录)中采样带类型的约束条件,然后让 LLM 将这些约束改写成查询语句。接着,我们对一个或两个受约束字段进行扰动,构造近重复(near-duplicate)的 hard negative。
这种 hard negative 保持相同的表面形式,但违反了某个约束条件。
随后,通过 dense mining 添加更多候选样本,并由 LLM judge:
提升真正匹配的样本优化过于宽泛的查询丢弃存在歧义的案例
这些反馈会再次用于查询生成过程。
右侧示例说明了为什么词汇重叠(lexical overlap)在这种场景中没有意义:
正样本和 hard negative 几乎完全相同,唯一差异只是某一个字段的值不同。
实验结果
所有指标均基于统一的 MTEB v2 pipeline,对 jina-embeddings-v5-text-small 召回的 top-100 候选结果进行 reranking。
因此,这些结果可能与各厂商报告的指标存在轻微差异。
完整的按数据集和按语言划分的结果表,请参阅论文。
| Model | Params | BEIR | MIRACL | RTEB | Struct-IR |
|---|---|---|---|---|---|
| jina-embeddings-v5-text-small (1st stage) | 0.5B | 56.26 | 65.15 | 64.60 | -- |
| mxbai-rerank-base-v2 | 0.5B | 59.58 | 64.90 | 61.44 | 30.4 |
| Qwen3-Reranker-0.6B | 0.6B | 56.94 | 67.12 | 68.41 | 41.9 |
| mxbai-rerank-large-v2 | 1.5B | 62.45 | 69.65 | 70.81 | 43.0 |
| Qwen3-Reranker-4B | 4.0B | 62.28 | 76.56 | 77.68 | 55.6 |
| jina-reranker-v3 | 0.6B | 62.10 | 72.20 | 68.01 | 38.7 |
| <strong>jina-reranker-v3.5</strong> | 0.6B | 63.20 | 74.11 | 70.95 | 48.3 |
v3.5 在相同参数规模下,在所有 benchmark 类型上都优于 v3,其中最大的提升来自半结构化检索。
RTEB 的提升主要集中在训练数据针对的领域:
-
AILA-Statute 相比 v3 提升 14.0 分
-
AILA-Case 相比 v3 提升 11.7 分
-
FinQA 达到 86.91,是所有测试模型中的最高成绩
在 STARK 上,v3.5 在全部三个官方指标上都超过 v3,并获得整体最佳的 Hit@5 成绩。
关于 Struct-IR,需要说明一个评估协议细节:
该 benchmark 针对每种 schema 索引数百万个对象,而第一阶段 schema 内检索的 Recall@5 大约只有 0.04。
因此,端到端的 retrieve-then-rerank 流程几乎完全受限于第一阶段召回能力,难以有效区分不同 reranker 的能力。
因此,我们采用了另一种评估方式:
将所有 gold documents 与第一阶段检索出的 30 个最难 distractors 一起注入候选池。
这种方式可以单独衡量字段约束条件下的区分能力,而不受第一阶段检索覆盖率影响。
需要注意的是,该候选池下的结果与 SSRB retrieval leaderboard 不具备可比性。
效率
测试环境:
-
单张 NVIDIA A100
-
batch size:1
-
top-100 listwise 输入
-
FlashAttention-2
短上下文场景,BEIR Natural Questions 数据集。
在 254 个计时查询中,query 和 document 的平均长度分别为:
query:10.3 tokensdocument:145.5 tokens
对于 top-100 listwise reranking:
平均延迟从 371 ms 降低到 305 ms 提速 1.22× document 吞吐量从 270 docs/s 提升到 328 docs/s。
长上下文场景,RTEB AILACasedocs 数据集。
在 48 个计时查询中,query 和 document 的平均长度分别为:
query:689.8 tokensdocument:1,904.0 tokens
对于 top-100 listwise reranking:
平均延迟从 16.1 秒 降低到 10.3 秒 提速 1.56× prefill 吞吐量从 11.9k tokens/s 提升到 18.6k tokens/s
当候选文本较长时,Hybrid Attention 的优势最为明显。
由于生产环境中的 listwise reranking 主要受限于对新候选集合执行的一次 prefill,因此这些性能提升可以直接转化为:
-
在固定 serving 预算下支持更长的候选列表;
-
支持更大的文档输入。
开始使用
通过 Jina Search Foundation API
arduino
`
1. curl -X POST \
2. https://api.jina.ai/v1/rerank \
3. -H "Content-Type: application/json" \
4. -H "Authorization: Bearer ***" \
5. -d '{
6. "model": "jina-reranker-v3.5",
7. "query": "trail-running shoes under $150, rated 4.5+, released since 2022",
8. "documents": [
9. "...",
10. "..."
11. ],
12. "return_documents": false
13. }'
`AI写代码
通过 Elastic Inference Service
jina-reranker-v3.5 从 Stack 9.3 开始可通过 Elastic Inference Service(EIS)使用,因此你可以在托管 GPU 上执行 rerank,而无需自行部署和托管模型。
创建一个引用该模型的 inference endpoint,然后像调用其他 rerank task 一样调用它。
bash
`
1. PUT _inference/rerank/eis-jina-reranker-v3-5
2. {
3. "service": "elastic",
4. "service_settings": {
5. "model_id": "jina-reranker-v3.5"
6. }
7. }
`AI写代码
bash
`
1. POST _inference/rerank/eis-jina-reranker-v3-5
2. {
3. "query": "trail-running shoes under $150, rated 4.5+, released since 2022",
4. "input": [
5. "...",
6. "..."
7. ]
8. }
`AI写代码
响应会返回一个按相关性排序的 rerank 数组,每个条目包含候选文档的原始索引以及对应的 score。
由于它是一个标准的 inference endpoint,因此可以直接在搜索查询中的 text_similarity_reranker retriever 中引用该 inference_id。
通过 transformers
ini
`
1. from transformers import AutoModel
3. model = AutoModel.from_pretrained(
4. 'jinaai/jina-reranker-v3.5',
5. dtype="auto",
6. trust_remote_code=True,
7. )
8. model.eval()
10. query = "What are the health benefits of green tea?"
11. documents = [
12. "Green tea contains catechins that may help reduce inflammation.",
13. "El precio del cafe ha aumentado un 20% este ano.",
14. "绿茶富含儿茶素等抗氧化剂,可以降低心脏病风险。",
15. "Le the vert est riche en antioxydants.",
16. ]
18. for r in model.rerank(query, documents):
19. print(f"{r['relevance_score']:.4f} {r['document'][:70]}")
`AI写代码
结论
jina-reranker-v3.5 的实际结论是明确且可验证的:
在 0.6B 参数规模 下,通过针对性的训练,可以缩小与 4B 通用 reranker 之间的大部分差距;而在 BEIR 上,它已经完全追平甚至超过了这些模型,同时运行速度还快于它所替代的模型。
对于企业级检索场景,这说明与默认选择最大规模模型相比,更值得投入的是:
-
在紧凑 backbone 上进行针对性的监督训练;
-
针对真实业务检索模式优化数据和训练目标。
需要明确指出两个限制:
首先,listwise reranker 仍然存在 pointwise 和 late-interaction 模型没有的输入限制,尤其是:
-
候选数量存在固定上限;
-
候选文档总长度存在限制。
其次,在以下场景中,4B Qwen 仍然保持明显优势:
-
RTEB 法律和医疗任务;
-
受控候选池下的 Struct-IR;
-
低资源语言的 MIRACL。
这些仍然是最具挑战性的场景,我们直接指出这些差距,而不是用平均指标掩盖它们。