Databricks如何通过Unity AI Gateway预算管理自家编码代理开支
Databricks通过将编码代理流量路由至Unity AI Gateway,实现了对不同模型和工具的集中预算、可见性和策略管控。他们采用每日和每月双重预算机制,分别应对短期失控开支和长期过度支出,并通过自助服务升级和管理审批相结合的方式,在控制成本的同时保持工程师的生产力。
在Databricks,软件构建方式正随着AI在工程中的积极采用而快速变化。每天有数千名工程师使用编码代理,混合使用Claude Code、Codex、Cursor等多种工具,常常同时运行多个。这种采用是好事,但也带来了新问题:编码代理支出已成为研发部门增长最快的项目之一,一个单次失控的自动化循环可能在一下午烧掉一个月的预算。
本文分享了Databricks内部如何通过Unity AI Gateway Budgets解决这一问题——这也是他们向客户提供的同一产品。由于所有编码代理在Databricks内部都通过网关路由流量,无论工具或模型如何,团队可以在整个范围内强制执行统一的支出策略,无需单独管理每个代理的管理控制台。
主要经验包括:将失控保护与月度限额分开,因为两者需要不同的限制和重置周期;大多数限额触达并非问题,而是工程师正常工作,因此解锁路径应自助完成而非审批队列;审批应仅用于真正例外的情况,并应设定时限,防止一次性项目变成永久权限。这一切的前提是所有代理流量流经一个控制点——网关使单一策略对所有编码代理可强制执行。
最初的月度限额策略下,每位工程师默认月度限额(假设500美元),超出后需提交请求提高。但该策略带来诸多摩擦:限额同时也是失控保护,每次提高需重复申请,且提高是永久性的。每月有500至1000名工程师触达限额,产生数百张工单和大量中断。
重新设计基于两条原则:一是一般情况下允许工程师自由支出,不因审批和升级减慢速度;二是避免浪费,浪费分为短期(快速支出,可能意外)和长期(数天或数周的过度支出,表明技术选择不当)。
解决方案是两个预算:每日限额用于捕获失控支出,额度相对较小;触及后工程师通过Slack收到通知,确认支出有意即可自动提高限额,无需审批。每月限额用于管理非常规支出,额度较高,触及后需经理批准,且限项目期限。两个限额通过固定比例关联,确保平滑支出的工程师不会触及每日限额。
自我服务确认工作流:当工程师接近90%的每日限额时,会收到Slack通知,包含当日支出和剩余空间,并有一个按钮确认支出有意。点击后立即提高限额。每日可多次确认,无上限。层级设计:每日层级自动调整,每月层级需经理批准,分为几个固定档次(2倍、5倍、几乎无限),时限为项目期限。
通过Unity AI Gateway强制执行:所有请求都归属用户身份并计量,预算跨所有工具生效。层级通过用户组分配实现。数据汇入Unity Catalog,管理人员可查看团队支出,财务部门统一结算。
效果:中断式审批队列消失,只有极少数重度用户每月触达每日限额,每次通过一次点击确认解决。月度限额升级从常态变为罕见、限于项目的决策。工程师不再限制AI使用,而是通过数据引导支出。
下一步:继续调整数字,将内部模式反馈到Budget产品中:原生每日预算周期、临时覆盖权限、更灵活的预算API。同时通过更智能的模型路由,让日常任务使用高效模型,前沿模型仅用于需要它们的任务。