forked from phoenix/litellm-mirror
add valid models in utils.py
This commit is contained in:
parent
baa69734b0
commit
57f15b379d
1 changed files with 30 additions and 0 deletions
|
@ -2603,3 +2603,33 @@ def trim_messages(
|
|||
except: # [NON-Blocking, if error occurs just return final_messages
|
||||
return messages
|
||||
|
||||
|
||||
# this helper reads the .env and returns a list of supported llms for user
|
||||
def get_valid_models():
|
||||
try:
|
||||
# get keys set in .env
|
||||
environ_keys = os.environ.keys()
|
||||
valid_providers = []
|
||||
# for all valid providers, make a list of supported llms
|
||||
valid_models = []
|
||||
|
||||
for provider in litellm.provider_list:
|
||||
# edge case litellm has together_ai as a provider, it should be togetherai
|
||||
provider = provider.replace("_", "")
|
||||
|
||||
# litellm standardizes expected provider keys to
|
||||
# PROVIDER_API_KEY. Example: OPENAI_API_KEY, COHERE_API_KEY
|
||||
expected_provider_key = f"{provider.upper()}_API_KEY"
|
||||
if expected_provider_key in environ_keys:
|
||||
# key is set
|
||||
valid_providers.append(provider)
|
||||
|
||||
for provider in valid_providers:
|
||||
if provider == "azure":
|
||||
valid_models.append("Azure-LLM")
|
||||
else:
|
||||
models_for_provider = litellm.models_by_provider.get(provider, [])
|
||||
valid_models.extend(models_for_provider)
|
||||
return valid_models
|
||||
except:
|
||||
return [] # NON-Blocking
|
Loading…
Add table
Add a link
Reference in a new issue