用Agent自动完成任务
入门·10 分钟·通过可运行代码讲解「用Agent自动完成任务」,覆盖环境准备、核心代码、参数说明、异常处理、工程化改造和练习任务,适合 AI 编程入门。
用Agent自动完成任务
用 Agent 自动完成任务,关键不是让 AI “自由发挥”,而是把目标、工具、权限、检查点和退出条件设计清楚。否则 Agent 很容易跑偏或反复尝试无效步骤。
选择合适任务
适合 Agent 的任务通常满足:
- 目标明确;
- 可以拆成步骤;
- 中间结果可检查;
- 工具有明确边界;
- 出错后可以停止或回滚。
例如“整理资料并生成摘要”适合;“帮我经营整个公司”太模糊。
示例:自动整理资料
目标:给定一个主题,Agent 自动搜索资料、提取要点、生成大纲。
可以拆成:
- 根据主题生成搜索关键词;
- 调用搜索工具;
- 读取结果摘要;
- 去重和筛选;
- 生成结构化大纲;
- 标注不确定信息。
这个任务主要是读和写文本,风险较低,适合入门。
设置最大步骤数
Agent 必须有停止条件:
MAX_STEPS = 6
for step in range(MAX_STEPS):
action = plan_next_action(state)
result = run_tool(action)
state = update_state(state, result)
没有最大步骤数,Agent 可能陷入循环。
加入人工确认
如果 Agent 要执行写操作,例如发送邮件、提交表单、修改数据库,必须在执行前让人确认。
推荐流程是:Agent 生成草稿或计划,用户确认后程序再执行。
任务状态管理
不要只把状态放在对话文本里。应该用结构化对象保存:
state = {
'goal': '整理RAG资料',
'steps_done': [],
'sources': [],
'draft': None,
'approved': False
}
这样更容易恢复、调试和审计。
失败处理
Agent 自动任务必须考虑失败:搜索没结果、工具超时、模型输出格式错误、用户目标不清楚。遇到失败时,系统应该说明原因并请求补充信息,而不是继续编造。
小结
Agent 自动化的核心是可控。先从低风险、可检查、步骤明确的任务做起,逐步增加工具和权限。真正可靠的 Agent 更像一个有日志、有审批、有边界的自动化流程,而不是完全放任的聊天机器人。