Una tarjeta de título generada para el artículo, encabezada por «ZwZ2-9B lanzado en silencio» con el subtítulo «9.4B pesos de visión, sin tarjeta de modelo, sin licencia, sin anuncio» y dos paneles redondeados: uno titulado «Qué contiene el repositorio» que enumera config.json, chat_template.jinja, model.safetensors y entradas para un README faltante y una LICENCE faltante, y otro titulado «Qué informa la configuración» que enumera Parámetros 9,409,813,744, Capas 32, Contexto 262,144 y Torre de visión 27 capas. Un pie de página dice «Todas las cifras se leen de la configuración publicada». El logotipo de OrcaRouter está compuesto en la franja blanca debajo de la ilustración.
Guides & Insights

ZwZ2-9B se lanzó sin hacer ruido: lo que 9.400 millones de pesos te dicen cuando el laboratorio no dice nada

Autor

Elias Hawthorne

Fecha de publicación

Últimos modelos · 20Ver todos los modelos →
Benchmarks: Artificial Analysis · actualizado a diario
Volver a todas las publicaciones

A las 03:42 UTC del 16 de octubre de 2026, apareció un repositorio de Hugging Face con el nombre inclusionAI/ZwZ2-9B. Cuatro minutos después recibió su único commit —«Añadir pesos del modelo ZwZ2-9B»— y luego nada. No hay README, ni campo de licencia, ni enlace a artículo, ni tabla de benchmarks, ni entrada en ninguna de las diez colecciones públicas que mantiene la organización inclusionAI. Los pesos en sí son 9.409.813.744 parámetros en bfloat16, y describen un modelo de visión-lenguaje con atención híbrida cuya configuración es, línea por línea, la de Qwen3.5-9B con una cabeza de predicción eliminada. Eso es todo lo que está confirmado. Todo lo demás en este artículo está etiquetado como inferencia, porque un repositorio sin tarjeta de modelo no da derecho a nadie a más.

Esto es normal, por cierto, y vale la pena decirlo antes de que se acumulen las advertencias. inclusionAI es el laboratorio de pesos abiertos detrás de las familias Ling, Ring, LLaDA y Ming, y tiene la costumbre de publicar checkpoints días o semanas antes de que aparezca cualquier texto. El 13 de octubre —tres días antes de esto— publicó Ling-3.1-flash con una tarjeta breve y sin ningún anuncio tampoco. Un repositorio silencioso no es una señal de alarma. Es una razón para leer los archivos en lugar del marketing.

¿Qué hay realmente en el repositorio?

Ocho archivos, y la lista es la historia. Hay un .gitattributes, un chat_template.jinja, un config.json, un generation_config.json, un único archivo de 18.8 GB model.safetensors, un processor_config.json, un tokenizer.json y un tokenizer_config.json. No hay README.md. No hay LICENSE. El repositorio tiene exactamente tres etiquetas — safetensors, qwen3_5 y region:us — lo que significa que el Hub no tiene ninguna etiqueta de pipeline para él: no está clasificado como image-text-to-text, text-generation ni nada más. En el momento de escribir esto, muestra cero descargas y dos me gusta.

• Parámetros totales — 9.409.813.744 en 760 tensores, bfloat16.

• Arquitectura — Qwen3_5ForConditionalGeneration, tipo de modelo qwen3_5.

• Pila de texto — 32 capas, tamaño oculto 4.096, 16 cabezas de consulta frente a 4 cabezas KV, dimensión de cabeza 256, tamaño intermedio 12.288, vocabulario 248.320.

• Patrón de atención — tres capas de atención lineal y luego una capa de atención completa, repitiéndose: 24 capas lineales y 8 capas de atención completa.

• Contexto — 262.144 posiciones, base rotatoria 10.000.000, M-RoPE intercalado con sección [11, 11, 10].

• Torre de visión — profundidad 27, tamaño oculto 1.152, tamaño de parche 16, fusión espacial 2, parche temporal 2, proyectando a 4.096.

• Licencia — ninguna declarada. No es apache-2.0, ni una licencia personalizada, nada.

La configuración es una configuración Qwen3.5-9B

Compara los dos config.json archivos y casi todos los valores arquitectónicos coinciden. Tamaño oculto, número de capas, número de cabezas, dimensión de cabeza, tamaño intermedio, vocabulario, la programación de atención lineal a completa 3:1, la sección M-RoPE, la base rotatoria, el techo de 262.144 posiciones, y toda la torre de visión hasta sus 2.304 embeddings de posición son idénticos a Qwen3.5-9B. La diferencia sustancial es una línea: mtp_num_hidden_layers es 1 en Qwen3.5-9B y 0 aquí, así que ZwZ2-9B no lleva ninguna cabeza de predicción multi-token. El resto de la diferencia es serialización — una versión más reciente de transformers que escribe campos que el archivo anterior dejaba implícitos, y el tipo de modelo de la configuración de visión renombrado de qwen3_5 a qwen3_5_vision.

Lo que eso te dice es limitado pero real: esta no es una arquitectura nueva. Es un checkpoint sobre el stack Qwen3.5-9B, postentrenado por alguien, con la cabeza de decodificación especulativa eliminada. Lo que no te dice es en qué consistió ese postentrenamiento. Los parámetros se movieron; la forma no.

A screenshot of the Hugging Face model page for Qwen/Qwen3.5-9B showing 2.18K likes, the Image-Text-to-Text pipeline tag, the qwen3_5 architecture tag, Apache 2.0 licensing, a 10B parameter BF16 model size, a Downloads last month figure of 8,591,266, and a Qwen3.5 Highlights list describing a unified vision-language foundation, an efficient hybrid architecture combining Gated Delta Networks with sparse mixture-of-experts, reinforcement learning scaled across million-agent environments, and support for 201 languages and dialects.A screenshot of the Hugging Face model page for inclusionAI/ZwZ2-9B showing the repository name with 2 likes, the tags safetensors, qwen3_5 and region:us, an entry stating 'No model card', an entry stating 'This model isn't served by any provider', a model size listed as 9B params in BF16, and a Downloads last month figure of 0.

El único lugar donde el modelo sí dice algo sobre sí mismo

La plantilla de chat es el único archivo aquí con un punto de vista, y difiere de Qwen3.5-9B en tres aspectos que un lector puede comprobar en aproximadamente un minuto.

El primero es un prompt de sistema predeterminado. Cuando llega una solicitud sin mensaje de sistema, la plantilla de ZwZ2-9B inyecta uno: «Una conversación entre Usuario y Asistente. El usuario hace una pregunta y el Asistente la resuelve… La respuesta se incluye entre las etiquetas <answer> </answer>». La plantilla de Qwen3.5-9B no tiene esa rama: simplemente no emite nada. Un prompt de sistema integrado que nombra un formato de salida es la firma de una ejecución de entrenamiento específica, no de un modelo base.

The second is the thinking default, and it is inverted. In Qwen3.5-9B the template emits an empty <think></think> block only when the caller explicitly passes enable_thinking: false, which means reasoning is on unless you turn it off. In ZwZ2-9B the condition is not defined or false — the empty block appears by default and the open <think> tag only when a caller explicitly asks for thinking. Same tags, opposite default. Qwen3.8-27B, for the record, kept the Qwen3.5 behaviour, so this is not simply inherited from a newer generation.

El tercero es llevar la cuenta para el razonamiento multiturno: la plantilla entiende un preserve_thinking indicador, y sabe cómo eliminar un <think> bloque de un turno del asistente que ya contiene uno. Ninguno de los dos existe en la plantilla Qwen3.5-9B. El tokenizador, por cierto, todavía reserva los tokens especiales de audio — <|audio_start|>, <|audio_end|>, <|audio_pad|> — pero no hay ninguna torre de audio en ningún lugar de la configuración, así que considéralo vocabulario compartido del tokenizador en lugar de una capacidad.

Lo que el nombre implica, y lo que no

"ZwZ2" se lee como una segunda generación de algo, y hay una primera generación a la que señalar. ZwZ-2B, publicado el 4 de marzo de 2026, es un fine-tune de Qwen3-VL-2B-Instruct entrenado con Region-to-Image Distillation más aprendizaje por refuerzo, publicado junto con el artículo Zooming without Zooming (arXiv 2602.11858) y el conjunto de evaluación ZoomBench. Es Apache-2.0, tiene una ficha de modelo completa y tiene 159 descargas en siete meses.

La pista de linaje, sin embargo, es más tenue de lo que sugiere el nombre. ZwZ-2B está construido sobre la qwen3_vl arquitectura. ZwZ2-9B está construido sobre qwen3_5. La única etiqueta que inclusionAI aplicó es qwen3_5, y el modelo no está en la colección ZwZ ni en ninguna otra. Si la receta de región a imagen se conservó es exactamente el tipo de pregunta que respondería una ficha de modelo y este repositorio no lo hace.

Una trampa que vale la pena señalar, porque los motores de búsqueda llevarán a la gente hacia ella: existe una familia más antigua y no relacionada, ZwZ_32B, de conversiones GGUF fechada en marzo de 2025, de un tercero. Comparte tres letras y nada más. No la interpretes como un ZwZ2-9B anterior.

Cómo tratar un checkpoint no documentado

La postura práctica es la misma que adoptarías con cualquier conjunto de pesos que llegue sin una tarjeta. Extrae primero la configuración y el encabezado de safetensors: eso es barato y es verificable. Confirma que el número de parámetros y los nombres de los tensores coincidan con lo que promete la configuración. Luego sírvelo en un framework que soporte la arquitectura y ejecuta las evaluaciones que ya ejecutas sobre tu propio tráfico, en lugar de tomar prestados números que no existen.

La licencia es la parte que importa para todo lo que vaya más allá de un fin de semana. Un checkpoint sin campo de licencia no es lo mismo que uno abierto; en ausencia de una declaración, lo predeterminado es que el publicador se ha reservado los derechos, y esa es una conversación que hay que tener antes de que esto se acerque a producción, no después. Ten en cuenta también que lo vas a ejecutar tú mismo: el Hub informa que ningún proveedor sirve el modelo, y el vendedor no ha publicado ningún endpoint.

Esa es precisamente la situación para la que existe la conmutación automática por error. Si quieres medir un checkpoint no probado frente al que ya está en uso sin apostar por él una ruta de producción, coloca al candidato detrás de la misma interfaz que los modelos en los que ya confías y deja que el tráfico vuelva cuando el nuevo se comporte mal: una sola clave de API y un único endpoint compatible con OpenAI, en lugar de una segunda integración que tengas que deshacer. OrcaRouter enruta más de 200 modelos de esa manera, traslada los precios de lista de los proveedores sin margen de beneficio (0 %), y no aloja ZwZ2-9B: no vamos a pretender que exista una entrada de catálogo para él. Lo que podemos ofrecer hoy es la familia sobre la que se construyó y la familia a la que reemplaza: la línea Qwen3.5 es enrutable aquí, incluidos qwen/qwen3.5-35b-a3b y qwen/qwen3.5-flash, y qwen/qwen3-vl-8b-instruct cubre el hueco de visión de 8B con un modelo alojado y documentado a $0,18 por millón de tokens de entrada y $0,70 por millón de salida.

A screenshot of the OrcaRouter models page showing a catalogue header reading 210 models, 16 providers and one API key, modality filter tabs for All 210, Text 173, Image 12, Embeddings 5, Video 10 and TTS 10, a credit plan panel with monthly tiers at $50, $100, $500 and $1000, and model cards below for Orca:OrcaCyber Zero 1.5, OpenAI:GPT-6.1 Sol, Anthropic:Claude Sonnet 5.5, TypeSafe:Jev 1.13, OpenAI:GPT-6 Luna and OpenAI:GPT-6 Sol with per-million-token input and output prices.

¿Qué haría falta para convertir esto en un lanzamiento?

Tres cosas, y cualquiera de ellas justificaría una reescritura de esta pieza. Un campo de licencia que aparezca en el repositorio, lo que lo convierte de una curiosidad en algo que una empresa puede usar. Una ficha de modelo con números de evaluación, lo que lo convierte de una arquitectura en una afirmación. O un artículo —siendo la forma más probable el trabajo de región a imagen que hizo interesante al primer ZwZ, aplicado a una torre de visión tres veces más grande.

Hasta que uno de esos se materialice, trata a ZwZ2-9B como lo que el listado de archivos dice que es: un derivado de Qwen3.5-9B de 9,4 mil millones de parámetros con una plantilla de chat personalizada, publicado por un laboratorio que aún no le ha dicho a nadie por qué. Los pesos son reales. La historia aún no está escrita, y la postura honesta es que nadie fuera de inclusionAI puede escribirla.

Nada de eso es hipotético: los fallos documentados de IA y los incidentes de agentes detrás de lanzamientos como este se recopilan en el OrcaRouter AI Incident Archive, donde cada entrada incluye sus propias fuentes, severidad, grado de confianza e indicador de disputa.