EttinX Cross-Encoder: Natural Language Inference (NLI)
This cross encoder performs sequence classification for contradiction/neutral/entailment labels. This has
drop-in compatibility with comparable sentence transformers cross encoders.
To train this model, I added teacher logits to the all-nli dataset
dleemiller/all-nli-distill
from the
dleemiller/ModernCE-large-nli
model. This significantly improves performance above standard training.
This 17m architecture is based on ModernBERT and is an excellent candidate for lightweight
CPU inference
.
Features
High performing:
Achieves
80.47%
and
86.95%
(Micro F1) on MNLI mismatched and SNLI test.
Efficient architecture:
Based on the Ettin-17m encoder design (17M parameters), offering faster inference speeds.
Extended context length:
Processes sequences up to 8192 tokens, great for LLM output evals.
Performance
Model
MNLI Mismatched
SNLI Test
Context Length
# Parameters
dleemiller/ModernCE-large-nli
0.9202
0.9110
8192
395M
dleemiller/ModernCE-base-nli
0.9034
0.9025
8192
149M
cross-encoder/deberta-v3-large
0.9049
0.9220
512
435M
cross-encoder/deberta-v3-base
0.9004
0.9234
512
184M
cross-encoder/nli-distilroberta-base
0.8398
0.8838
512
82M
dleemiller/EttinX-nli-xxs
0.8047
0.8695
8192
17M
Usage
To use EttinX for NLI tasks, you can load the model with the Hugging Face
sentence-transformers
library:
from sentence_transformers import CrossEncoder
# Load EttinX model
model = CrossEncoder("dleemiller/EttinX-nli-xxs")
scores = model.predict([
('A man is eating pizza', 'A man eats something'),
('A black race car starts up in front of a crowd of people.', 'A man is driving down a lonely road.')
])
# Convert scores to labels
label_mapping = ['contradiction', 'entailment', 'neutral']
labels = [label_mapping[score_max] for score_max in scores.argmax(axis=1)]
# ['entailment', 'contradiction']
Training Details
Pretraining
We initialize the `` weights.
Details:
Batch size: 512
Learning rate: 1e-4
Attention Dropout:
attention dropout 0.1
Fine-Tuning
Fine-tuning was performed on the
dleemiller/all-nli-distill
dataset.
Validation Results
The model achieved the following test set micro f1 performance after fine-tuning:
MNLI Unmatched:
0.8047
SNLI:
0.8695
Model Card
Architecture:
Ettin-encoder-17m
Fine-Tuning Data:
dleemiller/all-nli-distill
Thank You
Thanks to the Johns Hopkins team for providing the ModernBERT models, and the Sentence Transformers team for their leadership in transformer encoder models.
Citation
If you use this model in your research, please cite:
@misc{moderncenli2025,
author = {Miller, D. Lee},
title = {EttinX NLI: An NLI cross encoder model},
year = {2025},
publisher = {Hugging Face Hub},
url = {https://huggingface.co/dleemiller/EttinX-nli-xxs},
}
Runs of dleemiller EttinX-nli-xxs on huggingface.co
211
Total runs
-1
24-hour runs
-16
3-day runs
84
7-day runs
-6
30-day runs
More Information About EttinX-nli-xxs huggingface.co Model
EttinX-nli-xxs huggingface.co
EttinX-nli-xxs huggingface.co is an AI model on huggingface.co that provides EttinX-nli-xxs's model effect (), which can be used instantly with this dleemiller EttinX-nli-xxs model. huggingface.co supports a free trial of the EttinX-nli-xxs model, and also provides paid use of the EttinX-nli-xxs. Support call EttinX-nli-xxs model through api, including Node.js, Python, http.
EttinX-nli-xxs huggingface.co is an online trial and call api platform, which integrates EttinX-nli-xxs's modeling effects, including api services, and provides a free online trial of EttinX-nli-xxs, you can try EttinX-nli-xxs online for free by clicking the link below.
dleemiller EttinX-nli-xxs online free url in huggingface.co:
EttinX-nli-xxs is an open source model from GitHub that offers a free installation service, and any user can find EttinX-nli-xxs on GitHub to install. At the same time, huggingface.co provides the effect of EttinX-nli-xxs install, users can directly use EttinX-nli-xxs installed effect in huggingface.co for debugging and trial. It also supports api for free installation.