模块 XI(成本与 AI FinOps)从提供商成本数据流核算 AI 支出并执行预算。达到上限时,预算关口拒绝支出。这是在线执行,始终在默认二进制文件中连接——不是你以后才需要配置的按需功能。如果预算已配置,关口就是在线的。
预算关口
预算关口有两种执行模式:
- 限流(Throttle) ——对支出进行限速,优雅降级。代理被减速而非完全停止,直到预算恢复或操作员提高上限。
- 阻止(Block) ——达到上限时硬性拒绝。代理收到明确的信号,表示其预算已耗尽,不再授权进一步支出。
两种模式都是默认拒绝的:如果预算状态不可读——存储错误、损坏的行、缺失的记录——关口拒绝,绝不允许。未知的预算状态被视为已耗尽,而非无限。这与平台其余部分对执行关口保持的姿态一致(参见治理)。
成本核算
支出来源于提供商成本数据流和由模块 X(模型与提供商管理)管理的操作员验证的参考定价。成本样本来自观测到的遥测数据——令牌数、模型、提供商——而非拦截 API 调用。平台不处于推理路径中;它在带外读取成本信号,与读取其他所有观测数据的方式相同。
参考定价是操作员验证的,不是捏造的。模块 X 允许你声明每个模型和提供商的按令牌或按请求价格,预算执行使用该定价作为核算基础。如果声明的价格与提供商实际收费不同,预算关口按声明的价格执行——平台无法在提供商报告之前知道提供商的账单。
设置预算
预算范围覆盖三个级别:
- 按租户 ——租户内所有 AI 支出的上限。
- 按代理 ——单个代理在其租户内的支出上限。
- 按模型 ——租户或代理内特定模型支出的上限。
执行是即时的。一旦预算配置了上限和关口模式(限流或阻止),关口即为在线。没有预热、没有延迟、没有”执行将在下一个计费周期后开始”。关口在每个受治理的成本事件上检查累计支出与上限的对比。
预算范围按交集组合:按代理预算和按租户预算同时适用,先达到的上限触发其关口。代理内的按模型预算受到其上方任何按代理和按租户预算的进一步限制。
达到上限时会发生什么
当累计支出达到或超过配置的上限时:
- 预算关口拒绝支出——根据模式进行限流或阻止。
- 拒绝被记录为平台发现界面中的一个发现,包含预算范围、上限和拒绝时的累计支出。
- 代理收到明确的信号表示其预算已耗尽。平台不会静默丢弃请求或返回模糊的错误。
- 如果配置了通知,拒绝通过模块 XV 路由。
被拒绝的支出是一个受治理的事件。它在与拒绝相同的事务中写入审计账本,因此不存在预算拒绝未被记录的窗口期。
通知
预算告警与模块 XV(输出集成与通知)集成。当预算接近或达到上限时,发现可以路由到任何已配置的目的地:
- Slack / Teams ——频道或私信通知。
- PagerDuty / Opsgenie ——告警升级。
- 签名 webhook ——用于自定义集成。
- SIEM ——追加到审计导出流。
通知目的地由操作员配置。无论是否配置了通知目的地,预算关口都会执行——关口是执行层,通知是感知层。
紧急停止开关的交互
紧急停止开关是全资产拒绝关口,它覆盖一切,包括预算关口。当紧急停止开关被启动时:
- 所有受治理的执行都被拒绝,包括预算关口本会限流或允许的任何支出。
- 预算关口的限流/阻止模式无关紧要——资产已停止。
- 重新启用资产需要通常的双人控制审批(两个不同的人类,重新启用没有紧急越权路径)。
预算关口和紧急停止开关是独立的控制。它们组合而非竞争:紧急停止开关是包含所有其他关口的超集拒绝。
模型路由与预算
模块 X 使用操作员验证的参考定价处理模型路由。预算执行消费这些定价——它不维护自己的价格表或捏造成本数据。依赖是单向的:
- 模块 X 声明模型目录和参考价格。
- 模块 XI 读取这些价格来核算支出并执行预算上限。
如果模块 X 没有某个模型的参考价格,模块 XI 无法将支出核算到预算中。未治理的支出(无价格、无预算)作为发现呈现,而非静默放过。
诚实的局限
预算执行对平台治理的界面是在线且默认拒绝的,但它有你在依赖它之前应该了解的局限:
- 成本准确性取决于提供商。 平台使用操作员声明的参考定价和观测到的令牌计数来核算支出。如果提供商的实际账单与声明的价格不同,预算关口按声明的价格执行,而非按账单。平台不捏造成本数据或编造基准。
- 覆盖范围受限于观测。 预算执行适用于通过受治理渠道流经的支出——平台观测到的数据源。通过未治理路径(未连接数据源、未发出遥测数据)调用模型的代理对预算关口不可见。平台在能检测到时将未治理路径作为发现呈现,但它无法对看不到的内容执行。
- 平台是 1.0 之前版本。 预算执行已发布并今天已连接,但将核算细节视为进行中的工作。参见诚实与局限了解完整姿态。