mteb
Massive Text Embedding Benchmark
What it is and what it does
MTEB is a benchmarking framework for evaluating text and multimodal embeddings against a collection of standardized tasks. It provides both a Python API and a command-line interface to run models through tasks like text classification, semantic similarity, and information retrieval, collecting results that feed into a public leaderboard. The package wraps embedding models (from sentence_transformers, transformers, or custom implementations) and executes them against predefined task datasets, scoring performance using domain-specific metrics.
The framework is designed for researchers and practitioners who need to compare embedding quality across models or track performance improvements. It handles model loading, task selection, evaluation execution, and result aggregation. Dependencies include datasets for task data, numpy and scipy for numerical computation, torch and transformers for deep learning, and scikit-learn for metrics—a typical modern ML stack. The package is actively maintained and in production use.
Use it for:
- Benchmark a new sentence transformer model against standard tasks to compare its quality to published results.
- Run MTEB tasks via CLI to evaluate multiple embedding models and generate results for submission to the leaderboard.
- Select specific task subsets (e.g., only classification or retrieval) to evaluate embeddings on domain-relevant problems.
- Load and analyze existing model results from the benchmark to understand performance patterns across tasks.
- Integrate MTEB evaluation into a model training pipeline to measure embedding quality during development.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
MTEB evaluates text and multimodal embeddings against a suite of standardized tasks and benchmarks, providing scores and rankings for embedding models and retrieval systems.
Yes. MTEB is actively maintained, has no known vulnerabilities, uses a permissive license, and offers low-friction installation. It is the standard tool for evaluating text embeddings and retrieval systems in the community. Install it if you need to benchmark embeddings, compare models, or contribute results to the public leaderboard.
Install
mteb on PyPI
pip
pip install mtebuv
uv add mtebpoetry
poetry add mtebInstalling mteb
Before you install
Low friction installation with a pure-Python wheel. Active maintenance with recent release. Depends on 14 runtime packages including torch, transformers, and sentence_transformers—a substantial but standard ML stack.
License in practice
Apache-2.0 permissive license allows use in commercial and proprietary projects with minimal restrictions.
Quickstart
pip install mteb
import mteb
from sentence_transformers import SentenceTransformer
model = mteb.get_model("sentence-transformers/all-MiniLM-L6-v2")
tasks = mteb.get_tasks(tasks=["Banking77Classification.v2"])
results = mteb.evaluate(model, tasks=tasks)
Requires Python 3.10 or later (supports up to 3.14). torch and transformers must be installed; GPU support depends on torch configuration.
Verify before relying
- Whether all 14 runtime dependencies are required for basic evaluation or if subsets can be used for specific tasks.
- Whether GPU support is automatic or requires separate configuration beyond torch installation.
- Performance characteristics and typical runtime for evaluating a single model across the full benchmark suite.
Package facts
| License | Apache-2.0 (permissive) |
| Python support | supports the current Python release (<3.15,>=3.10) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 14 — datasets, numpy, requests, scikit-learn, scipy, sentence_transformers, transformers, typing-extensions, torch, tqdm, rich, pytrec-eval-terrier, pydantic, polars |
| Maintenance | actively maintained — 0 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 3,180,141/month — #2,710 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: mteb-2.19.1-py3-none-any.whl
Keywords: deep learning, text embeddings, embeddings, multimodal, benchmark, retrieval, information retrieval
Tags
More Artificial Intelligence packages
LiteLLM provides a unified Python interface to…
permissive · top 100 on PyPI
huggingface-hubClient library and CLI tool for downloading,…
permissive · top 100 on PyPI
langchainLangChain provides a framework for building…
permissive · top 1,000 on PyPI
hf-xethf-xet provides chunk-based deduplication and…
permissive · top 1,000 on PyPI
tokenizersTokenizers converts raw text into token…
permissive · top 1,000 on PyPI
transformersTransformers provides a unified framework for…
permissive · top 1,000 on PyPI
fastembedFastEmbed generates vector embeddings for text,…
permissive · top 5,000 on PyPI
sentence-transformersComputes embeddings and reranking scores for…
permissive · top 1,000 on PyPI
FlagEmbeddingFlagEmbedding provides embedding and reranking…
unclear · top 15,000 on PyPI
InstructorEmbeddingInstructorEmbedding generates task-specific…
permissive · top 15,000 on PyPI
unitxtUnitxt provides a unified framework for…
permissive · top 15,000 on PyPI
swebenchSWE-bench is a benchmark framework for…
permissive · top 1,000 on PyPI
ogbOGB provides standardized benchmark datasets,…
permissive · top 15,000 on PyPI
terminal-benchTerminal-Bench provides a benchmark suite and…
unclear · top 15,000 on PyPI
lm-evalUnified framework for evaluating generative…
permissive · top 5,000 on PyPI
model2vecModel2Vec converts sentence transformers into…
permissive · top 5,000 on PyPI