APIMaster.ai

Samouczek API Claude w Pythonie 2026 | APIMaster.ai

Jak korzystać z API Claude w Pythonie. Kompletne przykłady z użyciem SDK Anthropic i klienta kompatybilnego z OpenAI – czat, strumieniowanie, wizja i wywoływanie funkcji – za pośrednictwem APIMaster.ai.

Samouczek API Claude w Pythonie

Ten przewodnik omawia korzystanie z API Claude w Pythonie zarówno z natywnym SDK Anthropic, jak i klientem kompatybilnym z OpenAI. Wszystkie przykłady działają z APIMaster.ai – zamień własny bazowy adres URL i klucz API.

Instalacja

pip install anthropic          # Natywne SDK Anthropic
pip install openai             # Kompatybilne z OpenAI (opcjonalnie)

Podstawowa konfiguracja

import anthropic

client = anthropic.Anthropic(
    api_key="TWOJ_KLUCZ_APIMASTER",
    base_url="https://apimaster.ai",  # Bez /v1 dla SDK Anthropic
)

Lub z SDK OpenAI (łatwiej, jeśli już używasz OpenAI):

from openai import OpenAI

client = OpenAI(
    api_key="TWOJ_KLUCZ_APIMASTER",
    base_url="https://apimaster.ai/v1",
)

Twoje pierwsze wywołanie API Claude

import anthropic

client = anthropic.Anthropic(
    api_key="TWOJ_KLUCZ_APIMASTER",
    base_url="https://apimaster.ai",
)

message = client.messages.create(
    model="claude-sonnet-4-6",
    max_tokens=1024,
    messages=[
        {"role": "user", "content": "Wyjaśnij różnicę między listami a krotkami w Pythonie."}
    ],
)

print(message.content[0].text)

Prompt systemowy

response = client.messages.create(
    model="claude-sonnet-4-6",
    max_tokens=512,
    system="Jesteś starszym inżynierem Pythona. Bądź zwięzły i używaj przykładów kodu.",
    messages=[
        {"role": "user", "content": "Jaki jest najszybszy sposób na spłaszczenie zagnieżdżonej listy?"}
    ],
)
print(response.content[0].text)

Konwersacja wieloetapowa

conversation = []

def chat(user_message):
    conversation.append({"role": "user", "content": user_message})
    response = client.messages.create(
        model="claude-sonnet-4-6",
        max_tokens=1024,
        messages=conversation,
    )
    assistant_message = response.content[0].text
    conversation.append({"role": "assistant", "content": assistant_message})
    return assistant_message

print(chat("Czym jest dekorator w Pythonie?"))
print(chat("Czy możesz pokazać praktyczny przykład?"))

Odpowiedzi strumieniowane

Strumieniowanie zwraca tokeny w miarę ich generowania – lepsze UX dla długich odpowiedzi:

with client.messages.stream(
    model="claude-sonnet-4-6",
    max_tokens=1024,
    messages=[{"role": "user", "content": "Napisz web scraper w Pythonie używając requests i BeautifulSoup."}],
) as stream:
    for text in stream.text_stream:
        print(text, end="", flush=True)
print()  # nowa linia na końcu

Wizja: Analiza obrazów

Claude Sonnet i Opus obsługują obrazy (base64 lub URL):

import base64

with open("wykres.png", "rb") as f:
    image_data = base64.standard_b64encode(f.read()).decode("utf-8")

response = client.messages.create(
    model="claude-sonnet-4-6",
    max_tokens=512,
    messages=[
        {
            "role": "user",
            "content": [
                {
                    "type": "image",
                    "source": {
                        "type": "base64",
                        "media_type": "image/png",
                        "data": image_data,
                    },
                },
                {"type": "text", "text": "Podsumuj, co pokazuje ten wykres."},
            ],
        }
    ],
)
print(response.content[0].text)

Używanie narzędzi (wywoływanie funkcji)

tools = [
    {
        "name": "get_weather",
        "description": "Pobierz aktualną pogodę dla miasta",
        "input_schema": {
            "type": "object",
            "properties": {
                "city": {"type": "string", "description": "Nazwa miasta"},
            },
            "required": ["city"],
        },
    }
]

response = client.messages.create(
    model="claude-sonnet-4-6",
    max_tokens=256,
    tools=tools,
    messages=[{"role": "user", "content": "Jaka jest pogoda w Tokio?"}],
)

# Sprawdź, czy Claude chce użyć narzędzia
if response.stop_reason == "tool_use":
    tool_call = next(b for b in response.content if b.type == "tool_use")
    print(f"Narzędzie: {tool_call.name}, Wejście: {tool_call.input}")

Użycie asynchroniczne

import asyncio
import anthropic

async def main():
    client = anthropic.AsyncAnthropic(
        api_key="TWOJ_KLUCZ_APIMASTER",
        base_url="https://apimaster.ai",
    )
    response = await client.messages.create(
        model="claude-sonnet-4-6",
        max_tokens=256,
        messages=[{"role": "user", "content": "Cześć!"}],
    )
    print(response.content[0].text)

asyncio.run(main())

Obsługa błędów

import anthropic

try:
    response = client.messages.create(
        model="claude-sonnet-4-6",
        max_tokens=256,
        messages=[{"role": "user", "content": "Cześć"}],
    )
except anthropic.AuthenticationError:
    print("Nieprawidłowy klucz API")
except anthropic.RateLimitError:
    print("Limit żądań – dodaj logikę ponawiania")
except anthropic.APIStatusError as e:
    print(f"Błąd API {e.status_code}: {e.message}")

Wybór odpowiedniego modelu Claude do projektów w Pythonie

Zadanie Model Powód
Chatboty, pytania i odpowiedzi claude-haiku-4-5 Szybki + tani
Generowanie kodu claude-sonnet-4-6 Najlepszy balans
Złożone rozumowanie claude-opus-4-8 Najwyższa dokładność
Analiza dokumentów claude-sonnet-4-6 Kontekst 1M

Uzyskaj dostęp do API Claude

Zarejestruj się w APIMaster.ai, aby uzyskać dostęp do API Claude przez jeden zunifikowany endpoint, z bieżącymi cenami i danymi weryfikacji odcisków palców.

Często zadawane pytania

Jak zainstalować bibliotekę Python API Claude? Uruchom pip install anthropic dla oficjalnego SDK lub pip install openai, aby użyć kompatybilnego z OpenAI endpointu APIMaster z modelami Claude.

Którego SDK Python powinienem użyć dla API Claude? SDK anthropic jest oficjalnym wyborem i obsługuje wszystkie specyficzne dla Claude funkcje (używanie narzędzi, wizja, strumieniowanie). SDK openai działa przez warstwę kompatybilności APIMaster – przydatne, jeśli już używasz OpenAI i chcesz zmienić modele.

Jak strumieniować odpowiedzi API Claude w Pythonie? Użyj stream=True z biblioteką openai lub client.messages.stream() z SDK anthropic. Zobacz przykład strumieniowania powyżej.

Czy API Claude obsługuje wywoływanie funkcji (używanie narzędzi)? Tak – Claude obsługuje używanie narzędzi zarówno w natywnym SDK Anthropic, jak i przez kompatybilny z OpenAI endpoint APIMaster, używając standardowego parametru tools.

Jaki jest maksymalny kontekst dla Claude w Pythonie? Claude Sonnet 4.6 i Opus 4.8 obsługują po 1 mln tokenów. Możesz przekazywać bardzo długie dokumenty bezpośrednio w tablicy messages.

Zobacz też: Cennik API Claude · Jak uzyskać klucz API Claude