From 72da3b765902c8cf0b15097fb1386a000c7bcad4 Mon Sep 17 00:00:00 2001 From: Jordan Diaz Date: Sat, 4 Apr 2026 10:42:40 +0000 Subject: [PATCH] Soporte base_url custom en Claude adapter (MiniMax Anthropic-compatible) MiniMax tiene endpoint compatible con Anthropic API en https://api.minimax.io/anthropic/v1. Nueva variable AGENTIC_ANTHROPIC_BASE_URL para usarlo. Co-Authored-By: Claude Opus 4.6 (1M context) --- src/adapters/claude_adapter.py | 12 ++++++++---- src/config.py | 1 + 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/src/adapters/claude_adapter.py b/src/adapters/claude_adapter.py index f814878..4f0734d 100644 --- a/src/adapters/claude_adapter.py +++ b/src/adapters/claude_adapter.py @@ -17,10 +17,14 @@ logger = logging.getLogger(__name__) class ClaudeAdapter(ModelAdapter): """Adapter for the Anthropic Claude API.""" - def __init__(self, api_key: str | None = None) -> None: - self._client = anthropic.AsyncAnthropic( - api_key=api_key or settings.anthropic_api_key, - ) + def __init__(self, api_key: str | None = None, base_url: str | None = None) -> None: + kwargs: dict[str, Any] = { + "api_key": api_key or settings.anthropic_api_key, + } + url = base_url or settings.anthropic_base_url + if url: + kwargs["base_url"] = url + self._client = anthropic.AsyncAnthropic(**kwargs) # ------------------------------------------------------------------ # Streaming diff --git a/src/config.py b/src/config.py index a30bf59..ba58d0b 100644 --- a/src/config.py +++ b/src/config.py @@ -29,6 +29,7 @@ class Settings(BaseSettings): # --- Model providers --- anthropic_api_key: str = "" + anthropic_base_url: str = "" # Custom base URL (for MiniMax Anthropic-compatible, etc.) openai_api_key: str = "" openai_base_url: str = "" # Custom base URL (for MiniMax, DeepInfra, etc.) default_model_provider: str = "claude"