L03 练习
练习 1:量化「渐进式 vs 全塞」的 token 节省(设计实验类)
本课 code.py 演示了 token 节省,但只有 2 个 skill。设计实验验证 skill 数量增长时的节省比例:
- 假设:skill 数量越多,渐进式的节省比例越高(全塞线性增长,渐进式只有用到的增长)。
- 实验: - 生成 5/10/20/50 个假 skill(每个 800 token 全文,20 token 描述)。 - 对比"全塞"vs"渐进式(只加载 1 个匹配的)"的 token 数。 - 画节省比例随 skill 数量的变化曲线。
- 预期:50 个 skill 时,全塞 40000 token,渐进式 ~1000 token,节省 97%。
验收:输出对比表,说明"skill 越多渐进式越值"的拐点(大约几个 skill 后渐进式明显优于全塞)。
练习 2:用 LLM 判断需要哪个 skill
本课的 match_skills 用关键词匹配(中文滑窗)。改进为 LLM 判断:
- 把 skill 描述列表 + 任务描述给 LLM,让它输出"需要哪些 skill"。
- 对比关键词匹配 vs LLM 匹配的准确率(构造 10 个任务,人工标注该用哪些 skill)。
- 思考:LLM 匹配的额外成本(一次 LLM 调用)值不值?
验收:LLM 匹配准确率应高于关键词(但贵一次调用)。诚实标注在 skill 数量少时关键词可能够用,skill 多时 LLM 更准。
练习 3:写一个新 skill 并接入
本课有 2 个示例 skill。写第 3 个,解决一个真实需求:
候选方向:
- source-citation:来源引用规范(每个结论附来源链接,可溯源)
- incremental-brief:增量简报生成(对比旧记忆,标注新增/修正/不变)
- fact-check:事实核查流程(关键结论交叉验证)
验收: 1. 新 skill 有正确的 frontmatter(name + description)。 2. 能被 SkillLoader 扫描到。 3. 用匹配 query 触发加载全文。 4. writer 接入后,输出遵循新 skill 的规范。