Главная / Обучение / ChatAnthropic в LangChain: импорт, base_url, потоковая передача, инструменты и ошибки
Claude + LangChain. Последовательность нарисованных от руки звеньев цепи из небольших карточек документов, соединяющих лист с промптом, окно модели и итоговый результат.

ChatAnthropic в LangChain: импорт, base_url, потоковая передача, инструменты и ошибки

ChatAnthropic из langchain-anthropic пакета — это чат-модель Claude для LangChain. Она представляет собой обёртку над официальным Python SDK Anthropic, поэтому для подключения к шлюзу достаточно одного аргумента, base_url, со значением корневого адреса хоста. Всё остальное в ваших цепочках, агентах и инструментах остаётся без изменений.

Установка и импорт

терминал
pip install -U langchain-anthropic
app.py
from langchain_anthropic import ChatAnthropic

llm = ChatAnthropic(
    model="claude-sonnet-5",
    base_url="https://aiprimetech.io",           # host root: the SDK adds /v1/messages
    api_key="your_gateway_key",   # or set ANTHROPIC_API_KEY
)

print(llm.invoke("Say hello in one word.").text)
Нет /v1 в base_url здесь. Используемый внутри Anthropic SDK добавляет /v1/messages самостоятельно; добавление /v1 приводит к /v1/v1/messages и 404 page not found.

Настройка через переменные окружения

base_url — это псевдоним для anthropic_api_urlи api_key — псевдоним для anthropic_api_key. Если вы их не передаёте, ChatAnthropic считывает ANTHROPIC_API_URL сначала, затем ANTHROPIC_BASE_URL, а ключ — из ANTHROPIC_API_KEY. Явно переданные аргументы всегда имеют приоритет.

терминал
export ANTHROPIC_API_KEY=your_gateway_key
export ANTHROPIC_API_URL=https://aiprimetech.io
app.py
from langchain_anthropic import ChatAnthropic

llm = ChatAnthropic(model="claude-sonnet-5")   # picks up the gateway from the environment

Потоковая передача

app.py
for chunk in llm.stream("Explain backpressure in two sentences."):
    print(chunk.text, end="", flush=True)

.text собирает только текстовые блоки каждого фрагмента, поэтому результат остаётся чистым, даже когда модель также выдаёт блоки размышлений или использования инструментов. Используйте потоковую передачу для длинных ответов: длительный запрос без потоковой передачи — обычная причина тайм-аутов.

Инструменты и структурированный вывод

tools.py
from langchain_core.tools import tool

@tool
def get_time(city: str) -> str:
    """Return the current local time in a city."""
    return "12:00"

msg = llm.bind_tools([get_time]).invoke("What time is it in Tokyo?")
print(msg.tool_calls)
structured.py
from pydantic import BaseModel

class Weather(BaseModel):
    city: str
    temperature_c: float

print(llm.with_structured_output(Weather).invoke("It is 21 degrees in Lisbon today."))

Повторные попытки, тайм-ауты и max_tokens

max_retries по умолчанию имеет значение 2, как и в Anthropic SDK, который повторяет запросы при ошибках соединения, 429 и ответах 5xx. timeout (псевдоним default_request_timeout) задаётся в секундах. Если оставить max_tokens незаданным, значение берётся из профиля модели.

app.py
llm = ChatAnthropic(
    model="claude-sonnet-5",
    base_url="https://aiprimetech.io",
    max_retries=4,
    timeout=120,
    max_tokens=8000,
)

Для пакетных запросов ограничьте параллелизм, чтобы не превышать лимит одновременных запросов вашего ключа: llm.batch(inputs, config={"max_concurrency": 3}).

Альтернатива на базе ChatOpenAI

Если ваш код стандартизирован на ChatOpenAI, OpenAI-совместимая конечная точка шлюза также предоставляет доступ к Claude. Для этого варианта требуется /v1 в конце адреса, в отличие от ChatAnthropic.

app.py
from langchain_openai import ChatOpenAI

llm = ChatOpenAI(model="claude-sonnet-5", base_url="https://aiprimetech.io/v1", api_key="your_gateway_key")

Для Claude предпочтительнее ChatAnthropic: он сохраняет нативные возможности, такие как кеширование промптов и блоки размышлений.

Устранение неполадок

Что вы видите Причина Решение
404 page not found/v1 в параметре ChatAnthropic base_urlИспользуйте корневой адрес хоста, https://aiprimetech.io
Model "..." is not supportedИдентификатор, недоступный группе вашего ключа, или старое имя с датойИспользуйте актуальный идентификатор из таблицы ниже
AuthenticationErrorANTHROPIC_API_KEY не задан в запущенном процессе либо используется ключ для другой конечной точкиПередайте api_key= явно для проверки
RateLimitError: Concurrency limit exceededСлишком много параллельных вызовов (batch, асинхронный gather)max_concurrency в настройках пакетных запросов
APITimeoutErrorДлительная генерация без потоковой передачиИспользуйте потоковую передачу или увеличьте timeout
Идентификатор модели Для каких задач
claude-sonnet-5Основной выбор для программирования и работы с агентами: быстрая, мощная, со средней стоимостью.
claude-opus-5-5Более сложные рассуждения, масштабный рефакторинг, длительная работа агентов.
claude-fable-5-1Самая мощная и дорогая; используйте её для наиболее сложных задач.
claude-haiku-4-5Недорогая и быстрая: заголовки, краткие изложения, классификация, небольшие шаги.

Часто задаваемые вопросы

Как импортировать ChatAnthropic?
Выполните pip install -U langchain-anthropic, затем from langchain_anthropic import ChatAnthropic.
Нужно ли добавлять /v1 в base_url для ChatAnthropic?
Нет. Передайте корневой адрес хоста, например https://aiprimetech.io;; Anthropic SDK добавит /v1/messages. Для ChatOpenAI всё наоборот: ему нужен /v1.
Какие переменные окружения читает ChatAnthropic?
ANTHROPIC_API_KEY для ключа, а для конечной точки — ANTHROPIC_API_URL, затем ANTHROPIC_BASE_URL, если base_url не передан.
base_url — это то же самое, что anthropic_api_url?
Да. base_url — псевдоним anthropic_api_url, а api_key — псевдоним anthropic_api_key.
Начните использовать Claude за несколько минут

Получите ключ API — учётная запись Anthropic и запись в лист ожидания не нужны.

Получить ключ API

AI Prime Tech — независимый API-шлюз. Он не связан с Anthropic, не одобрен этой компанией и не является её реселлером. Claude и названия связанных моделей — товарные знаки их соответствующих владельцев.

Другие руководства по Claude API

Как получить ключ Claude APIКак устроены цены Claude APIСамый дешевый способ использования API ClaudeБезлимитный Cursor с API ClaudeБезлимитный доступ к Claude CodeШлюз API Claude и прямой доступ к Anthropic: сравнениеИспользование Claude через API, совместимый с OpenAIОбъяснение моделей Claude: сравнение Claude Opus, Sonnet, Haiku и Fable — все модели Claude API, названия моделей Anthropic и цены (2026)Оплата API Claude криптовалютойДоступ к API Claude без листа ожиданияКак сократить расход токенов ClaudeБезлимитный Cline с API ClaudeБезлимитный Roo Code с API ClaudeБезлимитный Claude в IDE JetBrainsAider без ограничений с Claude APIБезлимитный Claude в VS CodeКонфигурация OpenCode для Claude: настройка opencode.json, модели и распространённые ошибкиЗапуск агента Hermes без ограничений на ClaudeЗапуск OpenClaw с Claude без ограниченийЧто означает API, совместимый с AnthropicКлюч API Claude Code — ANTHROPIC_API_KEY: как получить, настроить и когда вместо него использовать claude setup-tokenРасходы на API Claude Code — цены и способы их снизитьОбъяснение ошибок API Claude: ошибка сервера 500, перегрузка 529, лимит запросов 429, некорректный запрос 400 — и исправление каждой из нихКак купить кредиты Claude API — и почему кредиты Claude лучше любого предложения «купить аккаунт Claude»Бесплатный API Claude: существует ли бесплатный ключ API Claude и что действительно бесплатно в 2026?API Claude или подписка Claude Pro/Max — что выбратьЗапуск Codex CLI на ClaudeПодключение Claude к n8nМаршрутизация LiteLLM к ClaudeИспользование Claude в Kilo CodeПодключение Claude к GitHub CopilotПодключите Zed к Claude через шлюзПодключите Cherry Studio к ClaudeAnthropic Python SDK: установка, настройка base_url, потоковая передача и обработка ошибокClaude с Vercel AI SDK: baseURL в createAnthropic, потоковая передача и устранение проблемИспользуйте Factory Droid с ClaudeКак устроен API Claude CodeИнтеграция API Claude в ваше приложениеКак пользоваться Claude без ограничений — и почему «взломанного Claude Code» не существует

Другие гайды по Claude API

Что означает API, совместимый с AnthropicAnthropic Python SDK: установка, настройка base_url, потоковая передача и обработка ошибокКак купить кредиты API ClaudeСамый дешевый способ использования API ClaudeОбъяснение ошибок API Claude: ошибка сервера 500, перегрузка 529, лимит запросов 429, некорректный запрос 400 — и исправление каждой из нихБесплатный API Claude: существует ли бесплатный ключ API Claude и что действительно бесплатно в 2026?Интеграция API Claude в ваше приложениеОбъяснение моделей Claude: сравнение Claude Opus, Sonnet, Haiku и Fable — все модели Claude API, названия моделей Anthropic и цены (2026)Как устроены цены Claude APIШлюз API Claude и прямой доступ к Anthropic: сравнениеAPI Claude или подписка Claude Pro/Max — что выбратьОплата API Claude криптовалютойДоступ к API Claude без листа ожиданияКак устроен API Claude CodeРасходы на API Claude Code — цены и способы их снизитьКлюч API Claude Code — ANTHROPIC_API_KEY: как получить, настроить и когда вместо него использовать claude setup-tokenКак получить безлимитный доступ к ClaudeКак получить ключ Claude APIКак сократить расход токенов ClaudeИспользуйте Claude с OpenAI SDK: совместимая с OpenAI конечная точка, потоковая передача, инструменты и ограниченияHermes Agent с Claude через шлюз: настройка пользовательского провайдера, контроль расходов и исправленияЗапуск OpenClaw с Claude без ограниченийЧто означает безлимитный доступ к API ClaudeКак получить безлимитный ключ API ClaudeБезлимитное использование Claude Code — без ограничений на токеныБезлимитный доступ к Claude Opus 4.8Безлимитное использование Claude — тарифы и ценыAider с Claude через шлюз: ANTHROPIC_API_BASE, файлы конфигурации, режим архитектора и исправленияПодключите Cherry Studio к ClaudeБезлимитный доступ к Claude CodeБезлимитный Cline с API ClaudeCodex CLI с пользовательским провайдером: config.toml, модели GPT и Claude, расширение для IDE и исправленияРабота в Cursor с безлимитным доступом к ClaudeИспользуйте Factory Droid с ClaudeGitHub Copilot Chat с Claude через шлюз: настройка Custom Endpoint, режим агента и исправленияБезлимитный Claude в IDE JetBrainsИспользование Claude в Kilo CodeМаршрутизация LiteLLM к ClaudeПодключение Claude к n8nКонфигурация OpenCode для Claude: настройка opencode.json, модели и распространённые ошибкиБезлимитный Roo Code с API ClaudeClaude с Vercel AI SDK: baseURL в createAnthropic, потоковая передача и устранение проблемБезлимитный Claude в VS CodeПодключите Zed к Claude через шлюз