/goal 模式:不只是换个 prompt
敏锐的 Codex 用户注意到 /goal 命令现在可在 Codex app 中使用——只需以 /goal 开头 prompt,指定你想让 Agent 做什么。
这会触发 Codex 持续循环直到达成目标。但要让 Agent 有效执行,我们需要以与日常习惯稍不同的方式思考 prompting。
OpenAI 的 Chris Hayduk 分享了从内部使用和 side project 中积累的技巧。
模糊目标是失败模式
过去约 6 个月模型变得如此好,以至于许多人在日常 workflow 中作为 prompter 变懒了。我们可以模糊地示意想让 GPT-5.5 构建什么,它很擅长搞清楚应该做什么以及如何到达。
但这种 prompting 风格是 goal mode 的主要失败模式。
Goal mode 的核心是循环:Agent 执行一些动作,给这些动作评分,检查分数是否满足目标,如果没有就继续(或如果满足就终止)。
核心在第三步——检查分数是否满足目标。用模糊、定性的目标(如"让我的代码更好"),循环的终点状态是 underspecified。Agent 怎么知道何时达成目标并执行循环?代码的什么状态是"更好",何时"足够好"可以停止?
Hayduk 注意到,在这些 underspecified 目标下,模型有两种不同的失败模式:
- 有时模型过早放弃,只工作几分钟就放弃
- 有时模型永不停止,盲目地做出改动,试图满足不可满足的目标
目标要具体可量化
比"让我的代码更好"更好的目标是:
"将 specific_file 中代码的运行时减少 20%,且不导致现有单元测试和集成测试的任何回归。"
Agent 现在有清晰且定量的目标(特定文件中代码运行时减少 20%)以及清晰的约束(无单元或集成测试回归)。
模型本身有时也可以做评分,只要目标仍然清晰且定量!
例如,Hayduk 设置 goal mode 将 NeurIPS 论文预印本转换为 ICML workshop 论文。ICML 有大量保存在 LaTeX 文件中的格式约束,不太容易对照评分。为解决此,让 Codex 把这些规则提取到 markdown 文件中,包含超过 200 条格式和风格规则的 checklist。
然后 Codex 的目标是:"基于提供的 checklist.md 将 NeurIPS 论文改为 ICML 格式,不改变论文的任何技术内容。"
通过提供 checklist,把定性目标变成定量目标。Codex 只需要想"当我勾选了全部 200/200 条规则时,目标就完成了"。即使每条规则本身可能模糊,Codex 对每条规则何时完成的推理比对目标本身模糊的推理更可靠。
还提供了在 checklist 中勾选已完成项目的指令,让模型能把状态持久化到文件系统(也让 Hayduk 能直观地跟踪进度)。
加速反馈循环
为了让 Agent 评估其动作与目标的对比,它需要某种机制来测试其变更。
测试运行越快(且让模型执行越容易),模型获得关于目标进度反馈的速度就越快。
例如,如果设置 Agent 改进机器学习算法的架构,让它在比完整训练运行更小的模型大小和子采样数据集上操作会很有帮助。这让模型比需要使用生产训练设置时更快地测试想法。
找到任何能加速这个反馈循环而不损害模型收到分数质量的方法。
在搜索改进蛋白质结构模型架构的案例中,Hayduk 使用了一个小而采样良好的数据集来运行实验。这将评分运行时从完整训练集运行的数天缩短到仅几分钟。
用 Markdown 文件思考
Goal mode 可以让 GPT-5.5 一次连续运行多天。即使 Codex 内置了强大的压缩能力,模型在如此长的时间尺度上维持连贯线索仍然非常困难。
与其强迫模型在内存中维持所有相关上下文,不如暴露 markdown 文件让它写入以跟踪正在做什么。
Hayduk 通常在 goal mode 中给 Agent 访问三个 markdown 文件:
PLAN.md
捕获 Agent 朝着目标移动时打算遵循的高层级计划。可以用你认为它应该遵循的初始方向来 seed 这个文件。
EXPERIMENTS.md
Agent 跟踪每次实验运行细节的地方(这特定于机器学习,但可以为许多不同任务重新利用这种文件类型)。通常看起来像一个干净、精心策划的实验列表,包含标题、尝试内容的简要描述、以及该尝试的结果。
EXPERIMENT_NOTES.md
Agent 的 scratchpad。它是 Agent 执行不同动作时实时想法的按时间顺序排列的列表。这个文件很好,因为可以审计 Agent 的思考过程,看是否需要把它 nudge 回另一个方向。
Hayduk 认为 EXPERIMENTS.md 是三个中最重要的,因为它让你和 Agent 都能回顾之前尝试达成目标的尝试以及它们为什么成功/失败。
完整 Playbook
- 设置清晰、可测量的目标
- 保持反馈循环紧凑
- 给 Agent markdown 文件来思考
有了这三块,Codex 会乐意在你的最难问题上 grind 数小时(甚至数天)。