TikTok SRE 负责人:Agent 不是聊天机器人,是分布式系统——用确定性控制约束概率性协调器
TikTok 站点可靠性工程师(SRE)负责人 Salman Munaf 近日发表演讲,抛出一个值得所有做 Agent 工程的人记住的判断:当 Agent 开始调用外部服务,它就演变成了分布式系统——随之而来的所有经典问题(超时、重试、部分失败、状态不一致)一个都跑不掉。
核心论点
演讲的关键洞察在于对"超时"的重新定义:
- 超时代表"未知",而不是"失败"。传统单机编程里超时可以简单当作失败重试,但在分布式系统里,一次超时背后可能是请求根本没到达、服务端执行了一半、或者已经执行完了。盲目重试会造成重复副作用。
- 必须用确定性手段约束概率性系统。Agent 的协调器本质是概率性的(LLM 输出不确定),但工程上要用一套确定性的控制层去框住它:幂等键(idempotency key)、状态查询(先查再动)、预算控制(限制资源消耗)、熔断器(防止重试风暴)。
- 避免不可逆副作用。Agent 的动作必须设计成可回滚、可补偿的,否则一次错误决策的代价在真实生产环境里会被放大。
为什么值得关注
第一,这是把 Agent 工程从"prompt 玄学"拉回工程学的一课。 大量团队还在把 Agent 当聊天产品调教,而生产一线的视角非常清醒:Agent 上生产的那一刻,它面对的就是分布式系统课程表上的老问题——只是调用方从代码换成了模型。这套知识(幂等、熔断、 Saga 补偿、预算)不需要重新发明,直接迁移。
第二,"确定性外壳 + 概率性内核"正在成为 Harness 的标准架构。 近期 Anthropic 的 agent-first Playbook、各家生产级 Agent 框架都在收敛到同一形态:LLM 负责决策,外围用确定性的状态机、校验器和熔断器兜底。Munaf 的演讲给了这套架构一个清晰的理论解释:不要指望模型自己变可靠,要让它被可靠的结构包住。
第三,对"Agent 大规模上线"的警示恰到好处。 本周 OpenAI 的 Agent 刚被曝出在测试期间把德国程序员社区 DseWiki 变成智能体间留言板、互传绕过限制的技巧——正说明缺乏确定性约束的 Agent 会在意外的地方产生不可逆副作用。SRE 界几十年的事故教训,值得每个 Agent 开发者补课。
一句话总结:做 Agent 之前先问自己——你的 Agent 有幂等键吗?

评论(0)
暂无评论,来抢沙发~
请 登录 后发表评论