Przewodnik po API GLM: GLM-5.2, GLM-5.3 i GLM-5.3-Flash
Wywołuj modele GLM-5.2, GLM-5.3 i GLM-5.3-Flash przez APIMaster za pomocą Pythona lub curl. Przetestowano Chat, Responses, Messages, streaming, JSON i wywołania narzędzi.
Używaj glm-5.2, glm-5.3 lub glm-5.3-flash z kluczem API APIMaster i bazowym adresem URL https://apimaster.ai/v1. W przypadku aplikacji zgodnych z OpenAI zacznij od Chat Completions. Codex korzysta z Responses; Claude Code korzysta z interfejsu Messages.
Są to wyniki integracji z bramką APIMaster, a nie twierdzenie, że każde górne połączenie GLM natywnie implementuje każdy protokół. GLM to rodzina modeli; zestawy SDK OpenAI i Anthropic zapewniają interfejsy klienckie.
Przetestowana zgodność
Walidacja rozpoczęła się 2026-09-15 UTC z wykorzystaniem publicznego punktu końcowego APIMaster i normalnego routingu. Każdy model przeszedł następujące testy:
| Test | glm-5.2 |
glm-5.3 |
glm-5.3-flash |
|---|---|---|---|
| Chat Completions: zwykły i strumieniowy | Zaliczony | Zaliczony | Zaliczony |
| Responses: zwykły i strumieniowy | Zaliczony | Zaliczony | Zaliczony |
| Messages: zwykły i strumieniowy | Zaliczony | Zaliczony | Zaliczony |
| Wywołanie funkcji/narzędzia i pełna wymiana wyniku narzędzia, we wszystkich trzech protokołach | Zaliczony | Zaliczony | Zaliczony |
| Wyjście obiektu JSON w Chat | Zaliczony | Zaliczony | Zaliczony |
Testy tekstowe sprawdzały rzeczywistą odpowiedź oraz zdarzenie zakończenia strumienia, a nie tylko HTTP 200. Testy narzędzi żądały funkcji pogodowej, a następnie zwracały kod weryfikacyjny przekazany wyłącznie w wyniku narzędzia. Są to funkcjonalne testy integracyjne, a nie benchmarki przepustowości ani gwarancja dostępności (SLA). Długie sesje, maksymalny kontekst, wideo i wszystkie zaawansowane parametry wykraczają poza tę macierz testową.
1. Uzyskaj klucz API
Utwórz klucz API APIMaster, włącz wybrany model i zasili konto. Użyj dokładnie identyfikatorów modeli podanych powyżej. Klucz z BigModel, OpenAI lub Anthropic nie może uwierzytelnić się w APIMaster.
macOS / Linux:
export APIMASTER_API_KEY='YOUR_APIMASTER_API_KEY'
Windows PowerShell:
$env:APIMASTER_API_KEY = 'YOUR_APIMASTER_API_KEY'
2. Wywołaj Chat Completions za pomocą curl
curl --fail-with-body --max-time 120 'https://apimaster.ai/v1/chat/completions' \
-H "Authorization: Bearer $APIMASTER_API_KEY" \
-H 'Content-Type: application/json' \
-d '{"model":"glm-5.3-flash","messages":[{"role":"user","content":"Reply with exactly GLM_API_OK."}],"max_tokens":2048}'
Odczytaj choices[0].message.content. Zmień model na glm-5.2 lub glm-5.3, aby przełączyć model. Modele rozumujące mogą zużyć część budżetu wyjściowego przed wygenerowaniem ostatecznej odpowiedzi.
3. Użyj zestawu Python OpenAI SDK
python -m pip install -U openai
import os
from openai import OpenAI
client = OpenAI(
api_key=os.environ["APIMASTER_API_KEY"],
base_url="https://apimaster.ai/v1",
timeout=120.0,
)
response = client.chat.completions.create(
model="glm-5.3-flash",
messages=[{"role": "user", "content": "Reply with exactly GLM_API_OK."}],
max_tokens=2048,
)
print(response.choices[0].message.content)
W przypadku strumieniowania ustaw stream=True. Sprawdzaj puste choice: końcowy fragment usage może zawierać dane użycia bez przyrostu tekstu.
stream = client.chat.completions.create(
model="glm-5.3-flash",
messages=[{"role": "user", "content": "Explain binary search briefly."}],
max_tokens=4096,
stream=True,
stream_options={"include_usage": True},
)
for chunk in stream:
if chunk.choices:
text = chunk.choices[0].delta.content
if text:
print(text, end="", flush=True)
if chunk.usage:
print("\nUsage:", chunk.usage)
Pierwsze zdarzenie może zawierać proces rozumowania, a nie widoczny tekst odpowiedzi. Zachowuj reasoning_content, gdy przenosisz wiadomości asystenta do rozmowy z narzędziami na trasach, które je zwracają; nie odtwarzaj wiadomości asystenta wyłącznie z ostatecznego tekstu.
4. Wybierz właściwy punkt końcowy
| Aplikacja | Bazowy URL | Punkt końcowy żądania |
|---|---|---|
| Python OpenAI SDK / Chat | https://apimaster.ai/v1 |
/v1/chat/completions |
| Responses API / Codex | https://apimaster.ai/v1 |
/v1/responses |
| Claude Code | https://apimaster.ai |
/v1/messages |
Minimalne żądanie Responses:
curl --fail-with-body --max-time 120 'https://apimaster.ai/v1/responses' \
-H "Authorization: Bearer $APIMASTER_API_KEY" \
-H 'Content-Type: application/json' \
-d '{"model":"glm-5.3","input":"Reply with exactly GLM_API_OK.","max_output_tokens":2048}'
Tekst odczytuj z elementów typu message, których typ zawartości to output_text; przechowuj elementy rozumowania oddzielnie. W przypadku strumieniowania użyj stream: true i sprawdź wystąpienie response.completed lub zdarzenia błędu.
Parametry i rozwiązywanie problemów
| Sytuacja | Zalecane działanie |
|---|---|
| 401 | Sprawdź klucz APIMaster i konto, które go wydało. |
| 404 | Użyj bazowego URL oczekiwanego przez Twojego klienta; nie duplikuj /v1. |
| Pusta odpowiedź lub limit wyjścia | Sprawdź powód zakończenia i zużycie na rozumowanie; zwiększ budżet wyjściowy. |
| Wyjście JSON | Chat response_format: {"type":"json_object"} przeszedł podstawowy test JSON. Waliduj zwrócony JSON w swojej aplikacji. |
Odrzucone reasoning.summary |
Obsługa zależy od wybranego dostawcy nadrzędnego. Pomiń to w konfiguracji bazowej. Pomyślny test bramki nie potwierdza natywnej obsługi przez BigModel. |
Odrzucone thinking.type: disabled |
Oficjalny przewodnik modelu GLM-5.3-Flash dopuszcza wyłącznie enabled; nie wymagaj wyłączania rozumowania. |
| 429 / 5xx / przerwany strumień | Zapisz identyfikator żądania, model, czas UTC i błąd. Tam, gdzie jest to bezpieczne, stosuj ograniczone ponowienia; nie powtarzaj w ciemno wykonanych już narzędzi. |
Często zadawane pytania
Czy GLM-5.3-Flash jest darmowy w APIMaster?
Słowo Flash jest częścią nazwy modelu, a nie obietnicą bezpłatnego użytkowania. Sprawdź aktualne ceny tras w marketplace modeli oraz stan konta w portfelu.
Czy wysoki wskaźnik trafień w cache dotyczy każdego żądania?
Nie. Ponowne użycie cache zależy od zgodności prefiksów wejściowych i dostawcy nadrzędnego. Analizuj zwracane dane użycia oraz swoje logi użycia. Wskaźnik trafień w cache z poprzedniego obciążenia nie jest gwarancją dla nowej aplikacji.
Czy to dowodzi pełnej zgodności z OpenAI lub Anthropic?
Potwierdza przetestowane przepływy tekstowe, strumieniowanie, JSON i narzędzia. Pola specyficzne dla dostawcy, przechowywany stan Responses, wbudowane wyszukiwanie w sieci oraz multimedia wymagają odrębnej walidacji.