Una scheda del titolo generata con l'intestazione "Un elemento, due nomi", il sottotitolo "Ollama e Liquid AI non contano allo stesso modo la famiglia d1", che mostra tre schede impilate etichettate "Liquid AI d1", "Liquid AI d1-3B upload" e "Liquid AI d1-omni-600M upload" che collassano attraverso un funnel contrassegnato "ollama.com/library" in un unico chip che recita "d1 - 3B - 3.7 GB", con un piè di pagina che recita "Nomi confrontati come letti da ollama.com/library/d1 e docs.liquid.ai il 15 ottobre 2026."
Guides & Insights

Liquid AI d1 vs Liquid AI d1-3B: quello che la libreria Ollama chiama un modello e il fornitore chiama due

Autore

Elias Hawthorne

Data di pubblicazione

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

Ci sono due modi per denominare lo stesso insieme di pesi, e Liquid AI d1 e Liquid AI d1-3B illustrano la differenza meglio di qualsiasi confronto tra parametri. Togli un trattino e un suffisso di dimensione dal secondo nome e ottieni il primo, quindi è allettante trattare la stringa più corta come un soprannome. I due cataloghi che effettivamente elencano questi modelli non concordano con questa lettura. L'indice della documentazione di Liquid AI stessa mantiene d1 in una riga a sé con le lettere "API" dove vanno i link di download, e mantiene d1-3B e d1-omni-600M in una coppia separata di righe con link funzionanti a Hugging Face e GGUF e un "No" nella colonna addestrabile. Ollama, la cui voce di libreria è il motivo per cui questa coppia vale la pena di essere scritta, riduce tutto a un'unica pagina chiamata d1, la descrive in una sola riga come "un modello decisionale da 3B di Liquid AI, basato su LFM2.5-VL-3B", e offre esattamente tre tag sotto. Confrontare Liquid AI d1 con Liquid AI d1-3B non è quindi un confronto tra un endpoint ospitato e un checkpoint aperto, e non è nemmeno un confronto tra due checkpoint. È un confronto tra un endpoint ospitato e il checkpoint aperto che l'ecosistema dei runtime locali ha deciso essere d1 quando pronunci la parola senza qualificazioni. La maggior parte di ciò che segue riguarda da quale di queste letture dipenda effettivamente la tua distribuzione.

Una nota su come sono ricavati i dati riportati di seguito, dato che l'onestà conta più della loro formattazione. Tutto ciò che qui è numerico proviene dalla reportistica di Liquid AI stessa, sulle model card o nel post di rilascio del 7 ottobre. Le righe del Decision Index sono state valutate dal fornitore con lo scorer ufficiale anziché essere inviate per una classifica pubblica, e nessuna terza parte ha riprodotto in modo indipendente alcun risultato di d1, per quanto ci è stato possibile trovare. Dove un numero è un calcolo aritmetico su un valore pubblicato anziché una misurazione, viene indicato.

Da dove derivano i due nomi

Il nome più corto è quello più vecchio. Il post del 5 ottobre di Liquid AI ha introdotto il modello come Liquid AI d1 — "il nostro primo modello decisionale", multimodale in quella release, che risponde a domande digitate su uno stato di testo, immagini o entrambi, in un solo forward pass con zero token di output. Quel post riporta un prezzo per il servizio hosted di 0,04 $ per milione di token di input, addebita solo i token di input e osserva che le immagini vengono addebitate come testo a 1,5 token per patch 32×32, quindi un'immagine 1024×1024 costa 1.536 token. Indica inoltre la latenza delle decisioni testuali come 200–300 ms. Quelli sono numeri del servizio hosted, e il post è esplicito che il runtime alla loro base è l'endpoint decisionale del fornitore stesso presso api.liquid.ai/decisions/v1/systemone.

Il nome più lungo compare nel post del 7 ottobre e su Hugging Face, ed è quello che porta il dettaglio riproducibile: 3.12B parametri, un contesto di 32,768 token, un vocabolario di 128,000 token, sedici lingue documentate, un encoder visivo SigLIP2 NaFlex ottimizzato per la forma da 400M e la catena base LFM2.5-2.6B-Base → LFM2.5-VL-3B → d1-3B. Quella scheda afferma anche chiaramente che il modello non è un modello di chat e non scrive testo. Questo è il checkpoint su cui è costruito l'intero ecosistema locale: il repository GGUF contiene Q4_K_M a 1.67 GB, Q8_0 a 2.87 GB, e F16 e BF16 a 5.4 GB ciascuno.

Ciò che nessun documento del fornitore dice apertamente è che Liquid AI d1 e Liquid AI d1-3B sono gli stessi pesi. L'indice della documentazione assegna loro righe separate. Il post di rilascio chiama d1 una famiglia, non un checkpoint. Gli articoli di terze parti hanno notato la lacuna e osservato che il fornitore non ha confermato l'identificazione. Quindi l'affermazione onesta è breve: i numeri con cui i due nomi sono pubblicati non entrano in conflitto in nessun punto che riusciamo a trovare, il rilascio della famiglia e l'endpoint servito sono stati annunciati a due giorni di distanza con una descrizione compatibile, e il fornitore non ha detto che sono lo stesso modello. Considera l'equivalenza come una ragionevole ipotesi di lavoro e non come un fatto che il fornitore abbia avallato con il proprio nome.

A screenshot of the Ollama library page for d1, titled 'd1' and described as 'a 3B decision model from Liquid AI, built on LFM2.5-VL-3B', with '10.5K Downloads' and 'Updated 2 hours ago' beside it, the tag chips 'vision' and '3b', and a models table listing 'd1:latest' and 'd1:3b' at 3.7GB, 32K context and Text, Image input, above a readme stating the model returns a calibrated probability per answer in a single forward pass and is not a chat model.

Cosa cambia effettivamente la build locale

La voce di Ollama non è una ri-pubblicazione né un nuovo checkpoint. È una decisione di packaging, e il packaging impone tre vincoli che la documentazione del fornitore stesso non menziona affatto. Il primo è la lista dei tag: d1:latest, d1:3b e d1:3b-q8_0, tre tag che nominano una sola quantizzazione. Il repository GGUF pubblicato da Liquid contiene quattro precisioni, e il Q4_K_M da 1,67 GB — quello che la maggior parte delle persone sceglierebbe su un laptop — non è tra i tag di Ollama. Ciò che puoi scaricare è il Q8_0 da 2,87 GB e qualunque cosa diventi nel local store; la pagina della libreria riporta il download a 3,7 GB.

Il secondo è il contratto della richiesta. Ollama risponde per questi modelli su /v1/systemone, accetta uno state più un oggetto questions e restituisce risposte tipizzate con output_tokens: 0. È la stessa struttura usata dall'endpoint ospitato del fornitore, ed è ciò che rende il passaggio tra locale e ospitato una modifica di configurazione anziché una riscrittura. Il terzo vincolo si trova nella documentazione dell'endpoint di Ollama anziché nella pagina del modello, ed è più restrittivo di quello di un modello generativo: le richieste devono rientrare in 64 KiB senza immagini e 32 MiB con esse, lo streaming non è supportato, i modelli ospitati nel cloud vengono rifiutati e le immagini devono essere PNG, JPEG o WebP in base64 nel corpo della richiesta — gli URL remoti vengono rifiutati. Le immagini sono condivise da tutte le domande di una richiesta, quindi un'immagine che vuoi venga considerata da una sola risposta necessita di una chiamata a sé. L'input non viene mai troncato, il che significa che uno state sovradimensionato restituisce un errore anziché essere tagliato silenziosamente. Questa è la modalità di errore migliore, e resta comunque una modalità di errore che il tuo client deve gestire.

Due dettagli della documentazione restano irrisolti e vale la pena conoscerli prima di segnalare un bug. Il riferimento all'endpoint di Ollama descrive il tipo di domanda a scelta come in grado di accettare da 2 a 255 chiavi delle opzioni, mentre la sua pagina delle capacità dei modelli decisionali dice da 2 a 26; uno dei due è obsoleto. E la pagina delle capacità elenca i suoi modelli supportati come Nimble, Tev1, Clef e Clef Flash, senza alcuna menzione di d1 — anche se il README del pacchetto d1 stesso documenta il supporto a /v1/systemone e --ask, e il pacchetto richiede Ollama 0.40.4, mentre la versione minima documentata dall'endpoint stesso è 0.35.0. Leggi il requisito di versione sul pacchetto, non quello nella guida.

I numeri, e sotto quale nome sono stati pubblicati

Questa è la parte dell'abbinamento che è più facile sbagliare, perché entrambi i nomi sono pubblicati con dati sulle prestazioni e i dati non sono organizzati nel modo che ci si aspetterebbe.

• Indice decisionale 0.2.1 — 48,57, pubblicato con Liquid AI d1-3B. Liquid lo descrive come il miglior punteggio per un modello decisionale sotto i 10B parametri e lo colloca davanti a un modello 35B-A3B a 47,11. • Latenza decisionale del testo — 200–300 ms, pubblicata con Liquid AI d1 nel post sull'API ospitata. Non esiste una cifra equivalente associata al nome stesso del checkpoint aperto. • Latenza per singola domanda su hardware locale — 8 ms su una RTX 4090, 16 ms su una Jetson AGX Thor, 26 ms su una Jetson AGX Orin 64 GB, 50 ms su una Orin Nano, 30 ms su un Apple M5 Pro. Pubblicata con Liquid AI d1-3B. • Throughput — 475 decisioni al secondo sulla RTX 4090 e 1.106 al secondo su una AMD MI325X con domande raggruppate in batch. Pubblicato con Liquid AI d1-3B. • Visione — una media di 74,1 su undici benchmark pubblici di immagini, contro 73,9 per la base LFM2.5-VL-3B da cui è stato costruito. Pubblicata con Liquid AI d1-3B. • Ablazione delle immagini — lo stesso insieme di domande a cui sono state rimosse le immagini ottiene 45,1, che è la misura fornita dal fornitore stesso del contributo della componente di visione. Pubblicata con Liquid AI d1-3B.

Da quell'elenco emergono due problemi, e nessuno dei due è fatale, ed è proprio per questo che passano inosservati. Il dato hosted e il dato locale sono separati da un fattore da 25 a 37 — 200–300 ms contro 8 ms — e sono stati misurati su elementi che il fornitore non descrive in termini comparabili. Interpretare il divario come «il locale è più veloce» non è supportato, perché il numero hosted è end-to-end attraverso un'API e gli 8 ms sono un forward pass su una GPU indicata per nome. Non sono la stessa misurazione, e il fornitore non ha mai sostenuto che lo siano.

Il secondo problema è la riga della visione. Un miglioramento di 0,2 punti rispetto al modello base su undici benchmark di immagini rientra nel rumore della maggior parte della reportistica sui benchmark, quindi qualunque cosa ti offra la testa decisionale, non è un encoder di immagini sostanzialmente migliore. La riga di ablazione sembra molto più impressionante nella direzione opposta — una variazione di circa 29 punti quando vengono aggiunte le immagini — ma confronta due insiemi di domande diversi anziché due versioni dello stesso, cosa che Liquid afferma nel post stesso. Entrambe le righe sono utili. Nessuna delle due supporta un'affermazione forte sulla qualità delle decisioni visive, e nessuna delle due è stata eseguita da terzi.

Dove i due nomi divergono in pratica

Per un acquirente, la distinzione si riduce a quattro domande, e le risposte non puntano tutte nella stessa direzione.

• Struttura dei costi — Liquid AI d1 viene fatturato per token di input, alla tariffa pubblicata dal fornitore, senza token di output da pagare. Liquid AI d1-3B è un download da 2,87 GB nel pacchetto di Ollama o da 1,67 GB dal repo GGUF del fornitore, senza alcun contatore per chiamata. • Latenza, misurabile — il percorso ospitato dichiara 200–300 ms per decisione di testo. Gli 8 ms dichiarati del percorso locale sono un forward pass su una RTX 4090 con modello caldo, che è un numero reale e non un round trip di richiesta. • Percorso dei dati — il percorso ospitato invia lo stato al fornitore. Il percorso locale lo mantiene sulla macchina, il che per un ticket di assistenza, una nota medica o una fotografia è di solito l'argomento che chiude la discussione. • Blocco della versione — Liquid AI d1 dietro un endpoint è qualunque cosa il fornitore stia servendo oggi. Liquid AI d1-3B in Ollama è un pacchetto fisso che controlli, e il compromesso è che gli aggiornamenti sono a tuo carico.

La realtà scomoda che sta sotto tutte e quattro è che il checkpoint aperto è un fratello del modello ospitato anziché un suo sostituto, e il fornitore non ha detto il contrario. La scheda del modello per il checkpoint aperto lo consiglia per routing e triage, moderazione, classificazione delle intenzioni, controlli di estrazione, reranking, LLM-as-a-judge e guardrail, e lo descrive come post-addestrato su LFM2.5-VL-3B per decisioni calibrate a passaggio singolo. Il post sul modello ospitato descrive lo stesso insieme di attività con parole diverse e cita il prezzo della versione ospitata. Se quelli sono un solo modello, la build locale è una copia gratuita di un prodotto ospitato, cosa insolita che un laboratorio rilasci senza dirlo. Se sono due fine-tune di una base comune, non si dovrebbe presumere che le cifre pubblicate siano trasferibili in nessuna delle due direzioni. La seconda spiegazione richiede meno dal fornitore ed è coerente con le prove di cui disponiamo.

A screenshot of Liquid AI's 'Open d1' blog post dated Oct 7, 2026, headlining d1-3B and d1-omni-600M as open-weight decision models for text, vision and audio, and stating that d1-3B scores 48.57 on Decision Index v0.2.1 with 8 ms per question on an RTX 4090, 16 ms on a Jetson AGX Thor and 26 ms on a Jetson AGX Orin.

Eseguendo entrambe le metà della decisione senza eseguire due stack

Qualunque nome tu scelga, la pipeline che lo circonda tende a sembrare la stessa. Una coda di supporto riceve una domanda a scelta su un team di destinazione, una domanda noul per stabilire se viene richiesto un rimborso, e una domanda con punteggio per l'urgenza — uno stato, tre risposte, un passaggio. Dove i due nomi divergono davvero è nel punto in cui la decisione fa da gate a una chiamata a un modello generativo che noleggi invece di eseguire. Quella chiamata è un problema diverso con un profilo di errore diverso, ed è la parte della pipeline in cui d1 abbia ragione conta meno: una risposta di routing con probabilità 0,98 seguita da un 502 dal modello a cui hai indirizzato è una richiesta fallita in ogni caso.

Non ospitiamo alcun modello Liquid AI — abbiamo controllato il nostro catalogo prima di scrivere questo — quindi nulla di ciò che segue è un'affermazione sul richiamare questi pesi tramite noi. Quello che facciamo è lo strato dall'altra parte della decisione: un'unica chiave compatibile con OpenAI per i modelli verso cui si dirama una richiesta triagiata, al prezzo di listino di ciascun provider passato con 0% di markup, così un taglio di prezzo del fornitore ti raggiunge il giorno in cui viene applicato anziché al rinnovo del contratto, con failover automatico tra provider così una richiesta triagiata sopravvive al fatto che il modello a cui l'hai instradata diventi indisponibile. Se stai collegando per la prima volta un modello decisionale a una pipeline, è proprio quella la metà che vale la pena rendere noiosa.

Quale nome usare, a seconda della situazione

Se vuoi provare il modello questa settimana senza un ambiente Python che valga la pena mantenere, usa il nome che impiega il runtime locale. Scarica Liquid AI d1 dalla libreria, accetta Q8_0 e 3,7 GB, e considera il tetto di 64 KiB per richiesta e la regola del no-streaming come vincoli di progettazione anziché come seccature. Ottieni un endpoint reale, risposte tipizzate reali e nessun contatore per chiamata fin dal primo giorno.

Se hai bisogno di un ingombro inferiore a Q8_0, il nome da usare è Liquid AI d1-3B, perché la build Q4_K_M da 1,67 GB risiede nel repository GGUF del fornitore e non nella voce della libreria. Questo singolo fatto è la differenza più pratica tra i due nomi oggi, ed è quella che più facilmente sfugge a chiunque legga la pagina della libreria e si fermi lì.

Se stai per metterlo davanti a utenti paganti e hai bisogno prima di prove di accuratezza, nessuno dei due nomi ti è ancora d'aiuto. Non esiste alcuna valutazione indipendente di un modello d1 che siamo riusciti a trovare, le righe del Decision Index sono state autovalutate e il fornitore non ha pubblicato alcun benchmark sulle decisioni audio. Quello che puoi fare è strumentare il valore di confidenza che il modello già restituisce — da 0 a 1, che riflette quanto fortemente le probabilità favoriscono una risposta, non quanto è probabile che quella risposta sia corretta — e scoprire sul tuo traffico dove la cosa è incerta. Quella misurazione vale più di qualsiasi slide qui sopra, e richiede un giorno.

A generated spec board titled 'd1 versus d1-3B, as published', with a left column headed d1 listing API-only access, a $0.04 per million input token price, 200-300 ms per text decision, an undocumented parameter count and text plus image input, and a right column headed d1-3B listing downloadable weights, no per-call price, 8 ms per decision on an RTX 4090, 3.12B parameters and text plus image input, footed 'Liquid AI has not confirmed that the hosted d1 and the open d1-3B are the same weights; every figure vendor-reported.'

Il modello decisionale è la metà economica della pipeline. Il modello generativo a cui instrada è la metà che necessita di un contratto — una singola chiave compatibile con OpenAI veicola i modelli verso cui si dirama una richiesta sottoposta a triage, ciascuno al prezzo di listino del rispettivo provider, passato senza alcun ricarico.

Ridimensionare verso il basso un checkpoint distillato rispetto alla sua release completa è anche un buon momento per controllare il registro: gli incidenti AI documentati e i fallimenti degli agenti relativi ai piccoli modelli Liquid sono raccolti in l'OrcaRouter AI Incident Archive, dove ogni voce riporta le proprie fonti, gravità, grado di confidenza e flag di contestazione.