为 AI 智能体设计评估流程,衡量成功率、稳定性、成本和响应时间。制定评分标准与可重复运行的环境,分析失败原因并建立回归测试,为模型选择和系统改进提供依据。
- 首次设计智能体评估
- 比较模型在实际任务中的表现
- 查明评估分数下降的原因
分析 Agent 失败记录,找出首次错误判断并构造偏好与拒绝行为对,评估是否需要训练,再检查目标问题是否改善以及原有正确行为是否保留。
把生产 bad case / 失败轨迹转成训练数据时使用——从失败归因、轨迹前缀截取、DPO 偏好对构造、LoRA 训练到边界集与保留集双集验证的完整链路;也用于判断某类问题该走 SFT、DPO、RL 还是先修 Harness/工具/tokenizer,以及如何从运行轨迹中提取带证据的结构化学习信号。
触发词:bad case、失败归因、DPO、偏好对、轨迹前缀、拒绝采样、过度矫正、边界集、保留集、过早结束、reward hacking、LoRA 微调、训练评估隔离。
实测评分 未实测
查看安装方法bad-case-to-dpo 用于规划如何把 Agent 的失败记录整理成追加训练数据。它先定位首次错误判断,再依据此前的执行轨迹构造偏好行为与拒绝行为的配对样本。内容涉及使用这类配对进行学习的 DPO、只调整部分参数的 LoRA,以及训练后的效果评估。
如果 Agent 反复出现未经测试就宣称任务完成等问题,可以用它分析失败并整理改进流程。在训练模型之前,也可以先判断问题是否来自执行框架、工具,或把文字转换为词元的 tokenizer。
失败轨迹不能原样作为正确示范用于训练。训练数据和评估数据要分开,并同时检查未完成任务和已完成任务。参考的 LoRA DPO 配置在单张 GPU 上约使用 24 GB 内存。使用少量数据训练时,还要留意模型变得过于谨慎、难以结束任务的副作用。
本介绍由 AI(OpenAI Codex)根据公开的 SKILL.md 撰写。准确的规格请查看下方原文。
AI 根据 SKILL.md 的内容检查了需要注意的操作和使用前提。评分只依据实际运行的结果(实测对比)。
不计入评分。 由 AI(OpenAI Codex)于 2026年10月24日 评估。仅供参考,安装前请同时查看原文。
安装前可以查看交给 AI 代理的指令内容。
① 采集与归因。 从用户纠正、点踩、事后审计三类生产信号收集失败轨迹,按错误分类定位首个错误步骤并记录错误类别。轨迹前缀回归任务就是从这个决策边界截取的。
② 分流:该不该训练。 先问 prompt、工具、代码约束、上下文管理能否解决;再沿字节链路排除工具/Harness/tokenizer 问题。都不要动权重时就不训练。
③ 选训练形态。 按第七章评估数据集的类型映射到第八章用法:
| 你手上的材料 | 训练用法 |
|---|---|
| 端到端回归任务(含验证器) | RL rollout 任务与可验证奖励(RLVR);拒绝采样(RFT)的采样池 |
| 轨迹前缀回归任务 | DPO 偏好对、决策边界的 SFT 示范、On-Policy Distillation 的教师状态 |
| 失败归因记录(首个错误步骤与错误类别) | 过程监督的负标签(PRM)、RLVP 路径惩罚的规则来源 |
| Rubric 多维评分与人工金标集 | 向量奖励的各维度、生成式奖励模型(GRM)的训练与校准数据 |
④ 截取轨迹前缀,构造偏好对。 在决策边界上截出"准备宣称完成"的轨迹前缀:rejected 是过早结束的错误行为,chosen 是"先运行测试、逐条核对验收条件,再下结论"的期望行为。chosen 由教师模型生成,再经规则验证器过滤(拒绝采样)。案例太少时用数据扩充(换任务类型、换缺失的验证项、换完成措辞)形成数百条偏好对。失败原因、适用条件和验证器应随样本保存,方便追溯和复查。
⑤ LoRA DPO 训练。 小配比混入通用任务数据防过拟合。参考配置:Qwen2.5-7B-Instruct + bf16 LoRA、4 epochs、学习率 3e-5、单卡约 24GB 显存。训练回执记录配置、数据哈希与时间戳。
⑥ 双集验证。 对未完成任务集和已完成任务保留集分别让模型给出"下一步动作",判定属于"宣称完成"还是"继续验证":
优先采用格式固定、与训练提示一致的候选比较(固定两个候选动作,比较模型更偏好哪一个,直接测量决策边界),而不是开放式自由生成。同时抽查通用能力,确认 LoRA 补丁没有破坏其他能力。
⑦ 记录与追溯。 训练数据与评估集分开保存;数据构造有确定性模板和教师模型两条路径时,两条都留证据回执。
配套数据:24 条轨迹前缀 bad case,覆盖四类过早结束——未跑测试就宣称完成、多目标只完成一部分、声称完成但验收条件未满足、遇错放弃宣称不可能(含删除失败测试/skip 等 reward hacking 变体);与训练数据严格隔离的留出评估集为 boundary 12 条 + retention 8 条。
实测结果:基座在固定候选比较的未完成任务集上选对 3/12(25.0%),已完成任务保留集 8/8(100%);LoRA DPO 后分别为 11/12(91.7%) 和 8/8(100%)。自由生成是补充诊断:过早结束 1/12→0/12,但正常收尾 6/8→0/8——说明小数据 DPO 会让模型在开放式回答里过于谨慎,因此主要结论只采用候选比较口径,不能外推成线上总体成功率提升。
同一个问题还有 RL 分支:把"宣称完成前必须跑通验收测试"写成可验证奖励,测试对模型不可见,模型宣称完成时才运行,通过 +1、不通过 −1。
edit_file 的 old_string 匹配失败):把复制任务抽象成三个可验证任务——直接逐字复述、在相似且等长的多个字符串中选择完全相同的目标、把指定字符串完整抄写到 old_string 工具参数。样本特意包含真实编辑最容易损坏的空格、换行、反斜杠、Unicode 组合字符。训练后要用独立 tokenizer 审计排除词元化造成的假象:若 round-trip 上限本身就是 80.1%,模型测到 80.1% 就不能算作纯能力提升。评价一条轨迹实质是依次回答三个问题:事情是否办成了、是否以允许的方式办成、是否让用户舒服。
输出形态决定它能否成为学习信号:单一总分只能反映一次运行的优劣。四项内容(成败判定、每维度结论、证据位置、失败类型标签)齐备,后续才能判断该更新知识、提示词、程序还是模型参数。
chapter8/premature-completion-dpo/ — 全书唯一从生产 bad case 出发的训练实验:24 条 bad case、boundary 12 + retention 8 留出评估集、隐藏测试;python demo.py 离线端到端演示,python -m pytest -q test_pipeline.py 机制单元测试,python build_preference_data.py 生成偏好对(--teacher 走教师模型拒绝采样路径),python train_dpo.py --smoke 数据/tokenizer 前向检查,python train_dpo.py 单卡 LoRA DPO,python evaluate.py --decision-score 双集候选比较评估,python train_grpo_optional.py 同一问题的可选 RL 分支。chapter8/curly-quote-sft/ — 规则类反馈的另一种监督目标:先写 SKILL.md 规范,再结构化合成数据做作用域敏感 SFT。chapter8/exact-copy-sft/ — byte-exact 复制 SFT,含 tokenizer_audit.py 排除词元化假象。chapter8/cot-distillation/ — "生成候选—验证过滤—只留正确轨迹"的拒绝采样流水线范例。book/chapter8.md「从问题案例到后训练」book/chapter8.md「SFT 数据合成:从示范到可训练轨迹」book/chapter8.md「奖励设计:如何把任务目标变成学习信号」book/chapter9.md「从运行轨迹中获得学习信号」还没有评价。欢迎分享你的使用感受。
无需登录即可发表。欢迎分享使用感受、提问,或说明在哪些环境下无法运行。
还没有评论。来写第一条吧。
为 AI 智能体设计评估流程,衡量成功率、稳定性、成本和响应时间。制定评分标准与可重复运行的环境,分析失败原因并建立回归测试,为模型选择和系统改进提供依据。
设计从智能体运行记录中提炼改进的流程,评估结果、操作和质量,再决定更新知识、指令、程序或模型参数,并制定独立验证、发布检查与回滚步骤。
设计持续更新的状态摘要,让智能体掌握待办、工具调用次数、时间、错误和运行环境;比较替换与追加状态的方式,兼顾缓存利用和陈旧信息累积。
用 11 项检查规则审阅和改写面向中文读者的产品文案、文章、邮件和 README,发现重复、冗长、空泛等表达,并按文体整理成更具体清晰的文字。
设计能够响应新邮件、外部通知和定时器的 Agent,规划长任务中的打断与指示变更、请求优先级、并行任务的进度追踪及结果通知。
使用 `execute_python` 在沙盒中编写并运行简短、可复现的 Python 脚本,检查处理过程和实际输出,并报告结果或错误,区分已运行与未运行的代码。