26 skills · 141 min
Skills
Skill 10 of 26
Use when the user asks about finding the best, top, or recommended model for a task, wants to know what AI model to use, or wants to compare models by benchmark scores.
3 minutes · 596 words · 11 sections
Install
npx skills add huggingface/skills --skill huggingface-bestnpx skills add huggingface/skills/plugin marketplace add huggingface/skillsThe first command installs just this skill, by the name in its SKILL.md; the second installs the whole repository.
Finds the best models for a task by querying official HF benchmark leaderboards, enriching results with model size data, filtering for what fits on the user’s device, and returning a comparison table with benchmark scores.
Extract from the user’s message:
If device is not mentioned, skip filtering entirely and return the highest-performing models regardless of size. If the task is genuinely ambiguous, ask one clarifying question.
When a device is specified, extract its available memory (unified RAM for Apple Silicon, VRAM for discrete GPUs) and apply:
Examples: 16GB → 8B fp16 / 32B Q4 — 24GB VRAM → 12B fp16 / 48B Q4 — 8GB → 4B fp16 / 16B Q4
Fetch the full list of official HF benchmarks:
curl -s -H "Authorization: Bearer $(cat ~/.cache/huggingface/token)" \
"https://huggingface.co/api/datasets?filter=benchmark:official&limit=500" | jq '[.[] | {id, tags, description}]'Read the returned list and select the datasets most relevant to the user’s task — match on dataset id, tags, and description. Use your judgment; don’t limit yourself to 2-3. Aim for comprehensive coverage: if 5 benchmarks clearly cover the task, use all 5.
For each selected benchmark dataset:
curl -s -H "Authorization: Bearer $(cat ~/.cache/huggingface/token)" \
"https://huggingface.co/api/datasets/<namespace>/<repo>/leaderboard" | jq '[.[:15] | .[] | {rank, modelId, value, verified}]'Collect model IDs and scores across all benchmarks. If a leaderboard returns an error (404, 401, etc.), skip it and note it in the output.
For the top 10-15 candidate model IDs, get model infos.
# REST API
curl -s -H "Authorization: Bearer $(cat ~/.cache/huggingface/token)" \
"https://huggingface.co/api/models/org/model1" | jq '{safetensors, tags, cardData}'
# CLI (hf-cli)
hf models info org/model1 --json | jq '{safetensors, tags, cardData}'Extract from each response:
safetensors.total → convert to B (e.g., 7_241_748_480 → “7.2B”)license:apache-2.0, license:mit, etc.)safetensors is absent, parse size from the model name (look for “7b”, “8b”, “13b”, “70b”, “72b”, etc.)If a device was specified:
If no device was mentioned: skip all size filtering — just rank by benchmark score.
Then: rank by benchmark score (descending), keep top 5-8 models.
Include proprietary models (GPT-4, Claude, Gemini) if they appear on leaderboards, but flag them as “API only / not self-hostable”. If the user explicitly asked for local/open models only, exclude them.
| # | Model | Params | [Benchmark 1] | [Benchmark 2] | License | On device |
|---|-------|--------|--------------|--------------|---------|-----------|
| ⭐1 | [org/name](https://huggingface.co/org/name) | 7B | 85.2% | — | Apache 2.0 | Yes (fp16) |
| 2 | [org/name](https://huggingface.co/org/name) | 13B | 83.1% | 71.5% | MIT | Q4 only |
| 3 | [org/name](https://huggingface.co/org/name) | 70B | 90.0% | 81.0% | Llama | Too large |https://huggingface.co/<model_id>— for benchmarks where the model wasn’t evaluatedYes (fp16), Q4 only, Too large, API onlyAfter presenting the table, ask the user: “Would you like to run [top recommended model]?”
If they say yes, ask whether they’d prefer to:
hub_repo_search with filters=["<task>"] sorted by trendingScorehub_repo_search for popular models tagged with the task, note that results are by popularity rather than benchmark scoreUse when the user asks about finding the best, top, or recommended model for a task, wants to know what AI model to use, or wants to compare models by benchmark scores. Triggers on: "best model for X", "what model should I use for", "top models for [task]", "which model runs on my laptop/machine/device", "recommend a model for", "what LLM should I use for", "compare models for", "what's state of the art for", or any question about choosing an AI model for a specific use case. Always use this skill when the user wants model recommendations or comparisons, even if they don't explicitly mention HuggingFace or benchmarks.
The verbatim description from this skill’s front matter — the string an agent matches on to decide whether to load it.
main, last pushed 24 September 2026.SKILL.md, not by matching a directory convention. 2 distinct layouts observed: hf-mcp/skills/*/SKILL.md, skills/*/SKILL.md.h1 and no skipped levels:.claude-plugin/marketplace.json by Hugging Face, declaring 1 plugin. It is read for editorial metadata only — never as the skill index, which is always the repository tree./huggingface/skills.md.md