Migracja z Anthropic
Skieruj SDK Anthropic na OneProvider, ustawiając jedną zmienną środowiskową. Przykłady w Pythonie i Node, zamiana ID modelu i szybki test, że wszystko działa.
Jeśli twój kod wywołuje dziś api.anthropic.com, cała migracja to jedna zmienna środowiskowa. Obecne żądania i odpowiedzi są identyczne bajt w bajt.
Wszystkie modele, możliwości i ceny Indeks dokumentacji dla agentów AI:https://oneprovider.dev/docs/llms.txt Zanim zaczniesz: klucz z Panelu Otwórz swój Panel: bot Telegram @oneprovider_robot (Konto) albo app.oneprovider.dev . Naciśnij „Utwórz klucz”, nadaj mu nazwę (na przykład ten klient) i limit wydatków, a potem skopiuj klucz. Saldo doładowujesz w tym samym miejscu. Więcej o Panelu i kluczach . Co się zmienia (a co nie)
Nic w schemacie żądania, kształcie odpowiedzi, zdarzeniach streamingu ani w używanym już SDK nie wymaga zmian. Jedyna różnica to miejsce, dokąd trafiają bajty:
| Aspekt | Anthropic | OneProvider |
|---|---|---|
| Base URL | https://api.anthropic.com | https://api.oneprovider.dev |
| Nagłówek uwierzytelniania | x-api-key | x-api-key lub Authorization: Bearer |
| Nagłówek wersji | anthropic-version: 2023-06-01 | anthropic-version: 2023-06-01 |
| Schemat żądania | Anthropic Messages API | Identyczny |
| Schemat odpowiedzi | Anthropic Messages API | Identyczny |
| Zdarzenia streamingu | SSE: message_start, content_block_delta... | Identyczne, bez buforowania |
Prompt caching (cache_control) | Natywnie | Natywnie — przekazywanie bez zmian |
| Modele | Stare aliasy z datą | Generowana lista dozwolonych modeli Claude — zobacz Modele |
| Rozliczenia | Karta, płatność z dołu, miesięcznie | Doładowanie kryptowalutami, przedpłata, bez terminu ważności |
Migracja samą zmienną środowiskową
Jeśli twój kod czyta dane uwierzytelniające ze zmiennych środowiskowych (powinien), to cała zmiana:
bash# Before
export ANTHROPIC_API_KEY=sk-ant-...
# After
export ANTHROPIC_API_KEY=sk-... # OneProvider key
export ANTHROPIC_BASE_URL=https://api.oneprovider.dev Oficjalne SDK Anthropic dla Pythona i Node odczytują ANTHROPIC_BASE_URL bez żadnych innych zmian w kodzie.
Python — postać jawna
python# Before
from anthropic import Anthropic
client = Anthropic()
# After
from anthropic import Anthropic
client = Anthropic(
api_key=os.environ["ANTHROPIC_API_KEY"],
base_url="https://api.oneprovider.dev",
) Node — postać jawna
ts// Before
import Anthropic from "@anthropic-ai/sdk";
const client = new Anthropic();
// After
import Anthropic from "@anthropic-ai/sdk";
const client = new Anthropic({
apiKey: process.env.ANTHROPIC_API_KEY,
baseURL: "https://api.oneprovider.dev",
}); Zamiana identyfikatora modelu
Natywny interfejs Anthropic obsługuje aktualne identyfikatory Claude z listy na stronie Modele. Jeśli twój kod używa starszego aliasu Anthropic (claude-3-5-sonnet, claude-3-opus-20240229 itp.), dostaniesz błąd 400 invalid_request_error — zastąp go aktualnym identyfikatorem kanonicznym:
| Stary alias | Użyj zamiast niego |
|---|---|
claude-3-5-sonnet*, claude-3-7-sonnet*, claude-sonnet-3-5 | claude-sonnet-5-5 |
claude-3-opus*, claude-opus-3 | claude-opus-5-5 |
claude-3-haiku*, claude-3-5-haiku*, claude-haiku-3-5 | claude-haiku-5-5 |
Sprawdź zamianę
bash# Should print the current Claude model ids
curl -s https://api.oneprovider.dev/v1/models \
-H "x-api-key: $ANTHROPIC_API_KEY" | jq '.data[].id'
# Should return HTTP 200 and a short text message
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"}]}' Najpierw uruchom oba obok siebie Dla ostrożnej migracji: zachowaj swojego klienta Anthropic na czas jednego wdrożenia. Wyślij 1% ruchu przez OneProvider, porównaj odpowiedzi na identyczne prompty, a potem w ciągu kilku dni zwiększaj udział. Dzięki identycznemu kształtowi odpowiedzi to banalnie proste. Szybkie odpowiedzi
Jakiego base URL użyć?
Claude Code i SDK Anthropic używają https://api.oneprovider.dev. SDK OpenAI i klienty zgodne z OpenAI używają https://api.oneprovider.dev/v1. Jeden klucz działa przy obu; lista modeli jest na stronie modeli , a stawki na stronie cennika .
Jak się uwierzytelnić?
Wyślij surowy klucz sk-… w x-api-key albo Authorization: Bearer: w jednym z nich, nigdy w obu. Trzymaj klucz w zmiennej środowiskowej, a nie w pliku, który trafia do repozytorium. Więcej o uwierzytelnianiu .
Skąd wziąć klucz?
Otwórz swój Panel w bocie Telegram @oneprovider_robot lub na app.oneprovider.dev, doładuj saldo i naciśnij „Utwórz klucz”. Każdy klucz może mieć własny limit wydatków. Panel i klucze API .
Co oznaczają 401, 404 i 429?
401: klucza brakuje, jest błędnie wpisany albo wysłany w złym nagłówku; wklej cały klucz bez cudzysłowów i spacji. 404: zwykle zły base URL, na przykład brakujące lub podwojone /v1. 429 z komunikatem „Insufficient balance”: saldo Panelu lub limit wydatków klucza się wyczerpał, więc doładuj zamiast ponawiać; każde inne 429 to limit zapytań, więc poczekaj zgodnie z Retry-After. Szczegóły: kody błędów i rozwiązywanie problemów .
Dlaczego strumienie się urywają lub resetują?
VPN i proxy VLESS często buforują SSE albo zrywają negocjację HTTP/2. OneProvider nie ma ograniczeń regionalnych i nie buforuje strumieni, więc wyłącz proxy i spróbuj ponownie.
Gdzie pytać, jeśli to nie wystarcza?
Napisz do @Oneproviderhelpbot w Telegramie albo otwórz „Wsparcie” w Panelu w przeglądarce, podając kod statusu HTTP i dokładny komunikat błędu. Jak działa wsparcie .
Ostatnia aktualizacja: 2026-11-08 Widzisz błąd? @Oneproviderhelpbot