跳到主要内容
QZ Site
首页博客项目关于

© 2026 QZ Site. All rights reserved.

豫ICP备2026034998号-1|琼公网安备46020002000486号

← 返回博客

Agent工程化:从模型调用到生产系统

Agent Engineering·2026年7月16日·13 分钟阅读

来源:

  • 《为什么 Agent 开发要学后端技术栈》

  • 《AI Coding 时代,Agent 开发别再纠结语言了》

时间:

  • 2026-07-16

  • 2026-07-29

主题:

Agent开发、Harness Engineering、后端工程、AI应用架构


一句话结论

Agent开发不是“调用大模型 + 写Prompt”,而是“LLM能力 + 后端工程 + 系统架构”的综合工程。

核心公式:

生产级Agent
=
LLM能力
+
Harness架构
+
后端工程能力
+
业务系统设计

其中:

  • LLM决定Agent能力上限

  • 工程决定Agent生产下限

模型决定“能不能完成任务”。

工程决定“能不能稳定运行”。


一、重新认识Agent:它不是聊天机器人

很多入门Demo:

用户输入
↓
LLM
↓
调用工具
↓
返回结果

看起来只是:

LLM + Function Calling

但生产环境中的Agent:

用户请求
↓
API服务
↓
Agent Harness
↓
LLM推理
↓
Tool调用
↓
数据库/向量库
↓
状态管理
↓
监控追踪
↓
返回结果

本质接近:

一个拥有自主决策能力的不稳定后端服务。


二、Agent组件与传统后端的对应关系

Agent组件传统工程对应
Tool Calling本地执行或远程 RPC/API 调用
Memory数据库、缓存
Context Window内存管理
RAG搜索系统
Multi-Agent同进程协作或分布式协作
Agent Loop工作流引擎
Trace链路追踪

关键认知:

Agent没有脱离软件工程。

它只是给传统系统增加了一个:

具有不确定性的决策模块——LLM。


三、为什么Agent开发必须懂后端?

1.远程工具调用也会遇到 RPC 问题

Demo里面:

weather()

看起来像函数调用。

生产环境:

Agent
 ↓
HTTP/RPC
 ↓
外部服务
 ↓
返回结果

只要经过网络,就会出现后端经典问题:

  • 超时

  • 重试

  • 鉴权

  • 限流

  • 幂等

  • 服务异常


2. 重试可能导致数据事故

普通函数:

失败:

重新执行

也要看有没有副作用。纯计算通常容易安全重试;本地函数若已经写了文件、扣了额度或发了消息,同样可能因重试造成重复效果。

业务接口:

例如:

创建订单
扣款
发送消息

如果:

第一次成功。

但是网络超时。

Agent不知道结果。

再次重试:

可能造成:

  • 重复订单

  • 重复扣款

  • 数据污染

解决:

  • 幂等Key

  • 请求去重

  • 状态检查

所以:

工具调用不一定经过网络:它可以执行本地函数、Shell 命令,也可以访问远程服务。远程调用需要考虑 RPC 的超时、鉴权和重试;无论本地还是远程,只要有副作用,都应明确权限、失败处理和防重边界。


四、生产级Agent最大的三个难点

1. 并发

Agent需要同时处理:

  • Token流式输出

  • 工具调用

  • 用户请求

  • 后台任务

同步阻塞容易导致:

请求增加
↓
连接池耗尽
↓
服务崩溃

需要:

  • 异步编程

  • 协程

  • Event Loop

  • 线程池


2. 状态管理

Agent状态分两类:

短期状态

Context Window。

问题:

信息越来越多。

窗口有限。

需要:

  • 截断

  • 摘要

  • 信息优先级管理

长期状态

Memory。

本质:

Memory:跨任务保存并按需使用的信息

最简实现:文件或数据库 + 按需读取
可选增强:关键词检索、Embedding、向量检索、Rerank

长期记忆可以先用文件或数据库保存,需要时再检索。Embedding、向量检索和 Rerank 是可选方案,不是 Memory 必须同时具备的组成部分。


3. 多Agent协作

多个Agent:

Planner
 ↓
Executor
 ↓
Reviewer

多 Agent 可以在同一进程内协作,也可以分布在多个进程或机器上。只有采用后者等分布式部署时,才额外面对网络故障、跨节点一致性等分布式系统问题;角色数量多,不自动等于分布式系统。

需要考虑:

  • 死锁

  • 活锁

  • 状态同步

  • 最终一致性


五、Agent工程发展的核心:Engineering越来越重要

Agent领域关键词变化:

阶段关键词核心问题
早期Prompt Engineering如何让模型回答更好
中期Context Engineering如何管理上下文
现在Harness Engineering如何让模型可靠运行
未来Loop Engineering如何控制自主循环

变化趋势:

从:

“让模型更聪明”

转向:

“让模型更可靠”。


六、什么是Harness Engineering?

Harness可以理解为:

包裹LLM的一层工程控制系统。

作用:

让一个不稳定的模型,变成可运行的软件系统。

核心包括:


1. Context管理

解决:

模型应该看到什么信息。

包括:

  • 上下文裁剪

  • 摘要

  • 长期记忆

  • 检索增强


2. Tool编排

控制:

  • 调用什么工具

  • 调用顺序

  • 参数校验

  • 错误处理


3. Loop控制

控制:

  • 什么时候继续

  • 什么时候停止

  • 如何避免死循环


4. 失败恢复

包括:

  • Retry

  • Timeout

  • Circuit Breaker

  • Fallback


5. 可观测性

包括:

  • Logs

  • Metrics

  • Trace

解决:

“Agent为什么失败?”


七、Agent开发四个主要方向

Agent开发岗位不是一种工作。

主要分为四类:


方向一:Agent平台 / Runtime

例如:

  • Agent框架

  • Runtime

  • 基础设施

工作内容:

  • 调度

  • Tool Loop

  • 内存管理

  • 多Agent协作

语言:

语言特点
Go并发、高性能、基础设施
Python生态丰富、快速试错

这里语言有一定影响。

但是:

真正决定能力的是:

  • Runtime设计

  • 调度架构

  • 容错能力


方向二:业务系统接入Agent

这是企业最常见方向。

例如:

已有:

Java业务系统。

增加:

AI能力。

语言选择:

跟随业务技术栈。

业务Agent实现
Java系统Java
Go系统Go
Python系统Python

原因:

额外引入语言会增加:

  • 服务复杂度

  • 运维成本

  • 调试成本

这个方向最需要:

后端工程能力。


方向三:内部效率Agent

场景:

  • Code Review

  • CI/CD

  • 测试生成

  • 告警分析

特点:

流程明确。

适合自动化。

常见技术:

  • Python

  • Agent框架

  • MCP

  • Skill

核心能力:

把人的流程经验抽象成:

Agent可执行SOP。


方向四:Agent后训练

方向:

  • Agent轨迹数据

  • RLAIF

  • 模型优化

更接近:

算法工程。

不是普通Agent开发入口。


八、语言到底怎么选择?

结论:

语言不是Agent开发最大的竞争壁垒。

原因:

AI Coding降低了语言切换成本。

今天:

一个开发者可以快速:

  • 阅读陌生代码

  • 调用新框架

  • 跨语言开发

真正难的是:

  • 架构设计

  • 系统建模

  • 工程判断


九、Agent学习路线

第一阶段:掌握一种语言

不要同时学:

Python + Go + Java + TS。

选择依据:

目标推荐
AI应用开发Python
基础设施Go
企业业务Java

第二阶段:补后端基础

网络

学习:

  • HTTP

  • RPC

  • API设计

  • 鉴权

  • 超时

  • 重试

  • 幂等

并发

学习:

  • Async

  • Coroutine

  • Thread

  • Event Loop

数据

学习:

  • Redis

  • SQL

  • Vector Database

分布式

学习:

  • MQ

  • 一致性

  • 服务治理

可观测

学习:

  • Logging

  • Metrics

  • Tracing


第三阶段:深入Agent架构

学习:

  • Harness设计

  • Agent Loop

  • Graph编排

  • Memory系统

  • Tool Calling

  • Evaluation


十、最终认知模型

错误理解:

Agent开发
=
Prompt
+
调用模型
+
几个工具

正确理解:

Agent开发
=
LLM
+
Harness
+
Backend
+
Architecture
+
Business

未来优秀Agent工程师:

不是:

“会调用大模型API的人”。

而是:

懂LLM能力边界,同时具备后端系统设计能力的软件工程师。


最终排序

Agent开发能力优先级:

  1. 架构设计能力
  2. 后端工程能力
  3. Harness设计能力
  4. 业务理解能力
  5. LLM应用能力
  6. 编程语言熟练度

语言是工具。

工程能力才是长期竞争力。

相关文章

相同分类

Agent Engineering · 实践复盘

浏览器说“没有处理程序”,它到底没找到什么?

命令行能启动,关联查询有结果,网页点击却失败。一次自定义协议排错,让我重新区分了注册状态、API 探针和真实使用链路。

2026年10月23日·13 分钟阅读

相同分类

Agent Engineering

同一个工具调用,为什么有三种写法?

用同一个读文件例子,对照 Chat Completions、Responses 和 Anthropic Messages 的请求、工具调用与结果回传,再理解它们和 Qwen、聊天模板及微调的关系。

2026年10月17日·16 分钟阅读

相同分类

与 AI 共事 · Agent Engineering

别让一次纠正,只解决这一次

一次纠正之后,怎样留下以后还能使用的做法?讨论把反馈转成可复用规则与检查方法,避免同类问题反复出现。

2026年10月14日·2 分钟阅读

目录

  • 1.远程工具调用也会遇到 RPC 问题
  • 1. 并发
  • 2. 状态管理
  • 短期状态
  • 长期状态
  • 3. 多Agent协作
  • 1. Context管理
  • 2. Tool编排
  • 3. Loop控制
  • 4. 失败恢复
  • 5. 可观测性
  • 第一阶段:掌握一种语言
  • 网络
  • 并发
  • 数据
  • 分布式
  • 可观测
← 较早发布Git Hook 与 实战 Git 命令
较晚发布 →和 Coding Agent 协作:把问题说清楚,把事情做完整