Familia Qwen
Los modelos de texto Tongyi Qianwen (Qwen) de Alibaba Cloud, que incluyen las series Qwen3.8, Qwen3.7 y Qwen3.6, además de Qwen Flash y Qwen Plus. Se llaman a través de la API compatible con OpenAI, y la serie Qwen3.x también admite el endpoint nativo de Anthropic. Los modelos de generación de imágenes están en Qwen-Image.
Tareas habituales
Modelos
La lista completa de modelos y los precios en tiempo real están en la página de modelos ; también puede consultarlos con la Models API. El ID de modelo puede omitir el prefijo qwen/.
qwen/qwen3.8-maxAdmite entrada de imágenesqwen/qwen3.8-flashAdmite entrada de imágenesqwen/qwen3.7-plusAdmite entrada de imágenesqwen/qwen-flashSin thinking por defecto; solo textoLos modelos Qwen los ofrece Alibaba Cloud Model Studio (Bailian) a través de dos proveedores, el sitio de China (aliyun) y el sitio internacional (alicloud), con selección automática por defecto. Cómo seleccionarlos: Enrutamiento de proveedores.
Ejemplos de llamada
Python
import os
from openai import OpenAI
client = OpenAI(base_url="https://api.ofox.ai/v1", api_key=os.environ["OFOX_API_KEY"])
resp = client.chat.completions.create(
model="qwen/qwen3.8-flash",
messages=[{"role": "user", "content": "Explica en una frase qué es la idempotencia."}],
extra_body={"enable_thinking": False},
)
print(resp.choices[0].message.content)Modo thinking
En nuestras mediciones con un mismo problema matemático, Qwen3.8 Flash pensó por defecto unos 5800 tokens y tardó aproximadamente 1,5 minutos, y Qwen3.6 Flash pensó más de 30.000 tokens y tardó más de 4 minutos; con el thinking desactivado, ambos respondieron en pocos segundos.
Limitar la longitud del thinking
Si necesita thinking pero quiere controlar el tiempo y el coste, envíe thinking_budget (límite de tokens de thinking):
import os
from openai import OpenAI
client = OpenAI(base_url="https://api.ofox.ai/v1", api_key=os.environ["OFOX_API_KEY"])
resp = client.chat.completions.create(
model="qwen/qwen3.8-flash",
messages=[{"role": "user", "content": "Encuentra todos los enteros positivos n menores que 50 para los que n² + n + 41 no es primo."}],
extra_body={"enable_thinking": True, "thinking_budget": 1000},
)
msg = resp.choices[0].message
details = getattr(msg, "reasoning_details", None) or []
print("[Thinking]", "".join(d.get("text", "") for d in details)[:200], "…")
print("[Respuesta]", msg.content)
print("Tokens de thinking:", resp.usage.completion_tokens_details.reasoning_tokens)- En nuestras mediciones,
thinking_budgetse aplica de forma estricta: con 200, los tokens de thinking fueron exactamente 200. enable_thinkingythinking_budgetno son parámetros estándar del SDK de OpenAI, así que colóquelos enextra_body; al enviar la petición HTTP directamente, van en el nivel superior del cuerpo.- Los tokens de thinking se facturan al precio de salida; su número figura en
usage.completion_tokens_details.reasoning_tokens.
Leer el contenido del thinking
- En las respuestas en streaming, el contenido del thinking está en
delta.reasoning_content, igual que en la API oficial de Alibaba Cloud Model Studio. - En las respuestas sin streaming, el contenido del thinking está en
message.reasoning_details; concatene por orden eltextde cada elemento (consulte el ejemplo anterior).
Entrada de imágenes
Los modelos que admiten entrada de imágenes usan el bloque de contenido estándar image_url:
import base64
import os
from openai import OpenAI
client = OpenAI(base_url="https://api.ofox.ai/v1", api_key=os.environ["OFOX_API_KEY"])
img_b64 = base64.b64encode(open("photo.png", "rb").read()).decode()
resp = client.chat.completions.create(
model="qwen/qwen3.8-flash",
messages=[{"role": "user", "content": [
{"type": "image_url", "image_url": {"url": f"data:image/png;base64,{img_b64}"}},
{"type": "text", "text": "Describe esta imagen."},
]}],
extra_body={"enable_thinking": False},
)
print(resp.choices[0].message.content)Qwen3.7 Max, Qwen Plus y Qwen Flash solo admiten texto; use uno de los modelos de la tabla anterior que admiten entrada de imágenes.
Uso en Claude Code
La serie Qwen3.x y Qwen Flash admiten el endpoint nativo de Anthropic, con la URL https://api.ofox.ai/anthropic:
https://api.ofox.ai/anthropicqwen/qwen3.8-max- Al llamar a través del endpoint de Anthropic, el contenido del thinking se devuelve en bloques
thinking. - La serie Qwen3.8 piensa bastante, así que configure un
max_tokenssuficientemente grande. En nuestras mediciones, conmax_tokensen 4000 la respuesta podía contener solo el bloquethinkingsin respuesta. - Qwen Plus no admite el endpoint de Anthropic; la llamada devuelve
protocol_not_supported.
Los pasos completos de configuración de Claude Code están en Configuración de Claude Code.
Salida JSON y llamadas a herramientas
response_format admite {"type": "json_object"} y {"type": "json_schema", ...}; las llamadas a herramientas usan el parámetro estándar tools. Al usar json_object, indique en el prompt «devuelve en JSON» y los campos que necesita. Formas de uso: Salida estructurada y Llamadas a funciones.
Caché de prompts
Qwen almacena en caché automáticamente los prefijos de petición repetidos, sin cambiar la petición. La cantidad acertada figura en usage.prompt_tokens_details.cached_tokens, y la parte acertada se factura al precio de lectura de caché. La caché funciona según el principio de mejor esfuerzo; incluso peticiones con el mismo prefijo pueden no acertar.
Errores habituales
Otros errores generales: Gestión de errores.
Documentación oficial
- Alibaba Cloud Model Studio · Lista de modelos
- Alibaba Cloud Model Studio · Deep thinking
- Alibaba Cloud Model Studio · Compatibilidad con OpenAI
La documentación oficial describe el comportamiento al llamar directamente a Alibaba Cloud Model Studio. Al llamar a través de OfoxAI, los IDs de modelo y las URL de los endpoints son los de esta página.
Preguntas frecuentes
¿Cómo se escribe el ID de modelo de Qwen?
El formato estándar es qwen/qwen3.8-flash; también puede omitir el prefijo qwen/.
¿Cómo se desactiva el thinking en Qwen?
Envíe "enable_thinking": false; en el SDK de OpenAI, dentro de extra_body. Las series Qwen3.8, 3.7 y 3.6 tienen el thinking activado por defecto; Qwen Flash y Qwen Plus, desactivado.
¿Qwen responde muy despacio, tras varios minutos de espera?
La serie Qwen3.x tiene el thinking activado por defecto, y con preguntas complejas puede pensar decenas de miles de tokens. Desactive el thinking o limite su longitud con thinking_budget, por ejemplo "thinking_budget": 1000.
¿Cómo se usa thinking_budget en Qwen?
Envíelo junto con "enable_thinking": true; su valor es el límite de tokens de thinking, por ejemplo 1000. En nuestras mediciones se aplica de forma estricta.
¿Qué modelos Qwen pueden ver imágenes?
Qwen3.8 Max, 3.8 Flash, 3.8 27B, 3.7 Plus y 3.6 Flash admiten entrada de imágenes. Qwen3.7 Max, Qwen Plus y Qwen Flash solo admiten texto.
¿Se puede usar Qwen en Claude Code?
Sí. Configure ANTHROPIC_BASE_URL como https://api.ofox.ai/anthropic e indique como modelo uno de la serie Qwen3.x, como qwen/qwen3.8-max. Qwen Plus no admite el endpoint de Anthropic.
¿Dónde está el reasoning_content de Qwen?
En las respuestas en streaming está en delta.reasoning_content; en las respuestas sin streaming, en message.reasoning_details: concatene el text de cada elemento.