Eval 框架
PM 自建的 AI 产品评估系统——出题(用户场景)+ 写标准答案(做对了长什么样)+ 自动判分(跨 provider 对比通过率),23 个评测 case 覆盖工具选择准确率
简介
Eval(Evaluation,评估)框架是 Shawn 在开发阿布时自建的 AI 产品评估系统。与传统软件测试不同,AI 产品面对的是概率性输出——“输入 A 期望模型做出大致正确的判断”,这种事没法精确断言。
Shawn 的 Eval 框架解决的核心问题是:阿布有 26 个内置工具,用户说一句话,模型选对工具了吗?选错了,用户等半天发现阿布做了一件完全不相关的事。这个”选工具”的准确率直接决定产品体验。
23 个评测 case 分 8 个类别(文件操作/搜索/命令执行/多步任务/记忆/网页/知识/代理委派),按难度分 13 easy + 8 medium + 2 hard,可跨 provider(Claude / OpenAI / MiniMax)运行对比。最关键的是,定义这些 case 不需要懂代码,需要的是”想清楚什么情况下算对”——这是 PM 的强项。
关键信息
- 类型:概念 / 评估方法论
- 领域:AI 产品管理 / 质量保障
- 核心问题:用户说一句话,AI 选对工具了吗?
- 评估维度:必须调的工具调了没有 / 禁止调的工具有没有误调 / 参数传对了没有
- 不需要真的执行工具:只看模型”选了什么”,不看”做得怎么样”
- 相关概念:AI评估计分板、阿布 Abu、Claude Code
核心特性
三步构建思路
- 出题:想几个典型的用户场景,写下来(“用户说帮我看看桌面的文件列表”)
- 写标准答案:每道题写清楚”AI 应该做什么才算对”(“应该调用 list_directory,不应该执行命令”)
- 自动判分:把题目喂给 AI,看它选的工具跟标准答案对不对,跑完出报告
23 个评测 case 分布
| 类别 | 数量 | 难度分布 |
|---|---|---|
| 文件操作 | 4 | easy 为主 |
| 搜索 | 8 | easy + medium |
| 命令执行 | 4 | medium |
| 多步任务 | 2 | hard |
| 记忆 | 2 | medium |
| 网页 | 1 | easy |
| 知识 | 1 | easy |
| 代理委派 | 1 | medium |
跨 provider 对比
同一组 23 个 case 跑在不同模型上,自动生成报告按类别和难度拆开看通过率。两份报告可以 diff,一眼看到”换了模型之后哪些 case 变差了”。
PM 的独特价值
Eval 框架的构建不需要懂代码——代码部分全是 Claude 帮忙写的。PM 只需要想清楚三件事:
- 描述一个用户场景(PM 天天干的事)
- 定义”做对了”长什么样(PM 的核心能力)
- 定义”做错了”有哪些常见模式(PM 的踩坑经验)
不同素材中的观点
- 2026-05-29-woshipm-shawn-abu-claude-code-6-weeks:Shawn 把 Eval 框架定义为”阿布里最值钱的一部分基础设施”。核心洞察:①eval 的本质不是技术,是”想清楚怎么判断对错”;②PM 在 AI 时代真正不可替代的能力,是替模型定义”什么叫做对了”;③按难度分级(先简单后难)跟做产品一样的优先级思路;④跨 provider 对比是 eval 最有价值的用法——同一组 case 在不同模型上跑,效果变好变差一目了然
实用信息
快速上手步骤
- 想清楚”我最担心 AI 做错的 3 件事是什么”
- 每件事写 3-5 个具体场景(用户说了什么→AI 应该做什么→不应该做什么)
- 让 Claude 帮你写自动判分脚本
- 按 easy / medium / hard 分级,先跑简单的
实操命令
tsx src/eval/run.ts tool-selection --provider anthropic --model claude-sonnet-4-20250514
tsx src/eval/run.ts tool-selection --provider openai --model gpt-4o注意事项
- 不需要真的执行工具,只看模型”选了什么”
- 先覆盖高频场景,再逐步加边界 case
- 23 个 case 的规模已经足够发现系统性问题