OneProvider
Руководства

Миграция с Anthropic

Направьте Anthropic SDK на OneProvider одной переменной окружения. Примеры на Python и Node, замена ID модели и проверка, что переключение сработало.

Если ваш код уже сегодня ходит в api.anthropic.com — вся миграция это одна переменная окружения. Существующие запросы и ответы байт-в-байт идентичны.

Все модели, характеристики и цены Индекс документации для AI-агентов: https://oneprovider.dev/docs/llms.txt Перед началом: ключ из кабинета Откройте кабинет: Telegram-бот @oneprovider_robot (Личный кабинет) или app.oneprovider.dev . Нажмите «Выпустить ключ», задайте имя (например, название этого клиента) и лимит трат, скопируйте ключ. Баланс пополняется там же. Подробнее о кабинете и ключах .

Что меняется (и что нет)

Ничего в схеме запроса, форме ответа, событиях стрима или SDK, который вы уже используете, менять не нужно. Единственная разница — куда уходят байты:

Справочные данные
ЧтоAnthropicOneProvider
Base URLhttps://api.anthropic.comhttps://api.oneprovider.dev
Заголовок authx-api-keyx-api-key или Authorization: Bearer
Заголовок версииanthropic-version: 2023-06-01anthropic-version: 2023-06-01
Схема запросаAnthropic Messages APIИдентична
Схема ответаAnthropic Messages APIИдентична
Стрим-событияSSE: message_start, content_block_delta...Идентичны, без буферизации
Prompt caching (cache_control)НативноНативно — pass-through
МоделиСтарые датированные алиасыАктуальный список Claude — см. Models
БиллингКарта, postpaid, ежемесячноКрипто-пополнение, prepaid, без срока

Миграция через env

Если ваш код читает учётки из переменных окружения (так и должно быть) — это вся правка:

bash
# До
export ANTHROPIC_API_KEY=sk-ant-...
# После
export ANTHROPIC_API_KEY=sk-... # ключ OneProvider
export ANTHROPIC_BASE_URL=https://api.oneprovider.dev

Официальные SDK Anthropic для Python и Node читают ANTHROPIC_BASE_URL — никаких других правок в коде не нужно.

Python — явная форма

python
# До
from anthropic import Anthropic
client = Anthropic()
# После
from anthropic import Anthropic
client = Anthropic(
api_key=os.environ["ANTHROPIC_API_KEY"],
base_url="https://api.oneprovider.dev",
)

Node — явная форма

ts
// До
import Anthropic from "@anthropic-ai/sdk";
const client = new Anthropic();
// После
import Anthropic from "@anthropic-ai/sdk";
const client = new Anthropic({
apiKey: process.env.ANTHROPIC_API_KEY,
baseURL: "https://api.oneprovider.dev",
});

Замена id моделей

OneProvider отдаёт актуальные Claude-id (список на странице Models) на Anthropic-нативной поверхности (/v1/messages). Если ваш код ссылается на старый Anthropic-алиас (claude-3-5-sonnet, claude-3-opus-20240229 и т.д.), вернётся 400 invalid_request_error — замените на текущий канонический id:

Справочные данные
Старый алиасИспользовать
claude-3-5-sonnet*, claude-3-7-sonnet*, claude-sonnet-3-5claude-sonnet-5-5
claude-3-opus*, claude-opus-3claude-opus-5-5
claude-3-haiku*, claude-3-5-haiku*, claude-haiku-3-5claude-haiku-5-5

Проверка замены

bash
# Должны напечататься текущие Claude-id
curl -s https://api.oneprovider.dev/v1/models \
-H "x-api-key: $ANTHROPIC_API_KEY" | jq '.data[].id'
# Должно вернуть HTTP 200 и короткий текстовый ответ
curl -s https://api.oneprovider.dev/v1/messages \
-H "x-api-key: $ANTHROPIC_API_KEY" \
-H "anthropic-version: 2023-06-01" \
-H "content-type: application/json" \
-d '{"model":"claude-haiku-5-5","max_tokens":32,"messages":[{"role":"user","content":"hi"}]}'
Сначала прогон side-by-side Для параноидальных миграций: оставьте Anthropic-клиент на один деплой. Пустите 1% трафика через OneProvider, сверьте ответы на одинаковых промптах, потом постепенно за несколько дней переключите доли. Полная схема-паритет делает это тривиальным.

Быстрые ответы

Какой base URL использовать?

Claude Code и Anthropic SDK работают с https://api.oneprovider.dev. OpenAI SDK и OpenAI-совместимые клиенты работают с https://api.oneprovider.dev/v1. За обоими адресами один ключ; список моделей: странице моделей , ставки на странице тарифов .

Как авторизоваться?

Передайте сырой ключ sk-… в заголовке x-api-key или Authorization: Bearer: один из двух, не оба. Храните ключ в переменной окружения, а не в файле, который попадает в репозиторий. Подробнее об аутентификации .

Где взять ключ?

Откройте кабинет в Telegram-боте @oneprovider_robot или на app.oneprovider.dev, пополните баланс и нажмите «Выпустить ключ». У каждого ключа может быть свой лимит расхода. Кабинет и ключи .

Что значат ошибки 401, 404 и 429?

401: ключ не задан, написан с ошибкой или передан не в том заголовке; вставьте ключ целиком, без кавычек и пробелов. 404: обычно неверный base URL, например лишний или двойной /v1. 429 с текстом «Insufficient balance»: баланс кабинета или лимит ключа исчерпан, пополните его вместо повторов; любой другой 429 это лимит частоты, подождите Retry-After. Разбор: коды ошибок и решение проблем .

Почему обрывается стрим или сбрасывается соединение?

VPN и VLESS-прокси часто буферизуют SSE или ломают согласование HTTP/2. У OneProvider нет региональных ограничений, и стримы на нашей стороне не буферизуются: отключите прокси и повторите запрос.

Куда писать, если не помогло?

Напишите в Telegram @Oneproviderhelpbot или откройте «Поддержку» в веб-кабинете: приложите код статуса и точный текст ошибки. Как работает поддержка .

Последнее обновление: 2026-10-05 Нашли ошибку? @Oneproviderhelpbot