Skip to main content
POST
BaseURL: La BaseURL predeterminada es https://direct.evolink.ai, que ofrece mejor compatibilidad con los modelos de texto y las conexiones de larga duración. https://api.evolink.ai es el endpoint principal para los servicios multimodales y sirve como dirección de respaldo para los modelos de texto.
Que el pensamiento se pueda desactivar varía según el modelo: solo glm-5.2 admite thinking.type: "disabled"; glm-5.3 y glm-5.3-flash piensan siempre y devuelven un error si se envía disabled. Al migrar desde glm-5.2, elimina el disabled fijado en el código antes de cambiar de modelo.
La entrada de imagen solo la admite glm-5.3-flash, y enviarla a los demás modelos no genera ningún error. Cuando los bloques de contenido de imagen llegan a glm-5.3 o glm-5.2, la solicitud responde con 200 con normalidad, pero el modelo no puede leer la imagen y contesta solo a partir del texto: una respuesta aparentemente plausible, sin relación con la imagen y que no es consistente entre solicitudes. Este tipo de fallo silencioso es difícil de diagnosticar en producción, así que elige glm-5.3-flash cuando necesites comprensión de imágenes.

Autorizaciones

Authorization
string
header
requerido

##Todas las API requieren autenticación con Bearer Token##

Obtener la API Key:

Visita la Página de gestión de API Keys para obtener tu API Key

Añadir al encabezado de la solicitud al usarla:

Nota: EvoLink usa de forma unificada la autenticación con Bearer Token para /v1/messages.

Cuerpo

application/json
model
enum<string>
predeterminado:glm-5.3
requerido

Modelo a invocar:

Opciones disponibles:
glm-5.3,
glm-5.3-flash,
glm-5.2
Ejemplo:

"glm-5.3"

messages
object[]
requerido

Lista de mensajes de la conversación, alternando turnos user / assistant

Nota:

  • Se requiere al menos un mensaje
  • El último mensaje suele ser role=user
  • Se admite contexto de varios turnos y el modelo se apoya en el historial

Entrada de imagen: solo glm-5.3-flash la admite, mediante un bloque {"type":"image","source":{...}} dentro de la matriz content.

Enviar bloques de contenido de imagen a glm-5.3 o glm-5.2 no devuelve un error, pero el modelo no puede leer la imagen. La solicitud responde con 200 con normalidad y el modelo contesta solo a partir del texto: la respuesta parece plausible pero no guarda relación con la imagen, y el resultado no es consistente entre solicitudes.

Este tipo de fallo silencioso es difícil de diagnosticar en producción, así que elige glm-5.3-flash cuando necesites comprensión de imágenes.

Minimum array length: 1
max_tokens
integer

Límite superior de la longitud del contenido generado (en tokens)

Nota:

  • La serie GLM admite hasta 131.072 tokens (128K) de longitud de salida; se recomienda no bajar de 1024
  • Los tokens producidos por thinking también cuentan para este límite
  • Al alcanzar el límite, el contenido se trunca y la respuesta incluye stop_reason=max_tokens
Rango requerido: 1 <= x <= 131072
Ejemplo:

1024

system

Indicación de sistema, usada para definir el rol y el comportamiento de la IA

Notas:

  • Admite una cadena o un array de bloques de contenido
  • Se transfiere mediante el campo system de nivel superior (no lo incluyas en messages)
  • El modelo respetará las restricciones de system
  • Un system demasiado largo puede truncarse: si necesitas un contexto largo, colócalo en messages, no lo amontones todo en system
Ejemplo:

"You are a helpful assistant."

temperature
number

Temperatura de muestreo

Notas:

  • Cuanto más alto el valor, más diversa la salida; cuanto más bajo, más determinista
  • Rango recomendado [0, 1]
Rango requerido: 0 <= x <= 1
Ejemplo:

1

top_p
number

Umbral de muestreo por núcleo

Notas:

  • Rango [0, 1]
  • Se recomienda no ajustar temperature y top_p simultáneamente
Rango requerido: 0 <= x <= 1
Ejemplo:

0.9

top_k
integer

Muestrea solo entre los K tokens de mayor probabilidad (parámetro exclusivo de Anthropic)

Notas:

  • Cuanto más pequeño el valor, más determinista la salida; cuanto más grande, más diversos los candidatos
Rango requerido: x >= 0
Ejemplo:

10

stop_sequences
string[]

Secuencias de parada personalizadas: la generación se detiene cuando se encuentra cualquiera de estas cadenas

Notas:

  • Al encontrarla se trunca, el contenido anterior al punto de coincidencia se devuelve con normalidad
  • Atención: al encontrar una secuencia de parada, el stop_reason de la serie GLM devuelve end_turn (en lugar del stop_sequence estándar de Anthropic), y la respuesta tampoco incluye el campo stop_sequence. Si el cliente se basa en stop_reason=="stop_sequence" para detectar la coincidencia, necesitarás un manejo especial
Ejemplo:
stream
boolean
predeterminado:false

Si se devuelve en streaming mediante SSE

  • true: devolución en streaming mediante Server-Sent Events (secuencia de eventos estándar de Anthropic: message_start / content_block_start / content_block_delta / message_delta / message_stop)
  • false: devuelve la respuesta completa de una sola vez (predeterminado)
Ejemplo:

false

thinking
object

Controla el pensamiento profundo

Nota:

  • Todos los modelos de la serie GLM son modelos de razonamiento y, si se omite este campo, el pensamiento viene activado por defecto
  • Cuando está activo, la matriz content de la respuesta incluye un bloque de razonamiento type="thinking" (se factura como tokens de salida; signature puede ser una cadena vacía)
  • Solo actúa el interruptor binario type: los parámetros de presupuesto o nivel de pensamiento como budget_tokens y effort no surten efecto (se ignoran)

Que se pueda desactivar depende del modelo:

  • glm-5.2: enviar {"type":"disabled"} desactiva el pensamiento y reduce notablemente los tokens de salida
  • glm-5.3 / glm-5.3-flash: piensan siempre y no se pueden desactivar. Enviar disabled devuelve un error

La consecuencia: la serie glm-5.3 no puede reducir el coste de pensamiento en este endpoint. No se puede desactivar (disabled da error) ni tampoco bajar (budget_tokens y effort no surten efecto, y el reasoning_effort de nivel superior es un campo del protocolo OpenAI que este endpoint ignora). El contenido de pensamiento se factura como tokens de salida, así que en este endpoint ese coste es inevitable.

Para controlar el coste de pensamiento, cambia a la API Chat Completions — allí reasoning_effort tiene tres niveles que sí surten efecto: low / high / max. glm-5.2 no está sujeto a este límite: puede desactivar el pensamiento directamente en este endpoint.

Migración desde glm-5.2: si tu código fija thinking.type=disabled, debes eliminar ese campo antes de cambiar a glm-5.3; de lo contrario, la solicitud falla directamente. Y si dependías de desactivar el pensamiento para controlar el coste, este endpoint no ofrece un equivalente: contempla también el cambio a la API Chat Completions.

tools
object[]

Lista de definiciones de herramientas

Notas:

  • Sigue la especificación de definición de tool de Anthropic
  • input_schema usa un objeto JSON Schema
  • El modelo devuelve un bloque tool_use estándar, con stop_reason=tool_use
tool_choice
object

Estrategia de selección de herramientas

metadata
object

Metadatos de la solicitud

Respuesta

Objeto de mensaje

Respuesta de mensaje al estilo de Anthropic

id
string

ID único del mensaje (formato: msg_<uuid>)

type
enum<string>

Tipo de objeto de respuesta

Opciones disponibles:
message
role
enum<string>
Opciones disponibles:
assistant
model
string

Modelo realmente utilizado

Ejemplo:

"glm-5.3"

content
object[]

Lista de bloques de contenido de la respuesta

Posibles block type:

  • thinking: proceso de razonamiento (cuando el pensamiento está activado, activado de forma predeterminada)
  • text: texto de la respuesta final
  • tool_use: llamada a herramienta iniciada por el modelo
stop_reason
enum<string>

Motivo de la parada

  • end_turn: finalización natural (también devuelve este valor al encontrar stop_sequences)
  • max_tokens: se alcanzó el límite de max_tokens
  • tool_use: el modelo activó una llamada a herramienta
Opciones disponibles:
end_turn,
max_tokens,
tool_use
usage
object

Estadísticas de uso de tokens (especificación de Anthropic)