File size: 1,249 Bytes
5ef0f8d |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 |
import os
from litellm.router import Router
# Declare all global app dependencies here
# - Setup your dependency global inside init_dependencies()
# - Create a get_xxxx_() function to retrieve the dependency inside the FastAPI router
def init_dependencies():
"""Initialize the application global dependencies"""
global llm_router
llm_router = Router(model_list=[
{
"model_name": "gemini-v1",
"litellm_params":
{
"model": "gemini/gemini-2.0-flash",
"api_key": os.environ.get("GEMINI"),
"max_retries": 5,
"rpm": 15,
"allowed_fails": 1,
"cooldown": 30,
}
},
{
"model_name": "gemini-v2",
"litellm_params":
{
"model": "gemini/gemini-2.5-flash",
"api_key": os.environ.get("GEMINI"),
"max_retries": 5,
"rpm": 10,
"allowed_fails": 1,
"cooldown": 30,
}
}], fallbacks=[{"gemini-v2": ["gemini-v1"]}], num_retries=10, retry_after=30)
def get_llm_router() -> Router:
"""Retrieves the LLM router"""
return llm_router
|