Wprowadzenie
GLM 5.3 Flash to model czatu Z.ai z długim kontekstem, udostępniony tu jako jeden endpoint zgodny z OpenAI pod /v1/chat/completions. Czyta do 1 048 576 tokenów w maksymalnie 256 wiadomościach i odpowiada do 131 072, a poziom rozumowania to low, high albo max.
Domyślnie max. Przyjmuje temperature (od 0 do 1) i top_p, response_format zwraca obiekty JSON, w żądaniu można zadeklarować do 128 narzędzi, treść wiadomości to tekst, obrazy i wideo, a na życzenie odpowiedzi płyną strumieniem przez Server-Sent Events.
Najważniejsze funkcje
Trzy szczeble rozumowania
low, high i max są w tej samej treści żądania. low pasuje do etykietowania i ekstrakcji z dużego eksportu, high do przeglądu, a max – ustawienie domyślne – do odpowiedzi, które muszą się obronić. Zmiana szczebla to zmiana jednego stringa, nie integracji.
Milion tokenów na wejściu, ustalenie na wyjściu
Okno przyjmuje 1 048 576 tokenów, a odpowiedź sięga 131 072, mniej więcej osiem do jednego. Taki kształt ma praca polegająca na przeczytaniu eksportu, archiwum transkrypcji albo zbioru dokumentów i oddaniu etykiet, tabeli zbiorczej lub listy ustaleń zamiast przepisywania tego, co wysłałeś.
Ustrukturyzowany wynik dla potoków
response_format z json_object zwraca obiekt, który twój kod sparsuje, a do 128 narzędzi pozwala modelowi wywoływać twoje systemy. Nazwij każdy klucz w wiadomości systemowej, żeby kształt był stały między uruchomieniami, i waliduj, zanim cokolwiek dalej w potoku zadziała.
Parametry żądania
| Parametr | Wymagane | Uwaga |
|---|---|---|
messages | Tak | Najwyżej 256 uporządkowanych tur. Treść to ciąg znaków albo tablica części text, |
reasoning_effort | Nie | low, high albo max. |
stop | Nie | Jedna sekwencja, jako string albo tablica z jednym elementem – Z.ai odczytuje tylko jedną. Odpowiedź kończy się, gdy tylko model ją zapisze, a dopasowany tekst nie jest zwracany. od 1 znaków · od 1 elementów · do 1 elementów |
max_tokens | Nie | Ogranicza odpowiedź do 131 072 – jednej ósmej okna odczytu. Domyślnie 32 768. |
temperature | Nie | Od 0 do 1, domyślnie 1. Trzymaj na 0 zawsze wtedy, gdy odpowiedź parsuje kod. |
top_p | Nie | Od 0,01 do 1, domyślnie 0,95. Reguluj to albo temperature, nigdy obu w tym samym porównaniu. |
tools | Nie | Do 128 definicji funkcji na żądanie. do 128 elementów |
tool_choice | Nie | auto, none, required albo obiekt wskazujący jedną funkcję. |
response_format | Nie | Poproś o obiekt JSON i nazwij każdy klucz w wiadomości systemowej. |
Cennik
Wejście $0.1275 / Wyjście $0.425 za 1 mln tokenów
Zastosowania
Segregacja zgłoszeń na low
Wyślij cały eksport zgłoszeń ze stałym zestawem etykiet i poproś o jedną etykietę na zgłoszenie w JSON. Na low przebieg pozostaje tani, a ponownie na high idą tylko zgłoszenia odrzucone przez twoje kontrole.
Pytania do archiwum transkrypcji
Wczytaj do jednego żądania transkrypcje spotkań lub rozmów wsparcia z kilku miesięcy i zapytaj, gdzie zapadła decyzja i kto się sprzeciwił, z cytatami. Nic nie zostało pocięte, więc odpowiedź może zacytować razem linijkę z marca i linijkę z lipca.
Asystenci wywołujący narzędzia
Zadeklaruj funkcje, z których twój asystent może korzystać – wyszukiwanie, tworzenie, aktualizację – i pozwól tool_choice decydować, kiedy je wywołać. Wyniki wracają jako wiadomości z rolą tool, więc cała wymiana zostaje w jednej rozmowie.
Wskazówki
Wchodź wyżej tylko tam, gdzie trzeba
Pierwszy przebieg puść na low, to, co nie przeszło walidacji, wyślij ponownie na high, a max zostaw dla nielicznych przypadków, które wciąż budzą wątpliwości. Trzymaj wiadomości identyczne między przebiegami, żeby jedyną zmienną był poziom rozumowania.
Wywołanie etykietujące do skopiowania
POST https://api.spicyapi.ai/v1/chat/completions z {"model": "zai/glm-5.3-flash", "messages": [{"role": "system", "content": "Label each ticket with one of: billing, access, bug, feature. Return JSON: {\"labels\": [{\"id\": ..., \"label\": ...}]}."}, {"role": "user", "content": "<the ticket export>"}], "reasoning_effort": "low", "max_tokens": 20000, "response_format": {"type": "json_object"}}. Sparsuj obiekt, sprawdź, czy wróciło każde ID, i wyślij ponownie brakujące.
Budżet i limity
max_tokens domyślnie wynosi 32 768, a tokeny rozumowania też są rozliczane jako wyjście, więc zostaw zapas ponad oczekiwaną odpowiedź; wartości powyżej 131 072 nie przechodzą walidacji. Części z dźwiękiem i plikami są odrzucane, a response_format JSON nadaje odpowiedzi kształt, ale nie zastępuje twojego własnego parsowania.
Szybki start z API
curl --fail-with-body -sN https://api.spicyapi.ai/v1/chat/completions \
-H "Authorization: Bearer $SPICY_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: $(uuidgen)" \
-d '{
"model": "zai/glm-5.3-flash/chat",
"messages": [
{
"role": "user",
"content": "Summarise the following release notes into three bullet points."
}
],
"stream": true
}' \
| jq --unbuffered -Rrj 'select(startswith("data: ")) | .[6:] | select(. != "[DONE]") | fromjson | if .error then "\n[error] \(.error.message)\n" else (.choices[0].delta.content? // empty) end'
Uwierzytelnianie, pełny schemat, odpytywanie i obsługę błędów opisuje dokumentacja API.







