Introducción
GLM 5.3 Flash es el modelo de chat de contexto largo de Z.ai, disponible aquí como un endpoint compatible con OpenAI en /v1/chat/completions. Lee hasta 1.048.576 tokens en un máximo de 256 mensajes y responde con hasta 131.072, con esfuerzo de razonamiento low, high o max.
max es el valor por defecto. Acepta temperature (de 0 a 1) y top_p, response_format devuelve objetos JSON, se pueden declarar hasta 128 tools por solicitud, el contenido de los mensajes es texto, imágenes y video y, si lo pides, las respuestas llegan por Server-Sent Events.
Funciones y aspectos destacados
Tres peldaños de esfuerzo de razonamiento
low, high y max están en el mismo cuerpo de solicitud. low sirve para etiquetar y extraer sobre una exportación grande, high para revisar, y max —el valor por defecto— para las respuestas que tienen que sostenerse. Cambiar de uno a otro modifica un string, no la integración.
Un millón de tokens de entrada, un hallazgo de salida
La ventana admite 1.048.576 tokens y una respuesta llega a 131.072, unos ocho a uno. Esa es la forma de leer una exportación, un archivo de transcripciones o un conjunto de documentos y devolver etiquetas, una tabla resumen o una lista de hallazgos en lugar de reescribir lo que enviaste.
Salida estructurada para pipelines
response_format con json_object devuelve un objeto que tu código puede analizar, y hasta 128 tools permiten al modelo llamar a tus sistemas. Nombra cada clave en el mensaje de sistema para que la forma se mantenga entre ejecuciones y valida antes de que algo aguas abajo actúe.
Parámetros de la solicitud
| Parámetro | Obligatorio | Descripción |
|---|---|---|
messages | Sí | 256 turnos ordenados como máximo. El contenido es una cadena o un array de partes text, |
reasoning_effort | No | low, high o max. |
stop | No | Una secuencia, como cadena o como arreglo de un solo elemento: Z.ai solo lee una. La respuesta termina en cuanto el modelo la escribe, y el texto que coincide no se devuelve. mínimo 1 caracteres · mínimo 1 elementos · máximo 1 elementos |
max_tokens | No | Limita la respuesta a 131 072, un octavo de la ventana de lectura. Por defecto, 32 768. |
temperature | No | De 0 a 1, 1 por defecto. Déjalo en 0 siempre que la respuesta la lea código. |
top_p | No | De 0,01 a 1, 0,95 por defecto. Ajusta este o temperature, nunca los dos en la misma comparación. |
tools | No | Hasta 128 definiciones de funciones por solicitud. máximo 128 elementos |
tool_choice | No | auto, none, required, o un objeto que nombre una función. |
response_format | No | Pide un objeto JSON y nombra cada clave en el mensaje system. |
Precios
Entrada $0.1275 / Salida $0.425 por 1 millón de tokens
Casos de uso
Clasificación de tickets en low
Envía una exportación completa de tickets con un conjunto fijo de etiquetas y pide una etiqueta por ticket en JSON. En low la ejecución sale barata, y solo vuelven en high los tickets que tus controles rechazan.
Preguntas sobre un archivo de transcripciones
Carga meses de transcripciones de reuniones o de soporte en una solicitud y pregunta dónde se tomó una decisión y quién se opuso, con citas. Como nada se troceó, la respuesta puede citar a la vez una línea de marzo y otra de julio.
Asistentes que llaman a tools
Declara las funciones que tu asistente puede usar —buscar, crear, actualizar— y deja que tool_choice decida cuándo llamarlas. Los resultados vuelven como mensajes con rol tool, así que todo el intercambio se queda en una sola conversación.
Guía de prompts y consejos prácticos
Sube de peldaño solo donde haga falta
Haz la primera pasada en low, reenvía en high lo que no pasó la validación y guarda max para los pocos casos que sigan en duda. Mantén los mensajes idénticos entre pasadas para que el nivel de esfuerzo sea la única variable.
Una llamada de etiquetado para copiar
POST https://api.spicyapi.ai/v1/chat/completions con {"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"}}. Analiza el objeto, comprueba que volvió cada ID y reenvía los que falten.
Presupuesto y límites
max_tokens viene en 32.768 por defecto y los tokens de razonamiento también se cobran como salida, así que deja margen sobre la respuesta que esperas; los valores mayores que 131.072 no pasan la validación. Las partes de audio y de archivo se rechazan, y un response_format JSON da forma a la respuesta pero no reemplaza tu propio análisis.
Inicio rápido de la 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'
Consulta la referencia de la API para autenticación, el esquema completo, sondeo y gestión de errores.







