"Discover, filter, inspect, and reason about MTEB tasks and
Scanned 9/8/2026
Install to Claude Code
npx -y skills add VectorSpaceLab/AREX-Skill --skill tasks-and-benchmarks --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Tasks And Benchmarks?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/vectorspacelab-tasks-and-benchmarks)More formats (shields.io, HTML) on the badges page.
---
name: tasks-and-benchmarks
description: "Discover, filter, inspect, and reason about MTEB tasks and
predefined benchmarks before evaluation."
disable-model-invocation: true
metadata:
disco-role: operating
license: Apache 2.0
---
# MTEB Tasks and Benchmarks
Use this sub-skill when the user needs to choose MTEB tasks or benchmarks, inspect task metadata, filter by language/script/domain/task type/category/modality, understand beta/private/superseded defaults, or compare benchmark task lists.
## Route First
- For running selected tasks or benchmarks with a model, use `../evaluation-workflows/SKILL.md` after selection is complete.
- For shell workflows around `mteb available-tasks` or `mteb available-benchmarks`, use `../cli-and-automation/SKILL.md`.
- For implementing or registering new tasks, use `../contributing-to-mteb/SKILL.md`.
## Core Workflows
- Select named tasks with `mteb.get_tasks(tasks=[...])` or one task with `mteb.get_task(name, languages=..., script=..., eval_splits=..., hf_subsets=...)`; named-task selection ignores broad `domains`, `task_types`, and `categories` filters, so apply `mteb.filter_tasks(...)` to a returned list if both name and metadata filtering are required.
- Discover tasks with `mteb.get_tasks(languages=..., script=..., domains=..., task_types=..., categories=..., modalities=..., eval_splits=...)`; filters are combined as an AND operation, with OR semantics inside each list unless an exclusive flag is documented.
- Select benchmarks with `mteb.get_benchmark("MTEB(eng, v2)")` or enumerate them with `mteb.get_benchmarks(names=..., display_on_leaderboard=...)`; a `Benchmark` is iterable and can be passed as `tasks=` to evaluation.
- Filter benchmark tasks with `mteb.filter_tasks(benchmark, task_types=[...], languages=[...], modalities=[...])`, then pass the filtered list to evaluation.
- Inspect selections safely with `scripts/inspect_task_selection.py`; it imports MTEB and prints task/benchmark summaries without downloading datasets or running models.
## References
- `references/task-benchmark-reference.md` - API patterns for task and benchmark discovery, selection, and benchmark filtering.
- `references/metadata-and-filters.md` - metadata fields, filter semantics, language/script distinctions, and default exclusion behavior.
- `references/troubleshooting.md` - diagnosis for import issues, optional dependencies, private/beta/superseded surprises, task-name typos, and CLI/API misuse.
## Quick Validation
- Confirm package import with `python -c "import mteb; print(mteb.__version__)"`.
- Preview a task filter with `python scripts/inspect_task_selection.py --task-types Retrieval --languages eng --format markdown --limit 20`.
- Preview a benchmark with `python scripts/inspect_task_selection.py --benchmark "MTEB(eng, v2)" --task-types Retrieval --format json --limit 10`.
- If selection looks correct, hand the task objects, task names, or benchmark to `evaluation-workflows` for actual `mteb.evaluate(...)` usage.
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!