mteb-loco-jina-eval
Nomic Embed: Training a Reproducible Long Context Text Embedder — Nussbaum et al. (2024) (arXiv:2402.01613, 2024)
What this evaluates
Evaluates text embedding models on short and long-context retrieval, clustering, and semantic similarity tasks to measure representation quality across varying sequence lengths.
Datasets
- MTEB — total ?; splits: test (-1)
- Jina Long Context Benchmark — total ?; splits: test (-1)
- LoCo Benchmark — total ?; splits: test (-1)
Metrics
NDCG@10 (primary) — range: [0, 1]
- Normalized Discounted Cumulative Gain at rank 10, measuring retrieval effectiveness by weighting relevant documents by their graded relevance position.
V-score — range: [0, 1]
- Clustering performance metric reported for the Jina Long Context Benchmark, typically based on adjusted mutual information or similar clustering quality measures.
Spearman's Tau — range: [-1, 1]
- Rank correlation coefficient used to evaluate long-context retrieval tasks (Tau Scr., Tau Gov., Tau QMS.) and overall performance averages.
Input / output format
Input: Text strings (queries and documents) or single texts for clustering/STS tasks, with task-specific prefixes added (e.g., 'search_query', 'clustering').
Output: L2-normalized embedding vectors (except for Classification tasks where raw embeddings are used without normalization).
Scoring recipe
def compute_metrics(embeddings, labels, task_type):
if task_type == 'retrieval':
scores = cosine_similarity(query_emb, doc_emb)
return ndcg_at_k(scores, labels, k=10)
elif task_type == 'clustering':
return v_score(cluster_labels, true_labels)
elif task_type == 'long_context':
return spearman_tau(predicted_ranks, true_ranks)
elif task_type == 'classification':
return accuracy(predicted_classes, true_labels)
return 0
Common pitfalls
- Truncating all texts to 512 tokens for MTEB evaluation regardless of model context length.
- Adding task-specific prefixes (e.g., 'search_query', 'clustering') to inputs, which varies by task type.
- Skipping L2 normalization only for Classification tasks, while applying it to all other tasks.
- Using Dynamic NTK Interpolation (alpha=2) for sequences exceeding the 2048 training length.
Evidence (verbatim from paper)
Similar to Günther et al. ([2024]), we report the V-scores and NDCG@10 for the clustering and retrieval datasets respectively. We evaluate all models at sequence length 128, 512, and 8191.
Citation
@misc{nussbaum2024nomicembed,
title={Nomic Embed: Training a Reproducible Long Context Text Embedder},
author={Nussbaum et al. (2024)},
year={2024},
note={arXiv:2402.01613}
}
1---2name: mteb-loco-jina-eval3description: Evaluates text embedding models on short and long-context retrieval, clustering, and semantic similarity tasks to measure representation quality across varying sequence lengths. Use when the user wants to benchmark on MTEB, Jina Long Context Benchmark, LoCo Benchmark, or asks about evaluating this task. Reports NDCG@10.4---56# mteb-loco-jina-eval78> Nomic Embed: Training a Reproducible Long Context Text Embedder — Nussbaum et al. (2024) (arXiv:2402.01613, 2024)910## What this evaluates1112Evaluates text embedding models on short and long-context retrieval, clustering, and semantic similarity tasks to measure representation quality across varying sequence lengths.1314## Datasets1516- **MTEB** — total ?; splits: test (-1)17- **Jina Long Context Benchmark** — total ?; splits: test (-1)18- **LoCo Benchmark** — total ?; splits: test (-1)1920## Metrics2122- `NDCG@10` **(primary)** — range: [0, 1]23 - Normalized Discounted Cumulative Gain at rank 10, measuring retrieval effectiveness by weighting relevant documents by their graded relevance position.24- `V-score` — range: [0, 1]25 - Clustering performance metric reported for the Jina Long Context Benchmark, typically based on adjusted mutual information or similar clustering quality measures.26- `Spearman's Tau` — range: [-1, 1]27 - Rank correlation coefficient used to evaluate long-context retrieval tasks (Tau Scr., Tau Gov., Tau QMS.) and overall performance averages.2829## Input / output format3031**Input**: Text strings (queries and documents) or single texts for clustering/STS tasks, with task-specific prefixes added (e.g., 'search_query', 'clustering').3233**Output**: L2-normalized embedding vectors (except for Classification tasks where raw embeddings are used without normalization).3435## Scoring recipe3637```python38def compute_metrics(embeddings, labels, task_type):39 if task_type == 'retrieval':40 scores = cosine_similarity(query_emb, doc_emb)41 return ndcg_at_k(scores, labels, k=10)42 elif task_type == 'clustering':43 return v_score(cluster_labels, true_labels)44 elif task_type == 'long_context':45 return spearman_tau(predicted_ranks, true_ranks)46 elif task_type == 'classification':47 return accuracy(predicted_classes, true_labels)48 return 049```5051## Common pitfalls5253- Truncating all texts to 512 tokens for MTEB evaluation regardless of model context length.54- Adding task-specific prefixes (e.g., 'search_query', 'clustering') to inputs, which varies by task type.55- Skipping L2 normalization only for Classification tasks, while applying it to all other tasks.56- Using Dynamic NTK Interpolation (alpha=2) for sequences exceeding the 2048 training length.5758## Evidence (verbatim from paper)5960> Similar to Günther et al. ([2024]), we report the V-scores and NDCG@10 for the clustering and retrieval datasets respectively. We evaluate all models at sequence length 128, 512, and 8191.6162## Citation6364```bibtex65@misc{nussbaum2024nomicembed,66 title={Nomic Embed: Training a Reproducible Long Context Text Embedder},67 author={Nussbaum et al. (2024)},68 year={2024},69 note={arXiv:2402.01613}70}71```7273- arXiv: 2402.01613