0Pricing
AI Agents · Lekcja

Wywoływanie Anthropic API: messages

Używaj API Anthropic messages: poznaj różnice względem OpenAI, umiejscowienie promptu systemowego oraz najlepsze praktyki właściwe dla Claude.

Wywoływanie Anthropic API: messages to bezpłatna lekcja AI Agents na CoddyKit. To lekcja 2 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej AI Agents, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs AI Agents zawiera 4 lekcji w sumie.

Części tej lekcji nie zostały jeszcze przetłumaczone i są wyświetlane po angielsku.

Dlaczego Anthropic?

Modele Claude często lepiej stosują się do instrukcji, lepiej korzystają z narzędzi i mają większe okna kontekstu niż odpowiadające im modele OpenAI — a czasami są również tańsze.

Większość agentów produkcyjnych obsługuje obu dostawców, aby zapewnić rozwiązanie awaryjne.

Install the SDK

# pip install anthropic
import anthropic
client = anthropic.Anthropic()  # reads ANTHROPIC_API_KEY from env

Pierwsze wywołanie

Punktem końcowym jest messages.create:

response = client.messages.create(
    model='claude-sonnet-4-5',
    max_tokens=512,
    system='You are a concise assistant.',
    messages=[
        {'role': 'user', 'content': 'Capital of France?'},
    ],
)
print(response.content[0].text)
# 'Paris.'

Najważniejsze różnice względem OpenAI

  1. system jest parametrem najwyższego poziomu, a nie wiadomością
  2. max_tokens jest WYMAGANY
  3. content jest listą bloków (text, tool_use itd.)
  4. Brak parametru n — należy użyć wielu wywołań

Bloki treści

Nawet odpowiedzi tekstowe są zwracane jako lista bloków:

response.content              # list of blocks
response.content[0].type      # 'text' or 'tool_use'
response.content[0].text      # the text content
response.stop_reason          # 'end_turn' / 'max_tokens' / 'tool_use'
response.usage.input_tokens
response.usage.output_tokens

Treść wieloblokowa

W wiadomościach user można również wysyłać listę bloków treści (obrazy, wyniki narzędzi):

messages = [{
    'role': 'user',
    'content': [
        {'type': 'text', 'text': 'What is in this image?'},
        {'type': 'image', 'source': {
            'type': 'base64',
            'media_type': 'image/png',
            'data': image_base64
        }}
    ]
}]

Wstępne wypełnianie assistant

Można wymusić rozpoczęcie odpowiedzi w określony sposób:

messages = [
    {'role': 'user', 'content': 'Return a JSON object.'},
    {'role': 'assistant', 'content': '{'}
]
response = client.messages.create(
    model='claude-sonnet-4-5',
    max_tokens=512,
    messages=messages,
)
# Output starts after '{', guaranteed to be JSON.

Korzystanie z narzędzi

Format narzędzi Anthropic jest podobny do formatu OpenAI, ale używa input_schema:

tools = [{
    'name': 'get_weather',
    'description': 'Get current weather',
    'input_schema': {
        'type': 'object',
        'properties': {'city': {'type': 'string'}},
        'required': ['city']
    }
}]

response = client.messages.create(
    model='claude-sonnet-4-5',
    max_tokens=1024,
    tools=tools,
    messages=messages,
)
if response.stop_reason == 'tool_use':
    for block in response.content:
        if block.type == 'tool_use':
            print(block.name, block.input)

Zwracanie wyników narzędzi

Wyniki narzędzi umieszcza się w wiadomości użytkownika z blokiem tool_result:

messages.append({
    'role': 'user',
    'content': [{
        'type': 'tool_result',
        'tool_use_id': 'toolu_abc',
        'content': json.dumps(weather_data)
    }]
})

Buforowanie promptów

Anthropic obsługuje buforowanie promptów — długie, statyczne prefiksy należy oznaczyć za pomocą cache_control, a za trafienia do pamięci podręcznej płaci się 10% ceny:

system = [
    {'type': 'text', 'text': '...long system prompt...',
     'cache_control': {'type': 'ephemeral'}}
]
for block in system:
    print(f"type={block['type']} cache_control={block['cache_control']}")
    print("text preview:", block['text'][:30])

Rozszerzone rozumowanie

Claude ma tryb „extended thinking”, w którym przed udzieleniem odpowiedzi rozumuje wewnętrznie:

response = client.messages.create(
    model='claude-sonnet-4-5',
    max_tokens=4096,
    thinking={'type': 'enabled', 'budget_tokens': 2048},
    messages=messages,
)

Lokalizacja promptu systemowego

Gdzie w API Anthropic umieszcza się prompt systemowy?

Podsumowanie

Można już wywoływać obu głównych dostawców. Różnice są niewielkie, ale rzeczywiste — większość zespołów tworzy cienką warstwę adaptera, aby móc przełączać się między nimi.

Często zadawane pytania

Czy lekcja „Wywoływanie Anthropic API: messages” jest bezpłatna?

Tak — pełny tekst „Wywoływanie Anthropic API: messages” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu AI Agents, przejdź na CoddyKit PRO. Kurs AI Agents zawiera 4 lekcji w sumie.

Co nauczysz się w „Wywoływanie Anthropic API: messages”?

Używaj API Anthropic messages: poznaj różnice względem OpenAI, umiejscowienie promptu systemowego oraz najlepsze praktyki właściwe dla Claude. Ćwiczysz AI Agents z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.

Czy potrzebuję doświadczenia, aby zacząć AI Agents?

Nie wymagamy żadnego doświadczenia. AI Agents w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 2 z 4.

Ile czasu zajmuje lekcja „Wywoływanie Anthropic API: messages”?

Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.

Czy mogę pisać i uruchamiać kod w tej lekcji AI Agents?

Tak. Każda lekcja AI Agents zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.

Wszystkie lekcje w tym kursie

  1. Wywoływanie OpenAI API: chat.completions
  2. Wywoływanie Anthropic API: messages
  3. Strumieniowanie odpowiedzi (SSE)
  4. Świadomość kosztów: liczenie tokenów i budżety
← Powrót do AI Agents