auto-improve 是做什么的?
用于任何文本工件的自主、评判器把关的自我改进。完整指南请参见 README.md;此处为面向代理的快速参考。
何时使用
用户希望内容得到可衡量的提升,而不仅仅是重写——并且愿意将“更好”表达为评分标准。适用场景:冷邮件、登录页文案、提示词、技能定义、博客文章、求职信、文档、合同、菜单。
运行
export GEMINI_API_KEY=... # https://aistudio.google.com/apikey
python3 improve.py \
--artifact path/to/file.md \ # 必须在 git 仓库内
--tag v1 \ # → 分支 improve/v1, results/v1.tsv
--max-iterations 8 \
--criteria path/to/rubric.md # 可选 — 省略则会自动推断评分标准;或添加
# --goal "良好效果的样子" 来引导自动推断的标准
如果不传递 --criteria,auto-improve 会先从工件生成一个评分标准,并将其保存到 results/<tag>.rubric.md — 阅读它可了解其优化目标。
检查已完成运行:python3 improve.py --status --tag v1。
结果位于 improve/<tag> git 分支上 — git diff main improve/v1 -- <file>。
决策机制(防劣质重写部分)
- 变异 — 从 N 个候选编辑中选择最佳,以精确差异形式应用(防崩溃)。
- 评分 — 每个候选由独立的模型调用根据评分标准进行打分。
- 决策 — 最佳候选与当前冠军进行双向配对判断(消除偏差);仅当确认真正获胜时才保留,否则回退。
变异器从不评判自己的作品,自信但更差的重写会被丢弃 —— 因此提升是真实的,每个提交都是经过验证的进步。
编写评分标准
一个包含总权重为 100 的各维度的 Markdown 文件 — 锚定值(50/70/90)、以奖励为导向、具体明确。参见 criteria/README.md 和 criteria/ 中的示例。
关键规则
- 变异器和评估器从不共享上下文。
- 每次运行:一个工件、一个评分标准、一个
--tag。 - Git 分支是事实来源;
results/<tag>.tsv是提升日志(不受版本控制)。 - 绝不编辑工件之外的内容;精确的微小差异,而非整体重写。