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
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,285 @@
{
"experiment": "curly-quote-sft",
"model": "Qwen/Qwen3-8B",
"model_open_weight": true,
"hardware": "NVIDIA RTX PRO 6000 Blackwell Workstation Edition",
"data_sha256": {
"boundary.jsonl": "e342edf5d28257907bbe486c99a91bd40c482838613c59e09f445b3634a7356c",
"eval.jsonl": "7c54b2bf1f146e6a22fb72460c0a7b67a7a2ad5301e5a05dcf4828b6962a2049",
"train.jsonl": "9e27158265ab9782951d81a4838e77128061f492466beeddf0b35a27f46cedd6"
},
"training_receipt": "validation/train_20260808T040644Z/training_receipt.json",
"evaluations": {
"eval_adapted_boundary.json": {
"label": "adapted",
"split": "boundary",
"count": 256,
"exact": 0.9765625,
"protected_preservation": 1.0,
"curly_count_match": 0.9765625,
"by_kind": {
"comment": {
"count": 16,
"exact": 1.0,
"curly_count_match": 1.0
},
"english": {
"count": 16,
"exact": 1.0,
"curly_count_match": 1.0
},
"go": {
"count": 16,
"exact": 1.0,
"curly_count_match": 1.0
},
"java": {
"count": 16,
"exact": 1.0,
"curly_count_match": 1.0
},
"javascript": {
"count": 16,
"exact": 1.0,
"curly_count_match": 1.0
},
"json": {
"count": 16,
"exact": 0.6875,
"curly_count_match": 0.6875
},
"markdown": {
"count": 16,
"exact": 1.0,
"curly_count_match": 1.0
},
"mixed": {
"count": 16,
"exact": 1.0,
"curly_count_match": 1.0
},
"nested": {
"count": 16,
"exact": 1.0,
"curly_count_match": 1.0
},
"python": {
"count": 16,
"exact": 1.0,
"curly_count_match": 1.0
},
"quote": {
"count": 16,
"exact": 0.9375,
"curly_count_match": 0.9375
},
"rust": {
"count": 16,
"exact": 1.0,
"curly_count_match": 1.0
},
"shell": {
"count": 16,
"exact": 1.0,
"curly_count_match": 1.0
},
"sql": {
"count": 16,
"exact": 1.0,
"curly_count_match": 1.0
},
"yaml": {
"count": 16,
"exact": 1.0,
"curly_count_match": 1.0
},
"zh": {
"count": 16,
"exact": 1.0,
"curly_count_match": 1.0
}
}
},
"eval_adapted_eval.json": {
"label": "adapted",
"split": "eval",
"count": 256,
"exact": 0.96875,
"protected_preservation": 1.0,
"curly_count_match": 0.96875,
"by_kind": {
"comment": {
"count": 16,
"exact": 1.0,
"curly_count_match": 1.0
},
"english": {
"count": 16,
"exact": 1.0,
"curly_count_match": 1.0
},
"go": {
"count": 16,
"exact": 1.0,
"curly_count_match": 1.0
},
"java": {
"count": 16,
"exact": 1.0,
"curly_count_match": 1.0
},
"javascript": {
"count": 16,
"exact": 1.0,
"curly_count_match": 1.0
},
"json": {
"count": 16,
"exact": 0.6875,
"curly_count_match": 0.6875
},
"markdown": {
"count": 16,
"exact": 1.0,
"curly_count_match": 1.0
},
"mixed": {
"count": 16,
"exact": 1.0,
"curly_count_match": 1.0
},
"nested": {
"count": 16,
"exact": 1.0,
"curly_count_match": 1.0
},
"python": {
"count": 16,
"exact": 1.0,
"curly_count_match": 1.0
},
"quote": {
"count": 16,
"exact": 0.8125,
"curly_count_match": 0.8125
},
"rust": {
"count": 16,
"exact": 1.0,
"curly_count_match": 1.0
},
"shell": {
"count": 16,
"exact": 1.0,
"curly_count_match": 1.0
},
"sql": {
"count": 16,
"exact": 1.0,
"curly_count_match": 1.0
},
"yaml": {
"count": 16,
"exact": 1.0,
"curly_count_match": 1.0
},
"zh": {
"count": 16,
"exact": 1.0,
"curly_count_match": 1.0
}
}
},
"eval_base_eval.json": {
"label": "base",
"split": "eval",
"count": 256,
"exact": 0.0,
"protected_preservation": 0.9868421052631579,
"curly_count_match": 0.67578125,
"by_kind": {
"comment": {
"count": 16,
"exact": 0.0,
"curly_count_match": 1.0
},
"english": {
"count": 16,
"exact": 0.0,
"curly_count_match": 0.75
},
"go": {
"count": 16,
"exact": 0.0,
"curly_count_match": 1.0
},
"java": {
"count": 16,
"exact": 0.0,
"curly_count_match": 1.0
},
"javascript": {
"count": 16,
"exact": 0.0,
"curly_count_match": 1.0
},
"json": {
"count": 16,
"exact": 0.0,
"curly_count_match": 0.0
},
"markdown": {
"count": 16,
"exact": 0.0,
"curly_count_match": 1.0
},
"mixed": {
"count": 16,
"exact": 0.0,
"curly_count_match": 0.0
},
"nested": {
"count": 16,
"exact": 0.0,
"curly_count_match": 0.0
},
"python": {
"count": 16,
"exact": 0.0,
"curly_count_match": 1.0
},
"quote": {
"count": 16,
"exact": 0.0,
"curly_count_match": 0.0625
},
"rust": {
"count": 16,
"exact": 0.0,
"curly_count_match": 1.0
},
"shell": {
"count": 16,
"exact": 0.0,
"curly_count_match": 1.0
},
"sql": {
"count": 16,
"exact": 0.0,
"curly_count_match": 1.0
},
"yaml": {
"count": 16,
"exact": 0.0,
"curly_count_match": 1.0
},
"zh": {
"count": 16,
"exact": 0.0,
"curly_count_match": 0.0
}
}
}
},
"quality_audit": "validation/quality_audit.json"
}
@@ -0,0 +1,10 @@
# 合成数据人工抽查记录
本轮扩容后,在生成数据门禁通过的基础上,按 16 个 `kind`、10 个文章体裁和 9 个代码语言分层抽查了 `train``eval``boundary` 三个 split 的首条样本(共 48 条)。抽查重点是:
1. 中文自然语言直引号是否确实改成 `“”`/`‘’`
2. 英文原文、JSON、路径、标识符和字符串字面量是否逐字保留;
3. Python、JavaScript、Java、Go、Rust、SQL、Shell、YAML 的注释语法是否正确,代码行是否发生非目标变化;
4. 体裁标签、语言标签和案例编号是否与 prompt/target 一致。
抽查结论:48/48 条样本的标注意图清晰,未发现模板变量残留、代码围栏缺失或非注释代码行漂移;机器门禁结果保存在 [`quality_audit.json`](quality_audit.json)。该抽查是合成数据质量证据,不等价于真实用户反馈覆盖,后续仍需扩大语言版本和人工复核比例。
@@ -0,0 +1,19 @@
{
"splits": {
"train": {
"rows": 1024,
"errors": {}
},
"eval": {
"rows": 256,
"errors": {}
},
"boundary": {
"rows": 256,
"errors": {}
}
},
"total_rows": 1536,
"total_errors": 0,
"status": "pass"
}
@@ -0,0 +1,22 @@
{
"experiment": "8-18-curly-quote-sft",
"run": "train_20260808T040644Z",
"model": "Qwen/Qwen3-8B",
"data_sha256": "9e27158265ab9782951d81a4838e77128061f492466beeddf0b35a27f46cedd6",
"train_examples": 1024,
"config": {
"model": "Qwen/Qwen3-8B",
"epochs": 2,
"lr": 0.0001,
"batch_size": 2,
"grad_accum": 4,
"max_length": 768,
"seed": 718,
"output": "/home/ubuntu/ai-agent-book/chapter8/curly-quote-sft/output/adapter"
},
"cuda": "NVIDIA RTX PRO 6000 Blackwell Workstation Edition",
"started_at": "2026-08-08T04:06:44.715422+00:00",
"finished_at": "2026-08-08T04:08:32.643276+00:00",
"updates": 256,
"final_loss": 5.033254524278163e-07
}