From bcd90859ecd5e1796870495d13da01d5a2a9dbd2 Mon Sep 17 00:00:00 2001 From: Ari Webb Date: Wed, 28 Jan 2026 17:01:47 -0800 Subject: [PATCH] fix: byok uses our key, fix that (#9169) --- letta/llm_api/openai_client.py | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/letta/llm_api/openai_client.py b/letta/llm_api/openai_client.py index 240078e7..71a38361 100644 --- a/letta/llm_api/openai_client.py +++ b/letta/llm_api/openai_client.py @@ -182,9 +182,11 @@ class OpenAIClient(LLMClientBase): llm_config.provider_name == "openrouter" ) if is_openrouter: - or_key = model_settings.openrouter_api_key or os.environ.get("OPENROUTER_API_KEY") - if or_key: - kwargs["api_key"] = or_key + # Only use prod OpenRouter key if no BYOK key was provided + if not api_key: + or_key = model_settings.openrouter_api_key or os.environ.get("OPENROUTER_API_KEY") + if or_key: + kwargs["api_key"] = or_key # Attach optional headers if provided headers = {} if model_settings.openrouter_referer: @@ -217,9 +219,11 @@ class OpenAIClient(LLMClientBase): llm_config.provider_name == "openrouter" ) if is_openrouter: - or_key = model_settings.openrouter_api_key or os.environ.get("OPENROUTER_API_KEY") - if or_key: - kwargs["api_key"] = or_key + # Only use prod OpenRouter key if no BYOK key was provided + if not api_key: + or_key = model_settings.openrouter_api_key or os.environ.get("OPENROUTER_API_KEY") + if or_key: + kwargs["api_key"] = or_key headers = {} if model_settings.openrouter_referer: headers["HTTP-Referer"] = model_settings.openrouter_referer