🛠️Agent 工程师 · 4 大核心能力⚡
IT 人最撕裂的时刻:
"几百行代码被 Prompt 一句话搞定"
然后立刻想:
"我是不是要被替代了?"
焦虑的本质,
是范式转移的认知滞后。🛠️
"几百行代码被 Prompt 一句话搞定"
然后立刻想:
"我是不是要被替代了?"
焦虑的本质,
是范式转移的认知滞后。🛠️
#Agent#Harness#工程师成长#保值#范式转移
一、行业焦虑:双重冲击下的"撕裂感"
AI 圈有个奇景:
每天有人封神,每天有人失业。
冲击 1:框架迭代像"自动挡时代"
💡真实写照:
· LangChain 从0.1 到 0.3,接口全改
· AutoGen 多 Agent 写法几经迭代
· LlamaIndex 模块隔几个月重构
刚背熟手动挡说明书,
厂商直接上了全自动🚗
· LangChain 从0.1 到 0.3,接口全改
· AutoGen 多 Agent 写法几经迭代
· LlamaIndex 模块隔几个月重构
刚背熟手动挡说明书,
厂商直接上了全自动🚗
冲击 2:模型能力"吞噬"代码
🔴被"吞掉"的代码:
·128K 上下文让 RAG 分段拼接成废代码
·原生 Tool Use让正则解析直接淘汰
·强推理模型让 CoT 引导变成冗余
i.e.今天写的代码,明天可能就没用
·128K 上下文让 RAG 分段拼接成废代码
·原生 Tool Use让正则解析直接淘汰
·强推理模型让 CoT 引导变成冗余
i.e.今天写的代码,明天可能就没用
💡"我是不是要失业了?"
答:焦虑的本质,
是把"打补丁"误以为是"真本事"。
补丁会过时,本事不会。
答:焦虑的本质,
是把"打补丁"误以为是"真本事"。
补丁会过时,本事不会。
· · ·
二、补偿性工程 vs 系统性工程
这是理解保质期的关键。
❌ 补偿性工程(Compensatory)
·窗口小→ 写分段检索·不会用工具→ 写输出解析器
·推理弱→ 手动 CoT 引导
保质期:几个月⏰
命运:被模型替代
✅ 系统性工程(Systematic)
·上下文管理:让模型看对信息·控制流设计:让模型走对方向
·错误恢复:让模型犯错能兜底
·反馈回路:让模型自我进化
保质期:永久♾️
命运:模型越强,越值钱
💡CPU 性能提升后,
我们没淘汰操作系统,反而需要更复杂的 OS。
同理:
大模型越强 → Harness 越复杂 → 工程师越重要🎯
我们没淘汰操作系统,反而需要更复杂的 OS。
同理:
大模型越强 → Harness 越复杂 → 工程师越重要🎯
· · ·
三、范式转移:Agent = Model + Harness
这是个必须搞懂的比喻:
🚗Model 是发动机
Harness 是底盘 + 方向盘 + 刹车 + 仪表盘
模型:负责模糊性推理
Harness:负责确定性业务
Harness 是底盘 + 方向盘 + 刹车 + 仪表盘
模型:负责模糊性推理
Harness:负责确定性业务
① Model 的"概率性黑盒"
🔴Model 的"本性":
· 同样输入,输出可能不同
· 版本迭代,行为会变
· 上下文微调,决策不同
i.e."在内部默默思考,你控制不了它"
就像黑盒发动机,你踩油门但不知道里面发生啥
· 同样输入,输出可能不同
· 版本迭代,行为会变
· 上下文微调,决策不同
i.e."在内部默默思考,你控制不了它"
就像黑盒发动机,你踩油门但不知道里面发生啥
② Harness 的"确定性职责"
🟢Harness 4 大职责:
[1] 方向盘 + 刹车
控制模型权限,防止它乱删数据库
[2] 传动轴 + 轮子
让思考变动作,调用 API、操作数据库
[3] 仪表盘 + 安全系统
记录决策、处理异常,可追溯
[4] 油表 + 路线规划
控制成本、调度资源、监控成本
[1] 方向盘 + 刹车
控制模型权限,防止它乱删数据库
[2] 传动轴 + 轮子
让思考变动作,调用 API、操作数据库
[3] 仪表盘 + 安全系统
记录决策、处理异常,可追溯
[4] 油表 + 路线规划
控制成本、调度资源、监控成本
· · ·
四、四大核心能力(上)
⚡ 能力 1:上下文管理(Context Management)
让模型看对信息。
🧠传统 vs Agent:
[传统开发]
上下文 = 数据 + 代码逻辑(分离)
[Agent 开发]
上下文 =程序逻辑本身
i.e."你喂啥,模型想啥"
[传统开发]
上下文 = 数据 + 代码逻辑(分离)
[Agent 开发]
上下文 =程序逻辑本身
i.e."你喂啥,模型想啥"
🟢上下文管理 · 三重境界:
[1] 隔离 Isolation
子任务建立"上下文防火墙"
防止冗余思考污染主任务
[2] 按需注入 On-demand Injection
像"打针",需要时才注入
避免信息过载
[3] 压缩 Compression
保留关键 + 瘦身
防止思考退化
[1] 隔离 Isolation
子任务建立"上下文防火墙"
防止冗余思考污染主任务
[2] 按需注入 On-demand Injection
像"打针",需要时才注入
避免信息过载
[3] 压缩 Compression
保留关键 + 瘦身
防止思考退化
示例 · 上下文隔离
# 主任务的上下文
main_context = [
system_prompt,
user_query
]
# 子任务的"隔离病房"
sub_context = []
sub_context.append(f"子任务:分析 {subtask}")
result = run_agent(sub_context) # 子任务的脏思考不进入主上下文
# 只把最终结果返回主任务
main_context.append(f"子任务结果:{result}")
main_context = [
system_prompt,
user_query
]
# 子任务的"隔离病房"
sub_context = []
sub_context.append(f"子任务:分析 {subtask}")
result = run_agent(sub_context) # 子任务的脏思考不进入主上下文
# 只把最终结果返回主任务
main_context.append(f"子任务结果:{result}")
💡人话版:
错误做法:把 100 个业务背景塞进 Prompt
模型:"信息过载我罢工"😵
正确做法:需要的时候"打针"
模型:"精准用药,效果最好"💉
错误做法:把 100 个业务背景塞进 Prompt
模型:"信息过载我罢工"😵
正确做法:需要的时候"打针"
模型:"精准用药,效果最好"💉
· · ·
⚡ 能力 2:控制流设计(Control Flow Design)
让模型走对方向。
💡传统 vs Agent 控制流:
[传统开发]
写死的A → B → C 流水线
[Agent 控制流]
在棋盘上给棋子划定规则
而不是规定每一步怎么走 ♟️
[传统开发]
写死的A → B → C 流水线
[Agent 控制流]
在棋盘上给棋子划定规则
而不是规定每一步怎么走 ♟️
🟢控制流 · 2 大策略:
[1] 计划机制 Planning
强制模型先规划 → 再执行
实测让任务成功率翻倍
[2] 自主认领 Autonomous Claiming
多 Agent 任务看板
避免"抢活"或"摸鱼"
[1] 计划机制 Planning
强制模型先规划 → 再执行
实测让任务成功率翻倍
[2] 自主认领 Autonomous Claiming
多 Agent 任务看板
避免"抢活"或"摸鱼"
示例 · 计划机制
# 错误做法:直接让模型干
agent.run("调研整个 AI Agent 行业")
# 模型:一片混乱,输出乱七八糟
# 正确做法:先规划,再执行
plan = agent.plan("把任务拆成 5 个子任务,画出依赖图")
# 1. 调研市场格局
# 2. 调研技术栈
# 3. 调研代表公司
# 4. 写 SWOT 分析
# 5. 汇总报告
result = agent.execute_by_plan(plan)
# 成功率 ↑ 200%
agent.run("调研整个 AI Agent 行业")
# 模型:一片混乱,输出乱七八糟
# 正确做法:先规划,再执行
plan = agent.plan("把任务拆成 5 个子任务,画出依赖图")
# 1. 调研市场格局
# 2. 调研技术栈
# 3. 调研代表公司
# 4. 写 SWOT 分析
# 5. 汇总报告
result = agent.execute_by_plan(plan)
# 成功率 ↑ 200%
💡没有控制流的 Agent:
让模型"随便干"
= 让实习生自己发挥
结果:要么瞎干,要么摸鱼🤷♂️
有控制流的 Agent:
给规则,让 Agent 自主认领
=成熟的项目经理👨💼
让模型"随便干"
= 让实习生自己发挥
结果:要么瞎干,要么摸鱼🤷♂️
有控制流的 Agent:
给规则,让 Agent 自主认领
=成熟的项目经理👨💼
· · ·
五、四大核心能力(下)
⚡ 能力 3:错误恢复(Error Recovery)
让模型犯错后能兜底。
🔴传统 vs Agent 错误:
[传统开发]
错误 =代码 Bug
靠 try-catch / 重试
[Agent 错误]
错误 =概率性系统的本性
模型误解意图、调用失败、谎称完成
[传统开发]
错误 =代码 Bug
靠 try-catch / 重试
[Agent 错误]
错误 =概率性系统的本性
模型误解意图、调用失败、谎称完成
💡Agent 的"经典撒谎":
你:"调用工具了吗?"
模型:"调了,已经成功"🤥
你查日志:压根没调!😭
i.e.Agent 的错误,是"幻觉 + 概率"
不是单纯的 Bug
你:"调用工具了吗?"
模型:"调了,已经成功"🤥
你查日志:压根没调!😭
i.e.Agent 的错误,是"幻觉 + 概率"
不是单纯的 Bug
🟢错误恢复 · 2 大原则:
[1] 架构级隔离
用"沙箱"隔离失败痕迹
防止污染主任务上下文
[2] 针对性补偿
分析错误根源
(缺工具?缺信息?)
Harness 补全后重新投喂
而非盲目重试
[1] 架构级隔离
用"沙箱"隔离失败痕迹
防止污染主任务上下文
[2] 针对性补偿
分析错误根源
(缺工具?缺信息?)
Harness 补全后重新投喂
而非盲目重试
示例 · 错误恢复
# 错误做法:盲目重试
for _ in range(3):
agent.run(task) # 同样的错误会反复出现
# 正确做法:分析错误 → 针对性补偿
result, error = agent.run(task)
if error:
if error.type == "missing_tool":
# 缺工具?补工具
agent.add_tool(error.suggested_tool)
result = agent.run(task) # 重试
elif error.type == "missing_info":
# 缺信息?查 RAG
info = retrieve_context(error.query)
result = agent.run(task, context=info)
for _ in range(3):
agent.run(task) # 同样的错误会反复出现
# 正确做法:分析错误 → 针对性补偿
result, error = agent.run(task)
if error:
if error.type == "missing_tool":
# 缺工具?补工具
agent.add_tool(error.suggested_tool)
result = agent.run(task) # 重试
elif error.type == "missing_info":
# 缺信息?查 RAG
info = retrieve_context(error.query)
result = agent.run(task, context=info)
· · ·
⚡ 能力 4:反馈回路(Feedback Loops)
让模型自我进化。
🧠关键区别:
[传统监控]给人看
[Agent 反馈]给模型看 🔄
把执行结果、错误信息
回流到上下文
驱动模型自我评估 + 修正
[传统监控]给人看
[Agent 反馈]给模型看 🔄
把执行结果、错误信息
回流到上下文
驱动模型自我评估 + 修正
🟢反馈回路 · 3 大场景:
[1] 计划跟踪 Plan Tracking
把未完成清单贴模型眼前
防止"遗忘初衷"
[2] 后台异步通知 Background
慢接口先返回
模型继续干别的
接口返回后通知拉回
[3] 动态推理强度 Dynamic
简单任务 →轻量模型
需要纠错 →拉回强模型
i.e.平衡成本与效果
[1] 计划跟踪 Plan Tracking
把未完成清单贴模型眼前
防止"遗忘初衷"
[2] 后台异步通知 Background
慢接口先返回
模型继续干别的
接口返回后通知拉回
[3] 动态推理强度 Dynamic
简单任务 →轻量模型
需要纠错 →拉回强模型
i.e.平衡成本与效果
💡Agent 反馈回路 ="驯兽师"
给模型:
· 实时反馈(做得对/错)
· 进度提醒(还有多少没做)
· 异常告警(出错了)
模型就会像被训的小狗一样
越用越聪明 🐕
给模型:
· 实时反馈(做得对/错)
· 进度提醒(还有多少没做)
· 异常告警(出错了)
模型就会像被训的小狗一样
越用越聪明 🐕
· · ·
六、终极思考:模型越强,工程师越重要
🚀终极洞察:
CPU 性能提升后,
我们需要更复杂的操作系统来调度算力
大模型能力提升后,
我们需要更精密的Harness来管理概率性
i.e."打补丁"的代码会过时,
四大能力永远不会♾️
CPU 性能提升后,
我们需要更复杂的操作系统来调度算力
大模型能力提升后,
我们需要更精密的Harness来管理概率性
i.e."打补丁"的代码会过时,
四大能力永远不会♾️
❌ 焦虑式思维
"大模型越来越强,工程师会失业"✅ 真相
"模型越强 → Harness 越复杂 → 工程师越重要"💡真正会失业的人:
· 只会"打补丁"的人(被模型替代)
· 不会系统性工程的人
永远不会失业的人:
· 掌握四大能力的人
· 能"驯兽"AI 的人 🐎
· 只会"打补丁"的人(被模型替代)
· 不会系统性工程的人
永远不会失业的人:
· 掌握四大能力的人
· 能"驯兽"AI 的人 🐎
· · ·
七、3 个成长建议
建议 1:从"打补丁"升级到"系统性"
❌ 别再写
"今天用 LangChain 0.3,明天追 CrewAI"永远在追,永远焦虑。
✅ 应该写
四大能力的"教科书级"实践建议 2:别追框架,要追概念
✅ 建议
追"如何隔离上下文"、"如何设计控制流"这些概念在任何框架都适用。
建议 3:做"驯兽师",不当"键盘侠"
❌ 别做
只会"写代码"的代码农✅ 应该做
"驯兽师"设计 Harness 框架
让模型在框架里稳定输出价值
· · ·
八、一句话总结
Agent 工程师的核心,
是在不确定性上构建确定性。🛠️
是在不确定性上构建确定性。🛠️
从"AI 工具使用者"
升级为"智能体系统架构师"
掌握四大核心能力:
上下文管理 + 控制流设计
错误恢复 + 反馈回路
技能保质期:从几个月 → 永久♾️
模型越强,工程师越重要。
升级为"智能体系统架构师"
掌握四大核心能力:
上下文管理 + 控制流设计
错误恢复 + 反馈回路
技能保质期:从几个月 → 永久♾️
模型越强,工程师越重要。
下次有人跟你说"我被 AI 替代了",
你可以问他:
"你是在打补丁,还是在建系统?"
补丁会被替代,
系统永远不会。
从"代码农"升级为"驯兽师",
让 AI 在你的 Harness 里稳定输出价值。🐎
夜雨聆风