de_DEen_USes_ESfr_FRhi_INid_IDjapl_PLpt_PTru_RUvizh_TW

🏗️ 从一次性代码到持久设计

代理型AI时代建模的隐性价值

神话: “AI现在能写代码了,所以架构不重要了。”
现实: “AI现在能执行动作了,所以架构比以往任何时候都更重要。”


🚨 警示信号

我们正目睹一场一次性代码。开发者用胶带式提示拼接API调用,构建出脆弱的逻辑链条,在演示中表现完美,但在生产环境中却瞬间崩溃。

在聊天机器人时代,幻觉不过是一条有趣的错误信息。
代理型AI时代,幻觉可能是一次被删除的数据库、一次未经授权的汇款,或一次违反合规法规的行为。

当我们从生成式AI(生成文本)转向代理型AI(执行任务)时,软件建模的价值不仅没有降低,反而急剧上升。这就是为什么未来不属于最优秀的提示工程师,而属于最优秀的建模者的原因。


📉 “提示优先”架构的陷阱

目前,许多团队正以这种方式构建代理:

  1. 输入:用户请求一个复杂任务。

  2. 处理:大语言模型接收一个包含50条规则的庞大系统提示。

  3. 动作:大语言模型直接输出JSON或函数调用。

  4. 风险: 没有状态追踪,没有类型安全,除了“请不要搞砸”之外没有任何防护措施。

⚠️ 为什么这在规模化时会失败

功能 仅靠提示的方法 建模方法
可靠性 概率性(希望它能工作) 确定性(保证约束)
调试 “提示太模糊了” “状态转换违反了第4条规则”
可扩展性 上下文窗口会很快填满 状态被外部化并加以管理
安全性 依赖大语言模型对齐 依赖模式验证

💡 关键洞察: 没有模型的代理只是拥有根权限的混乱实习生。有模型的代理则是一位带着清单的资深工程师。


🧱 建模的复兴

建模并不是画那些没人看的UML图。在代理时代,建模是关于 创建AI能够安全思考的防护框架。

1. 领域建模作为“真实基准” 🌍

大语言模型是在整个互联网上训练的,而不是 你的 业务逻辑。如果你让一个代理去“处理退款”,它会根据公开数据猜测其含义。

  • 解决方案: 定义一个严格的 领域模型.

  • 价值:您迫使大语言模型将其自然语言理解映射到您的特定实体(订单、客户、政策)上。这通过将AI锚定到您的模式,减少了幻觉。

2. 将状态建模为“记忆” 🧠

智能体需要知道它们在工作流中的位置。提示链会丢失上下文。

  • 解决方案:实施状态机(例如:空闲 → 规划 → 执行 → 验证 → 完成)。

  • 价值:智能体无法跳过步骤。它不能在“规划”之前就“执行”。它不能在“验证”之前就“完成”。

3. 将约束建模为“安全” 🛡️

如果智能体尝试调用它不该调用的API会发生什么?

  • 解决方案: 本体和能力图谱。

  • 价值:智能体只了解其当前状态有效的工具。它实际上无法看到delete_user函数,当处于read_only_mode.


🛠️ 案例研究:旅行代理对决

让我们看看构建一个能够预订航班和酒店的AI旅行代理的两种方法。

❌ 方法A:一次性脚本

  • 逻辑:一个巨大的提示:“你是一名旅行代理。为用户预订航班和酒店。使用这些工具。”

  • 失败模式: 用户说“帮我订一张去火星的航班。” LLM 尝试使用无效参数调用航班 API。或者,它在未确认航班日期前就预订了酒店,导致冲突。

  • 结果: 预订失败,客户愤怒,API 速率限制被封禁。

✅ 方法 B:建模系统

  • 逻辑: A 工作流图.

    1. 意图状态: 验证目的地是否存在于数据库中。

    2. 航班状态: 搜索 → 选择 → 持有(锁定库存)。

    3. 酒店状态: 搜索 → 选择 → 持有。

    4. 交易状态: 扣款 → 确认双方 → 释放。

  • 成功模式: 如果用户说“火星”,那么 领域模型 在 LLM 看到 API 之前就拒绝该目的地。如果航班失败,状态机将自动回滚酒店的持有状态。

  • 结果: 稳健、可审计、可恢复的交易。


🚀 经济论点:技术债务 vs. 设计债务

人们普遍误解建模会减慢开发速度。在人工智能时代,事实恰恰相反。

  • 提示调优是迭代债务: 你调整一个提示,就会破坏其他部分。你加上“不要做 X”,结果它就不再做“Y”了。这是一种高维护成本的债务。

  • 建模是前期投资: 你只需定义一次类型和状态。AI 会适应模型。当业务逻辑变化时,你只需更新模型,而不是修改那 50 页的系统提示。

📉 成本曲线:

  • 第1周: 提示工程更快。

  • 第1个月: 建模速度相当。

  • 第1年: 提示工程难以维护,如同一团乱麻。建模则是宝贵的资产。


🧭 架构师的新工具包(M.A.P.)

为了在代理时代生存下来,采用 M.A.P. 你下一个AI项目的框架:

1. M建模数据

不要让大语言模型输出原始字符串。强制输出进入 Pydantic模型 或 JSON Schema.

  • 规则: 如果它没有类型,那就不是真实的。

2. A设计流程

不要让大语言模型决定操作顺序。使用 状态机 或 工作流引擎 (例如 Temporal 或 LangGraph)。

  • 规则: 大语言模型填充槽位;代码驱动车辆前进。

3. P保护边界

定义 前置条件 和 后置条件 适用于代理可以使用的每一种工具。

  • 规则: 信任,但要验证。在执行前始终验证代理的输出。


🔮 未来:架构师如园丁

在过去,开发者是砌砖工,亲手放置每一行代码。
在未来,开发者将成为 园丁.

你不会把每一片叶子都摆放到合适位置。你设计支架(模型),滋养土壤(数据),修剪危险的枝条(约束)。然后,你让AI自由生长。

一次性代码构建演示。
持久的设计构建帝国。

随着最初的AI热潮逐渐平息,市场不会奖励那些能写出最多代码的人。它会奖励那些能够 设计出让代码保持诚实的系统的人。

🏁 最终启示

不要停止编码。开始建模。AI是引擎,但  是方向盘。

发布于 分类 AI