From 7a6a28d2b990a67255a8422692ad4f17352c2403 Mon Sep 17 00:00:00 2001 From: "irfan.putra" Date: Wed, 7 May 2025 11:54:07 +0700 Subject: [PATCH] feat: add openrouter support in litellm --- pr_agent/algo/ai_handlers/litellm_ai_handler.py | 12 ++++++++++++ pr_agent/settings/.secrets_template.toml | 5 ++++- 2 files changed, 16 insertions(+), 1 deletion(-) diff --git a/pr_agent/algo/ai_handlers/litellm_ai_handler.py b/pr_agent/algo/ai_handlers/litellm_ai_handler.py index 61af7383..ba4630f4 100644 --- a/pr_agent/algo/ai_handlers/litellm_ai_handler.py +++ b/pr_agent/algo/ai_handlers/litellm_ai_handler.py @@ -118,6 +118,18 @@ class LiteLLMAIHandler(BaseAiHandler): litellm.api_base = self.api_base openai.api_base = self.api_base + # Support for Openrouter models + if get_settings().get("OPENROUTER.KEY", None): + openrouter_api_key = get_settings().get("OPENROUTER.KEY", None) + os.environ["OPENROUTER_API_KEY"] = openrouter_api_key + litellm.api_key = openrouter_api_key + openai.api_key = openrouter_api_key + + openrouter_api_base = get_settings().get("OPENROUTER.API_BASE", "https://openrouter.ai/api/v1") + os.environ["OPENROUTER_API_BASE"] = openrouter_api_base + self.api_base = openrouter_api_base + litellm.api_base = openrouter_api_base + # Models that only use user meessage self.user_message_only_models = USER_MESSAGE_ONLY_MODELS diff --git a/pr_agent/settings/.secrets_template.toml b/pr_agent/settings/.secrets_template.toml index 05f7bc0e..1022f8fa 100644 --- a/pr_agent/settings/.secrets_template.toml +++ b/pr_agent/settings/.secrets_template.toml @@ -107,4 +107,7 @@ key = "" client_id = "" # Your Azure AD application client ID client_secret = "" # Your Azure AD application client secret tenant_id = "" # Your Azure AD tenant ID -api_base = "" # Your Azure OpenAI service base URL (e.g., https://openai.xyz.com/) \ No newline at end of file +api_base = "" # Your Azure OpenAI service base URL (e.g., https://openai.xyz.com/) + +[openrouter] +key = "" \ No newline at end of file