关于 eval-recipes-runner
eval-recipes-runner 是用于运行 Microsoft eval-recipes 基准测试的技能,面向需要验证 amplihack 分支或 PR 效果的人。它可按任务运行测试,并将结果与基线 Agent 对比。
主要功能
- 01测试指定 amplihack 分支
- 02与基线 Agent 对比
- 03按任务运行基准测试
- 04比较变更前后分数
- 05生成评测结果报告
适用场景
- 01验证 PR 是否改善评测分数
- 02测试 LinkedIn 或邮件起草任务
- 03比较分支与基线表现
- 04对多个任务运行测试套件
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ rysweet/ amplihack --skill eval-recipes-runner安装后在 Claude Code 中输入/eval-recipes-runner确认已加载。
详细介绍
eval-recipes Runner 技能
用途
运行 Microsoft 的 eval-recipes 基准测试,验证 amplihack 的改进是否优于基线 Agent。
适用场景
- 用户要求“使用 eval-recipes 测试”
- 用户说“运行评测”或“对这项更改进行基准测试”
- 用户希望验证改进是否优于 codex/claude_code
- 测试 PR 分支,以证明其能提高评分
功能
我可以运行 eval-recipes 基准测试,以便:
- 测试特定的 amplihack 分支
- 与基线 Agent(codex、claude_code)进行比较
- 运行特定任务(linkedin_drafting、email_drafting 等)
- 比较 PR 更改前后的评分
- 生成包含评分提升情况的报告
工作原理
设置(仅需一次)
# Clone eval-recipes from Microsoft
git clone https://github.com/microsoft/eval-recipes.git ~/eval-recipes
cd ~/eval-recipes
# Copy our agent configs
cp -r $(pwd)/.claude/agents/eval-recipes/* data/agents/
# Install dependencies
uv sync
运行基准测试
测试特定分支:
# Update install.dockerfile to use specific branch
# Then run benchmark
cd ~/eval-recipes
uv run eval_recipes/main.py --agent amplihack --task linkedin_drafting --trials 3
比较更改前后:
# Test baseline (main)
uv run eval_recipes/main.py --agent amplihack --task linkedin_drafting
# Test PR branch (edit install.dockerfile to checkout PR branch)
uv run eval_recipes/main.py --agent amplihack_pr1443 --task linkedin_drafting
# Compare scores
可用任务
eval-recipes 中的常见任务:
linkedin_drafting- 创建用于撰写 LinkedIn 帖子的工具(PR #1443 之前的评分为 6.5/100)email_drafting- 创建用于撰写电子邮件的 CLI 工具(之前的评分为 26/100)arxiv_paper_summarizer- 研究工具github_docs_extractor- 文档工具- 还有更多任务,位于
~/eval-recipes/data/tasks/
典型工作流
当用户说“使用 eval-recipes 测试这项更改”时:
- 确定要测试的分支/PR
- 更新 Agent 配置,使其使用该分支:
# In .claude/agents/eval-recipes/amplihack/install.dockerfile RUN git clone https://github.com/rysweet/...git /tmp/amplihack && \ cd /tmp/amplihack && \ git checkout BRANCH_NAME && \ pip install -e . - 复制到 eval-recipes:
cp -r .claude/agents/eval-recipes/* ~/eval-recipes/data/agents/ - 运行基准测试:
cd ~/eval-recipes uv run eval_recipes/main.py --agent amplihack --task TASK_NAME --trials 3 - 报告评分并与基线比较
预期评分
基线(main 分支):
- 总体:40.6/100
- LinkedIn:6.5/100
- 电子邮件:26/100
使用 PR #1443(任务分类)后:
- 预期:55-60/100(提升 15-20 分)
- LinkedIn:30-40/100(创建实际工具)
- 电子邮件:45/100(执行稳定)
使用示例
用户说:“使用 eval-recipes 测试 PR #1443 的 LinkedIn 任务”
我会:
- 更新 install.dockerfile,以检出
feat/issue-1435-task-classification - 复制到 eval-recipes:
cp -r .claude/agents/eval-recipes/* ~/eval-recipes/data/agents/ - 运行:
cd ~/eval-recipes && uv run eval_recipes/main.py --agent amplihack --task linkedin_drafting --trials 3 - 报告结果:“评分:35.2/100(高于基线 6.5)”
前提条件
- 已将 eval-recipes 克隆到
~/eval-recipes - 环境中已设置 API 密钥:
export ANTHROPIC_API_KEY=sk-ant-... - 已安装 Docker(用于容器化运行)
- 已安装 uv:
curl -LsSf https://astral.sh/uv/install.sh | sh
备注
- 每项任务的基准测试耗时 2-15 分钟,具体取决于复杂程度
- 运行多次试验(3-5 次)可获得更可靠的平均值
- Docker 构建结果可缓存,以提高速度
- 结果保存在 eval-recipes 仓库中的
.benchmark_results/
自动化
如需全自动测试:
# Test suite for a PR
tasks="linkedin_drafting email_drafting arxiv_paper_summarizer"
for task in $tasks; do
uv run eval_recipes/main.py --agent amplihack --task $task --trials 3
done
# Compare results
cat .benchmark_results/*/amplihack/*/score.txt
评论
支持 Markdown