BerriAI/litellm · error · HTTPException
Allocated RPM limit={model_specific_rpm_limit.get(model, 0)}
Error message
Allocated RPM limit={model_specific_rpm_limit.get(model, 0)} + Team RPM limit={rpm_limit} is greater than {entity_type} RPM limit={entity_rpm_limit} What it means
Model-level RPM over-allocation check when creating/updating a team under a parent entity: summing the per-model rpm limits already allocated to sibling teams plus the new team's request exceeds the entity's RPM ceiling, so a 400 blocks the allocation. At-fault input is model_rpm_limit pushing the total over the parent's limit.
Source
Thrown at litellm/proxy/management_endpoints/team_endpoints.py:794
if model_rpm_limit is None and model_tpm_limit is None:
return
# get total model specific tpm/rpm limit
model_specific_rpm_limit: Final[dict[str, int]] = {}
model_specific_tpm_limit: Final[dict[str, int]] = {}
for team in teams:
if team.metadata and team.metadata.get("model_rpm_limit", None) is not None:
for model, rpm_limit in team.metadata.get("model_rpm_limit", {}).items():
model_specific_rpm_limit[model] = model_specific_rpm_limit.get(model, 0) + rpm_limit
if team.metadata and team.metadata.get("model_tpm_limit", None) is not None:
for model, tpm_limit in team.metadata.get("model_tpm_limit", {}).items():
model_specific_tpm_limit[model] = model_specific_tpm_limit.get(model, 0) + tpm_limit
if model_rpm_limit is not None:
for model, rpm_limit in model_rpm_limit.items():
if entity_rpm_limit is not None and model_specific_rpm_limit.get(model, 0) + rpm_limit > entity_rpm_limit:
raise HTTPException(
status_code=400,
detail=f"Allocated RPM limit={model_specific_rpm_limit.get(model, 0)} + Team RPM limit={rpm_limit} is greater than {entity_type} RPM limit={entity_rpm_limit}",
)
elif entity_model_rpm_limit_dict:
entity_model_specific_rpm_limit = entity_model_rpm_limit_dict.get(model)
if (
entity_model_specific_rpm_limit
and model_specific_rpm_limit.get(model, 0) + rpm_limit > entity_model_specific_rpm_limit
):
raise HTTPException(
status_code=400,
detail=f"Allocated RPM limit={model_specific_rpm_limit.get(model, 0)} + Team RPM limit={rpm_limit} is greater than {entity_type} RPM limit={entity_model_specific_rpm_limit}",
)
if model_tpm_limit is not None:
for model, tpm_limit in model_tpm_limit.items():
if entity_tpm_limit is not None and model_specific_tpm_limit.get(model, 0) + tpm_limit > entity_tpm_limit:
raise HTTPException(View on GitHub (pinned to 77b7c6c40c)
Solutions
- Lower the model-specific or team RPM limit so the sum does not exceed the entity RPM limit.
Defensive patterns
Strategy: validation
When it happens
Trigger: Thrown at litellm/proxy/management_endpoints/team_endpoints.py:794 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of BerriAI/litellm@77b7c6c40c (2026-08-18).
Data as JSON: /api/errors/9597ecf3d87457e1.
Report an issue: GitHub.