Files
obsidian-vault/personal/tech/OpenRouter setup.md
T

5.4 KiB
Executable File

Теперь вся картина чёткая. Разбираю детально.


Условия OpenRouter — честно

Бесплатный тир (без карты)

Бесплатный лимит — 50 запросов в день и 20 RPM. Но если пополнить баланс хотя бы на $10 — лимит вырастает до 1000 запросов в день, при этом 20 RPM остаётся. OpenRouter

Важный нюанс: failed запросы тоже считаются в дневной лимит. То есть если агент словил 429 и ретраит — каждая попытка ест квоту. OpenRouter

Итого реально:

Состояние req/day req/min
Без оплаты 50 20
Пополнил $10+ 1000 20
Платные модели без лимита без лимита

$10 разово — это не подписка, не списывается автоматически. Просто разовое пополнение кредитов, которые тратятся только на платные модели. Зато бесплатные модели сразу получают 1000 req/day. Очень разумный трейдофф.


Что сейчас доступно бесплатно (апрель 2026)

На OpenRouter 28 бесплатных моделей. Топ для наших задач: Costgoat

Для агентных задач (есть tool calling):

  • qwen/qwen3-coder:free — 262K контекст, лучшая бесплатная модель для кода
  • qwen/qwen3-next-80b-a3b-instruct:free — 262K, MoE, инструкции
  • nvidia/nemotron-3-super-120b-a12b:free — 262K, гибридная архитектура
  • openai/gpt-oss-120b:free — 131K, первая open-weight модель OpenAI
  • openai/gpt-oss-20b:free — 131K, быстрее
  • meta-llama/llama-3.3-70b-instruct:free — 66K, проверенная
  • minimax/minimax-m2.5:free — 197K

Авто-роутер (выбирает лучшую доступную):

  • openrouter/free — 200K контекст, сам выбирает модель

Приватность: некоторые бесплатные модели логируют промпты для обучения — нужно проверять карточку каждой модели. Teamday Для Asana/Gmail задач это важно — использовать только модели без логирования или фильтровать данные до отправки (что мы уже делаем в asana-scout).


Настройка в нашем стеке

Шаг 1 — Регистрация и ключ

Зайти на openrouter.ai → Sign Up → Keys → Create Key. Карта не нужна.

Опционально пополнить на $10 для 1000 req/day на бесплатных моделях.

Шаг 2 — Добавить в .env

# ~/ai-stack/.env
OPENROUTER_API_KEY=sk-or-v1-xxxxx

Шаг 3 — docker-compose.yml

services:
  openclaw:
    environment:
      - OPENROUTER_API_KEY=${OPENROUTER_API_KEY}

Шаг 4 — openclaw.json

{
  "providers": {
    "openrouter": {
      "type": "openai-compatible",
      "baseUrl": "https://openrouter.ai/api/v1",
      "apiKey": "${OPENROUTER_API_KEY}",
      "headers": {
        "HTTP-Referer": "https://your-site.com",
        "X-Title": "MyOpenClaw"
      }
    }
  },
  "agents": {
    "list": [
      {
        "id": "main",
        "model": "claude-opus-4-5"
      },
      {
        "id": "asana-scout",
        "model": "openrouter/qwen/qwen3-next-80b-a3b-instruct:free"
      },
      {
        "id": "knowledge",
        "model": "openrouter/meta-llama/llama-3.3-70b-instruct:free"
      },
      {
        "id": "spawn-worker",
        "model": "openrouter/openai/gpt-oss-120b:free"
      }
    ]
  }
}

Два хедера HTTP-Referer и X-Title — OpenRouter просит их указывать для идентификации приложения, иначе запросы могут депрайоритизироваться.

Шаг 5 — Перезапуск

docker compose down && docker compose up -d
docker exec openclaw openclaw status

Практический совет по лимитам для агентов

20 RPM звучит много, но агентная цепочка может сделать 5-10 вызовов за один пользовательский запрос. При параллельных spawn-worker агентах лимит бьётся быстро.

Добавь в AGENTS.md главного агента:

## OpenRouter Rate Limit Awareness
- Free tier: 20 req/min, 1000 req/day
- Spawn workers sequentially, not in parallel, when using free OpenRouter models
- If 429 received: wait 10s before retry, max 3 retries
- Fallback model: openrouter/free (auto-selects available free model)