Powrót do bloga

API i SDKPrzewodnik

Anthropic Python SDK z CheapTokens: Messages API

Zainstaluj Anthropic Python SDK, ustaw base_url na CheapTokens, wyślij żądanie messages.create i ustaw max_tokens.

Autor: CheapTokens TeamOpublikowano Zaktualizowano 2 min czytania

Kod Pythona łączący Anthropic SDK z CheapTokens przez base_url
Na tej stronie
  1. Czego potrzebujesz
  2. Zainstaluj SDK
  3. Utwórz klienta
  4. Pierwsze żądanie
  5. max_tokens jest wymagane
  6. Przełączanie modeli
  7. Następny krok

Jeśli Twój kod korzysta już z Anthropic Python SDK, nie musisz go przepisywać, aby wywołać inny model. CheapTokens obsługuje Anthropic Messages API, więc zmieniasz ustawienia klienta i zostawiasz client.messages.create(...) bez zmian. Ten przewodnik prowadzi od pustego folderu do skryptu, który wypisuje odpowiedź.

Czego potrzebujesz#

  • Python 3.10 lub nowszy (wymaganie SDK).
  • Klucz API CheapTokens. Jeśli go jeszcze nie masz, zobacz „Czym jest klucz API i jak przechowywać go bezpiecznie”.
  • Jedno saldo obejmuje wszystkie modele, a godzin szczytu nie ma, więc ten sam skrypt kosztuje tyle samo o każdej porze dnia.

Zainstaluj SDK#

bash
pip install anthropic
export CHEAPTOKENS_API_KEY="your-key"

Klucz trzymaj w zmiennej środowiskowej, a nie w pliku źródłowym.

Utwórz klienta#

Dwa ustawienia różnią się od domyślnej konfiguracji Anthropic: klucz i base_url.

python
import os
import anthropic

client = anthropic.Anthropic(
    api_key=os.environ["CHEAPTOKENS_API_KEY"],
    base_url="https://api.cheaptokens.dev",
)

SDK sam dopisuje ścieżkę /v1/messages, więc base_url to host bez /v1. (Endpoint w stylu OpenAI, https://api.cheaptokens.dev/v1, to ten, którego używasz z OpenAI SDK; zobacz „Twoje pierwsze żądanie API z CheapTokens”.)

Pierwsze żądanie#

python
message = client.messages.create(
    model="deepseek-ai/DeepSeek-V4-Flash-0731",
    max_tokens=1024,
    messages=[
        {"role": "user", "content": "Explain what a token is in two sentences."}
    ],
)

print(message.content[0].text)
print(message.stop_reason, message.usage.input_tokens, message.usage.output_tokens)

Identyfikator modelu weź z dokumentacji CheapTokens; identyfikatory różnią się między dostawcami. Tutaj używamy DeepSeek-V4-Flash: okno kontekstu 380K i do 32 768 tokenów w jednej odpowiedzi, co pasuje do długich odpowiedzi i pętli agenta.

Odpowiedź jest w message.content, liście bloków; tekst znajduje się w pierwszym z nich. usage pokazuje, ile tokenów wejściowych i wyjściowych zużyło wywołanie, za co jesteś rozliczany.

max_tokens jest wymagane#

W przeciwieństwie do OpenAI API, messages.create nie zadziała bez max_tokens. Ogranicza długość odpowiedzi:

  • Zbyt niska wartość powoduje ucięcie odpowiedzi. message.stop_reason ma wtedy wartość "max_tokens" zamiast "end_turn".
  • Dla DeepSeek-V4-Flash możesz ustawić do 32 768 dla długich odpowiedzi, takich jak całe pliki lub raporty.
  • Płacisz za faktycznie wygenerowane tokeny, a nie za ustawiony limit.

Jeśli odpowiedź urywa się w połowie zdania, przeczytaj „Dlaczego odpowiedź AI urywa się w połowie zdania?”, aby poznać pełne wyjaśnienie.

Przełączanie modeli#

Zmienia się tylko ciąg model; reszta skryptu pozostaje taka sama. Wybieraj według zadania:

  • DeepSeek-V4-Flash: długie odpowiedzi i pętle agenta, jedna cena o każdej porze, do 32 768 tokenów wyjściowych.
  • GLM-5.3-Flash: tanie codzienne rozmowy i wywołania kodowania, kontekst 390K, do 8 192 tokenów wyjściowych.
  • MiniMax-M2.7: niskokosztowa praca agenta i kodowanie, kontekst 180K, do 8 192 tokenów wyjściowych.

Listę dostępnych identyfikatorów zwraca GET https://api.cheaptokens.dev/v1/models, na przykład zai-org/GLM-5.3-Flash i MiniMaxAI/MiniMax-M2.7.

Aktualne ceny za 1M tokenów dla MiniMax-M2.7 to $0.05 za wejście i $0.15 za wyjście. MiniMax-M2.7 jest tańszy niż OpenRouter łącznie, licząc wejście i wyjście razem. Oto ile kosztuje żądanie z 2000 tokenów wejściowych i 500 wyjściowych na każdym modelu, na żywo z cennika:

Model Koszt OpenRouter
GLM-5.3-Flash $0.00006 $0.00012
DeepSeek-V4-Flash $0.00008 $0.00017
MiniMax-M2.7 $0.00018 $0.0012

2000 tokenów wejściowych i 500 tokenów wyjściowych łącznie. Ceny za 1 mln tokenów są aktualne i zmieniają się wraz z naszymi taryfami; kolumna OpenRouter pokazuje ceny referencyjne dla tego samego obciążenia.

GLM-5.3-Flash i MiniMax-M2.7 są tańsze niż OpenRouter łącznie, licząc wejście i wyjście razem.

Następny krok#

Utwórz klucz i uruchom skrypt z sekcji Pierwsze żądanie. Gdy wypisze odpowiedź, podmień ciąg model, aby porównać modele na własnym zadaniu.