构建:你的第一个有边界的 Agent Loop
给每次行动留下记录,给循环设置明确的停止条件。
先写一个能停下来的循环
Agent 的循环可以很短:观察当前状态,选择下一步,执行工具,记录返回值。工程上的难点在错误、预算和停止条件。
代码
MAX_STEPS = 5
history = []
for step in range(MAX_STEPS):
action = choose_next_action(history)
if action["type"] == "finish":
break
result = run_allowed_tool(action)
history.append({"action": action, "result": result})
else:
print("达到步数上限,交给人检查")
这是结构示意,choose_next_action 与 run_allowed_tool 需要你按实际任务实现。先用固定返回值模拟它们,再接模型。
三条最小边界
- 只允许调用预先注册的工具,不直接执行模型返回的任意代码。
- 设置最大步数、超时和预算。
- 对外发送消息或修改重要数据前,先生成草稿供人检查。
实验记录
给同一任务分别制造一次超时、一次空结果和一次参数错误。观察系统是否能停止,错误是否足够清楚。不要只记录成功截图,失败轨迹通常更有信息。
理解需要时间,记录让每一步都有迹可循。
回到学习路线图