人工智能火起来以后,技术社区里开始流传一个词叫 p(doom)。它原本描述的是 AI 引发重大负面结果的概率,聊多了以后变成一种比较宏观的焦虑。可放到真正做大模型应用、部署模型服务、接 AI Agent 的项目里,我不会拿一个宏观概率吓自己,而是把它拆成几个更可操作的指标:单个请求会不会产生无法承接的输出,Agent 会不会在工具调用里反复空转,月度 token 成本会不会没有预警地翻倍,AI 生成代码会不会带着漏洞合入主干。这些具体概率叠加起来,才是一个系统当前真正的风险值。
我比较认同一种做法:真正能降低风险值的措施,常常不是给模型本身加更多限制,而是让商业系统里早就存在的现实约束反过来限制 AI 接入速度。成本账单、用户反馈、交付时间、资源上限、测试门禁、上线审批,这些机制虽然没有“最新模型”听起来性感,却能给系统提供明确的物理边界。所以下面不讨论遥远的存在主义焦虑,而是把一个偏抽象的说法落地成工程场景:如何利用成本、市场反馈和交付压力,主动让模型应用跑得慢一点,把系统层面的 p(doom) 压下去。
1. “减速”不是态度问题,而是工程动作
在 AI 热度最高的团队里,主张“慢一点”经常被理解为保守。但把时间线拉长看,很多项目失败不是因为起步晚,而是因为上线太快、事故太频繁,最后不得不整体回滚或推倒重来。
1.1 真正的风险不在“模型变聪明”,而在“输出之后没人负责”
模型能力越强、生成越流畅,团队越容易把“它做到了”和“它可以上线了”混为一谈。实际上从模型输出到业务结果之间还有很长链路:结构化校验、权限判断、敏感信息过滤、人工复核、日志审计、成本核算、失败兜底。任何一个环节缺位,都会变成事故入口。
我在做应用时通常会问一个问题:这条自动生成的内容或动作,最终由谁负责。如果是客服回复,由谁确认它不会造成错误承诺;如果是自动建单,由谁确认它不会在真实环境里产生脏数据;如果是代码补丁,由谁确认测试覆盖真的够了。答案不能是“模型负责”,因为模型不负责。答案也不能是“用户自己承担”,这只是在推卸设计责任。必须在系统里把责任归属落到一个明确动作上。
最简单的落地方式是在关键节点加人工确认或自动校验:对外发送内容时先进审核队列,Agent 要执行写操作时先获得授权,代码生成后必须过代码评审。这样做的确会让自动化率下降一点点,却能把p(incident)控制在一个可以承受的范围内。如果产品内部对关键动作没有审计、对高危操作没有确认、对输出没有质量门禁,那讨论宏观的 p(doom) 其实没有太大意义,因为眼前的系统风险已经很高。
1.2 商业规则会给 AI 接入设置闸门
商业系统本身有一套约束机制:客户不满意会流失,错误承诺会引发争议,批量任务浪费算力会造成账单上涨,不符合安全要求的代码迟早被线上事故教训。聪明的团队会把这些约束提前内置到流程里,而不是等用户投诉或老板注意到成本时才补救。
可以理解为三步:
- 把来自产品、财务、法务、运营的约束写成显式准入条件。
- 把准入条件变成代码里的参数或流程里的关卡。
- 把流程结果回收成评价体系的一部分。
具体到实际操作,当团队想引入一个新模型、新 AI 能力或新自动化流程时,不要先问“模型效果多好”,而是先回答以下问题。我习惯用一张准入表来评审。
| 评估维度 | 要回答的问题 | 不满足时的处理 |
|---|---|---|
| 成本边界 | 单次完整调用要消耗多少 token,批量跑一个月大概多少费用 | 先小流量验证,再放大 |
| 延迟要求 | 用户能接受几秒内返回,模型推理时间是否达标 | 考虑缓存、蒸馏或换更小模型 |
| 数据边界 | 输入输出是否包含个人隐私,是否允许数据流向规定范围 | 走本地部署或内网网关 |
| 依赖稳定性 | 上游接口或模型版本变更会不会导致连锁故障 | 锁版本、做订阅与灰度 |
| 输出稳定性 | 生成结果是否能通过格式、语义和业务校验 | 建立评测集,先用规则兜底 |
| 回滚能力 | 出问题时能否快速切回旧方案或关闭新入口 | 保留开关和旧版本 |
这些条件看起来都是“商业限制”,但实际比任何一个抽象口号都更能决定 AI 能不能健康落地。它不让 AI 盲目往前冲,而是先把跑道清干净。
1.3 给新技术设“准入门槛”,不等于不采用新技术
追求最新模型、最新 Agent 框架、最大上下文窗口,本身没有错。问题在于很多团队把“技术上线”当作一次个人试用,缺少面向业务的验收标准。没有验收标准,就没有资格谈提速。
我更建议把“使用最新模型”从默认动作改成有前置条件的动作。条件可能是:成本能覆盖、延迟能接受、数据可以合法使用、输出能通过评测集、回滚方案已准备好。和过去端到端交付一样,新模型导入也需要走变更流程,只是评审人里多加了算法、运维、安全和业务方。
当团队内部已经形成这套节奏,跟进新技术反而更快。因为评测集、灰度、回滚等基础设施复用起来非常顺,每出一个新版本,只需要在同一套门禁里跑一遍。减速的意义就在这里:先建立可重复的质量基线,再谈把油门踩到底。
2. 用算力、预算与任务队列建立第一道“资源刹车”
模型层的东西往往被讨论得很多,但真实项目最先失控的经常是资源层。一个请求偶尔失败,可以通过重试解决;一百个请求同时进来,没有上限就会把服务打挂;批量任务没有成本预算,一天下来账单可能让你怀疑系统被恶意调用。
2.1 本地部署前先做“面积换算”,不要只看显存数字
如果要在本地机器上部署模型,第一步不是急着下载权重,而是看机器规格和模型容量是否匹配。可以用一个大致的估算方式:FP16 精度下,模型权重显存占用约等于参数量乘以 2 字节;INT8 量化后约等于参数量乘以 1 字节。推理时的 KV Cache、临时激活、服务框架本身还会额外吃一段显存,所以实际需要比裸权重更大。
举例来说,一个只有 8GB 显存的环境,比较稳妥的路子是选择参数量很小且经过量化的模型,而不是硬跑几十 B 的大模型。如果你的任务是处理中文长文本或复杂工具调用,还要把上下文长度和批量并发算进去。不同模型体积、推理框架和量化方式差异很大,落地时以你选用的模型兼容