Text Ranking
Transformers
Safetensors
qwen3
text-classification
reranker
tevatron
information-retrieval
passage-ranking
Instructions to use utahnlp/tevatron3-reranker-8b-contrastive-lora-hf with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use utahnlp/tevatron3-reranker-8b-contrastive-lora-hf with Transformers:
# Load model directly from transformers import AutoTokenizer, AutoModelForSequenceClassification tokenizer = AutoTokenizer.from_pretrained("utahnlp/tevatron3-reranker-8b-contrastive-lora-hf") model = AutoModelForSequenceClassification.from_pretrained("utahnlp/tevatron3-reranker-8b-contrastive-lora-hf", device_map="auto") - Notebooks
- Google Colab
- Kaggle
| license: apache-2.0 | |
| base_model: Qwen/Qwen3-8B-Base | |
| library_name: transformers | |
| pipeline_tag: text-ranking | |
| tags: | |
| - reranker | |
| - tevatron | |
| - information-retrieval | |
| - passage-ranking | |
| # tevatron3-reranker-8b-contrastive-lora-hf | |
| A pointwise passage **reranker** built on Qwen3-8B (dense), trained with the | |
| [Tevatron](https://github.com/texttron/tevatron) 3.0 toolkit. | |
| - **Backbone:** Qwen3-8B (dense) | |
| - **Training backend:** HF DDP | |
| - **Objective:** contrastive | |
| - **Parameter efficiency:** LoRA (merged) | |
| - **Training data:** [RLHN-680K](https://huggingface.co/datasets/rlhn/rlhn-680K) | |
| ## Scoring contract (important) | |
| This checkpoint is a **sequence-classification scorer**, saved as | |
| `Qwen3ForSequenceClassification` with `num_labels=1`. The relevance score of a | |
| (query, passage) pair is the single regression logit read at the **last (EOS) | |
| token**. Training builds the pair as `"query: {{query}} passage: {{title}} {{text}}"` | |
| (no yes/no suffix) and **appends EOS**; score = `logits[:, 0]`. | |
| > This differs from the Megatron causal-LM rerankers in this release, which | |
| > score `logit(" yes") − logit(" no")` at a prompt suffix. Load this one with | |
| > `AutoModelForSequenceClassification`, not `AutoModelForCausalLM`. | |
| ## Usage | |
| Score with Tevatron's reranker eval backend (see the | |
| [Tevatron repo](https://github.com/texttron/tevatron)), or directly: | |
| ```python | |
| import torch | |
| from transformers import AutoModelForSequenceClassification, AutoTokenizer | |
| name = "brutusxu/tevatron3-reranker-8b-contrastive-lora-hf" | |
| tok = AutoTokenizer.from_pretrained(name) | |
| model = AutoModelForSequenceClassification.from_pretrained( | |
| name, num_labels=1, dtype=torch.bfloat16).cuda().eval() | |
| pair = "query: what is the capital of france passage: Paris is the capital of France." | |
| ids = tok(pair + tok.eos_token, return_tensors="pt").to("cuda") | |
| with torch.no_grad(): | |
| print(model(**ids).logits[0, 0].item()) | |
| ``` | |
| ## Citation | |
| If you use this model, please cite the Tevatron toolkit. | |