ARTICLE · 1182836
AI Agent 能调用工具,就能上生产了吗?
AI Agent 能调用工具,就能上生产了吗?
AI Agent 能调用工具,就能上生产了吗?🤔
第一次写 Agent,很容易从一个 while 循环开始:模型决定下一步,程序调用工具,再把结果交回模型。
但真正做成服务,问题才刚开始:
模型一直不结束怎么办?
工具卡住多久才停止?
用户取消后,旧结果还能写入成功吗?
模型建议回滚,后端就能直接执行吗?
这篇《从 Chatbot 到 AI Agent:为什么一个 while 循环撑不起生产系统》,记录了 Aegis 第一周的 Go 工程实践。
我们先用确定性 Mock 跑通最小执行闭环,把职责拆开:
🔹 Provider:提出下一步建议
🔹 ToolExecutor:校验身份、工具与资源
🔹 Runtime:控制循环、预算和超时
🔹 Repository:保存任务状态,保护终态
几个值得关注的设计:
① 执行有上限
默认最多 6 步、4 次工具调用;执行总时长 5 秒,单次调用超时 1 秒。
② 取消有约束
取消状态先提交成功后,旧执行流程不能再把任务改成成功。
③ 权限由后端判断
模型请求 rollback,后端仍会按只读白名单拒绝。
④ 回答要引用证据
引用的证据 ID 必须来自本任务实际获得的工具结果;证据存在,也不代表根因已经证明。
代码通过 go test -race、go vet,以及 9 个 HTTP 任务场景和 2 个请求拒绝检查。
边界同样明确:当前是内存、Mock、只读原型,重启会丢失任务;context 需要调用方合作响应。持久化、MCP 与审批将在后续阶段实现。
适合想从“跑通 Agent Demo”继续走向工程实现的后端开发者阅读。配图拆解核心机制,文章附源码、测试与复现步骤。
#AIAgent #Go语言 #后端开发 #系统架构 #云原生 #大模型应用 #工程实践 #程序员















































































