perf(dynamic_rate_limiter): only resolve provider when rate limit hit

Co-authored-by: Yassin Kortam <yassin@berri.ai>
This commit is contained in:
Cursor Agent 2026-05-14 22:34:55 +00:00
parent 984f75de63
commit 9c5ff9d336
No known key found for this signature in database

View file

@ -218,11 +218,11 @@ class _PROXY_DynamicRateLimitHandler(CustomLogger):
) = await self.check_available_usage(
model=data["model"], priority=key_priority
)
resolved_model, llm_provider = resolve_llm_provider_for_rate_limit(
data.get("model")
)
### CHECK TPM ###
if available_tpm is not None and available_tpm == 0:
resolved_model, llm_provider = resolve_llm_provider_for_rate_limit(
data.get("model")
)
raise ProxyRateLimitError(
detail={
"error": "Key={} over available TPM={}. Model TPM={}, Active keys={}".format(
@ -238,6 +238,9 @@ class _PROXY_DynamicRateLimitHandler(CustomLogger):
)
### CHECK RPM ###
elif available_rpm is not None and available_rpm == 0:
resolved_model, llm_provider = resolve_llm_provider_for_rate_limit(
data.get("model")
)
raise ProxyRateLimitError(
detail={
"error": "Key={} over available RPM={}. Model RPM={}, Active keys={}".format(