Una card del titolo generata per l'articolo, con l'intestazione 'ZwZ2-9B rilasciato in sordina' e il sottotitolo '9,4 miliardi di pesi di visione, nessuna model card, nessuna licenza, nessun annuncio' e due pannelli arrotondati: uno intitolato 'Cosa contiene il repository' che elenca config.json, chat_template.jinja, model.safetensors e voci per un README mancante e una LICENCE mancante, e uno intitolato 'Cosa riporta la configurazione' che elenca Parametri 9.409.813.744, Livelli 32, Contesto 262.144 e Torre di visione 27 livelli. Un piè di pagina recita 'Tutti i valori sono tratti dalla configurazione pubblicata.' Il logo di OrcaRouter è sovrapposto nella striscia bianca sotto l'illustrazione.
Guides & Insights

ZwZ2-9B è stato rilasciato in silenzio: cosa ti dicono 9,4 miliardi di pesi quando il laboratorio non dice nulla

Autore

Elias Hawthorne

Data di pubblicazione

Ultimi modelli · 20Vedi tutti i modelli →
Benchmark: Artificial Analysis · aggiornato ogni giorno
Torna a tutti gli articoli

Alle 03:42 UTC del 16 ottobre 2026 è apparso un repository Hugging Face con il nome inclusionAI/ZwZ2-9B. Quattro minuti dopo ha ricevuto il suo unico commit — "Add ZwZ2-9B model weights" — e poi nulla. Non c'è alcun README, alcun campo licenza, alcun link a un paper, alcuna tabella di benchmark e alcuna voce in nessuna delle dieci raccolte pubbliche mantenute dall'organizzazione inclusionAI. I pesi stessi sono 9.409.813.744 parametri in bfloat16, e descrivono un modello visione-linguaggio con attenzione ibrida la cui configurazione è, riga per riga, la configurazione di Qwen3.5-9B con una testa di predizione rimossa. Questo è tutto ciò che è confermato. Tutto il resto in questo pezzo è etichettato come inferenza, perché un repository senza una model card non autorizza nessuno a di più.

Questo è normale, tra l'altro, e vale la pena dirlo prima che si accumulino le avvertenze. inclusionAI è il laboratorio open-weights dietro le famiglie Ling, Ring, LLaDA e Ming, e ha l'abitudine di pubblicare checkpoint giorni o settimane prima che compaia qualsiasi prosa. Il 13 ottobre — tre giorni prima di questo — ha pubblicato Ling-3.1-flash con una scheda breve e nessun annuncio, nemmeno. Un repository silenzioso non è un segnale d'allarme. È un motivo per leggere i file invece del marketing.

Cosa c'è effettivamente nel repository

Otto file, e l'elenco è la storia. C'è un .gitattributes, un chat_template.jinja, un config.json, un generation_config.json, un unico file da 18,8 GB denominato model.safetensors, un processor_config.json, un tokenizer.json e un tokenizer_config.json. Non c'è alcun file README.md. Non c'è alcun file LICENSE. Il repository porta esattamente tre tag — safetensors, qwen3_5 e region:us — il che significa che l'Hub non ha alcun pipeline tag per esso: non è classificato come image-text-to-text, text-generation o qualsiasi altra cosa. Al momento della scrittura mostra zero download e due like.

• Parametri totali — 9.409.813.744 su 760 tensori, bfloat16.

• Architettura — Qwen3_5ForConditionalGeneration, tipo di modello qwen3_5.

• Stack di testo — 32 livelli, dimensione nascosta 4.096, 16 teste di query contro 4 teste KV, dimensione della testa 256, dimensione intermedia 12.288, vocabolario 248.320.

• Schema di attenzione — tre layer ad attenzione lineare, poi un layer ad attenzione completa, e così via: 24 layer lineari e 8 layer ad attenzione completa.

• Contesto — 262.144 posizioni, base rotatoria 10.000.000, M-RoPE interlacciato con sezione [11, 11, 10].

• Torre di visione — profondità 27, dimensione nascosta 1.152, dimensione della patch 16, fusione spaziale 2, patch temporale 2, proiezione a 4.096.

• Licenza — nessuna dichiarata. Non apache-2.0, non una licenza personalizzata, niente.

La configurazione è una configurazione Qwen3.5-9B

Confronta i due config.json file e quasi ogni valore architetturale corrisponde. Dimensione nascosta, numero di layer, numero di teste, dimensione delle teste, dimensione intermedia, vocabolario, lo schema di attenzione lineare-completa 3:1, la sezione M-RoPE, la base rotatoria, il limite di 262.144 posizioni e l'intera torre di visione fino alle sue 2.304 embedding di posizione sono identici a Qwen3.5-9B. La differenza sostanziale è una riga: mtp_num_hidden_layers è 1 in Qwen3.5-9B e 0 qui, quindi ZwZ2-9B non porta alcuna testa di predizione multi-token. Il resto del diff è serializzazione — una versione più recente di transformers che scrive esplicitamente campi che il file precedente lasciava impliciti, e il tipo di modello della configurazione della visione rinominato da qwen3_5 a qwen3_5_vision.

Quello che ti dice è limitato ma reale: questa non è una nuova architettura. È un checkpoint sullo stack Qwen3.5-9B, post-addestrato da qualcuno, con la testa di decodifica speculativa rimossa. Quello che non ti dice è in cosa consistesse quel post-addestramento. I parametri si sono mossi; 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.

L'unico punto in cui il modello dice davvero qualcosa su di sé

Il template della chat è l'unico file qui con un punto di vista, e diverge da Qwen3.5-9B in tre modi che un lettore può verificare in circa un minuto.

Il primo è un prompt di sistema predefinito. Quando arriva una richiesta senza messaggio di sistema, il template di ZwZ2-9B ne inietta uno: "Una conversazione tra Utente e Assistente. L'utente pone una domanda, e l'Assistente la risolve… La risposta è racchiusa all'interno dei tag <answer> </answer>." Il template di Qwen3.5-9B non ha un ramo di questo tipo — semplicemente non emette nulla. Un prompt di sistema incorporato che specifica un formato di output è la firma di una specifica esecuzione di addestramento, non di un modello di 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.

Il terzo è la gestione per il ragionamento multi-turno: il template comprende un preserve_thinking flag, e sa come rimuovere un <think> blocco da un turno dell'assistente che ne contiene già uno. Nessuno dei due esiste nel template di Qwen3.5-9B. Il tokenizer, tra l'altro, riserva ancora i token speciali audio — <|audio_start|>, <|audio_end|>, <|audio_pad|> — ma non esiste alcuna torre audio da nessuna parte nella configurazione, quindi trattali come vocabolario condiviso del tokenizer anziché come una capacità.

Ciò che il nome implica, e ciò che non implica

"ZwZ2" si legge come una seconda generazione di qualcosa, e c'è una prima generazione a cui fare riferimento. ZwZ-2B, pubblicato il 4 marzo 2026, è un fine-tune di Qwen3-VL-2B-Instruct addestrato con Region-to-Image Distillation più apprendimento per rinforzo, pubblicato insieme al paper Zooming without Zooming (arXiv 2602.11858) e al set di valutazione ZoomBench. È Apache-2.0, ha una model card completa e ha 159 download in sette mesi.

L'indizio sulla discendenza, tuttavia, è più tenue di quanto il nome suggerisca. ZwZ-2B è basato su qwen3_vl architettura. ZwZ2-9B è basato su qwen3_5. L'unico tag che inclusionAI ha applicato è qwen3_5, e il modello non è nella collezione ZwZ né in nessun'altra. Se la ricetta regione-a-immagine sia stata mantenuta è esattamente il tipo di domanda a cui una scheda modello risponderebbe e questo repository non lo fa.

Una trappola che vale la pena segnalare, perché i motori di ricerca spingeranno le persone a caderci: esiste una vecchia famiglia non correlata ZwZ_32B di conversioni GGUF risalenti a marzo 2025, da una terza parte. Condivide tre lettere e nient'altro. Non va interpretata come una precedente ZwZ2-9B.

Come gestire un checkpoint non documentato

L'approccio pratico è lo stesso che adotteresti con qualsiasi insieme di pesi che arrivi senza una scheda. Scarica prima la config e l'header dei safetensors — è poco costoso ed è verificabile. Verifica che il numero di parametri e i nomi dei tensori corrispondano a quanto promette la config. Poi servilo su un framework che supporta l'architettura, ed esegui le valutazioni che già esegui sul tuo traffico invece di prendere in prestito numeri che non esistono.

La licenza è la parte che conta per qualunque cosa che non sia un fine settimana. Un checkpoint privo di campo licenza non equivale a uno aperto; in assenza di una dichiarazione, l'impostazione predefinita è che il publisher si è riservato i diritti, e questa è una conversazione da fare prima che questo si avvicini alla produzione, non dopo. Nota anche che lo eseguirai tu stesso — l'Hub segnala che il modello non è servito da alcun provider, e il fornitore non ha pubblicato alcun endpoint.

È esattamente la situazione per cui esiste il failover automatico. Se vuoi misurare un checkpoint non ancora collaudato rispetto a quello in uso senza rischiare un percorso di produzione su di esso, metti il candidato dietro la stessa interfaccia dei modelli di cui ti fidi già e lascia che il traffico torni indietro quando il nuovo si comporta male — una sola chiave API e un solo endpoint compatibile con OpenAI, invece di una seconda integrazione che devi poi disfare. OrcaRouter instrada più di 200 modelli in questo modo, trasmette i prezzi di listino dei provider con un markup dello 0%e non ospita ZwZ2-9B — non intendiamo fingere che ne esista una voce a catalogo. Ciò che possiamo offrire oggi è la famiglia su cui è stato costruito e la famiglia che sostituisce: la linea Qwen3.5 è instradabile qui, inclusi qwen/qwen3.5-35b-a3b e qwen/qwen3.5-flash, e qwen/qwen3-vl-8b-instructcopre lo slot di visione 8B con un modello documentato e ospitato a $0,18 per milione di token in input e $0,70 per milione di token in output.

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.

Cosa lo trasformerebbe in una release?

Tre cose, e ognuna di esse giustificherebbe una riscrittura di questo articolo. Un campo di licenza che compare nel repository, che lo trasforma da curiosità in qualcosa che un'azienda può usare. Una model card con numeri di valutazione, che lo trasforma da architettura in un'affermazione. O un paper — la forma più probabile è il lavoro da regione a immagine che ha reso interessante il primo ZwZ, applicato a una torre di visione tre volte più grande.

Finché uno di quelli non arriva, considera ZwZ2-9B per ciò che l'elenco dei file dice che è: un derivato di Qwen3.5-9B da 9,4 miliardi di parametri con un template di chat personalizzato, pubblicato da un laboratorio che non ha ancora detto a nessuno perché. I pesi sono reali. La storia non è ancora scritta, e la posizione onesta è che nessuno al di fuori di inclusionAI può scriverla.

Niente di tutto ciò è ipotetico: i fallimenti documentati dell'IA e gli incidenti degli agenti alla base di rilasci come questo sono raccolti in l'OrcaRouter AI Incident Archive, dove ogni voce riporta le proprie fonti, la gravità, il grado di confidenza e il flag di contestazione.