Hermes SkillEval
面试版项目总览:一个面向 Agent Skill 路由可靠性的离线评测与发布门禁项目,重点是可复验证据、负样本风险和保守上线判断。
30 秒 pitch
我做了一个 Hermes-style Agent Skill 路由评测系统。它把 Markdown 技能库、带 gold/negative 标签的任务集、多个 router、指标报告和 release gate 串起来,回答一个工程问题:当 Agent 有很多相似技能时,路由器能不能选对、能不能不选诱导性负样本;当微调候选看起来不错但盲测有退化时,系统能不能拒绝默认上线。
当前证据读法
轻量 pytest 验证覆盖 parser、loader、router、metrics、reports、CLI 和 release gate。
自建 Hermes-style benchmark:80 个任务、45 个技能,并显式标注 negative skills。
Phase 16 blind validation 发现 finetuned-embedding 有 ranking 和 negative-skill 回归。
Phase 17 选择继续使用 baseline-minilm,没有把候选微调路由器设为默认。
Phase 18 release-check 复现发布决策并记录关键 artifact hashes。
架构说明
Skill Library
SKILL.md parser 生成可评测的 skill index。
Task Packs
Benchmark tasks 标注 gold skills 和 negative skills。
Routers
keyword、hybrid、embedding、gated、cross-encoder 共用评测接口。
Metrics
Recall@K、MRR、NDCG、Negative Hit Rate 和 JSONL traces。
Blind Gate
Phase 16 在未见任务上比较 baseline 和 candidate。
Release Pack
Phase 17/18 写出默认路由决策和可复现 manifest。
为什么不只看 Recall@K
Agent 路由不是普通检索列表展示。只要错误技能被接受,后续执行就可能走向错误工具、错误流程或错误上下文。Negative Hit Rate 让评测同时回答两个问题:有没有召回正确技能,以及有没有把诱导性负样本也带进执行候选。
Phase 14 为什么不是最终胜利
Phase 14 证明了 fine-tuned embedding router 有可追溯训练和评测路径,但它还只是候选模型。最终能不能成为默认路由器,要看 held-out 和 blind validation 是否能守住 ranking 与 negative-skill 风险。
Phase 16/17 的工程判断
Phase 16 的盲测结果很适合面试展开:Recall@5 持平,但 MRR、NDCG@5、Negative Hit Rate 和 Negative Accepted Rate 变差。Phase 17 没有把这个结果包装成成功,而是明确记录 KEEP_BASELINE 和 approved_for_default: false。
Phase 18 的发布证据
Phase 18 让 release gate 不停留在一次本地判断。release-check 重新运行 selector 和 public artifact guard,输出 manifest 与 SHA-256,让 README、release handoff、Phase 17 decision 和 Phase 18 manifest 可以互相对上。
证据入口
不要过度声明
这个项目应该表述为 self-built Hermes-style skill-routing benchmark 和 release-gate harness。It is not a standard public benchmark, not a SOTA claim, and not production readiness. 最强的求职叙事是:我不仅会做指标提升,也会在盲测发现回归时拒绝上线,并把这个拒绝做成可复验的发布证据。