诊断 diag_tool_repeat.py 全库扫:pymatgen task fe2d8b73 里 mp_search_summary 占 562/687 次 tool_call、重复率 91%——逐化学式一 formula 一轮走 agent loop, 562 份中间 JSON 全流经主上下文且每轮重发。根因是工具只收单 formula + host-side 持 MP key(禁在 run_python 里循环)被迫一式一调。 这类"已知清单批量扇出"的正解是工具批量化而非 delegate 子循环(delegate 只把 562 轮搬进子上下文、基础 token 不省)。新增 formulas: list(≤300/次)触发 batch: 复用单个 MPRester 会话逐式查(num_chunks=1 fair-use 护栏不变)、每式按 energy_above_hull 升序、单式出错不连坐整批;结果落 materials/mp_search_batch_ <hash8>.json(内容寻址幂等),只回紧凑摘要+路径,中间数据不进对话。 单查询路径字节不变保向后兼容;working_dir 设可选(裸构造/无 key 测试降级内联)。 agent_builder 注入 working_dir_path;pymatgen SKILL.md 加批量引导(WHY+WHAT)。 tests +1(去重/落盘/稳定相排序/单式错误隔离/无 key 泄漏),原测试补回 chunk_size 断言。 additive 内部工具能力,不碰对外 API/DB 契约。 Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| analyze | ||
| brief | ||
| coding | ||
| documents | ||
| imagegen | ||
| paper | ||
| patent | ||
| plot_pub | ||
| ppt | ||
| proposal | ||
| pymatgen | ||
| rebuttal | ||
| research | ||
| review | ||
| skill-creator | ||
| standard | ||
| stats_ml | ||
| videogen | ||