Respect Anthropic proxy base URL
This commit is contained in:
parent
0b13145dc0
commit
1835313207
|
|
@ -1,3 +1,4 @@
|
|||
import os
|
||||
from typing import Any, Optional
|
||||
|
||||
from langchain_anthropic import ChatAnthropic
|
||||
|
|
@ -9,6 +10,8 @@ from .validators import validate_model
|
|||
class AnthropicClient(BaseLLMClient):
|
||||
"""Client for Anthropic Claude models."""
|
||||
|
||||
_DEFAULT_API_URL = "https://api.anthropic.com"
|
||||
|
||||
def __init__(self, model: str, base_url: Optional[str] = None, **kwargs):
|
||||
super().__init__(model, base_url, **kwargs)
|
||||
|
||||
|
|
@ -16,6 +19,13 @@ class AnthropicClient(BaseLLMClient):
|
|||
"""Return configured ChatAnthropic instance."""
|
||||
llm_kwargs = {"model": self.model}
|
||||
|
||||
env_base_url = os.getenv("ANTHROPIC_BASE_URL")
|
||||
if self.base_url and not (
|
||||
env_base_url
|
||||
and self.base_url.rstrip("/") == self._DEFAULT_API_URL
|
||||
):
|
||||
llm_kwargs["anthropic_api_url"] = self.base_url
|
||||
|
||||
for key in ("timeout", "max_retries", "api_key", "max_tokens", "callbacks", "http_client", "http_async_client"):
|
||||
if key in self.kwargs:
|
||||
llm_kwargs[key] = self.kwargs[key]
|
||||
|
|
|
|||
Loading…
Reference in New Issue