Streaming
Передайте stream: true. Chat завершает поток кадром [DONE], Messages использует Anthropic events, Responses завершается response.completed или response.failed.
AIPool API
Один ключ и base URL для OpenAI, Anthropic Messages и Responses API.
https://aipool.me/apicurl https://aipool.me/api/v1/chat/completions \
-H "Authorization: Bearer $AIPOOL_API_KEY" \
-H "Content-Type: application/json" \
-d '{"model":"gpt-5.6-terra","messages":[{"role":"user","content":"Say hello in one sentence"}],"max_tokens":128}'Установите AIPOOL_API_KEY. Публичный model id возьмите из GET /v1/models.
Консоль не нужна: создайте или откройте файл настроек в любом текстовом редакторе (Блокнот подойдёт), вставьте содержимое ниже и подставьте свой ключ вместо pk_ВАШ_КЛЮЧ.
Файл settings.json лежит в папке .claude внутри вашей домашней папки. Если файла или папки нет — создайте их.
C:\Users\ИмяПользователя\.claude\settings.json/Users/имя/.claude/settings.json/home/имя/.claude/settings.json{
"env": {
"ANTHROPIC_API_KEY": "pk_ВАШ_КЛЮЧ",
"ANTHROPIC_BASE_URL": "https://aipool.me/api",
"ANTHROPIC_MODEL": "claude-opus-4-8",
"ANTHROPIC_SMALL_FAST_MODEL": "claude-haiku-4-5",
"ANTHROPIC_DEFAULT_OPUS_MODEL": "claude-opus-4-8",
"ANTHROPIC_DEFAULT_SONNET_MODEL": "claude-sonnet-4-6",
"ANTHROPIC_DEFAULT_HAIKU_MODEL": "claude-haiku-4-5",
"CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC": "1"
}
}Если файл уже существует, добавьте в него только блок "env", не удаляя остальное. Точные id моделей можно взять на странице «Модели» — подойдёт любой claude-*.
Чтобы Claude Code при первом запуске не предлагал вход через аккаунт Anthropic, рядом (прямо в домашней папке) создайте файл .claude.json:
C:\Users\ИмяПользователя\.claude.json/Users/имя/.claude.json/home/имя/.claude.json{
"hasCompletedOnboarding": true
}Готово: запустите claude в папке проекта — запросы пойдут через AIPool по нативному Messages API (/v1/messages).
«claude» не распознаётся как команда. Закройте и откройте окно PowerShell заново — обновляется PATH. Если не помогло, перезагрузите компьютер.
Ошибка политики выполнения при установке через PowerShell. Выполните один раз, затем повторите установку:
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUserОшибка авторизации (401) или «закончился баланс». Подставьте в конфиг ключ с положительным балансом и перезапустите claude. Секрет хранится в settings.json — не публикуйте его.
Обновить Claude Code. Нативная установка обновляется сама; принудительно — команда claude update.
Передайте stream: true. Chat завершает поток кадром [DONE], Messages использует Anthropic events, Responses завершается response.completed или response.failed.
До первого SSE-байта ошибки приходят как HTTP с нормализованным error.code (rate_limited, insufficient_funds, upstream_error…). После старта проверяйте error-event выбранного API. В streaming Responses rate-limit может прийти как HTTP 200 + response.failed с error.code=rate_limit_exceeded — так его ждёт Codex.
Повторяйте только 408, 429 и 5xx. Уважайте Retry-After; иначе используйте exponential backoff с jitter. Для Responses также повторяйте response.failed с retry-подсказкой в сообщении.
| Концепция | OpenAI Chat | Anthropic Messages | Responses |
|---|---|---|---|
| Endpoint | /v1/chat/completions | /v1/messages | /v1/responses |
| Ввод | messages[] | messages[] | input |
| System | role system | system | instructions |
| Лимит | max_tokens | max_tokens | max_output_tokens |
| Текст | choices[0].message.content | content[].text | output_text |
| Tools | tools[].function | tools[] + tool_use | typed tools + output items |
| Stream end | [DONE] | message_stop | response.completed |
| Rate limit | HTTP 429 + Retry-After | HTTP 429 + Retry-After | HTTP 429; в стриме — 200 + response.failed (rate_limit_exceeded) |
OpenAI-совместимые /v1/images/generations и /v1/images/edits. Работает и через SDK: client.images.generate(...) с тем же base URL.
curl https://aipool.me/api/v1/images/generations \
-H "Authorization: Bearer $AIPOOL_API_KEY" \
-H "Content-Type: application/json" \
-d '{"model":"ID_IMAGE_МОДЕЛИ","prompt":"неоновый кот в очках","size":"1024x1024","quality":"high"}'Статичная цена за картинку — без токенов, стоимость известна до запроса. Списывается за фактически возвращённые изображения. Цены — на странице «Модели»; image-модели там помечены ценой за штуку.
Всегда data[].b64_json (плюс revised_prompt, width/height); response_format принимается для совместимости с SDK, но url не возвращается. До 4 картинок за запрос (n); quality low/medium/high/auto цену не меняет.
/v1/images/edits — multipart, как шлёт OpenAI SDK (client.images.edit), или JSON с base64-полем image. До 4 исходников; маска-inpainting — PNG с прозрачностью тех же размеров, только при одном исходнике.
Готовые коллекции