OpenRouter: один ключ API для 300+ моделей ИИ (аккаунт, API, OpenCode, VS Code)
Введение
OpenRouter — это шлюз к 300+ моделям ИИ через один ключ API и один
счёт. Вместо регистрации у каждого провайдера вы регистрируетесь один раз,
пополняете баланс и вызываете любую модель через API, совместимый с OpenAI:
флагманские коммерческие модели, дешёвые быстрые модели, открытые модели и
бесплатные модели для экспериментов.
На этом сайте у него два типичных применения: источник моделей для
агента для программирования OpenCode (один ключ OpenRouter
заменяет целый карман ключей разных провайдеров) и облачная альтернатива
локальному запуску Qwen, когда нужно качество выше,
чем может дать ваше железо.
Создание аккаунта
- Откройте openrouter.ai и зарегистрируйтесь (подойдёт вход через Google или GitHub, а также обычная почта).
- Бесплатные модели работают уже с аккаунтом — для старта платить не нужно.
- Платным моделям нужен пополненный баланс: откройте страницу кредитов и оплаты и пополните счёт картой. Оплата по факту использования, за миллион токенов; точные цены стоят рядом с каждой моделью на странице моделей и меняются, поэтому смотрите их там, а не в статьях в блогах.
Создание ключа API
- Откройте openrouter.ai/settings/keys и создайте ключ. Он начинается с sk-or- — скопируйте его сразу, он показывается один раз.
- Положите ключ в переменную окружения, а не вставляйте его в файлы:
export OPENROUTER_API_KEY="sk-or-your-key-here"
Относитесь к ключу как к паролю: никогда не коммитьте его в git, не вставляйте в чаты и скриншоты. Если ключ утёк, удалите его на странице ключей и создайте новый.
Знакомство с моделями на сайте
Прежде чем что-то подключать, попробуйте модель в браузере:
- Откройте openrouter.ai/models: у каждой модели видны цена за миллион токенов, длина контекста и есть ли у неё бесплатный вариант (бесплатные варианты заканчиваются на :free).
- Откройте модель и в окне чата задайте несколько вопросов из своей предметной области — это самый дешёвый способ сравнить качество, прежде чем тратить кредиты в цикле агента.
- Скопируйте точный идентификатор модели (формат провайдер/модель, например openai/gpt-4o) — он понадобится дословно в коде и конфигах ниже.
Вызов моделей из кода
Эндпоинт API — https://openrouter.ai/api/v1, он говорит на формате чата OpenAI. Минимальный запрос через curl:
curl https://openrouter.ai/api/v1/chat/completions -H "Content-Type: application/json" -H "Authorization: Bearer $OPENROUTER_API_KEY" -d '{"model": "openai/gpt-4o", "messages": [{"role": "user", "content": "Hi"}]}'
Тот же вызов на Python (нужен пакет openai):
pip install openai
import os from openai import OpenAI client = OpenAI( base_url="https://openrouter.ai/api/v1", api_key=os.environ["OPENROUTER_API_KEY"], ) answer = client.chat.completions.create( model="openai/gpt-4o", messages=[{"role": "user", "content": "Say hi"}], ) print(answer.choices[0].message.content)
OpenRouter в OpenCode
Полная настройка агента живёт в статье OpenCode: скачать, установить и применять — здесь только часть про OpenRouter:
- Запустите OpenCode (opencode) и введите /connect.
- Выберите провайдера OpenRouter и вставьте свой ключ (тот самый sk-or- из шага выше).
- Введите /models, чтобы увидеть список доступных вам идентификаторов моделей, и закрепите модель по умолчанию в opencode.json с точным идентификатором из этого списка.
OpenRouter в VS Code
Подойдёт любое расширение ИИ для VS Code, которое принимает своего провайдера; три распространённых:
- Cline. Установите Cline из Marketplace, откройте настройки, укажите в качестве провайдера API OpenRouter, вставьте ключ, выберите модель в выпадающем списке.
- Roo Code. Тот же порядок: установить, выбрать провайдера OpenRouter, вставить ключ, выбрать модель.
- Continue. Установите Continue и добавьте блок модели в config.yaml (замените идентификатор и ключ):
models: - name: OpenRouter GPT-4o provider: openrouter model: openai/gpt-4o apiKey: YOUR_OPENROUTER_KEY
Где расширение это поддерживает, предпочитайте переменную окружения захардкоженному ключу, а актуальные названия полей сверяйте в документации расширения.
Ключи, лимиты и приватность
- Отдельный ключ под каждую задачу. Создавайте разные ключи для экспериментов, агентов для программирования и приложений — тогда утёкший ключ агента стоит одного отзыва, а не полного сброса. Называйте ключи так, чтобы было понятно, что удалять.
- Лимиты расходов. Поставьте лимит кредитов на странице оплаты, прежде чем направлять автономного агента на платную модель; циклы агента быстро жгут токены.
- Приватность бесплатных и платных запросов. Платные запросы по умолчанию не используются для обучения моделей; промпты бесплатного тарифа могут использоваться для улучшения моделей. Никогда не отправляйте секреты или данные клиентов на бесплатный эндпоинт — сверяйтесь с текущей политикой приватности, она меняется.
- Лимиты частоты на бесплатном тарифе. У бесплатных моделей есть суточные лимиты запросов, поэтому внезапный 429 посреди сессии обычно означает квоту, а не ваш ключ.
Что делать при сбоях
- 401 Unauthorized: ключ неверный (обычная причина — лишние пробелы или перевод строки при копировании: ключ должен начинаться с sk-or-), отозван или переменная в этой оболочке пуста. Напечатайте первые символы, чтобы увидеть, что на самом деле видит код.
- Model not found: идентификатор должен в точности совпадать с тем, что на openrouter.ai/models, включая префикс провайдера и суффикс :free для бесплатных вариантов.
- No credits / payment required: платные модели останавливаются, когда баланс доходит до нуля — пополните счёт на странице оплаты и повторите запрос.
- Пустые или обрезанные ответы: вы упёрлись в лимит контекста или вывода модели; сократите входные данные или переключитесь на модель с большим окном контекста (оно указано на странице моделей).
- Медленный первый токен у бесплатных моделей: это нормально — бесплатные эндпоинты стоят в очереди за платным трафиком.
Официальные источники:
- openrouter.ai
- openrouter.ai/docs
- openrouter.ai/models
Автор статьи: Клавдия Кондакова