Introdução
GLM 5.3 Flash é o modelo de chat de contexto longo da Z.ai, disponível aqui como um endpoint compatível com OpenAI em /v1/chat/completions. Ele lê até 1.048.576 tokens em no máximo 256 mensagens e responde com até 131.072, com esforço de raciocínio low, high ou max.
max é o padrão. Aceita temperature (de 0 a 1) e top_p, response_format devolve objetos JSON, é possível declarar até 128 tools por requisição, o conteúdo das mensagens é texto, imagens e vídeo e, se você pedir, as respostas chegam por Server-Sent Events.
Recursos e destaques
Três degraus de esforço de raciocínio
low, high e max ficam no mesmo corpo de requisição. low serve para rotular e extrair em uma exportação grande, high para revisão, e max — o padrão — para as respostas que precisam se sustentar. Trocar de degrau muda uma string, não a integração.
Um milhão de tokens de entrada, uma conclusão de saída
A janela aceita 1.048.576 tokens e uma resposta chega a 131.072, cerca de oito para um. É o formato de um trabalho que lê uma exportação, um arquivo de transcrições ou um conjunto de documentos e devolve rótulos, uma tabela-resumo ou uma lista de achados em vez de reescrever o que você enviou.
Saída estruturada para pipelines
response_format com json_object devolve um objeto que seu código consegue analisar, e até 128 tools deixam o modelo chamar seus sistemas. Nomeie cada chave na mensagem de sistema para o formato se manter entre execuções e valide antes que algo mais adiante aja.
Parâmetros da requisição
| Parâmetro | Obrigatório | Descrição |
|---|---|---|
messages | Sim | No máximo 256 turnos ordenados. O conteúdo é uma string ou um array de partes text, |
reasoning_effort | Não | low, high ou max. |
stop | Não | Uma sequência, como string ou array de um item: a Z.ai só lê uma. A resposta termina assim que o modelo a escreve, e o texto correspondente não é devolvido. pelo menos 1 caracteres · pelo menos 1 itens · no máximo 1 itens |
max_tokens | Não | Limita a resposta a 131.072 — um oitavo da janela de leitura. Padrão 32.768. |
temperature | Não | De 0 a 1, padrão 1. Segure em 0 sempre que a resposta for lida por código. |
top_p | Não | De 0,01 a 1, padrão 0,95. Ajuste este ou temperature, nunca os dois na mesma comparação. |
tools | Não | Até 128 definições de função por requisição. no máximo 128 itens |
tool_choice | Não | auto, none, required ou um objeto nomeando uma função. |
response_format | Não | Peça um objeto JSON e nomeie todas as chaves na mensagem de system. |
Preços
Entrada $0.1275 / Saída $0.425 por 1 milhão de tokens
Casos de uso
Triagem de tickets em low
Envie uma exportação completa de tickets com um conjunto fixo de rótulos e peça um rótulo por ticket em JSON. Em low a execução sai barata, e só voltam em high os tickets que suas checagens rejeitarem.
Perguntas sobre um arquivo de transcrições
Carregue meses de transcrições de reuniões ou de suporte numa requisição e pergunte onde uma decisão foi tomada e quem se opôs, com citações. Como nada foi picado, a resposta pode citar juntas uma linha de março e uma de julho.
Assistentes que chamam tools
Declare as funções que seu assistente pode usar — buscar, criar, atualizar — e deixe o tool_choice decidir quando chamá-las. Os resultados voltam como mensagens com papel tool, então toda a troca fica numa só conversa.
Guia de prompt e dicas práticas
Suba de degrau só onde precisar
Rode a primeira passada em low, reenvie em high o que falhou na validação e guarde max para os poucos casos que ainda divergirem. Mantenha as mensagens idênticas entre as passadas para que o nível de esforço seja a única variável.
Uma chamada de rotulagem para copiar
POST https://api.spicyapi.ai/v1/chat/completions com {"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"}}. Analise o objeto, confira se todo ID voltou e reenvie os que faltarem.
Orçamento e limites
max_tokens vem com 32.768 por padrão e tokens de raciocínio também são cobrados como saída, então deixe folga acima da resposta esperada; valores acima de 131.072 falham na validação. Partes de áudio e de arquivo são rejeitadas, e um response_format JSON dá forma à resposta, mas não substitui a sua própria análise.
Início rápido da 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'
Consulte a referência da API para autenticação, esquema completo, polling e tratamento de erros.







