Kihagyás

SkillsBench — benchflow-ai/skillsbench + Aparna Dhinakaran cikk összekapcsolása

Források: - GitHub repo: https://github.com/benchflow-ai/skillsbench (Apache 2.0) - Dhinakaran cikk: https://x.com/aparnadhinak/status/2074569427346174039 - HF dataset: https://huggingface.co/datasets/benchflow/skillsbench - Weboldal: https://www.skillsbench.ai - Dátum: 2026-07-07 (cikk) / 2026-07-17 (feldolgozás)

Mi a SkillsBench?

A Dhinakaran-cikk központi empirikus állítása az volt, hogy a 48%-a a publikált skill-eknek az első verzióban negatív eval delta-t produkál — vagyis rontja a modell teljesítményét. A cikk ezt "wake-up call"-nak szánta, de nem adott egy konkrét, megismételhető mérési keretrendszert. A benchflow-ai/skillsbench pont ezt a hiányzó keretrendszert pótolja: "the first benchmark for evaluating how well AI agents use skills".

A benchmark: - 101 task jelenleg (87 runnable a tasks/, 14 a tasks-extra/-ban, a tasks-extra hitelesítés-igényes feladatokat tartalmazza) - Célzott modellek: GPT-5.5, Claude Opus 4.8, Gemini 3.1 Pro, GLM 5.1, Kimi K2.6, MiniMax M3 (a saját default modellünk) - SOTA performance cél: <50% a 2+ skill kompozíciót igénylő feladatokon - 8 kategória: office-white-collar, software-engineering, science-research, stb. - gym-style benchmarking: ugyanaz a feladat többször futtatva, with-skill vs. no-skill összehasonlítással

Hogyan kapcsolódik a Dhinakaran-cikk 7 alapelvéhez?

A SkillsBench Task Quality Rubric és a "What Makes a Good Skill" szekció a Dhinakaran-cikk 7 alapelvének implementálható, mérhető változata:

Dhinakaran alapelv SkillsBench megfelelő
1. Behavior/operation matrix A task.md frontmatterben task_type + modality + interface + skill_type YAML listák (taxonomy.yaml validálja). A skill SKILL.md-jében a "Trigger conditions" implicit a description frontmatterben.
2. Zero decision space A task prompt explicit szabálya: "Do not mention skill names or tell the agent which skills to use." A skill kiválasztása az agent dolga, a feladat irreleváns a skill-választáshoz.
3. Eval-driven iteration Minden tasknak kötelező az oracle (solve.sh) reward 1.0 ellenőrzése ÉS agent run with/without skills összehasonlítás. A PR csak akkor nyitható meg, ha mindkét futás dokumentálva van.
4. Iteratively designed and rigorously tested A PR checklist 5 lépéses: bench tasks check + oracle pass + agent with-skills + agent no-skills + PR description with pass rates. A "Look at trajectories, not just pass/fail" explicit elvárás.
5. Measures context budget A skill SKILL.md references/ és scripts/ alkönyvtárakra bontása — a hosszú részletek elkülönítve, a SKILL.md tömör marad. Ez a kontextuális költség-becslés gyakorlati megfelelője.
6. Selectively loaded A --skill-mode with-skill és --skill-mode no-skill opciók a benchmark CLI-ben. A skill-ek NEM a Docker image-be vannak bake-elve, hanem runtime injektálódnak — ez a "selective load" alapja.
7. Tested across model families A célzott modell-lista 6 különböző családból: OpenAI, Anthropic, Google, ZhipuAI, Moonshot, MiniMax. Minden task minden modellen fut, és a delta a "skill impact" mérőszáma.

A Task Quality Rubric 5 szempontja (Authenticity, Skill quality, Verification, Instructions, Environment) a Dhinakaran-cikk "engineering, not magic" üzenetének operacionalizálása. A "What Makes a Good Skill" szekció 5 szabálya (Explain non-obvious workflow knowledge, Reuse scripts and references, Stay focused, Avoid task-specific filenames, Avoid task-specific answers) a skill-írás gyakorlati kódexe.

A két forrás együtt tehát: a cikk adja a filozófiát és a 48%-os adatot, a SkillsBench adja a mérési és iterációs eszköztárat.

A SkillsBench task csomag struktúrája

tasks/<task-id>/
  task.md            # YAML frontmatter + emberi prompt
  environment/
    Dockerfile       # sandbox, pinned dependencies
    <input fájlok>   # fagyasztott input adatok
    skills/
      <skill-name>/
        SKILL.md     # skill definíció
        references/  # hosszú részletek
        scripts/     # újrahasználható kód
  oracle/
    solve.sh         # ember által írt referencia megoldás
  verifier/
    test.sh          # bash wrapper
    test_outputs.py  # pytest, 4-10 fókuszált teszt

A reward egy skalár: 1.0 ha minden teszt átment, 0.0 ha bármelyik fail-elt. A /logs/verifier/reward.txt-be íródik.

Mit tanulhat a Hermes ebből a két forrásból?

A Hermes saját skill-írási gyakorlatában a Dhinakaran-cikk és a SkillsBench együttesen 5 konkrét fejlesztési területet azonosít:

1. A skill-ek jelenleg nem mérnek saját teljesítményt (Dhinakaran #3)

A mappa 30+ skillje jelenleg manuális reflexió alapján fejlődik, nincs eval-driven iteration. A javaslat:

  • Golden dataset építése: 10-20 kanonikus felhasználói kérés, amelyekhez az "elvárt viselkedés" + "nem elvárt viselkedés" definíció tartozik (hasonló a references/eval-golden-dataset.json-hoz, de a skill-ekre nem a summary-kra)
  • Eval script (eval_skills.py ⚠️ (a tervezett eval-keretrendszer nem készült el; a szerepét a vette át)): minden skill-t minden golden kérdéssel futtat, és rögzíti a delta-t baseline (no-skill) vs. with-skill között — pont a SkillsBench --skill-mode mintára
  • PR workflow: a skill-ek módosítása után a eval_skills.py futtatása kötelező, és a delta-t a changelog bejegyzésben dokumentálni kell

2. A skill-ek 0%-a van multi-model tesztelve (Dhinakaran #7)

A references/hermes-update-downgrade.md rögzíti, hogy 8 modell van a konfigurációban (gemma4:26b-mlx, qwen3.5:27b, glm-5.2:cloud, kimi-k2.7-code:cloud, minimax-m3:cloud, deepseek-v4-flash:cloud, deepseek-v4-pro:cloud, x/flux2-klein:4b), de egyetlen skill sincs mindegyiken tesztelve. A javaslat:

  • Mini-benchmark: 5-6 reprezentatív skill (podcast-processing, hermes-agent-skill-authoring, requesting-code-review, simplify-code, intelligence-gathering) futtatása mind a 8 modellen, a golden dataset-en
  • A delták dokumentálása egy SKILL_MODEL_COMPATIBILITY.md ⚠️ (a fájl azóta megszűnt; tartalma a mentésben megvan) fájlban
  • Model-specifikus skill-verziók opcionális bevezetése, ha egy skill csak bizonyos modelleken teljesít jól

3. A skill-ek "Zero decision space" elve hiányos (Dhinakaran #2)

A SKILL.md-k jellemzően "Use when X" triggerrel indulnak, de a "Don't use for: Y" counter-trigger opcionális és ritkán kitöltött. A javaslat:

  • Minden SKILL.md frontmatterben kötelező a do_not_use_for: mező (a jelenlegi description mellé)
  • A SkillsBench "Do not mention skill names" elvének inverz alkalmazása: a skill explicit megmondja, mikor NEM alkalmazható, hogy az LLM ne hozzon rossz döntést a "should I apply this?" kérdésben

4. A skill-ek kontextus-költsége nem mért (Dhinakaran #5)

A skilljei a skill_view loader-en keresztül töltődnek, de a tényleges token-költségük nem ismert. A javaslat:

  • Token-költség mérése: minden SKILL.md-t a wc -c + 4 char/token közelítéssel megmérni, és a fájl elejére rakni egy ## Token cost: ~XXX tokens sort
  • A nagy skill-ek (pl. podcast-processing 68 KB → ~17K token) különösen problémásak: minden alkalommal betöltődnek, amikor a user podcastot küld, és a 17K token felemészti a kontextus-ablakot
  • A megoldás: a SKILL.md tömör maradjon (max 5-10K token), a részletek references/*.md fájlokban legyenek, amiket a skill_view második hívással lehet betölteni (ezt a frissített 1.7.0 verziójú podcast-processing már megoldja)

5. A skill-írási konvenciók nincsenek egységesítve (SkillsBench "What Makes a Good Skill")

A hermes-agent-skill-authoring skill leírja a konvenciókat (frontmatter, méretlimit, peer-matched struktúra), de a 30+ skill közül sok nem tartja be a 8-15K-os peer-matched méretet. A javaslat:

  • CI lint: script, ami minden SKILL.md-t ellenőriz: (a) méret < 100K, (b) description ≤ 1024 char, (c) frontmatter valid YAML, (d) name/description/version/author/license/metadata.hermes.{tags, related_skills} mezők megvannak
  • A lint futtatása a skill-frissítés után, és a references/eval-pitfalls.md-hez hasonlóan a kimenet a changelog-ba kerül
  • Reference skill a hermes-agent-skill-authoring 1.1.0 → 1.2.0 frissítése, ami a SkillsBench 5 szabályát beépíti a saját authoring-elvekbe

Konkrét next step

A javasolt prioritási sorrend (a saját rendszer értéke és a fejlesztési költség alapján):

  1. Azonnal (1 session): A SKILL_MODEL_COMPATIBILITY.md ⚠️ (a fájl azóta megszűnt; tartalma a mentésben megvan) fájl létrehozása, az 5-6 reprezentatív skill gyors átnézésével (nem teljes eval, csak manuális "ez a skill melyik modelleken fut jól" reflexió). Ennek előkészítése: a mostani beszélgetés eredménye.
  2. Következő session (1-2 óra): A eval_skills.py ⚠️ (a tervezett eval-keretrendszer nem készült el; a szerepét a vette át) v1 — minimális eval-keretrendszer 5-10 golden question-nel, ami a skill-ek delta-ját méri.
  3. Skill-authoring frissítés (30 perc): A hermes-agent-skill-authoring 1.2.0-ás verziója, ami a SkillsBench 5 szabályát + a Dhinakaran-cikk 7 alapelvét beépíti a saját authoring-elvekbe.
  4. CI lint (30 perc): A script + hook a session-ökbe.

Az 1. lépés nem igényel kódolást, csak a mostani beszélgetés tanulságainak dokumentálását. Ha akarod, most megcsinálom, és a SKILL_MODEL_COMPATIBILITY.md ⚠️ (a fájl azóta megszűnt; tartalma a mentésben megvan) fájl mellé egy új references/skill-authoring-best-practices.md is kerül a Dhinakaran-cikk + SkillsBench alapján.

Kulcsszavak

skill design, eval-driven iteration, behavior matrix, zero decision space, context budget, model-agnostic skill, multi-model testing, skill benchmark, SkillsBench, benchflow-ai, BenchFlow SDK, task.md package, with-skill vs no-skill, gym-style benchmarking, Hermes skill authoring, 48% negative eval delta, Aparna Dhinakaran, Arize AI, Apache 2.0.

Forrás / Wiki raw

  • Forrás: (a cikk önálló összefoglalója)
  • Skill authoring frissítés terv: (1.2.0 upgrade a Dhinakaran + SkillsBench alapelvekkel)
Vissza a tetejére