Is your feature request related to a problem? Please describe.
ADK currently supports using LiteLLM as a model provider. I noticed that while there is a llm_client parameter available, it does not seem to support passing a custom client instance. Moreover, the LiteLLM SDK features a Router that provides powerful load balancing capabilities, which could be particularly useful for managing multiple model deployments.
I prefer programmatic model management over environment variables, especially when working with multiple models that have different base URLs and API keys.
Describe the solution you'd like
I propose either:
- Allowing ADK to globally accept a configured
litellm.Router instance, or
- Enabling
litellm.Router to be passed directly via the llm_client parameter
Describe alternatives you've considered
- LiteLLM Proxy - adds unnecessary external dependency
Is your feature request related to a problem? Please describe.
ADK currently supports using LiteLLM as a model provider. I noticed that while there is a llm_client parameter available, it does not seem to support passing a custom client instance. Moreover, the LiteLLM SDK features a Router that provides powerful load balancing capabilities, which could be particularly useful for managing multiple model deployments.
I prefer programmatic model management over environment variables, especially when working with multiple models that have different base URLs and API keys.
Describe the solution you'd like
I propose either:
litellm.Routerinstance, orlitellm.Routerto be passed directly via thellm_clientparameterDescribe alternatives you've considered