nli MiniLM2 L6 H768

Providercross-encoder
Categorynatural-language-inference
Licenseapache-2.0
Downloads432
Stars0

Overview

The nli MiniLM2 L6 H768 is a lightweight cross-encoder optimized for Natural Language Inference (NLI) tasks. Unlike bi-encoders that generate separate embeddings, this model processes sentence pairs simultaneously to determine logical entailment, contradiction, or neutrality. Its architecture balances efficiency and precision, making it an ideal choice for developers building semantic similarity engines, automated fact-checking tools, or high-accuracy rerankers for RAG pipelines. Because it is based on the MiniLM framework, it offers significantly lower latency and memory overhead than full-scale BERT models while maintaining competitive performance on inference benchmarks. Integration is straightforward for those using the Sentence-Transformers library or similar Hugging Face-compatible frameworks.

Highlights

  • High-precision cross-encoding for logical relationship detection
  • Low-latency inference suitable for real-time production environments
  • Optimized for RAG reranking and semantic validation
  • Apache-2.0 license ensures flexible commercial deployment
  • Lightweight footprint reduces infrastructure overhead

Usage

Install
# Install Hugging Face transformers
pip install transformers torch
SDK Usage
# Load model with transformers
from transformers import AutoModel, AutoTokenizer

model = AutoModel.from_pretrained("cross-encoder/nli-MiniLM2-L6-H768")
tokenizer = AutoTokenizer.from_pretrained("cross-encoder/nli-MiniLM2-L6-H768")

Hugging Face Download

We recommend downloading the model via the Hugging Face CLI or Hub SDK.

Guidance:Before downloading, install huggingface_hub with:

Guidance
pip install -U huggingface_hub

CLI Download

Download the full repository

Download the full repository
huggingface-cli download cross-encoder/nli-MiniLM2-L6-H768

Download a single file to a local folder (e.g. config.json into ./dir)

Download a single file to a local folder (e.g. config.json into ./dir)
huggingface-cli download cross-encoder/nli-MiniLM2-L6-H768 config.json --local-dir ./dir

See the official docs for more CLI options

SDK Download

SDK Download
# 模型下载
from huggingface_hub import snapshot_download
model_dir = snapshot_download('cross-encoder/nli-MiniLM2-L6-H768')

Git Download

Make sure git-lfs is installed first

Git Download
git lfs install
git clone https://huggingface.co/cross-encoder/nli-MiniLM2-L6-H768

To skip LFS large-file downloads, use:

Skip LFS
GIT_LFS_SKIP_SMUDGE=1 git clone https://huggingface.co/cross-encoder/nli-MiniLM2-L6-H768

Model files are hosted on the Hugging Face Hub — download directly via HF CLI / SDK / Git, not through this site.

PyTorch / Transformers Usage

Install Transformers

Install Transformers
pip install -U transformers torch

Load the model and run inference

Load the model and run inference
from transformers import AutoModelForCausalLM, AutoTokenizer

model = AutoModelForCausalLM.from_pretrained('cross-encoder/nli-MiniLM2-L6-H768')
tokenizer = AutoTokenizer.from_pretrained('cross-encoder/nli-MiniLM2-L6-H768')

Model Download

We recommend downloading the model via the ModelScope CLI or SDK.

Guidance:Before downloading, install ModelScope with:

Guidance
pip install modelscope

CLI Download

Download the full repository

Download the full repository
modelscope download --model cross-encoder/nli-MiniLM2-L6-H768

Download a single file to a local folder (e.g. README.md into ./dir)

Download a single file to a local folder (e.g. README.md into ./dir)
modelscope download --model cross-encoder/nli-MiniLM2-L6-H768 README.md --local_dir ./dir

See the docs for more CLI options

SDK Download

SDK Download
# 模型下载
from modelscope import snapshot_download
model_dir = snapshot_download('cross-encoder/nli-MiniLM2-L6-H768')

Git Download

Make sure git-lfs is installed first

Git Download
git lfs install
git clone https://www.modelscope.cn/cross-encoder/nli-MiniLM2-L6-H768.git

To skip LFS large-file downloads, use:

Skip LFS
GIT_LFS_SKIP_SMUDGE=1 git clone https://www.modelscope.cn/cross-encoder/nli-MiniLM2-L6-H768.git

ModelScope 模型页直接下载模型文件;无需将模型文件放在本站服务器。

Notebook Quickstart

Install the ModelScope library

Install the ModelScope library
pip install "modelscope[audio,cv,nlp,multi-modal,science]" -f https://modelscope.oss-cn-beijing.aliyuncs.com/releases/repo.html

Load the model and run inference

Load the model and run inference
from modelscope.pipelines import pipeline
from modelscope.utils.constant import Tasks

p = pipeline('text-generation', 'cross-encoder/nli-MiniLM2-L6-H768')

Full Documentation

来源: HuggingFace

---
language: en
pipeline_tag: zero-shot-classification
tags:

  • transformers

datasets:
  • nyu-mll/multi_nli

  • stanfordnlp/snli

metrics:
  • accuracy

license: apache-2.0
base_model:
  • nreimers/MiniLMv2-L6-H768-distilled-from-RoBERTa-Large

library_name: sentence-transformers
---

Cross-Encoder for Natural Language Inference

This model was trained using SentenceTransformers Cross-Encoder class.

Training Data

The model was trained on the SNLI and MultiNLI datasets. For a given sentence pair, it will output three scores corresponding to the labels: contradiction, entailment, neutral.

Performance

For evaluation results, see SBERT.net - Pretrained Cross-Encoder.

Usage

Pre-trained models can be used like this:

python
from sentence_transformers import CrossEncoder
model = CrossEncoder('cross-encoder/nli-MiniLM2-L6-H768')
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)]

Usage with Transformers AutoModel

You can use the model also directly with Transformers library (without SentenceTransformers library):
python
from transformers import AutoTokenizer, AutoModelForSequenceClassification
import torch

model = AutoModelForSequenceClassification.from_pretrained('cross-encoder/nli-MiniLM2-L6-H768')
tokenizer = AutoTokenizer.from_pretrained('cross-encoder/nli-MiniLM2-L6-H768')

features = tokenizer(['A man is eating pizza', 'A black race car starts up in front of a crowd of people.'], ['A man eats something', 'A man is driving down a lonely road.'], padding=True, truncation=True, return_tensors="pt")

model.eval()
with torch.no_grad():
scores = model(**features).logits
label_mapping = ['contradiction', 'entailment', 'neutral']
labels = [label_mapping[score_max] for score_max in scores.argmax(dim=1)]
print(labels)

Zero-Shot Classification

This model can also be used for zero-shot-classification:
python
from transformers import pipeline

classifier = pipeline("zero-shot-classification", model='cross-encoder/nli-MiniLM2-L6-H768')

sent = "Apple just announced the newest iPhone X"
candidate_labels = ["technology", "sports", "politics"]
res = classifier(sent, candidate_labels)
print(res)

Join our Telegram