LangChain через AI Gateway — Python и JavaScript
Фреймворк для LLM-приложений на Python и JS: цепочки, агенты, RAG
LangChain — фреймворк для приложений на языковых моделях: цепочки, агенты с инструментами, RAG, память диалога. Классы под OpenAI (ChatOpenAI) принимают кастомный адрес API, поэтому весь код LangChain работает через AI Gateway без правок логики — меняются только base_url и ключ, а модель выбирается из каталога.
Подключение
- Получите API-ключ
Зарегистрируйтесь и создайте ключ в кабинете — он начинается с
sk-aigate-. Удобно завести отдельный ключ на каждое приложение: у него своя квота и лимиты. - Установите пакеты
Для Python нужен интеграционный пакет OpenAI, для JavaScript — соответствующий npm-модуль:
# Python pip install langchain langchain-openai # JavaScript / TypeScript npm install langchain @langchain/openai - Настройте ChatOpenAI на Python
Передайте адрес шлюза в
base_urlи ключ AI Gateway вapi_key, а вmodel— код модели из каталога:from langchain_openai import ChatOpenAI llm = ChatOpenAI( base_url="https://ai-gatewey.ru/v1", api_key="sk-aigate-...", model="anthropic/claude-sonnet-5", ) print(llm.invoke("Объясни, что такое RAG, в двух предложениях").content) - То же самое на JavaScript
В JS-версии адрес шлюза передаётся через
configuration.baseURL:import { ChatOpenAI } from "@langchain/openai"; const llm = new ChatOpenAI({ apiKey: "sk-aigate-...", model: "openai/gpt-5.4-mini", configuration: { baseURL: "https://ai-gatewey.ru/v1" }, }); const res = await llm.invoke("Привет!"); console.log(res.content); - Соберите цепочку или агента
Дальше — обычный LangChain:
prompt | llm | parser, агенты с инструментами, RAG. Расход по токенам виден в кабинете AI Gateway в реальном времени.
llm.stream(...)) и function calling проходят через шлюз прозрачно — агенты и AgentExecutor работают так же, как с прямым API. Для инструментов выбирайте модель с поддержкой function calling.Какие модели выбрать
Для агентов и сложных цепочек берите флагман, для типовых цепочек суммаризации и извлечения — быструю модель среднего класса:
| Модель | Ввод, ₽/1М | Вывод, ₽/1М | Контекст |
|---|---|---|---|
| Anthropic: Claude Sonnet 5 | 314 | 1 568 | 1M |
| OpenAI: GPT-5.4 Mini | 118 | 705 | 400K |
| DeepSeek: DeepSeek V3 | 31 | 125 | 128K |
Частые вопросы
Работает ли стриминг ответов?
Да. llm.stream(...) в Python и потоковый режим в JS проходят через AI Gateway прозрачно — токены приходят по мере генерации, как с прямым API.
Проходят ли агенты с инструментами (function calling)?
Да, bind_tools и AgentExecutor работают через шлюз без изменений. Убедитесь, что выбранная модель поддерживает инструменты — на карточке модели в каталоге есть бейдж «инструменты».
Как переключить модель, не переписывая цепочку?
Смените только значение model на другой код из каталога — остальной код цепочки не меняется. Так удобно сравнивать модели на одном пайплайне.
Ключ для LangChain — сразу после регистрации
Получить ключ