Views
No views yet
group_size=64. Embeddings and the projector stay in bf16 for accuracy. 0.78 GB vs 1.19 GB (~35% smaller) with no measurable quality loss for reranking.| Dataset | bf16 | q8 | q4 |
|---|---|---|---|
| NFCorpus (323 queries) | 0.9648 | 0.9650 | 0.9654 |
| SciFact + hard negatives (300) | 0.9817 | 0.9820 | 0.9867 |
| ArguAna + hard negatives (100) | 0.9963 | 0.9963 | 0.9963 |
| Original | This repo | |
|---|---|---|
| Backbone Linear layers | bf16 | 8-bit affine (group_size=64) |
| Embeddings | bf16 | bf16 (unchanged) |
| Projector | bf16 | bf16 (unchanged) |
| Model size | 1.19 GB | 0.78 GB |
1from mlx_lm import load
2
3model, tokenizer = load("underlotus/jina-reranker-v3.5-mlx-q8")rerank.py / MLXReranker helper in the original repo does not support quantized weights (its modeling.py has no dequantization logic). Use mlx-lm or oMLX to load this model.reranker (e.g. jina-reranker-v3.5-mlx-q8) so oMLX routes it to its reranker engine.1import mlx.nn as nn
2from mlx.utils import tree_flatten
3
4# only Linear layers, 8-bit affine
5nn.quantize(
6 model,
7 group_size=64,
8 bits=8,
9 class_predicate=lambda p, m: isinstance(m, nn.Linear),
10)jina-reranker-v3.5 useful in your research, please cite the original paper:1@misc{nasika2026jinarerankerv35efficientlistwisereranker,
2 title={jina-reranker-v3.5: An Efficient Listwise Reranker with Hybrid Attention and Self-Distillation},
3 author={Christina Nasika and Feng Wang and Antonis Krasakis and Han Xiao},
4 year={2026},
5 eprint={2607.18152},
6 archivePrefix={arXiv},
7 primaryClass={cs.IR},
8 url={https://arxiv.org/abs/2607.18152},
9}