Skip to content

一句话总结:Agent 是完整软件系统;模型只是 10% 的工作,流式、持久性、可观测性占另外 90%。先看可观测与预算,再谈上线。

上线前基线(缺一不可)

  • 日志追踪:没有它 Agent 是"没有仪表盘和刹车的车"
  • 成本预算机制:预算上限、每用户配额、每请求成本跟踪

生产教训(真实案例)

  • 无限循环:单 Agent 死循环烧巨额 token(必须预算/最大步数硬性)
  • 上下文截断:多 Agent 传参被 token 限制截断,下游拿到残缺数据
  • 行业数据:79% 企业在搞 Agent,跑通生产的只有 2%——卡在工程化

架构与工程化

  • 分层:接入层 → 编排层 → 能力层(工具统一注册/调用/可插拔) → 模型层 → 运维层(日志/耗时/成本统计/告警/并发)
  • 容器化:Docker 多阶段构建保证环境一致、一键部署、快速回滚
  • 可靠性工程:重试、补偿、回滚、升级路径、幂等动作、检查点状态;API 会超时、模型会幻觉、计划会偏离
  • 并发控制:信号量限流(如 50 并发)、忙时友好降级

可观测性(三支柱 + Agent 专属)

  • 基础设施:指标(Prometheus)+ 日志(Loki)+ 链路追踪(OpenTelemetry)
  • Agent 专属信号
    • 完整 prompt-response 对;多轮上下文分组
    • Agent 轨迹与中间步骤(工具调用、推理选项)——没它无法复盘"为什么答错"
    • LLM trace:tokens in/out、延迟、模型版本
    • 语义指标:faithfulness(忠实检索源)、completeness(覆盖任务)、sufficiency(不幻觉不遗漏)、drift(质量漂移)

质量监控(在线 eval)

  • 采样 1-5% 生产 trace 触发检查(JSON schema 有效?误拒良性请求?工具调用无错?):便宜 LLM-as-judge 判软问题、结构化断言判硬问题
  • 持续评分线上交互:抓工具选错、任务失败、质量退化(基础设施指标看不到)
  • 离线 eval 管线:回归测试集 + 版本对比

成本治理(FinOps)

杠杆做法效果
模型分层路由复杂推理贵模型,格式化/摘要/分类便宜模型成本 -60~80%
Prompt Cachingsystem prompt + 工具定义固定部分命中缓存显著降费
缓存2 级缓存(精确+语义,30%+ 重复问题成本归零)单次成本归零
限流/熔断并发控制、错误率>5% 熔断走降级防打爆账户
退避重试指数退避(1s→2s→4s)+ 最大重试次数防无限重试烧 token
成本监控+熔断单日成本超预算自动降级/暂停防失控

真实案例:月耗 $28万 → $9.3万(微调→缓存→编排→监控全链路)。

上线流程

原型 → 单 Agent 循环跑通(规划→执行→反思→重试)→ 加可观测与预算 → 灰度发布 → 全量。多 Agent 协作放最后。

面试要点

  • "模型是 10%,其余 90% 是流式/持久性/可观测性"
  • 上线前必须有日志追踪 + 成本预算
  • 可观测三支柱 + Agent 轨迹/中间步骤 + faithfulness/completeness/drift
  • 在线 eval:1-5% 采样 + LLM-as-judge + 结构化断言
  • 成本杠杆:模型路由 / Prompt Caching / 语义缓存 / 限流熔断 / 退避重试 / 预算熔断
  • 可靠性:幂等、检查点、补偿回滚;防无限循环