소개
GLM 5.3는 Z.ai의 풀사이즈 장문 컨텍스트 모델로, 여기서는 /v1/chat/completions의 OpenAI 호환 엔드포인트 하나로 제공합니다. 최대 256개 메시지에 걸쳐 1,048,576토큰까지 읽고 최대 131,072토큰으로 답하므로, 자료 전체와 거기서 끌어낸 논증이 같은 호출에 들어갑니다.
추론 강도는 low, high, max이며 이미 max가 기본값입니다. temperature(0~1)와 top_p를 받고, response_format으로 JSON을 돌려주며, 도구를 최대 128개까지 선언할 수 있습니다. 메시지 내용은 텍스트만 받고, 응답은 Server-Sent Events로 스트리밍됩니다.
핵심 기능 및 하이라이트
자료와 추론을 한 번의 호출로
긴 창은 이야기의 절반일 뿐입니다. 나머지 절반은 그 길이에서도 추론의 사슬이 버티느냐입니다. 기본 계약과 변경 계약, 또는 명세와 그것을 구현한 코드를 넣고, 수백 쪽 떨어진 구절에 근거한 결론을 요구하세요.
토큰값을 하는 최상단
low, high, max의 차이는 여러 가지가 동시에 맞아야 하는 답에서 드러납니다. 함께 나오지 않는 세 문단에 기댄 추론이나, 다른 곳에서 정한 불변 조건을 지켜야 하는 변경 같은 경우입니다. max는 그런 경우를 위해 남겨 두고 기계적인 처리에는 low를 쓰세요.
판정만이 아니라 논증까지 담을 공간
응답 하나가 최대 131,072토큰이라 결론과 기각된 대안, 결정적인 인용까지 들어갑니다. 누군가 나중에 확인해야 한다면 논증을 명시적으로 요청하세요.
요청 파라미터
| 파라미터 | 필수 | 설명 |
|---|---|---|
messages | 예 | 순서대로 최대 256개 턴이고 내용은 텍스트만입니다. 자료는 user 메시지 하나에, 질문과 출력 형식은 system 메시지에 넣으세요. 1개 이상 · 256개 이하 |
reasoning_effort | 아니요 | low, high, max 중 하나입니다. Z.ai 자체 API와 마찬가지로 기본값은 max이고, 여러 사실을 한꺼번에 올바르게 엮어야 하는 답을 위한 단계입니다. |
stop | 아니요 | 정지 시퀀스는 1개만, 문자열 또는 요소가 하나인 배열로 지정합니다. Z.ai는 하나만 읽습니다. 1자 이상 · 1개 이상 · 1개 이하 |
max_tokens | 아니요 | 응답을 131,072에서 자릅니다. 기본값은 32,768이고, 결론만이 아니라 근거까지 요구할 때는 올리세요. |
seed | 아니요 | 임의의 정수입니다. 다른 조건이 같은 요청에 같은 seed를 쓰면 응답이 거의 그대로 재현되므로, 한 번에 한 가지만 바꿔 공정하게 비교할 수 있습니다. |
temperature | 아니요 | 0에서 1까지, 기본값은 1입니다. 응답을 코드가 파싱한다면 0으로 고정하세요. |
top_p | 아니요 | 0.01에서 1까지이고 기본값은 0.95입니다. 한 비교 안에서는 이 값이나 temperature 중 하나만 조절하세요. |
tools | 아니요 | 요청당 함수 정의 최대 128개입니다. 128개 이하 |
parallel_tool_calls | 아니요 | true 또는 false이며 기본값은 true입니다. true이면 모델이 한 턴에 여러 도구 호출을 요청할 수 있습니다. 기본값: |
tool_choice | 아니요 | auto, none, required, 또는 함수 하나를 지정한 객체입니다. |
response_format | 아니요 | JSON 객체를 요청하고, system 메시지에 키를 하나씩 다 적어 두세요. |
요금
입력 $1.05 / 출력 $3.30 100만 토큰당
활용 사례
문서 네 개와 질문 하나
기본 계약과 변경 계약 세 건을 요청 하나에 넣고, 지금 어떤 조항끼리 서로 충돌하는지 물어보세요. 답은 멀리 떨어진 두 구절에 달려 있고, 검색 계층이 바로 여기서 무너집니다. 질문과 관련 있어 보이는 것은 가져와도 서로 어긋나는 짝은 가져오지 못합니다.
모든 기록을 맞대는 장애 리뷰
알림 타임라인, 배포 로그, 설정 diff, 당직 녹취를 같은 호출에 넣고 인과 사슬을 요청하세요. 고리마다 근거와 기각된 가설도 함께 적게 합니다.
호출이 실제 동작이 되는 에이전트 백엔드
환불, 권한 변경, 티켓 에스컬레이션 같은 함수를 최대 128개까지 선언하고 판단은 tool_choice에 맡기세요. 호출이 실제 동작을 일으키는 상황에서는 아무것도 호출하지 않는 판단도 호출만큼 중요합니다.
프롬프트 가이드 및 실전 팁
요약이 아니라 기록 전체를 넣으세요
자료는 user 메시지 하나에 오래된 순서로 넣고, system 메시지는 질문과 출력 형식, 기대하는 근거 수준을 위해 비워 두세요.
판정만이 아니라 논증을 요구하세요
POST https://api.spicyapi.ai/v1/chat/completions에 {"model": "zai/glm-5.3", "messages": [{"role": "system", "content": "For every conflict, name both passages, quote one sentence from each, and say which one governs."}, {"role": "user", "content": "<the master agreement and its amendments>"}], "reasoning_effort": "max", "max_tokens": 32000, "temperature": 0}을 보냅니다. temperature를 0으로 두면 같은 문서로 다시 실행한 결과를 바로 비교할 수 있습니다.
타임아웃과 예산을 계획하세요
호출은 동기식이고, 창을 가득 채워 max로 처리하면 응답까지 몇 분이 걸릴 수 있습니다. 이 요청에 맞게 클라이언트 타임아웃을 잡거나 스트리밍으로 받으세요. max_tokens 기본값은 32,768, 상한은 131,072입니다. 이미지와 파일 파트는 받지 않으며, JSON response_format을 써도 파싱은 직접 해야 합니다.
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/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'
인증, 전체 스키마, 폴링과 오류 처리는 API 레퍼런스에서 확인하세요.







