ai-agent-book 精选快照(<2MB 代码与文档,来自 github.com/bojieli/ai-agent-book)
Build latest book artifacts / build (push) Canceled after 0s
dependency resolution / resolve (3.11) (push) Canceled after 0s
dependency resolution / resolve (3.13) (push) Canceled after 0s
deploy-pages / build (push) Canceled after 0s
deploy-pages / deploy (push) Canceled after 0s
i18n consistency check / check (push) Canceled after 0s
provider adoption tests / test (chapter2/context-compression) (push) Canceled after 0s
provider adoption tests / test (chapter2/prompt-injection) (push) Canceled after 0s
provider adoption tests / test (chapter2/system-hint) (push) Canceled after 0s
provider adoption tests / test (chapter3/log-sanitization) (push) Canceled after 0s
web-search-agent tests / test (push) Canceled after 0s
web-search-agent tests / agentbook (push) Canceled after 0s

This commit is contained in:
2026-08-20 13:12:50 +00:00
commit b119135836
10275 changed files with 3284984 additions and 0 deletions
@@ -0,0 +1,32 @@
# 实验 8-17 GPU 结果(2026-08-07
## 运行环境
- GPUNVIDIA RTX PRO 6000 Blackwell Workstation Edition,约 98GB 显存
- 基座模型:`Qwen/Qwen2.5-7B-Instruct`
- 训练:LoRA DPObf164 epochs,学习率 `3e-5`,梯度累积 2,随机种子 717
- 数据:24 条偏好对;训练数据与未完成任务集、已完成任务保留集的任务完全隔离
- 训练回执:`train_20260807T163349Z/training_receipt.json`
## 结果
决策边界评估固定“完成”和“继续验证”两个候选动作,比较模型对两个候选的平均 token 对数概率:
| 模型 | 未完成任务集:选对 | 已完成任务保留集:选对 | 未完成任务集平均差值 | 保留集平均差值 |
|---|---:|---:|---:|---:|
| 基座 | 3/1225.0% | 8/8100% | 0.2083 | 4.6904 |
| LoRA DPO | 11/1291.7% | 8/8100% | 0.3828 | 2.8525 |
自由生成是补充诊断:未完成任务集的过早结束为 1/12 → 0/12,已完成任务保留集的正常收尾为 6/8 → 0/8。模型在开放式回答里倾向把验证计划写得很长,最终没有明确收尾;这正是为什么主要结论采用与训练提示一致的固定候选比较,而不把自由生成当作唯一指标。
LoRA adapter 约 158MB,未随提交上传;按 README 中的训练命令可以重新生成。训练回执保留实际配置、数据哈希和运行时间;不同版本的 TRL 不一定把最终损失写入同一个日志字段,因此这里不把单个损失值当作实验结论。
## 迭代记录
第一版只看自由生成。基座模型在这组题上本来就很少直接说“完成”,训练前后“过早结束”几乎没有变化,说明这个指标被回答长度和提示遵循掩盖了,不能单独用来判断 DPO 是否学到了收尾决策。
随后把评估改成固定的两个候选动作:“完成:任务已经完成,可以交付”和“继续验证:先运行验收测试并逐条核对验收条件”,比较模型对候选续写的平均 token 对数概率。这个指标直接测量“现在该不该收尾”。训练强度做了小范围对照:`5e-6` 变化不明显;`5e-5` 虽然把候选比较推到 12/12,却让开放式回答明显过度谨慎;最终采用 `3e-5`、4 epochs,在候选比较中得到 11/12,保留集仍为 8/8。还尝试加入 8 条、再减到 4 条“已完成任务控制对”:开放式保留集有所恢复,但未完成任务的候选选择分别掉到 1/12 和 0/12,因此这组控制对没有纳入最终训练集。这个过程保留在各次 `training_receipt.json` 中,避免把一次偶然的参数结果写成结论。
## 解释与限制
这次小规模实验说明,轨迹前缀偏好数据可以把模型在“是否该收尾”上的选择推向正确方向,同时保留已完成任务的正常收尾。它不能证明线上 Coding Agent 的总体成功率会提高:任务只有 24 条,候选比较也不是完整环境回放。实际部署仍应加入更多任务族、真正的隐藏验收测试和通用能力回归。