Qwen3.8 gratis en AIHubMix: solución de errores 429, "Límite de tasa impuesto por el proveedor" y un pool de tokens agotado

AIHubMix12 min de lectura
Qwen3.8 gratis en AIHubMix: solución de errores 429, "Límite de tasa impuesto por el proveedor" y un pool de tokens agotado

La mayoría de los problemas con qwen3.8-max-free y qwen3.8-flash-free provienen de tres factores: los límites del nivel gratuito, la capacidad de la campaña que GMI Cloud reserva en el proveedor ascendente, y la rapidez con la que los tokens de razonamiento y el contexto de los agentes agotan un pool diario de 1M de tokens. Algunos aparecen como errores. Otros se ven como una respuesta con aspecto extraño o como una cuota vacía a la hora de comer. Además, siguen vigentes los errores habituales de la API: una clave o un ID de modelo incorrectos, un contexto demasiado largo, un historial de llamadas a herramientas roto, el modo JSON y la moderación de contenido.

Cada uno tiene su solución, y una sola configuración cubre la mayoría: el fallback a nivel de clave desde los IDs gratuitos hacia qwen3.8-max y qwen3.8-flash de pago. Configúrala una vez y un proveedor saturado, una cuota agotada o el final de la campaña, previsto para el 13 de noviembre de 2026 (hora del Pacífico), dejará de ser una interrupción del servicio.

Mapa rápido

Lo que ves Causa probable Solución
429 tras 10 llamadas en un minuto Límite gratuito por minuto Espacia las peticiones o usa el fallback
429 durante el resto del día Límite diario de peticiones o de tokens Espera al reinicio o usa el fallback
"Rate limited by provider" Capacidad de la campaña saturada en el proveedor Reintenta con espera o usa el fallback
Respuesta que indica que la prueba se ha agotado 10 llamadas de prueba gastadas, sin recarga Recarga 1 $ o más
La petición se queda colgada y luego agota el tiempo Pensamiento máximo antes del primer token Usa streaming y aumenta el timeout del cliente
Tokens diarios agotados tras unas pocas ejecuciones de agentes Pensamiento más contexto reenviado Desactiva el pensamiento y limita el contexto
Los IDs gratuitos dejan de funcionar Campaña terminada o créditos agotados Cambia a los IDs de pago

Errores del nivel gratuito y de la campaña

429 por los límites del nivel gratuito

Lo que ves. Tras una recarga de 1 $ o más, los modelos gratuitos de AIHubMix permiten 10 peticiones por minuto, 100 al día y 1M de tokens al día, compartidos por todo el catálogo gratuito. "Al superar un límite, la API devuelve 429 hasta que empiece el siguiente minuto o día", según la página de modelos gratuitos. La referencia de códigos de estado HTTP de AIHubMix indica para la frecuencia de peticiones el mensaje 429 "The xx model Too many requests; please try again later."

Por qué. Los límites son por cuenta, no por modelo. Un trabajo por lotes en otro modelo gratuito consume el mismo minuto y el mismo día.

Cómo reproducirlo. Once peticiones seguidas alcanzan el límite por minuto. Esto consume 11 de tus 100 peticiones diarias:

for i in $(seq 1 11); do
  curl -s -o /dev/null -w "%{http_code}\n" https://aihubmix.com/v1/chat/completions \
    -H "Authorization: Bearer $AIHUBMIX_API_KEY" \
    -H "Content-Type: application/json" \
    -d '{"model":"qwen3.8-flash-free","messages":[{"role":"user","content":"hi"}],"max_tokens":16}'
done

Si las 11 caen dentro de un mismo minuto, las diez primeras devuelven 200 y la undécima devuelve 429.

Solución. Mantén los trabajos por lotes por debajo de 10 peticiones por minuto con un limitador de frecuencia sencillo. Para el límite diario, espera al reinicio o configura el fallback (más abajo) para que el excedente vaya al modelo de pago.

"Límite de tasa alcanzado por el proveedor: contacta con soporte para solicitar mayor concurrencia o inténtalo de nuevo más tarde."

Lo que ves. En la prueba propia de AIHubMix del 16 de octubre, una llamada a qwen3.8-max-free devolvió HTTP 429 con este cuerpo, mientras la misma clave seguía funcionando con qwen3.8-flash-free:

{"error":{"message":"Model qwen3.8-max-free rate limited by provider – contact support to request higher concurrency or try again later. (tid: …)","type":"service_unavailable","param":"","code":"rate_limit_exceeded"}}

La referencia de códigos de estado de AIHubMix recoge el mismo mensaje bajo el 503, así que revisa ambos códigos.

Por qué. Los IDs gratuitos funcionan sobre la capacidad que GMI Cloud reserva para la campaña. Cuando mucha gente llama a Max a la vez, ese pool del proveedor se llena durante un rato. No es tu cuota: otros modelos gratuitos siguen funcionando con la misma clave.

Solución. Reintenta con backoff exponencial (por ejemplo, 30, 60 y 120 segundos). Para lo que no pueda esperar, deja que el fallback envíe la petición al qwen3.8-max de pago. Guarda el tid si contactas con soporte, porque identifica la petición.

Una respuesta que dice que tu prueba se ha agotado

Lo que ves. Ningún error. Una cuenta nueva recibe 10 llamadas de prueba en total, compartidas por todos los modelos gratuitos. Tras la décima, la API sigue respondiendo, pero la respuesta es una nota que indica que la prueba se ha agotado. Una aplicación que muestra la salida del modelo a sus usuarios les mostrará esa nota.

Solución. Recarga 1 $ o más. Eso cambia la cuenta de forma permanente a las cuotas diarias indicadas arriba.

Timeouts del cliente en Max

Lo que ves. Una petición sin streaming a qwen3.8-max-free se queda colgada y luego falla en tu cliente HTTP, proxy o herramienta con un timeout.

Por qué. Max piensa antes de mostrar su primer token visible. AIHubMix mide unos 55 segundos de latencia y unos 9 tokens por segundo en la ruta gratuita, así que una respuesta sin streaming de 4K tokens tarda unos ocho minutos en llegar completa. Cualquier componente de la ruta con un timeout más corto se rinde antes. El fallback no ayuda aquí: según las reglas de fallback de AIHubMix, un timeout del cliente no lo activa.

Solución. Usa streaming para la respuesta, aumenta el timeout del cliente (timeout=900 en el cliente Python de OpenAI cubre respuestas largas) y usa Flash para cualquier uso interactivo.

Errores habituales de la API

No todos los errores de los IDs gratuitos tienen que ver con las cuotas. Estos aparecen con la misma frecuencia, tanto en los IDs gratuitos como en los de pago. Según su referencia de códigos de estado, AIHubMix transmite la mayoría de los errores 400 tal cual los devuelve el modelo ascendente. Los IDs gratuitos funcionan sobre GMI Cloud y los de pago sobre Alibaba Cloud, así que el texto exacto de un 400 puede variar entre ambas rutas. Los mensajes siguientes están tomados de la referencia de AIHubMix y de la referencia de códigos de error de Alibaba Cloud.

Estado Error Causa habitual
401 No autorizado Clave incorrecta o ausente
503 ID de modelo incorrecto Errata, o ID de otra plataforma
403 Clave sin autorización para el modelo Modelo no habilitado en la clave
400 Rango de longitud de entrada Contexto por encima del límite
400 Rol "tool" sin "tool_calls" Historial de llamadas a herramientas roto
400 Errores del modo JSON Redacción del prompt o pensamiento
400 Contenido inapropiado Moderación de contenido

401: "No autorizado: el token de acceso no es válido o ha caducado."

Por qué. La clave es incorrecta, ha sido revocada o ha caducado. Sin cabecera Authorization, el mensaje es "Unauthorized – no access token supplied; please log in and include a valid token." Las causas habituales son una variable de entorno no definida en el shell que ejecuta el código, de modo que sale una clave vacía, o una clave de otra plataforma, como QwenCloud o GMI Cloud, enviada a AIHubMix.

Solución. Comprueba la variable en el mismo shell: echo ${AIHUBMIX_API_KEY:0:3} debería imprimir sk-. Las claves de AIHubMix solo funcionan en https://aihubmix.com/v1, y las claves de otras plataformas no funcionan allí.

503: "ID de modelo incorrecto. Solicita ver la página del modelo o no tienes permiso para usar este modelo"

Por qué. Los IDs de modelo deben coincidir exactamente. Los IDs gratuitos son qwen3.8-max-free y qwen3.8-flash-free, todos en minúsculas, con un guion antes de free. Los IDs copiados de otras plataformas, como Qwen/Qwen3.8-Max de GMI Cloud, no existen en AIHubMix. Hay un copiar y pegar que ni siquiera da error: el ID qwen3.8-max de QwenCloud es un ID válido en AIHubMix, pero corresponde al modelo de pago, así que la petición te cobra en silencio.

Cómo reproducirlo.

curl -s https://aihubmix.com/v1/chat/completions \
  -H "Authorization: Bearer $AIHUBMIX_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model":"qwen-3.8-max-free","messages":[{"role":"user","content":"hi"}]}'

Solución. Copia el ID desde la página del modelo. Y como esto llega como 503, la lógica de reintentos que trata todos los 5xx como temporales reintentará un error tipográfico; trata este mensaje como permanente.

403: "Prohibido: la clave (últimos 6 dígitos de la clave de la solicitud) no está autorizada para acceder al modelo solicitado."

Por qué. Las claves de AIHubMix pueden limitarse a una lista de modelos. Una clave creada para otro proyecto, con su propia lista, no puede acceder a los IDs gratuitos de Qwen3.8 hasta que los añadas.

Solución. Edita la clave en la gestión de claves de API y añade qwen3.8-max-free y qwen3.8-flash-free. Si configuras el fallback, añade también los respaldos de pago: el fallback omite los modelos que no están en la lista de la clave.

400: "El rango de longitud de entrada debe ser [1, xxx]"

Por qué. Este es el mensaje de Alibaba para una entrada que supera el límite de contexto del modelo; el número que aparece en lugar de xxx es ese límite. Las sesiones de agentes son la causa habitual, ya que el historial crece en cada turno. Alibaba también advierte de que los prompts largos con el pensamiento activado "pueden provocar truncamiento de la respuesta o timeout de la petición".

Solución. Recorta el historial, inicia una sesión nueva para cada tarea nueva o activa la compactación de tu herramienta. Eso sí, recorta con cuidado, o te encontrarás con el siguiente error.

400: los mensajes con el rol "tool" deben ser una respuesta a un mensaje anterior con "tool_calls"

La referencia de Alibaba recoge este mensaje, con su errata incluida, junto con su imagen especular: "An assistant message with "tool_calls" must be followed by tool messages responding to each "tool_call_id"". Los usuarios de Qwen Code reportaron el primero en el issue #2360.

Por qué. El historial enviado al modelo contiene un resultado de herramienta cuya llamada fue recortada, o una llamada a herramienta cuyo resultado falta. El recorte de historial hecho a mano y la compactación de contexto son los principales culpables.

Solución. Trata una llamada a herramienta y sus resultados como una sola unidad. Cada tool_call_id de un mensaje del asistente necesita un mensaje tool correspondiente justo después:

messages = [
    {"role": "user", "content": "What's the weather in Hangzhou?"},
    {"role": "assistant", "content": None, "tool_calls": [{
        "id": "call_1", "type": "function",
        "function": {"name": "get_weather", "arguments": "{\"city\": \"Hangzhou\"}"},
    }]},
    {"role": "tool", "tool_call_id": "call_1", "content": "{\"temp_c\": 21}"},
]
# When trimming, drop messages[1] and messages[2] together, never just one of them.

400: modo JSON

La referencia de Alibaba recoge dos errores del modo JSON:

  • "'messages' debe contener la palabra 'json' de alguna forma para usar 'response_format' de tipo 'json_object'."
  • "La respuesta en modo JSON no es compatible cuando enable_thinking es true"

Por qué. El primero es la misma regla que tiene el modo JSON de OpenAI: el prompt debe mencionar JSON. El segundo importa más en Qwen3.8, donde el pensamiento está activado por defecto, así que una petición json_object que funciona en otros modelos puede fallar aquí. La referencia de Alibaba no indica qué modelos devuelven el segundo mensaje, así que pruébalo con el ID que uses.

Solución. Menciona JSON en el prompt y desactiva el pensamiento en las llamadas en modo JSON:

curl -s https://aihubmix.com/v1/chat/completions \
  -H "Authorization: Bearer $AIHUBMIX_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "qwen3.8-flash-free",
    "messages": [{"role": "user", "content": "Reply in JSON with the city and date: meet in Hangzhou on Nov 3."}],
    "response_format": {"type": "json_object"},
    "enable_thinking": false
  }'

400: "Input data may contain inappropriate content."

Por qué. El código es data_inspection_failed. Alibaba Cloud filtra la entrada y la salida de los modelos que aloja, lo que incluye los IDs de pago a los que el fallback envía las peticiones. Las variantes dicen "Output data may contain inappropriate content." o "Input or output data may contain inappropriate content.". El texto generado por usuarios que se pega en un prompt, como páginas extraídas o tickets de soporte, es el desencadenante habitual.

Solución. Localiza el fragmento que lo activa dividiendo la entrada y luego filtra o reformula ese texto. Reenviar la misma entrada da la misma respuesta.

El fallo silencioso: un pool de tokens agotado

Nada da error hasta que el pool de 1M de tokens se vacía, y entonces todo devuelve 429 de golpe. Tres cosas lo vacían más rápido de lo esperado.

Tokens de razonamiento

Ambos modelos razonan por defecto, y Alibaba factura el razonamiento como tokens de salida; en la ruta gratuita, esos tokens cuentan para tu pool diario. En la prueba de AIHubMix, una respuesta de dos frases de qwen3.8-flash-free usó 89 tokens de salida, 36 de ellos en razonamiento. Max razona más: Artificial Analysis midió que usa 190M tokens de salida en su índice, frente a una mediana de 87M.

Para extracción, formateo y consultas cortas, desactiva el razonamiento. enable_thinking es el interruptor documentado por Alibaba para Qwen3.8; con el SDK de OpenAI va dentro de extra_body:

resp = client.chat.completions.create(
    model="qwen3.8-flash-free",
    messages=[{"role": "user", "content": "Return only the invoice number: INV-2026-0042, due Nov 3"}],
    extra_body={"enable_thinking": False},
)
print(resp.choices[0].message.content)
print(resp.usage.completion_tokens_details)

Comprueba que reasoning_tokens en el bloque de uso baje a 0. Si no baja, el interruptor no llegó al modelo en esa ruta, y el razonamiento sigue consumiendo tokens.

Los bucles de agentes reenvían el contexto

Los agentes de programación envían toda la conversación, incluidos los contenidos de archivos y los resultados de herramientas, en cada turno. Una sesión que ha crecido hasta 40K tokens y luego ejecuta 20 turnos más envía 800K tokens de entrada: la mayor parte del pool de un día antes de cualquier salida. Limita la ventana de contexto en la configuración de modelo de tu herramienta, inicia sesiones nuevas para tareas nuevas y usa la compactación si tu herramienta la tiene.

Una solicitud grande

Max y Flash aceptan 1M tokens de contexto, que es el mismo tamaño que el pool diario. Una única solicitud que llene la ventana agota el día.

Cuando termina la campaña

La ventana gratuita se cierra alrededor del 13 de noviembre de 2026 (hora del Pacífico), o antes si se agotan los créditos de la campaña de GMI Cloud. Después de eso, los IDs con -free dejan de ser gratuitos. El código que ya usa como respaldo los IDs de pago seguirá funcionando. El código que llama directamente a los IDs gratuitos necesita un cambio: quitar -free del nombre del modelo.

Configura el respaldo una vez

AIHubMix puede cambiar de modelo en la pasarela cuando falla el modelo principal, configurado por clave de API, sin cambios en tu código. Asignación de modelos y respaldo explica las reglas completas. Para los IDs gratuitos de Qwen3.8:

  1. Abre la gestión de claves de API en la consola de AIHubMix y edita la clave que usa tu aplicación.
  2. En "Fallback models on error", añade qwen3.8-max primero y qwen3.8-flash en segundo lugar.
  3. Sigue llamando a qwen3.8-max-free en tu código.

No incluyas los IDs gratuitos en la lista de respaldo. Un modelo gratuito solo puede ser el modelo principal; en la lista de respaldo se omite sin avisar.

Situación ¿Hay respaldo?
El modelo gratuito alcanza una cuota o un límite de frecuencia Sí, a un respaldo de pago
Todos los canales upstream fallan antes de que empiece la respuesta Sí
El flujo ya ha comenzado No
Tu cliente agotó el tiempo de espera No
Tu propia clave no es válida o no tiene saldo No

Las solicitudes de respaldo se facturan al precio del modelo de pago, así que mantén saldo en la cuenta. Si las solicitudes de respaldo empiezan a fallar con un 403 "Your account balance is insufficient. Please recharge your account to continue using the API.", recarga: el respaldo no evita tu propio saldo. Cuando el saldo baja de -$1, los modelos gratuitos también dejan de funcionar hasta que recargues.

Para ver qué modelo respondió, lee las cabeceras de respuesta:

curl -s -i https://aihubmix.com/v1/chat/completions \
  -H "Authorization: Bearer $AIHUBMIX_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model":"qwen3.8-max-free","messages":[{"role":"user","content":"hi"}]}' \
  | grep -i -E 'x-aihubmix-(model|fallback)'

X-Aihubmix-Fallback: true indica que la solicitud usó el respaldo. X-Aihubmix-Model indica el modelo que respondió, que es también el que se te factura.

Herramientas de programación

Cualquier herramienta que acepte un proveedor compatible con OpenAI funciona con los IDs gratuitos, incluidos OpenCode, Cline, Kilo Code, Qwen Code y Hermes Agent. AIHubMix tiene páginas de configuración para cada una; la guía de OpenCode es un buen punto de partida. Los valores son los mismos en todas las herramientas:

Ajuste Valor
Tipo de proveedor Compatible con OpenAI
URL base https://aihubmix.com/v1
Clave de API Tu clave de AIHubMix
ID del modelo qwen3.8-flash-free o qwen3.8-max-free
Ventana de contexto Hasta 1M; configúralo más bajo para ahorrar el pool
Salida máxima Hasta 131K

Dos problemas conocidos afectan a todas las herramientas. Los bucles de agentes agotan el pool de tokens compartido, como se describió antes. Y la alta latencia de Max lo hace lento como modelo principal en un agente interactivo. Las herramientas que permiten elegir modelos separados para planificar y editar, como los modos Plan y Act de Cline, pueden poner Max en la planificación y Flash en las ediciones.

Una prueba rápida de 15 minutos. Apunta tu herramienta a qwen3.8-flash-free y pídele que añada una prueba unitaria para una función pequeña en un repositorio real, luego ejecuta la prueba. El éxito se ve así: el agente lee el archivo, escribe la prueba, la ejecuta mediante una llamada a herramienta, y el registro de uso de AIHubMix muestra las solicitudes bajo el modelo gratuito a $0. Después repite el paso de planificación con qwen3.8-max-free y revisa el tiempo y los tokens que usó.

Lista de verificación

  • Recargado $1 o más, así que la cuota diaria reemplaza las 10 llamadas de prueba
  • ID del modelo copiado exactamente desde la página del modelo, y habilitado en la clave
  • Trabajos por lotes limitados a menos de 10 solicitudes por minuto
  • Solicitudes de Max en flujo, con un tiempo de espera del cliente de 10 minutos o más
  • Razonamiento desactivado para solicitudes simples, y reasoning_tokens comprobado
  • Contexto del agente limitado, con sesiones nuevas para tareas nuevas
  • El recorte del historial mantiene juntas cada llamada a herramienta y sus resultados
  • Las llamadas en modo JSON mencionan JSON y se ejecutan con el razonamiento desactivado
  • Respaldo configurado como qwen3.8-max, luego qwen3.8-flash
  • Algo de saldo disponible para las solicitudes de respaldo
  • Un recordatorio puesto para alrededor del 13 de noviembre, cuando se cierra la ventana gratuita

Preguntas frecuentes

¿Por qué recibo un 429 en qwen3.8-max-free si apenas lo he usado?
Puede que otro modelo gratuito de tu cuenta haya agotado el minuto o el día compartidos, o que la capacidad upstream de la campaña esté saturada. El mensaje de error lo indica: "rate limited by provider" significa upstream.

¿Por qué mi solicitud devuelve "Incorrect model ID"?
El nombre del modelo no coincide exactamente con un ID de AIHubMix. Usa qwen3.8-max-free o qwen3.8-flash-free, todo en minúsculas; los IDs de GMI Cloud u otras plataformas no existen aquí. Se devuelve como un 503, así que asegúrate de que la lógica de reintentos no lo reintente sin parar.

¿El respaldo tiene coste?
Solo cuando ocurre. Una solicitud que usa el respaldo se factura al precio del modelo de pago que respondió.

¿Puedo poner qwen3.8-flash-free en la lista de respaldo?
No. Los modelos gratuitos solo pueden ser el modelo principal; AIHubMix los omite en la lista de respaldo.

¿Cómo evito que el razonamiento consuma mis tokens gratuitos?
Pasa enable_thinking con el valor false en extra_body para las solicitudes que no necesitan razonamiento, y comprueba que reasoning_tokens baje a 0 en el bloque de uso.

¿Por qué mi agente de programación agota el pool diario tan rápido?
Los agentes reenvían toda la conversación en cada turno. Limita la ventana de contexto, inicia sesiones nuevas para tareas nuevas y usa Flash como modelo principal del agente.

¿Qué pasa con los IDs gratuitos después del 13 de noviembre?
Dejan de ser gratuitos, y antes si se agotan los créditos de la campaña de GMI Cloud. Cambia a qwen3.8-max o qwen3.8-flash, o confía en el respaldo que hayas configurado.

Sigue leyendo: la serie Qwen3.8 Free

Fuentes