揭示AI特性真实成本构成:系统提示词、上下文、向量数据库、监控、重试等「 machinery」成本常被低估。
大家记住的都是构建成本。真正决定一个 AI 功能能否活下来的,是每个月的运行费用,而且它往往在第二个月才出现——正好是试用额度用完、真 实流量涌入的时候。
我给 AI 功能做预算的方式,跟给送货车做预算一样。买车是一次性的。油费、保险、司机,永远在烧。下面说说油费到底藏在哪里。
Token,包括那些你忘记算的。大家都会计算用户的问题。很少有人把系统提示词、检索到的上下文、few-shot 示例,以及模型自己的输出都算进去——这些在每次调用时都要计费。一个在测试中看起来很小的 3000 token 上下文,一旦每个请求都拖着这条提示词,费用就能飙到估值的 10 倍。
重试与检索。失败后重试一次,费用翻倍。RAG 功能还需要为每个文档支付嵌入费用、存储向量,以及每次查询时运行相似性搜索。模型账单只是长长收据上的一行。
模型周围的机械。向量数据库托管。可观测性日志——对 AI 功能来说这不是可选项。出口流量。后期为了不让同一答案付两次钱而加的缓存。
人肉审核。如果有人审核被标记的输出,那审核时间就是这个功能的持续运行成本,应该算进预算——尽管没有任何供应商会为此给你开发票。
我们实际怎么做预算
在功能还没写一行代码之前,我们就估算每次操作的成本。输入的平均 token 数 × 输出的平均 token 数 × 模型价格 × 预期调用量。这是毛估,但通常八九不离十,因为这些输入都是可知的。
然后我们选通过评估的最便宜的模型,而不是排行榜上最高的那个。在你的真实任务上足够好的小模型,可以把账单砍到 1/5 到 1/10。我们把简单的 80% 请求发给便宜模型,只把困难的那些升级。缓存重复查询再切掉一块。
最后一步是在上线前接入硬性消费上限。按用户、按天、按功能。一个失控循环或者爬虫猛击你的端点,应该触发限制并通知人,而不是一直计费直到卡片被拒。
给客户真实的数字
我们给 AI 工作做范围时,会给客户两个数字。一次构建,以及按预期量运行的每月费用,假设条件写在旁边。一个认可了每月 600 美元运行费用的客户,看到账单是 600 美元时不会慌。只看到构建价格的客户会觉得被偷袭了,他们这么想是对的。
这场对话不光鲜,但它能防止一个项目在六周后变味。Shanti Infosoft 的团队把运行成本估算作为报价的一部分,而不是之后大家一起发现的东西,你可以在这里看到我们怎么做范围:https://shantiinfosoft.com。
在《没有人告诉你的自动化成本博弈》中,我们进一步拆解了运行成本的计算。
你的 AI 功能每个月实际运行成本是多少?第一次估算差得多吗?