СейчасЧто это такое
- Что это такое
- Что ещё умеет LiteLLM
- Какие подписки поддерживаются
- Быстрый запуск прокси
- Раздача endpoint'ов агентам
- OpenBot
- Codex CLI
- Виртуальные ключи для разных агентов
- Полезные сценарии
- Сценарий 1. Агент на подписке ChatGPT без API-бюджета
- Сценарий 2. Несколько подписок за одним адресом
- Сценарий 3. Пул подписок с балансировкой
- Проверка результата
- Ограничения и риски
- Ссылки
- Следующий шаг
- Связанные материалы
LiteLLM — open-source шлюз между вашими агентами и языковыми моделями. Для нашей темы важна одна его способность: подключать подписки ChatGPT, SuperGrok и GitHub Copilot через OAuth и выдавать их наружу как обычный OpenAI-совместимый API. Руководство покрывает запуск прокси, подключение подписок и раздачу endpoint'ов агентам.
Что это такое
LiteLLM — прокси-шлюз, который принимает запросы в формате OpenAI API и переводит их в формат любого из сотни поддерживаемых провайдеров. Клиент видит один адрес и один ключ, а шлюз решает, куда на самом деле пойдёт запрос.
В контексте подписок схема выглядит так:
Агент (OpenBot, Codex, свой скрипт)
│ обычный OpenAI-запрос + ключ шлюза
▼
LiteLLM Proxy :4000
│ OAuth-токены подписки, обновляются автоматически
▼
Бэкенд подписки (chatgpt.com, accounts.x.ai, Copilot)Шлюз сам логинится в вашу подписку один раз, хранит токены локально и дальше ходит в тот же бэкенд, которым пользуются официальные приложения. Расход идёт из лимитов подписки, а не из платёжного баланса API.
Что ещё умеет LiteLLM
Подписки — только один из источников моделей для этого шлюза. Полная картина шире:
- API-ключи сотни провайдеров. OpenAI, Anthropic, Google, Azure, Bedrock, локальные модели через Ollama: всё подключается ключами и вызывается в едином OpenAI-формате.
- Балансировка и фолбэки. Можно описать несколько развёртываний одной модели: шлюз распределяет нагрузку, а при сбое одного провайдера отправляет запрос в другой.
- Бюджеты и лимиты. На виртуальный ключ, команду или проект назначаются бюджеты, ограничения по числу запросов и списку разрешённых моделей.
- Учёт расходов. Каждый запрос логируется с моделью, токенами и стоимостью: видно, кто и сколько тратит.
- Кэширование и guardrails. Повторные запросы можно кэшировать, а на поток навесить проверки содержимого.
Эти возможности выходят за рамки текущего материала и тянут на отдельное руководство. Ниже — только про подписки.
Какие подписки поддерживаются
| Подписка | Провайдер | Как логиниться | Статус поддержки |
| ChatGPT Plus/Pro | chatgpt/ | device flow: код и ссылка в браузере | Полная |
| SuperGrok / X Premium+ | xai_oauth/ | litellm xai-oauth login, PKCE в браузере | Полная |
| GitHub Copilot | github_copilot/ | OAuth device flow | Полная, с оговоркой по учёту premium-запросов |
| Claude Pro/Max | нет самостоятельного провайдера | pass-through токена из Claude Code | Частичная |
xai_oauth/ добавлен недавно, и xAI может ограничивать OAuth-доступ к API в зависимости от тарифа: зафиксированы случаи отказа с HTTP 403 даже при активной подписке. Прежде чем строить на нём связку, проверьте один запрос вручную.Важное различие по Claude: поддерживаемый сценарий — это Claude Code, который авторизовался по подписке Max и пропускает трафик через LiteLLM для учёта и лимитов. Превратить подписку Claude в универсальный API для произвольных агентов через LiteLLM нельзя.
Быстрый запуск прокси
Что понадобится: Python 3.10+ (начиная с LiteLLM 1.84.0 более старые версии Python не поддерживаются), браузер для OAuth-логина и хотя бы одна активная подписка из таблицы выше.
Шаг первый — установить LiteLLM с прокси:
uv tool install 'litellm[proxy]'Вариант через pip install 'litellm[proxy]' тоже существует, но на Python 3.9 pip молча поставит устаревшую ветку 1.83, поэтому надёжнее uv tool install: он сам поднимет совместимую версию Python.
Шаг второй — создать config.yaml со списком моделей:
model_list:
- model_name: chatgpt-sub # имя, которое увидят клиенты
litellm_params:
model: chatgpt/gpt-5.4 # подписка ChatGPT
- model_name: grok-sub
litellm_params:
model: xai_oauth/grok-4.1 # подписка SuperGrok / X Premium+
- model_name: copilot-sub
litellm_params:
model: github_copilot/gpt-4o # подписка GitHub Copilot/models уже запущенного прокси или в документации провайдера.Шаг третий — пройти логин подписками. Для SuperGrok есть отдельная команда:
litellm xai-oauth loginПровайдеры chatgpt/ и github_copilot/ запускают device flow при первом обращении: LiteLLM печатает код и ссылку, вы открываете ссылку, входите в аккаунт и вводите код. Токены сохраняются локально и обновляются автоматически.
Шаг четвёртый — запустить прокси:
litellm --config config.yaml --port 4000Раздача endpoint'ов агентам
OpenBot
В .env OpenBot укажите адрес шлюза и его ключ:
OPENAI_BASE_URL=http://127.0.0.1:4000
OPENAI_API_KEY=<ключ LiteLLM>
BOT_MODEL=chatgpt-subОдна переменная OPENAI_BASE_URL переключает на шлюз весь deployment OpenBot. Подробнее об установке самого OpenBot — в руководстве OpenBot — открытые ИИ-сотрудники на вашей инфраструктуре.
Codex CLI
В ~/.codex/config.toml добавьте провайдера:
model = "chatgpt-sub"
model_provider = "litellm"
[model_providers.litellm]
name = "litellm"
base_url = "http://127.0.0.1:4000/v1"
wire_api = "responses"Блок провайдера устроен по тому же шаблону, что и подключение любого OpenAI-совместимого эндпоинта к Codex; имена моделей берутся из model_name в конфиге LiteLLM.
Виртуальные ключи для разных агентов
По умолчанию прокси обслуживает всех одним мастер-ключом. Для раздельного доступа LiteLLM умеет виртуальные ключи: каждому агенту выдаётся свой sk-... со своим бюджетом, лимитами и списком разрешённых моделей. Для этого режима нужна PostgreSQL и переменная DATABASE_URL, ключи создаются через /key/generate или веб-интерфейс прокси.
Полезные сценарии
Сценарий 1. Агент на подписке ChatGPT без API-бюджета
Задача: запустить агента на уже оплаченной подписке ChatGPT Plus/Pro.
Условие: установленный LiteLLM, активная подписка, в config.yaml добавлена модель chatgpt/.
Что делать: запустить прокси, пройти device flow по напечатанной ссылке, указать агенту адрес http://127.0.0.1:4000/v1 и имя модели из конфига.
Результат: агент отвечает через подписку; в логах прокси виден прошедший запрос, а списание идёт из лимитов подписки.
Ограничение: подписочный бэкенд ChatGPT не принимает поля лимитов токенов (max_tokens и родственные) — LiteLLM вырезает их сам, но агент, который жёстко рассчитывает на них, может вести себя иначе.
Сценарий 2. Несколько подписок за одним адресом
Задача: дать разным агентам разные модели, не заводя под каждую отдельную интеграцию.
Условие: в config.yaml описаны две-три подписки, например chatgpt-sub и grok-sub.
Что делать: ничего дополнительно. Агент выбирает подписку именем модели в запросе: chatgpt-sub уходит в ChatGPT, grok-sub — в SuperGrok.
Результат: curl http://127.0.0.1:4000/v1/models показывает оба имени, и каждый запрос попадает в свою подписку.
Ограничение: у Copilot-провайдера есть открытая проблема с учётом premium-запросов в длинных агентных сессиях — расход подписки Copilot может быть выше ожидаемого, следите за дашбордом GitHub.
Сценарий 3. Пул подписок с балансировкой
Задача: несколько аккаунтов ChatGPT должны работать как единый ресурс с переключением по квотам.
Условие: две и больше подписок ChatGPT/Codex.
Что делать: для этой задачи LiteLLM замените на codex-lb — он специализируется на пулах ChatGPT-аккаунтов, следит за квотами и умеет sticky-привязку потоков. Настройка описана в руководстве codex-lb — балансировщик нескольких ChatGPT/Codex-подписок.
Результат: клиенты знают один endpoint, а выбор аккаунта происходит на уровне балансировщика.
Ограничение: codex-lb работает только с экосистемой ChatGPT/Codex; Claude или Grok через него не подключить.
Проверка результата
Минимальные признаки рабочей связки:
- Прокси запущен,
curl http://127.0.0.1:4000/v1/modelsвозвращает JSON со списком моделей из конфига. - Тестовый запрос к подписочной модели возвращает осмысленный ответ:
curl http://127.0.0.1:4000/v1/chat/completions \
-H "Content-Type: application/json" \
-H "Authorization: Bearer <ключ LiteLLM>" \
-d '{"model": "chatgpt-sub", "messages": [{"role": "user", "content": "Reply with OK only."}]}'- Агент, направленный на прокси, отвечает, а в логах LiteLLM виден его запрос и провайдер, в который тот ушёл.
Ограничения и риски
- Подписки остаются подписками. Квоты никуда не деваются: активные агенты быстро расходуют недельный лимит, а у OpenBot это значит, что все боты делят одну квоту.
- Зависимость от внутренних API. Подписочные провайдеры ходят в бэкенды официальных приложений. Изменение авторизации или API со стороны платформы может сломать провайдера до выхода исправления.
- Известный сбой провайдера ChatGPT. Есть открытый баг: в ряде окружений бэкенд отвечает проверкой Cloudflare вместо JSON, и запрос падает с 403. Если столкнётесь, провайдер в вашем окружении фактически не работает — проверяйте один запрос вручную до настройки агентов.
- Tool calling обязателен для агентов с инструментами. Не всякая модель в подписочном каталоге умеет вызывать инструменты; без этого агент вроде OpenBot не сможет управлять своим компьютером.
- Условия платформ. Используйте подписочный доступ для собственных аккаунтов и в разумных объёмах: формально такие сценарии находятся в серой зоне условий использования.
- Claude — особый случай. Самостоятельного подписочного провайдера Anthropic в LiteLLM нет; для агентов Claude подключается обычным
ANTHROPIC_API_KEY.
Ссылки
- Документация LiteLLM
- ChatGPT Subscription — провайдер chatgpt/
- GitHub Copilot — провайдер github_copilot/
- xAI OAuth (SuperGrok) — issue с описанием провайдера xai_oauth/
- Виртуальные ключи
- GitHub — BerriAI/litellm
Факты, команды и конфигурации проверены по официальной документации и репозиторию LiteLLM 21 августа 2026 года.
Следующий шаг
Связанные материалы
- Статья: Лимиты ChatGPT Pro закончились: как я подключил в Codex DeepSeek, Kimi и GLM за $10 в месяц
- Блог: Bennett собрал маршрутизатор для нескольких подписок Codex
- База знаний: Workers AI + AI Gateway — единый шлюз для моделей, лимитов и расходов
Если вы строите собственный контур агентов и хотите кормить его подписками вместо API-счетов, эта связка напрямую экономит бюджет и упрощает жизнь небольшим командам.
Если захотите обсудить, как это применить у себя или в команде — пишите в Telegram @pimenov
Если хотите разобрать свою задачу — напишите мне Если хотите разобрать свою задачу — напишите мне.
Можно прийти с идеей, черновым контекстом или уже живой задачей. Помогу быстро понять, где реальный следующий шаг, а где лишний шум.
Обычно хватает 2–3 сообщений, чтобы понять, могу ли я здесь реально помочь и в каком формате лучше двигаться дальше.
Дальше по теме
Разбор способов дать ChatGPT доступ к почте: штатные Gmail и Outlook, MCP поверх IMAP, n8n и Zapier, unified API и отдельный агентный ящик.