mirror of
https://github.com/BerriAI/litellm.git
synced 2026-09-21 00:21:49 +00:00
fix(proxy): register transcribe as a known provider for model grants
#41515 added the cost map entry transcribe/StartTranscriptionJob under a new litellm_provider value "transcribe" without registering that provider anywhere else, so litellm.models_by_provider had no "transcribe" key. test_models_by_provider derives its provider set from the cost map itself, so it went red on main. The user-visible half is that get_provider_models returned None for the provider, which get_known_models_from_wildcard turns into an empty list, leaving a transcribe/* key or team grant resolving to no models. Mirror the aws_polly registration: an enum member, a model set, an ingestion branch, and a models_by_provider entry. Amazon Transcribe is reached through the pass-through route rather than the Add Model form, so it joins the frozen unlisted set the Add Model drift test tracks.
This commit is contained in:
parent
c1de8665ff
commit
044f88ee91
4 changed files with 21 additions and 0 deletions
|
|
@ -701,6 +701,7 @@ github_copilot_models: Set = set()
|
|||
chatgpt_models: Set = set()
|
||||
minimax_models: Set = set()
|
||||
aws_polly_models: Set = set()
|
||||
transcribe_models: Set = set()
|
||||
gigachat_models: Set = set()
|
||||
llamagate_models: Set = set()
|
||||
reducto_models: Set = set()
|
||||
|
|
@ -980,6 +981,8 @@ def _populate_provider_model_sets(model_cost_map: Dict) -> None:
|
|||
minimax_models.add(key)
|
||||
elif value.get("litellm_provider") == "aws_polly":
|
||||
aws_polly_models.add(key)
|
||||
elif value.get("litellm_provider") == "transcribe":
|
||||
transcribe_models.add(key)
|
||||
elif value.get("litellm_provider") == "gigachat":
|
||||
gigachat_models.add(key)
|
||||
elif value.get("litellm_provider") == "llamagate":
|
||||
|
|
@ -1227,6 +1230,7 @@ def _build_models_by_provider() -> dict:
|
|||
"chatgpt": chatgpt_models,
|
||||
"minimax": minimax_models,
|
||||
"aws_polly": aws_polly_models,
|
||||
"transcribe": transcribe_models,
|
||||
"gigachat": gigachat_models,
|
||||
"llamagate": llamagate_models,
|
||||
"reducto": reducto_models,
|
||||
|
|
|
|||
|
|
@ -3989,6 +3989,7 @@ class LlmProviders(str, Enum):
|
|||
REDUCTO = "reducto"
|
||||
RUNWAYML = "runwayml"
|
||||
AWS_POLLY = "aws_polly"
|
||||
TRANSCRIBE = "transcribe"
|
||||
HUGGINGFACE = "huggingface"
|
||||
TOGETHER_AI = "together_ai"
|
||||
OPENROUTER = "openrouter"
|
||||
|
|
|
|||
|
|
@ -879,3 +879,18 @@ def test_get_complete_model_list_sentinel_only_grants_nothing():
|
|||
infer_model_from_keys=False,
|
||||
)
|
||||
assert result == []
|
||||
|
||||
|
||||
def test_transcribe_is_a_known_provider_for_wildcard_expansion():
|
||||
import litellm
|
||||
from litellm.proxy.auth.model_checks import (
|
||||
get_known_models_from_wildcard,
|
||||
get_provider_models,
|
||||
)
|
||||
|
||||
assert "transcribe" in litellm.models_by_provider
|
||||
assert "transcribe/StartTranscriptionJob" in litellm.models_by_provider["transcribe"]
|
||||
assert get_provider_models("transcribe") == ["transcribe/StartTranscriptionJob"]
|
||||
assert get_known_models_from_wildcard("transcribe/*") == [
|
||||
"transcribe/StartTranscriptionJob"
|
||||
]
|
||||
|
|
|
|||
|
|
@ -384,6 +384,7 @@ ADD_MODEL_UNLISTED_PROVIDERS: Final = frozenset(
|
|||
"tencent",
|
||||
"tensormesh",
|
||||
"text-completion-inception",
|
||||
"transcribe",
|
||||
"valkey",
|
||||
"xiaomi_mimo",
|
||||
"zai",
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue