Guía de la API de GLM: GLM-5.2, GLM-5.3 y GLM-5.3-Flash
Llama a GLM-5.2, GLM-5.3 y GLM-5.3-Flash a través de APIMaster con Python o curl. Se probaron Chat, Responses, Messages, streaming, JSON y llamadas a herramientas.
Usa glm-5.2, glm-5.3 o glm-5.3-flash con una clave de API de APIMaster y la URL base https://apimaster.ai/v1. Para aplicaciones compatibles con OpenAI, empieza con Chat Completions. Codex usa Responses; Claude Code usa la interfaz Messages.
Estos son resultados de integración de la pasarela de APIMaster, no una afirmación de que cada GLM ascendente implemente de forma nativa todos los protocolos. GLM es la familia de modelos; los SDK de OpenAI y Anthropic proporcionan las interfaces de cliente.
Compatibilidad probada
La validación comenzó el 15 de septiembre de 2026 UTC, utilizando el punto de acceso público de APIMaster y el enrutamiento normal. Cada modelo superó las siguientes comprobaciones:
| Comprobación | glm-5.2 |
glm-5.3 |
glm-5.3-flash |
|---|---|---|---|
| Chat Completions: normal y con streaming | Superada | Superada | Superada |
| Responses: normal y con streaming | Superada | Superada | Superada |
| Messages: normal y con streaming | Superada | Superada | Superada |
| Llamada a función/herramienta e ida y vuelta del resultado de la herramienta, los tres protocolos | Superada | Superada | Superada |
| Salida de objeto JSON en Chat | Superada | Superada | Superada |
Las pruebas de texto verificaron la respuesta real y el evento de terminación del stream, no solo un HTTP 200. Las pruebas de herramientas solicitaron una función meteorológica y luego devolvieron un código de verificación suministrado únicamente en el resultado de la herramienta. Estas son comprobaciones funcionales de integración, no pruebas de rendimiento ni un SLA de disponibilidad. Las sesiones largas, el contexto máximo, el vídeo y todos los parámetros avanzados quedan fuera de esta matriz de pruebas.
1. Obtener una clave de API
Crea una clave de API de APIMaster, habilita el modelo deseado y añade fondos a la cuenta. Usa los ID de modelo exactos indicados arriba. Una clave de BigModel, OpenAI o Anthropic no puede autenticarse en APIMaster.
macOS / Linux:
export APIMASTER_API_KEY='YOUR_APIMASTER_API_KEY'
Windows PowerShell:
$env:APIMASTER_API_KEY = 'YOUR_APIMASTER_API_KEY'
2. Llamar a Chat Completions con 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}'
Lee choices[0].message.content. Cambia model a glm-5.2 o glm-5.3 para cambiar de modelo. Los modelos de razonamiento pueden consumir parte del presupuesto de salida antes de emitir la respuesta final.
3. Usar el SDK de OpenAI para Python
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)
Para streaming, establece stream=True. Comprueba si hay choices vacíos: el último fragmento de uso puede contener usage sin un delta de texto.
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)
El primer evento puede contener razonamiento en lugar de texto de respuesta visible. Conserva reasoning_content al llevar mensajes de asistente a una conversación con herramientas en las rutas que lo devuelven; no reconstruyas el mensaje del asistente solo a partir del texto final.
4. Elegir el punto de acceso correcto
| Aplicación | URL base | Punto de acceso de la solicitud |
|---|---|---|
| SDK de OpenAI para Python / Chat | https://apimaster.ai/v1 |
/v1/chat/completions |
| API de Responses / Codex | https://apimaster.ai/v1 |
/v1/responses |
| Claude Code | https://apimaster.ai |
/v1/messages |
Solicitud mínima de 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}'
Lee el texto de los elementos de mensaje cuyo tipo de contenido sea output_text; mantén los elementos de razonamiento separados. Para streaming, usa stream: true y comprueba si aparece response.completed o un evento de error.
Parámetros y resolución de problemas
| Situación | Acción recomendada |
|---|---|
| 401 | Comprueba la clave de APIMaster y la cuenta que la emitió. |
| 404 | Usa la URL base que espera tu cliente; no dupliques /v1. |
| Respuesta vacía o límite de salida | Inspecciona el motivo de finalización y el uso de razonamiento; aumenta el presupuesto de salida. |
| Salida JSON | Chat response_format: {"type":"json_object"} superó una prueba básica de JSON. Valida el JSON devuelto en tu aplicación. |
reasoning.summary rechazado |
La compatibilidad depende del proveedor ascendente seleccionado. Omitirlo en la configuración base. Una prueba de pasarela exitosa no establece compatibilidad nativa con BigModel. |
thinking.type: disabled rechazado |
La guía oficial del modelo GLM-5.3-Flash solo permite enabled; no exijas que el razonamiento esté deshabilitado. |
| 429 / 5xx / stream interrumpido | Registra el ID de la solicitud, el modelo, la hora UTC y el error. Usa reintentos acotados cuando sea seguro; no repitas herramientas ya ejecutadas a ciegas. |
Preguntas frecuentes
¿Es GLM-5.3-Flash gratuito en APIMaster?
La palabra Flash es parte del nombre del modelo, no una promesa de uso gratuito. Consulta el mercado de modelos para ver los precios actuales de las rutas y la cartera para ver los cargos reales.
¿Una alta tasa de aciertos de caché se aplica a todas las solicitudes?
No. La reutilización de la caché depende de la coincidencia de prefijos de entrada y del proveedor ascendente. Inspecciona el usage devuelto y tus registros de uso. La tasa de aciertos de caché de una carga de trabajo anterior no es una garantía para una nueva aplicación.
¿Esto demuestra compatibilidad total con OpenAI o Anthropic?
Establece los flujos de trabajo probados de texto, streaming, JSON y herramientas. Los campos específicos de cada proveedor, el estado de Responses almacenado, la búsqueda web integrada y el contenido multimedia requieren una validación separada.