![[Bug]: SSO Users Not Forking Budget](https://www.chat-gpts.plus/wp-content/uploads/2026/07/29757-249bf3c2.jpg)
[Bug]: SSO Users Not Forking Budget
快速结论:此问题影响所有通过 SSO 或非 SSO 方式添加到团队的成员,所有成员共享同一个预算记录,导致无法设置独立预算。优先将 LiteLLM Proxy 升级到 v1.83.11 或更高版本(包含修复 commit 27a105b)。
问题场景
使用 LiteLLM Proxy 管理团队预算时,通过 /team/new 端点创建团队并设置 team_member_budget 或 team_member_budget_duration 后,所有通过 SSO 登录或手动添加的团队成员共享同一个预算限额,无法为单个成员分配独立的预算配置。此问题在 v1.83.10 及之前版本均存在,且无法通过 UI 调整。
报错原文
No explicit error message was logged. Behavior:
- All users in the team share a single budget instead of having a fork or clone of the default.
- It is impossible to rectify via UI.
- Setting one member's budget mutates the shared row and changes it for everyone.
原因分析
在修复之前的版本中(v1.83.10 及更早),每个团队成员关联的是同一个 LiteLLM_BudgetTable 行,该行通过团队 metadata 中的 team_member_budget_id 引用。因此,修改任何一个成员的预算都会直接修改共享行,导致所有成员的预算同时被改变。
修复版本(commit 27a105bcf91aeaec7686bc6a92766465df397777,合并于 PR #26208,首发于 v1.83.11-nightly)引入了两个机制:
- 新建成员时克隆预算:
add_new_member函数会将团队默认预算克隆为一个新的私有预算行,每个新成员获得独立预算记录(SSO 登录同样通过此辅助函数添加成员,因此 SSO 用户也适用)。 - 首次编辑时写时克隆:
/team/member_update端点检测到成员仍指向共享默认预算时,会自动执行克隆操作,将成员链接到一个独立的私有预算行。这修复了在旧版本中已创建的成员资格,即当其首次被单独编辑时会自动修复。
环境排查
- LiteLLM Proxy 版本:
v1.83.10及更早版本存在此问题。确认当前版本:运行litellm --version或检查部署配置中的镜像标签。 - 数据库状态:已存在的团队成员的
budget_id可能仍指向共享行。可通过数据库直接查询LiteLLM_BudgetTable和成员关联表确认。
解决步骤
- 升级 LiteLLM Proxy:将 LiteLLM 升级到
v1.83.11或更高版本(建议使用最新的稳定版)。这是官方推荐的唯一解决方案。 - 验证修复效果(可选):升级后,对已存在的团队成员执行一次单独的预算编辑操作(例如通过
/team/member_update),系统将自动触发“写时克隆”,将该成员从共享预算行迁移到独立的私有预算行。 - 确认新成员获得独立预算:升级后,新建团队并设置
team_member_budget,添加多个成员(包括 SSO 用户),检查每个成员是否拥有不同的budget_id。可以通过 API 响应或数据库直接验证。
验证方法
升级并创建测试团队后:
- 通过
/team/new创建团队,设置team_member_budget: 10。 - 添加至少两名成员(包括 SSO 用户)。
- 通过
/team/member_update将其中一个成员的预算修改为5.0。 - 确认:该成员的预算已独立更新为
5.0,而其他成员和团队默认预算仍为10.0,且每个成员拥有不同的budget_id。
如果以上行为符合预期,则问题已解决。若仍存在共享预算行为,请确认升级后的版本号以及部署是否已重新加载。



