跳到主要内容

37 篇博文 含有标签「finops」

查看所有标签

Token-Per-Watt:你的仪表盘无法计算的 AI 可持续性指标

· 阅读需 12 分钟
Tian Pan
Software Engineer

你的可持续发展仪表盘报告显示:“本季度 AI 能耗:2.3 GWh,同比下降 4%”,这张幻灯片在 ESG 评审中得到了礼貌性的认可。六个月后,CFO 走出分析师电话会议,向平台负责人提出了一个听起来很简单的问题:“我们的每瓦特 Token 数(token-per-watt)是多少?与竞争对手相比如何?”仪表盘无法回答。这并不是因为数据缺失——仪表盘里堆满了数据——而是因为它将推理视为单一的条目,将任务视为产品概念,而 AI 可持续性唯一真实的单位存在于这两者的交汇点。

这种错位并不是报告中的 Bug。这是一个分类错误,现有的碳核算指南(为基于 CPU 小时和每台虚拟机 kWh 的云工作负载而完善)无法独自解决。推理并不是一种具有稳定能量特征的工作负载。每 Token 的瓦特数会根据响应请求的模型层级(model tier)产生 30 倍的变化,根据调用时的批处理大小(batch size)产生 4 倍的变化,并根据前缀缓存(prefix cache)是否命中而产生另一个数量级的差异。将这些汇总成一个单一的 GWh 数字,就像在包含踏板车、轿车和 18 轮大卡车的车队中报告“平均汽车燃油效率”一样——在最无用的层面上,它是准确的。

厂商基准测试是你的天花板,而非预测

· 阅读需 12 分钟
Tian Pan
Software Engineer

模型发布的公告在周二早上落地。博客文章开头是一张图表:HumanEval 提升了 4 个点,SWE-bench Verified 提升了 6 个点,MATH 提升了 3 个点,而当前流行的 Agent 测试套件提升的数值在一年之前足以写成一篇研究论文。到了周二下午,你公司的 Slack 频道里就会出现该图表的截图,随之而来的还有一个类似决策的问题:“我们要切换过去吗?”这个讨论线程将基准测试的增量视为一种预测 —— 仿佛这些数字描述了新模型在 你的 产品中、使用 你的 提示词、在 你的 工具链下、针对 你的 评估准则所能表现出的效果。事实并非如此。厂商给出的数字是你可能看到的性能上限。你实际获得的提升大约在零到该标题数值的一半之间,如果不运行一次厂商从未运行过的评估,你无法得知确切结果。

这并非在抱怨基准测试的有效性。基准测试是真实的。它们是针对真实的评估套件运行的。厂商没有撒谎。问题在于厂商的评估套件是一个理想化的环境,剥离了生产部署中引入的每一个变量,而在这些条件下生成的数字在结构上无法预测模型在你环境下的行为。将其视为一种预测是一种范畴错误 —— 它会导致采购决策、容量规划承诺以及发布时间表都基于虚构的事实进行校准。

复合型 AI 系统中的内部结算账本

· 阅读需 11 分钟
Tian Pan
Software Engineer

当 CFO 第一次问“这个助手每月花掉我们多少钱”时,工程团队会给出一个数字。第二次问时,另一个团队会给出不同的数字。第三次问时,财务部门会给出第三个数字,然后有人会打开一个电子表格,尝试从 Span(跨度)中重新推算账单,因为没有人再相信之前的任何答案。就在这一刻,复合 AI 系统(Compound AI System)不再仅仅是一个架构问题,而变成了一个会计问题。

这种故障的形式是结构性的。一个简单的用户请求“总结我上季度的客户反馈”会触发由团队 A 拥有的智能体,它调用由团队 B 维护的检索工具,接着调用由供应商 X 托管的模型,然后通过团队 C 的重排序工具回传结果,而重排序工具又调用了由供应商 Y 提供的另一个模型。一次点击;五个所有者;两张相隔一个月到达的账单。标准的 FinOps 原语——成本中心、分配标签、账号级汇总——是为了切割那些已经拥有稳定所有者的基础设施而设计的。它们无法清晰地组合在一个每次请求都会跨越团队边界的内部调用图中。

《2026 年 FinOps 现状报告》指出,98% 的 FinOps 团队需要对 AI 支出负责,而同一份调查将“对 AI 成本的实时可见性”列为最大的工具缺口。这个缺口并不是“我们看不见账单”,而是“我们无法足够快地看清是账单的哪一部分是由谁产生的,以至于无法在账单寄到之前让任何人改变其行为”。

推理力度预算编制:当思维 Token 成为财务账单的独立细目

· 阅读需 13 分钟
Tian Pan
Software Engineer

当你的财务团队第一次问,为什么单个用户在回答一个价值 0.1 美分的问题时产生了两美分的账单,那个电话讨论的不会是模型,而是发票上那行十二个月前还不存在的项目:推理 Token (reasoning tokens)。在账单上它们看起来像输出 Token,在大多数服务商那里也按输出 Token 的费率计费,而且它们没有天然的上限。一个在非推理模型上只需产生 400 个 Token 回复的查询,可能会悄无声息地消耗 8,000 个内部思考 Token 才能得出答案——唯一注意到这一点的人是核对支出的人。

在 API 时代的大部分时间里,“使用的 Token 数”是一个诚实的数字。你输入提示词,得到响应,账单是两者的清晰函数。推理模型打破了这种直觉。模型现在在发出调用者将阅读的答案之前,会生成一个隐藏的、可计费的、仅内部可见的思维链,而该链的大小取决于模型自身对问题难度的评估。用户可见的输出可能只有一句话,而账单可能长达十页。

Token 放大:烧掉你账单的提示词注入攻击

· 阅读需 11 分钟
Tian Pan
Software Engineer

用户提交了一个 0.01的请求。你的智能体读取了一个网页。40秒后,该次对话的推理账单变成了0.01 的请求。你的智能体读取了一个网页。40 秒后,该次对话的推理账单变成了 42。该查询在技术上是成功的——智能体返回了一个合理的答案。只是为了得到这个答案,它经历了三个嵌套的子智能体、一次 200K token 的文档获取,以及一个递归的计划优化循环。这些扇出(fanout)操作并非用户的本意,而是隐藏在智能体所读取页面中的一句话。

这就是代币放大(token amplification):一种提示词注入攻击,它不窃取数据,不调用未授权工具,也不会留下明显的安全特征。它只是烧光你的账单。云账单是攻击载荷,而用户的请求则是载体。

Token 预算是新一代的内部 IAM

· 阅读需 12 分钟
Tian Pan
Software Engineer

当你的 AI 账单月额度首次突破七位数时,预算会议的形式就会发生变化。在那之前,问题是“我们能否负担得起”。在那之后,问题变成了“谁能分到多少”——而大多数工程团队会实时发现,他们根本没有应对这一问题的政策框架。那个发布了最响亮演示的团队会意外地获得最高配额。财务部门则在推行扁平的人均上限,这让那些从事最高杠杆工作的团队陷入困境。安全部门则完全被排除在对话之外,直到有人发现评估团队过去六个月一直在通过个人 Token 额度拉取生产流量。

这种对话之所以总是感觉像是在争论云成本,是因为它确实接近云成本,但不完全是。在云端,浪费的单位是一个被遗忘的 EC2 实例,最坏的情况是账单翻三倍。而对于 Token 配额,浪费的单位是一个失控的 Agent 循环,而准入的单位则是面向用户的功能:谁掌握了预算,谁就能发布功能。后一种特性使得 Token 分配更接近基于能力的安全性(Capability-based security),而不是云 FinOps。配额不仅仅是一个支出上限。它是执行一类推理的权利。

推理预算委员会:Token 支出突破七位数时的治理之道

· 阅读需 13 分钟
Tian Pan
Software Engineer

在每月 50,000 美元的水平时,你基础设施账单上的“计算 + Token”这一项只是可以忽略不计的零头。但当每月达到 5,000,000 美元时,它就是一个 CFO 级别的问题。这两个阶段之间的转变并不是渐进的——它是组织讨论模型支出方式的一种“相变”,而大多数工程组织对于随之而来的社会和政治工作都准备不足。账单依然是那简单的一行;但围绕它的对话却不再简单。

改变的是谁有资格问“为什么”。当三个产品团队共享一个 API Key 和一个预留容量时,每一个配额争论的结构都是相同的:某人正以牺牲他人的利益为代价获胜,而没有中立方来主持公道。当一个团队的发布第一次因为另一个团队上线了一个“话痨”智能体(agent)而受到限制时,整个工程组织会立刻感受到治理机构缺失带来的痛苦。在压力之下召开会议并凭空发明流程,是设计流程最糟糕的时机。

取消税:用户点击停止后的推理账单

· 阅读需 10 分钟
Tian Pan
Software Engineer

你的停止按钮是个谎言。当用户点击它时,你的 UI 停止渲染 Token;但在大多数配置下,你的供应商仍在继续生成它们。这些字节从未到达浏览器,但却出现在你的发票上。用户看到的与你支付的之间的差距就是“取消税”(cancellation tax),它是 AI 成本仪表盘上被低估最严重的支出项。

取消税的存在是由结构性原因导致的。自回归推理是一个受 GPU 限制的流水线:当你的客户端关闭 TCP 连接时,模型已经排好队、完成了 KV 缓存,并正以每秒 30–200 个 Token 的速度输出。大多数推理服务栈在 Token 之间不会检查客户端的活跃状态。它们完成任务,记录用量,然后向你收费。客户端看到了 10 个 Token,而日志记录了 800 个。Langfuse、Datadog 以及所有其他观测平台都会忠实地报告这 800 个 Token,因为那是供应商 usage 数据块报告的内容。

按功能计费,而非按 Token 计费:AI 预算分配中的缺口

· 阅读需 11 分钟
Tian Pan
Software Engineer

你的财务团队可以准确告诉你,上个月你在 Anthropic 和 OpenAI 上花了多少钱。你的产品团队可以告诉你,哪些功能的用户点击量最高。但公司里没人能告诉你 Draft-Email 是否盈利,Summarize-Thread 是否应该保留在免费层级,或者新的 Rewrite-Tone 功能是否在单用户成本上蚕食了 Draft-Email 的利润。你拥有两个声称追踪同一笔支出的仪表盘,但它们都无法回答那个真正驱动产品决策的问题。

这就是分配缺口。你按端点(endpoint)测量 Token 支出,因为这是供应商 API 提供的数据。但 /chat 端点服务于 12 个刚好共享同一个提示词模板的功能,“按端点”统计将这 12 个功能全部合并到了同一个细目中。在有人完成将 Token 成本导回至产生成本的功能这一底层工作之前,定价层级、功能权限管理、弃用决策以及“我们要不要发布这个功能?”的讨论,全都只能靠直觉。

这项底层工作并不光鲜。它是请求级标记(request-level tagging)、追踪与遥测数据的关联(trace-to-telemetry joins),以及一种坚决的态度:如果不带成本标签,就不发布任何 AI 功能。将此视为基础设施投资的团队,最终会获得按用户群细分的单功能利润报告。而将其推迟到下季度的团队,最终在 18 个月里只能凭感觉做定价决策,并在事后发现,某个单一客户群在负利润的情况下消耗了一半的推理账单。

模型账单仅占你推理成本的 30%

· 阅读需 10 分钟
Tian Pan
Software Engineer

一家中型 AI 公司的财务负责人在上个季度告诉我,他们通过将 Agent 骨干模型从 Sonnet 切换到 Haiku,“优化了他们的 LLM 支出”。Token 账单下降了 22%,而每个已解决工单的总推理成本仅下降了 4%。当我们进行完整的成本拆解时发现,模型这一项支出大约仅占单次请求成本的三分之一。检索、重排序(reranking)、可观测性、重试放大以及人工介入(human-in-the-loop)审核队列吃掉了剩下的部分——而且当你更换模型时,这些环节都没有变得更便宜。

这是我目前在 AI 团队中看到的最常见的财务核算错误。Token 成本是你每月支付的发票上的分项,因此它成了每个人都在优化的数字。但对于任何非平凡的生产系统——RAG、Agent、任何带有工具调用或评估门控的系统——模型推理往往只占实际单位经济效益的 30% 到 50%。剩下的部分隐藏在你的工程仪表盘不会显示、且财务团队不会将其归类为 “AI 支出”的地方。

Token 消耗是你的 SOC 尚未监控的安全信号

· 阅读需 12 分钟
Tian Pan
Software Engineer

你技术栈中最灵敏的泄露信号并不在 SIEM 中。它隐藏在财务人员月初打开的一份电子表格里。当攻击者窃取了 LLM API 密钥、利用提示词注入(prompt injection)窃取数据,或者通过被入侵的租户会话查询相邻客户的内存时,痕迹首先会表现为 Token 使用异常——这远在任何 DLP 规则触发、任何身份验证警报响起或任何终端代理察觉到异常之前。财务看到了,而安全部门却没看到。

这种差距并非理论上的。Sysdig 的威胁研究团队在观察到攻击者利用窃取的云凭据产生每日五位数的账单后,创造了“LLMjacking”一词。这一类别现已演变成一个有组织的犯罪产业,出现了每个账号 30 美元的交易市场,且有记录显示某些活动让受害者的损失每天超过 100,000 美元。OWASP 记录了一家初创公司因为密钥泄露,在 48 小时内产生了 200,000 美元的账单。斯坦福大学的一个研究小组由于在 Jupyter notebook 中遗忘了一个 Token,在 12 小时内烧掉了 9,200 美元。所有这些事件的共同点是:在安全团队察觉之前,账单图表就已经在几个小时甚至几天前揭示了真相。

为什么智能体成本预测已经失效 —— 以及我们该如何应对

· 阅读需 12 分钟
Tian Pan
Software Engineer

你的财务团队想要一个数字。AI 智能体系统每月会花费多少钱?你根据平均 Token 使用量给出了估算,乘以预计的请求量,并加上了安全余量。三个月后,实际账单是预测值的 3 倍,而且没人能解释原因。

这并非预算编制的失败,而是建模的失败。传统的成本预测假设单次请求的成本会聚集在一个可预测的平均值附近。智能体系统在每一个层面上都打破了这一假设。执行路径是多变的。每次请求的 LLM 调用次数是多变的。每次调用的 Token 数量是多变的。这些变量之间的相互作用产生了一个带有“肥尾”(Fat tail)的成本分布,从而吞噬了你的利润。