第 10 课 · Agent 循环

Think → Act → Observe → Think → ... 这就是 AI 自己干活的核心秘密

类比:人类是怎么干活的?

思考

"我要写一个登录页面……需要什么?邮箱框、密码框、按钮"

行动

打开编辑器,写 HTML

观察

预览页面,"嗯,按钮颜色不对"

调整

改 CSS,再预览,搞定

Agent 做的完全一样。只是循环速度是你的几百倍。

Agent 的核心循环

THINK
AI 思考下一步做什么
→
ACT
调用工具/执行动作
↓
STOP
任务完成?退出
←
OBSERVE
观察工具返回的结果

这个简单的循环就是 Claude Code、Cline、Cursor——所有 AI 编程工具——的核心架构。

伪代码:Agent 循环就是这样

def agent_loop(task, tools, max_steps=10):
    messages = [{"role": "system", "content": SYSTEM_PROMPT},
                {"role": "user", "content": task}]

    for step in range(max_steps):
        # === THINK === AI 分析现状,决定下一步
        response = client.chat.completions.create(
            model="deepseek-chat",
            messages=messages,
            tools=tools
        )

        msg = response.choices[0].message

        # === STOP? === 如果 AI 觉得完成了,退出
        if not msg.tool_calls:
            return msg.content  # 任务完成!

        # === ACT === 执行 AI 请求的工具
        for tool_call in msg.tool_calls:
            result = execute_tool(tool_call)

            # === OBSERVE === 把结果告诉 AI
            messages.append({"role": "tool",
                              "content": result})

    return "达到最大步数,任务未完成"

这就是全部。没有魔法,没有黑科技。就是一个 while 循环。

Agent 循环的三大"坑"

1. 无限循环 — AI 可能一直在"读文件→思考→再读文件→再思考"出不来。解法:设置 max_steps。

2. 幻觉放大 — Agent 每步基于上一步的"观察"做决策。如果工具返回了错误信息,AI 会基于错误继续推理——一环错,环环错。

3. Token 黑洞 — 每轮循环都把历史 messages 全传一遍。循环 10 轮,上下文轻松到几万 Token。钱就是这么烧的。

这一课你带走的 3 个概念

1 Agent = Think → Act → Observe 循环,直到任务完成或达到上限

2 没有魔法 — 就是一个 while 循环 + Tool Calling

3 陷阱:无限循环、幻觉放大、Token 黑洞(三个都要防)

最后一课:造一个 Agent · 从零写出一个能自动干活的 AI