Proces aplikacji
Aby korzystać z Claude Messages API, najpierw można przejść na stronę Claude Messages API i kliknąć przycisk „Acquire”, aby uzyskać potrzebne poświadczenia do żądania:
Jeśli nie jesteś zalogowany lub zarejestrowany, automatycznie zostaniesz przekierowany na stronę logowania, aby zarejestrować się i zalogować, a po zalogowaniu lub rejestracji automatycznie wrócisz na bieżącą stronę.
Podczas pierwszej aplikacji przyznawana jest darmowa pula, dzięki czemu można korzystać z tego API bezpłatnie.
Podstawowe użycie
Ścieżka żądania Claude Messages API to/v1/messages, zgodna z oficjalnym API Anthropic. Musimy podać co najmniej trzy obowiązkowe parametry:
model: wybór modelu Claude, np.claude-opus-4-20250514,claude-sonnet-4-20250514itp.messages: tablica wiadomości wejściowych, każda wiadomość zawierarole(rola) icontent(treść), gdzieroleobsługujeuseriassistant.max_tokens: maksymalna liczba tokenów wyjściowych, używana do ograniczenia długości pojedynczej odpowiedzi.
system: podpowiedź systemowa, używana do ustalenia zachowania i roli modelu.temperature: losowość generacji, w zakresie 0-1, im wyższa wartość, tym bardziej rozproszone odpowiedzi.stream: czy używać odpowiedzi strumieniowej, ustawienie natrueumożliwia zwracanie wyników słowo po słowie.stop_sequences: niestandardowe sekwencje zatrzymania, model przestanie generować, gdy napotka te teksty.top_p: parametr próbkowania jądra, współpracujący z temperaturą w kontrolowaniu losowości generacji.top_k: próbkowanie tylko z K najwyżej prawdopodobnych opcji.tools: definicja narzędzi, umożliwiająca modelowi wywoływanie zewnętrznych funkcji.tool_choice: kontroluje, jak model korzysta z dostarczonych narzędzi.
Przykład cURL
Przykład w Pythonie
id: unikalny identyfikator tej wiadomości.type: zawszemessage.role: zawszeassistant.content: tablica treści odpowiedzi, każdy element zawieratype(np.text) i odpowiadającą treść.model: nazwa modelu przetwarzającego żądanie.stop_reason: powód zatrzymania, możliwe wartości toend_turn(normalne zakończenie),max_tokens(osiągnięcie maksymalnej długości),stop_sequence(napotkanie sekwencji zatrzymania),tool_use(wywołanie narzędzia).stop_sequence: jeśli zatrzymano z powodu niestandardowej sekwencji zatrzymania, wyświetla dopasowany tekst sekwencji zatrzymania.usage: statystyki użycia tokenów, zawierająceinput_tokens(liczba tokenów wejściowych) ioutput_tokens(liczba tokenów wyjściowych).
Systemowe podpowiedzi
Claude Messages API obsługuje ustawianie systemowych podpowiedzi za pomocą polasystem, które służy do definiowania zachowania, roli i kontekstu modelu.
Przykład w Pythonie
system, można precyzyjnie kontrolować rolę i sposób działania Claude’a.
Odpowiedzi strumieniowe
Interfejs ten obsługuje również odpowiedzi strumieniowe, ustawiając parametrstream na true, aby uzyskać efekt stopniowego zwracania, co jest bardzo odpowiednie do implementacji wyświetlania słowo po słowie na stronie internetowej.
Przykład w Pythonie
event: i data:. Typy zdarzeń strumieniowych obejmują:
message_start: początek wiadomości, zawierający podstawowe informacje o wiadomości i nazwę modelu.content_block_start: początek bloku treści.content_block_delta: inkrementalne aktualizacje bloku treści, zawierające nowo wygenerowane fragmenty tekstu.content_block_stop: koniec bloku treści.message_delta: inkrementalne aktualizacje na poziomie wiadomości, zawierającestop_reasoni ostateczne informacje ousage.message_stop: koniec wiadomości.
content_block_delta w odpowiedzi strumieniowej zawierają stopniowo generowaną treść tekstową, a po połączeniu wszystkich text_delta można uzyskać pełną odpowiedź.
Przykład JavaScript
Wiele rund rozmowy
Jeśli chcesz zintegrować funkcję wielu rund rozmowy, musisz na przemian umieszczać wiadomości róluser i assistant w tablicy messages, przekazując również wcześniejszą historię rozmowy.
Przykład Python
messages, Claude może dokładnie odpowiadać, uwzględniając kontekst.
Model głębokiego myślenia
Claude wspiera funkcję Extended Thinking (głębokie myślenie), która pozwala modelowi na wewnętrzne rozumowanie przed udzieleniem odpowiedzi, zwiększając dokładność w rozwiązywaniu złożonych problemów. Aby skorzystać z tej funkcji, należy przekazać parametrthinking.
Przykład Python
content zawiera dwa bloki treści:
type: "thinking": wewnętrzny proces myślenia modelu, pokazujący kroki rozumowania.type: "text": ostateczny wynik odpowiedzi.
- Używając
thinking,max_tokensmusi być większe niżbudget_tokens, ponieważbudget_tokensto budżet tokenów przeznaczony na proces myślenia. - Im większy
budget_tokens, tym większa przestrzeń dla modelu na głębsze rozumowanie, co jest odpowiednie do rozwiązywania złożonych problemów.
Model wizualny
Claude wspiera wejścia multimodalne, mogąc jednocześnie przetwarzać tekst i obrazy. W API Messages można użyć zdolności wizualnych, ustawiająccontent jako format tablicy i przekazując bloki treści obrazu.
Użycie obrazu zakodowanego w Base64
Użycie obrazu z URL
cURL przykład
image/jpeg, image/png, image/gif, image/webp.
Przykład odpowiedzi:
Użycie narzędzi (Tool Use)
API wiadomości Claude natywnie wspiera funkcję wywoływania narzędzi, pozwalając modelowi na wywoływanie zdefiniowanych przez Ciebie narzędzi/funkcji w razie potrzeby.Przykład w Pythonie
tool_use:
stop_reason to tool_use, co oznacza, że model musi wywołać narzędzie. Po otrzymaniu tej odpowiedzi musisz wykonać funkcję narzędzia i zwrócić wynik w formie tool_result do modelu:
Różnice między API zakończenia czatu a API wiadomości
Ace Data Cloud oferuje dwa formaty API Claude, a ich główne różnice są następujące:| Cechy | API wiadomości (/v1/messages) | API zakończenia czatu (/v1/chat/completions) |
|---|---|---|
| Format | Natywny format Anthropic | Format zgodny z OpenAI |
| System prompt | Niezależne pole system | Przekazywane przez messages w role: "system" |
| Struktura odpowiedzi | Tablica content (obsługuje wiele typów) | Tablica choices (zawiera message) |
| Format strumieniowy | Wydarzenia SSE (wiele typów wydarzeń) | Wiersze SSE data |
| Głębokie myślenie | Natywny parametr thinking | Wywoływane przez specjalną nazwę modelu (np. sufiks -thinking) |
| Wywołanie narzędzi | Natywne tools + input_schema | Format functions zgodny z OpenAI |
| Statystyka tokenów | input_tokens / output_tokens | prompt_tokens / completion_tokens |
Obsługa błędów
Podczas wywoływania API, jeśli wystąpi błąd, API zwróci odpowiedni kod błędu i informacje. Na przykład:400 token_mismatched: Złe żądanie, prawdopodobnie z powodu brakujących lub nieprawidłowych parametrów.400 api_not_implemented: Złe żądanie, prawdopodobnie z powodu brakujących lub nieprawidłowych parametrów.401 invalid_token: Nieautoryzowany, nieprawidłowy lub brakujący token autoryzacji.429 too_many_requests: Zbyt wiele żądań, przekroczono limit.500 api_error: Wewnętrzny błąd serwera, coś poszło nie tak na serwerze.

