SyncAI.news, a Varaisys broadcasting
Introducing the Ettin Reranker Family
HF

Hugging Face Blog

· 1 min read

AI LabsHugging Face Blog

Introducing the Ettin Reranker Family

TL;DR

Today I'm releasing six new Sentence Transformers CrossEncoder rerankers, state-of-the-art at their respective sizes, built on top of the Ettin ModernBERT encoders, together with the data and full training recipe that produced them:

  • cross-encoder/ettin-reranker-17m-v1
  • cross-encoder/ettin-reranker-32m-v1
  • cross-encoder/ettin-reranker-68m-v1
  • cross-encoder/ettin-reranker-150m-v1
  • cross-encoder/ettin-reranker-400m-v1
  • cross-encoder/ettin-reranker-1b-v1

The models were trained with a distillation recipe: pointwise MSE on mixedbread-ai/mxbai-rerank-large-v2 scores over cross-encoder/ettin-reranker-v1-data, which is a subset of lightonai/embeddings-pre-training mixed with a reranked subset of lightonai/embeddings-fine-tuning.

Our six rerankers paired with google/embeddinggemma-300m on MTEB(eng, v2) Retrieval. See Results for five more embedder pairings.

If you're new to rerankers and want the "why" first, jump to What is a reranker, and why pair one with an embedder?. If you just want to plug a model in, jump to Usage. If you want to train your own, jump to Training.

I bootstrapped the training recipe below with the new train-sentence-transformers Agent Skill shipped in Sentence Transformers v5.5.0. Install it with hf skills add train-sentence-transformers [--global] [--claude] and ask your AI coding agent (Claude Code, Codex, Cursor, Gemini CLI, ...) to fine-tune a SentenceTransformer, CrossEncoder, or SparseEncoder model on your data.

Table of contents

  • What is a reranker, and why pair one with an embedder?
  • Usage
    • End-to-end retrieve-then-rerank pipeline
  • Architecture Details
  • Results
    • MTEB(eng, v2) Retrieval
    • Speed
  • Training
    • Distillation recipe
    • Dataset
    • Training Arguments
    • Evaluation
    • Overall Training Script
  • Conclusion
  • Acknowledgements

What is a reranker, and why pair one with an embedder?

Throughout this blogpost I'll use "reranker" and "cross-encoder" interchangeably.

Usage

For a query and a list of candidates, you can also use rank to get back sorted indices and scores:

Full table of results (click to expand) Full table of NanoBEIR results (click to expand) Same benchmark on a consumer GPU (RTX 3090, 24 GB) Same benchmark on CPU (Intel Core i7-13700K)

Original source

This story was published by Hugging Face Blog. SyncAI.news shows a preview; the complete article is on the publisher's site.

Read the full story on huggingface.co

Similar News