0Pricing
AI Agents · 课时

代理模式:规划—执行—验证

先制定计划,再逐步执行,最后根据验收标准进行验证——这比一次性完成更可靠。

代理模式:规划—执行—验证 是 CoddyKit 上的免费 AI Agents 课时。 这是第 1 节课,共 4 节。 你可以在下方免费阅读本课时的完整内容 — 然后在浏览器中使用内置代码编辑器和全天候 AI 导师进行实践。 这是 AI Agents 学习路径的一部分,你的进度在网页和 CoddyKit 应用中同步。 AI Agents 课程共包含 4 节课。

本课时的部分内容尚未翻译,以英文显示。

为什么要先制定 Plan

一次性代码生成适用于很小的任务(“编写一个 fizzbuzz”)。对于真正的软件修改,代理应该:

  1. Plan — 将任务分解为多个步骤
  2. Execute — 实现每个步骤
  3. 验证 — 测试、检查代码并运行
  4. 迭代 — 持续修复,直到验证通过

Step 1:Plan

让模型生成结构化方案:

PLAN_PROMPT = '''
You are a senior engineer. Given this task, produce a JSON plan:
{steps: [{description, files_to_touch: [str], test_commands: [str]}], risks: [str]}

Task: {user_task}
'''

Plan Schema

from pydantic import BaseModel

class Step(BaseModel):
    description: str
    files_to_touch: list[str]
    test_commands: list[str]

class Plan(BaseModel):
    steps: list[Step]
    risks: list[str]

Step 2:Execute

按顺序执行每个步骤。将文件内容作为上下文提供给模型:

for step in plan.steps:
    context = {f: read_file(f) for f in step.files_to_touch}
    diff = llm.invoke(f'Implement: {step.description}\nFiles:\n{context}').content
    apply_diff(diff)

Step 3:验证

为每个步骤运行测试、代码检查和构建:

for cmd in step.test_commands:
    result = sandbox.run(cmd)
    if result.exit_code != 0:
        # Verification failed; iterate
        loop_until_verified(step, result.stderr)

Step 4: Iterate Until Pass

MAX_ITERS = 5
for iter in range(MAX_ITERS):
    result = sandbox.run(test_cmd)
    if result.exit_code == 0:
        break
    fix = llm.invoke(f'Tests failed:\n{result.stderr}\nFix the code.').content
    apply_diff(fix)

展示差异,而不是完整文件

对于增量修改,模型应生成 UNIFIED DIFFS:

diff = '''
--- a/main.py
+++ b/main.py
@@ -10,3 +10,4 @@
  def add(a, b):
      return a + b
+
+def sub(a, b): return a - b
'''
import patch
patch.fromstring(diff).apply()

方案质量很重要

糟糕的方案会导致执行失败。请使用更强的模型进行规划(GPT-4o、Claude Sonnet 4.5),如果预算紧张,则使用更便宜的模型执行(gpt-4o-mini、haiku)。

卡住时重新规划

如果验证反复失败,请放弃当前方案,并让 LLM 根据新信息 RE-PLAN:

if iter == MAX_ITERS - 1:
    new_plan = llm.invoke(f'Original plan failed. Errors: {errors}. Make a new plan.').content

长期规划的权衡

规划跨度越长,模型的方案越差。对于包含 10 个以上步骤的任务,请先生成粗略方案,再在每个步骤中进行细化。

方案加审查者

让一个“审查者”代理在执行前检查方案。这样可以尽早发现明显错误,比在执行过程中修复更省成本。

向用户展示方案

在执行前向用户展示方案,并允许用户编辑:

approved_plan = await ask_user_to_approve_or_edit(plan)
execute(approved_plan)

规划—执行—验证

为什么这种模式比一次性代码生成更可靠?

回顾

Plan、Execute、验证、迭代。使用强大的规划模型和便宜的执行模型,运行真实测试。在风险较高时,向用户展示方案。

常见问题解答

「代理模式:规划—执行—验证」课时是免费的吗?

是的 — 「代理模式:规划—执行—验证」的完整文本可在网页上免费阅读。要进行交互式练习(内置代码编辑器和全天候 AI 导师)并解锁 AI Agents 课程的其余内容,请升级到 CoddyKit PRO。 AI Agents 课程共包含 4 节课。

「代理模式:规划—执行—验证」这节课中我会学到什么?

先制定计划,再逐步执行,最后根据验收标准进行验证——这比一次性完成更可靠。 你通过在浏览器中直接运行的动手代码来练习 AI Agents,全天候 AI 导师会在你学习这节课的过程中回答你的问题。

学习 AI Agents 需要有经验吗?

无需任何先前经验。CoddyKit 上的 AI Agents 课程适合初学者到高级学习者,你可以从这里开始或从头开始,按照自己的节奏学习。 这是第 1 节课,共 4 节。

「代理模式:规划—执行—验证」课时需要多长时间?

大多数 CoddyKit 课程大约需要 5–10 分钟。每节课都很精短且互动,所以你能稳步进步,并在网页和应用中从离开的地方继续。

我能在这节 AI Agents 课中编写并运行代码吗?

能。每节 AI Agents 课都包含内置代码编辑器,你可以在浏览器中直接编写并运行真实代码,并获得即时 AI 反馈 — 无需本地设置。

此课程中的所有课时

  1. 代理模式:规划—执行—验证
  2. 编码工具界面(读取、编辑、Bash)
  3. 迭代式自我纠错循环
  4. SWE-Agent 与 OpenDevin 架构
← 返回 AI Agents