Ettin Reranker ファミリー v1 リリースノート
Ettin Reranker ファミリー v1 リリースノート
TL;DR
Hugging Face は、Ettin ModernBERT エンコーダ上に構築され、mixedbread-ai/mxbai-rerank-large-v2 からのポイントワイズ MSE 蒸留により学習された 6 つの新しい Sentence Transformers CrossEncoder リランカー(ettin-reranker-17m-v1 から ettin-reranker-1b-v1)をリリースしました。これらのモデルはそれぞれのサイズで最先端の性能を持ち、retrieve‑then‑rerank パイプラインにおいて精度と速度の向上を提供します。
モデルファミリーとリリース
Ettin Reranker ファミリーは、17 百万から 1 十億パラメータまでの 6 つの CrossEncoder モデルで構成され、すべて Apache 2.0 ライセンスでリリースされています。各モデルは Johns Hopkins University の Ettin スイートに含まれる対応する Ettin エンコーダをベースにしており、約 1.43 億件の (query, document, score) ペアからなるデータセット上でシングルエポックのポイントワイズ MSE ロスを用いて教師モデル mxbai-rerank-large-v2 から蒸留されました。
アーキテクチャの詳細
6 つのリランカーはすべて同一のモジュラーアーキテクチャを共有し、Ettin エンコーダのバックボーンサイズのみが異なります。アーキテクチャは Transformer(AutoModel としてロードし、パディングなし入力を可能にする)、CLS プーリング、dense‑GELU ブロック、LayerNorm、そして単一の関連スコアを出力する最終的な dense レイヤで構成されています。隠れ層サイズ、層数、総パラメータ数(ヘッドを含む)は以下の通りです:
- 17M: hidden 256, layers 7, 17.6M params
- 32M: hidden 384, layers 10, 32.8M params
- 68M: hidden 512, layers 19, 68.6M params
- 150M: hidden 768, layers 22, 150.9M params
- 400M: hidden 1024, layers 28, 401.6M params
- 1B: hidden 1792, layers 28, 1.00B params すべてのモデルは、Ettin エンコーダの ModernBERT スタイルの事前学習により、最大 8192 トークンのコンテキストをサポートします。
使用方法
リリースされたモデルは標準的な Sentence Transformers CrossEncoder で、3 行のコードでロードできます。最大スループットを得るために、model_kwargs で bfloat16 と Flash Attention 2 を有効にしてください。
from sentence_transformers import CrossEncoder
model = CrossEncoder(
"cross-encoder/ettin-reranker-32m-v1",
model_kwargs={"dtype": "bfloat16", "attn_implementation": "flash_attention_2"},
)
rank メソッドは、クエリと候補文書リストに対してソートされたインデックスとスコアを返します。エンドツーエンドの retrieve‑then‑rerank パイプラインは、高速エンベッダー(例: sentence-transformers/static-retrieval-mrl-en-v1)で上位 K 件の候補を取得し、続いてリランカーで順序付けを行います。
Retrieval Results (MTEB)
MTEB(eng, v2) の Retrieval ベンチマーク(6 つのエンベッダー組み合わせで平均した NDCG@10)において、Ettin リランカーは以下のスコアを達成しました:
- ettin-reranker-1b-v1: 0.6114
- ettin-reranker-400m-v1: 0.6091
- ettin-reranker-150m-v1: 0.5994
- ettin-reranker-68m-v1: 0.5915
- ettin-reranker-32m-v1: 0.5779
- ettin-reranker-17m-v1: 0.5576 比較のために、教師モデル mxbai-rerank-large-v2 のスコアは 0.6115 で、1B の Ettin モデルは 0.0001 の差でそれに匹敵します。最小の 17M モデルは、33M の ms-marco-MiniLM-L12-v2(0.5066)を +0.051 NDCG@10 上回ります。
スピードベンチマーク
スループットは、bfloat16 と最適な attention 実装を使用した単一の NVIDIA H100 80GB 上で測定されました。結果(ペア/秒)は以下の通りです:
- ettin-reranker-17m-v1: 7517
- ettin-reranker-32m-v1: 6602
- ettin-reranker-68m-v1: 4913
- ettin-reranker-150m-v1: 3237
- ettin-reranker-400m-v1: 1738
- ettin-reranker-1b-v1: 928 教師モデル mxbai-rerank-large-v2 は 387 ペア/秒を達成するため、1B の Ettin モデルは品質を保ちつつ 2.4 倍のスループットを提供します。CPU(Intel Core i7-13700K)上では、17M モデルが 267.4 ペア/秒に達し、ms-marco-MiniLM-L6-v2(143.9 ペア/秒)より大幅に高速です。
トレーニングレシピ
モデルはシングルエポックのポイントワイズ MSE 蒸留レシピで学習されました。教師は mixedbread-ai/mxbai-rerank-large-v2 で、損失は教師の生ロジットに対する MSELoss(範囲は約 [−12, 22])です。トレーニングデータはリリースされたデータセット cross-encoder/ettin-reranker-v1-data で、lightonai/embeddings-pre-training からの約 1.43 億件の (query, document, score) トリプルと、lightonai/embeddings-fine-tuning の再スコアリングされたサブセットが含まれます。 ハイパーパラメータはサイズごとに学習率とグローバルバッチサイズが変わり、その他の設定はすべて一定です(num_train_epochs=1、warmup_ratio=0.03、bf16=True、NanoBEIR の平均 NDCG@10 を用いてステップの 5% ごとに評価)。
- 17M: lr 2.4e-4, global batch 1024
- 32M: lr 1.2e-4, global batch 512
- 68M: lr 3e-5, global batch 256
- 150M: lr 1.5e-5, global batch 192
- 400M: lr 7e-6, global batch 256
- 1B: lr 3e-6, global batch 512 トレーニングスクリプトはモジュラーな Transformer を使用し、Flash Attention 2 のためにパディングなし入力を可能にしており、これが観測された速度向上に寄与しています。
結論
Ettin Reranker ファミリーは、従来の MiniLM リランカーに対する強力で効率的なドロップイン置換を提供し、全サイズ範囲で精度と速度の向上を実現します。17M と 32M のモデルはレイテンシーが重要なアプリケーションに特に魅力的で、1B のモデルはパラメータを 4 分の 1 に削減しつつ 2.4 倍のスループットで 1.5B の教師と同等の品質を提供します。