Как подключить ChatGPT, Claude и Gemini через один API: пошаговый гайд
Пошаговый гайд: подключаем ChatGPT, Claude 4.6 и Gemini через один API-роутер. Реальный код на Python и Node.js, настройка fallback и мониторинга. Без переписывания SDK под каждую модель.
Если вы уже работаете с LLM в проде, то наверняка сталкивались с этим: OpenAI лёг в три ночи, а у вас дедлайн. Или кончился бюджет на GPT, и надо срочно переключиться на Gemini. Или клиент хочет Claude, а весь CI/CD заточен под OpenAI SDK.
В итоге вы держите три разных API-ключа, три разных SDK, три разные схемы биллинга — и каждое переключение стоит нескольких часов рефакторинга.
В этой статье разберём, как решить это через один API-роутер: подключим GPT-5.4, Claude Sonnet 4.6 и Gemini 3.1 Pro через одну точку входа без переписывания кода под каждую модель. Статья для тех, кто уже работал с LLM API и хочет выстроить нормальную инфраструктуру.
Почему три отдельных API — это боль в проде
По факту всё просто: подключаешь OpenAI, пишешь код, всё работает. На практике, как только вы начинаете масштабироваться или хотите попробовать другую модель, появляются три проблемы.
Разные форматы запросов и ответов
У каждого провайдера — свой SDK и своя структура данных. Посмотрите, как выглядит один и тот же запрос для трёх разных API.
Python:
Три разных SDK, разные структуры ответа и способа обработки ошибок. Если вы хотите добавить в проект вторую модель — значит нужно переписывать логику вызовов и парсинг ответов с нуля.
Vendor lock-in и зависимость от аптайма одного провайдера
OpenAI, Anthropic и Google — три разные компании с тремя разными инфраструктурами. Если один провайдер падает, ваш продукт перестаёт отвечать. Запросы возвращают ошибку, токены не тратятся — но пользователи видят сломанный интерфейс. Без резервной модели вы просто ждёте, пока провайдер починится.
Кроме аптайма, у каждого провайдера своя операционная специфика — и она влияет на то, как вы строите интеграцию:
Мы знаем, что авторизация у всех разная — значит, для каждого провайдера нужен свой способ передачи ключа. Rate limit у Anthropic в 10 раз ниже, чем у OpenAI на том же тарифе — если вы пишете балансировщик нагрузки вручную, это нужно учитывать. Биллинг у Google завязан на Google Cloud — отдельный аккаунт, счета и бухгалтерия.
Именно это и решает роутер: один API-ключ, одна схема авторизации, один дашборд.
Что такое LLM API-роутер и как он работает
LLM API-роутер — это прокси-слой между вашим приложением и несколькими LLM-провайдерами. Вы отправляете один запрос в едином формате, роутер определяет, какую модель использовать, и возвращает ответ в стандартизированном виде.
Хороший роутер умеет:
- Fallback: если основная модель недоступна или превышен rate limit — автоматически переключает на запасную
- Load balancing: распределяет запросы между провайдерами по настраиваемым правилам
- Логирование: сохраняет все запросы/ответы, latency, стоимость в одном месте
- Кеширование: не тратит токены на идентичные запросы
- Unified billing: видите общие расходы на LLM в одном дашборде
Роутер не нужен, если у вас один провайдер, небольшой объём запросов и нет требований к отказоустойчивости. Прямое подключение к API — проще и без лишних телодвижений.
Роутер нужен в трёх случаях: продукт должен работать даже когда один провайдер падает, вы сравниваете качество разных моделей на реальных задачах, или несколько команд используют разные модели и нужна единая точка учёта расходов.
Один из таких инструментов — RouterAI.ru, российский сервис, который поддерживает OpenAI-совместимый формат запросов. Это значит: меняете base_url в вашем существующем коде — и получаете доступ к ChatGPT, Claude и Gemini через один API-ключ.
Единый баланс и оплата в рублях
Отдельное преимущество для российских команд: RouterAI держит один баланс для всех моделей сразу. Пополнили один раз — запросы идут к любому провайдеру из этого баланса. Не нужно держать отдельные счета в OpenAI, Anthropic и Google Cloud и следить, чтобы на каждом хватало средств. Оплата в рублях — без конвертации и без привязки иностранной карты.
Подключение через один API: пошаговый гайд
Для примеров используем Python 3.10+ и Node.js 18+, проверяйте у себя, а если заметили ошибку — обязательно напишите в комментариях, чтобы предупредить других читателей.
Шаг 1. Регистрация и получение API-ключа
Переходите на routerai.ru, регистрируетесь, в личном кабинете создаёте API-ключ. Выглядит как стандартный токен в формате rtr-....
Сохраните ключ в переменную окружения — не храните его в коде:
export ROUTERAI_API_KEY="rtr-ваш-ключ"
Шаг 2. Базовый запрос — три модели, один формат
RouterAI поддерживает OpenAI-совместимый формат, поэтому нужно поменять только base_url и api_key — остальной код не трогаете.
Python:
Шаг 3. Таблица доступных моделей
Названия model-id, которые принимает RouterAI:
Актуальный список моделей — в документации RouterAI. Провайдеры обновляют lineup несколько раз в год.
Шаг 4. Настройка стриминга
Стриминг работает так же, как в нативном OpenAI SDK:
Шаг 5. Системный промпт и параметры генерации
Реальный кейс: мультимодельный бот с fallback за 30 минут
Покажем реальный сценарий: бот, который сначала пробует GPT-5.4, при ошибке переключается на Claude Sonnet 4.6, логирует все запросы и считает стоимость.
Запускаете скрипт — он пробует GPT-5.4. Если там rate limit или ошибка — автоматически берёт Claude Sonnet 4.6. Если и там проблема — Gemini 3.1 Pro. Всё логируется с временными метками.
Для прода можно вынести MODEL_CHAIN в конфиг и менять приоритет моделей без перезапуска сервиса. RouterAI также предоставляет дашборд с агрегированной статистикой по всем запросам: какая модель использовалась, сколько токенов потрачено, как менялась latency по времени.
Подводные камни при работе с роутером
Прежде чем переводить прод на роутер, стоит знать о нескольких нюансах.
Разные контекстные окна — нельзя просто взять и переключить
GPT-5.4, Claude Sonnet 4.6 и Gemini 3.1 Pro — все трое держат по 1M токенов, но DeepSeek V3.2 ограничен 164K, а Grok 4 — 256K. Если fallback-цепочка включает эти модели, длинный контекст просто обрежется или вернётся ошибка. Проверяйте длину промпта перед переключением.
Разное поведение моделей на одинаковые промпты
Claude Sonnet 4.6 строже следует системному промпту, GPT-5.4 гибче интерпретирует инструкции, Gemini 3.1 Pro хорошо работает с мультимодальными задачами и таблицами. Если у вас сложный системный промпт — при переключении модели ответ может заметно отличаться по стилю и формату. Это нормально, но стоит учитывать при тестировании.
Роутер добавляет накладные расходы
Любой прокси-слой — это дополнительный расход. На практике это 20–80ms в зависимости от географии. Если ваш продукт чувствителен к latency (например, голосовой интерфейс), протестируйте задержки на реальной нагрузке до деплоя.
Ценообразование: роутер не всегда дороже
Роутер добавляет наценку к базовой стоимости токенов — это факт. Но итоговая цена зависит от модели. На китайских моделях вроде DeepSeek V3.2 RouterAI предлагает цены крупных клиентов со скидками — и выходит дешевле, чем если подключаться к тем же моделям напрямую по стандартному тарифу. На флагманских моделях OpenAI и Anthropic разница будет в пользу прямого подключения при больших объёмах. Считайте по конкретным моделям и своему объёму запросов — универсального ответа нет.
Роутер умножает rate limits, а не делит их
Это одно из главных преимуществ, которое неочевидно с первого взгляда. RouterAI подключается к каждому провайдеру через несколько точек одновременно — и тот же Claude Sonnet 4.6 может уйти в Anthropic напрямую, через Google Cloud или через Amazon Bedrock. Суммарный rate limit получается значительно выше, чем при прямом подключении на стандартном тарифе.
В итоге
Мы подключили GPT-5.4, Claude Sonnet 4.6 и Gemini 3.1 Pro через единый API в OpenAI-совместимом формате. Ключевой момент: смена base_url и api_key в существующем коде — и вы получаете доступ к трём провайдерам без переписывания SDK.
Роутер оправдан, когда:
- нужна отказоустойчивость и автоматический fallback
- вы сравниваете качество разных моделей на реальных задачах
- хотите управлять расходами из одного места
Попробовать RouterAI.ru можно бесплатно — на сайте есть тестовый тариф. Документация с актуальным списком моделей и примерами интеграций — на routerai.ru.