26 Febbraio 2025
Granite 3.2, l'ultima versione della nostra terza generazione di modelli IBM Granite, è un passo essenziale nell'evoluzione della serie Granite oltre i semplici modelli linguistici. Caratterizzato da eccellenti funzionalità di ragionamento sperimentale e dal nostro primo modello ufficiale di linguaggio di visione (VLM), Granite 3.2 introduce diverse nuove funzionalità significative nella famiglia Granite.
La release include anche una serie di miglioramenti ad efficienza, efficacia e versatilità delle nostre offerte esistenti. La scelta di IBM di prediligere modelli pratici e pensati per le aziende continua la ricerca di prestazioni all'avanguardia con sempre meno parametri.
Come sempre, gli ultimi modelli Granite sono open source con licenza Apache 2.0. Tutti i modelli Granite sono ora disponibili su Hugging Face. Alcuni modelli sono disponibili anche tramite piattaforme aggiuntive, tra cui IBM watsonx.ai. Tutorial, ricette e altre risorse sono disponibili nella sezione "Introduzione" alla fine di questo articolo.
Le iterazioni più recenti dei modelli LLM (Large Language Models) di punta di IBM, Granite 3.2 Instruct 8B e Granite 3.2 Instruct 2B, sono state addestrate per offrire funzionalità di ragionamento avanzate relative alle loro controparti 3.1. La nostra implementazione del ragionamento è in qualche modo contraria a determinate tendenze del settore, in linea con l'approccio pratico di IBM al miglioramento delle prestazioni dei modelli.
Queste funzionalità sperimentali dei nuovi modelli Granite 3.2 Instruct rappresentano solo una delle numerose esplorazioni in corso presso IBM Research sull'evoluzione dei modelli basata sul ragionamento. Ulteriori lavori sulle tecniche di ridimensionamento dell'inferenza dimostrano che Granite 3.2 8B Instruct può essere calibrato per eguagliare o superare le prestazioni di ragionamento matematico di modelli molto più grandi, tra cui GPT-4o-0513 di OpenAI e Claude-3.5-Sonnet-1022 di Anthropic.
L'intuizione che guida i recenti progressi nel ragionamento basato sul modello linguistico deriva dalla ricerca del 2022 che dimostra che la semplice aggiunta della frase "pensa passo per passo", una tecnica di ingegneria dei prompt comunemente chiamata prompt di chain of thought (CoT), migliora significativamente gli output del modello nelle attività di ragionamento.1
Ricerche successive del 2024 hanno ulteriormente postulato che l'aumento del calcolo in tempo di inferenza, ovvero le risorse utilizzate per generare ogni output durante l'inferenza, potrebbe migliorare le prestazioni del modello tanto quanto aumentarne le dimensioni o le risorse utilizzate per addestrarlo. Gli approcci più recenti hanno perseguito principalmente tale scalabilità dell'inferenza attraverso l'incorporazione di vari framework di reinforcement learning (RL) che incentivano "processi di pensiero" più lunghi e complessi. È interessante notare che la scalabilità dell'inferenza è stata dimostrata empiricamente per consentire a LLM ancora più piccoli di superare le capacità di ragionamento di modelli molto più grandi.
Nonostante i loro punti di forza, i modelli di ragionamento non sono privi di svantaggi. Alla luce di ciò, IBM ha adottato misure deliberate per mitigare questi svantaggi nell'implementazione specifica delle funzionalità di ragionamento per Granite 3.2.
I "modelli di ragionamento" sono in genere più lenti e costosi degli LLM generici, poiché è necessario generare (e pagare) tutti i token utilizzati dal modello per "pensare" alla risposta finale prima di fornire effettivamente un output all'utente. IBM Research ha notato un esempio di DeepSeek-R1, un importante modello di ragionamento, che impiega 50,9 secondi per rispondere alla domanda:"dov'è Roma?"
Ci sono scenari in cui quel tempo e quella elaborazione extra possono essere facilmente giustificati, ma ci sono anche molti scenari in cui diventano uno spreco di risorse. Piuttosto che richiedere agli sviluppatori di destreggiarsi tra questi compromessi ogni volta che scelgono un modello per una determinata applicazione o workflow, i modelli IBM Granite 3.2 Instruct consentono di attivare o disattivare il loro processo di pensiero esteso semplicemente aggiungendo il parametro
Puoi sfruttare appieno il processo di ragionamento di Granite 3.2 quando è necessario o dare priorità all'efficienza quando non lo è.
Nella storia relativamente breve dei modelli di ragionamento, molti approcci importanti hanno dato priorità ai miglioramenti delle prestazioni solo su una serie ristretta di domini basati sulla logica, come la matematica o la codifica. Sebbene il lavoro continuo di IBM sulle tecniche di scalabilità dell'inferenza abbia prodotto miglioramenti impressionanti soprattutto nelle prestazioni su benchmark tecnici convenzionalmente associati al "ragionamento", come AIME e MATH-500, il nostro obiettivo per Granite 3.2 Instruct era arricchire i processi di ragionamento dei nostri modelli per migliorare più in generale la loro capacità di seguire istruzioni complesse.
Un'attenzione ristretta alle attività tecniche mirate esplicitamente dagli sviluppatori del modello a volte può andare a scapito di altri domini, tra cui le prestazioni generali e la sicurezza, le cui conoscenze possono essere "dimenticate" dal modello se non sono adeguatamente trattate nei set di dati utilizzati per migliorare le prestazioni di ragionamento. Per evitare ciò, IBM ha sviluppato Granite 3.2 Instruct applicando direttamente a Granite 3.1 Instruct un framework di apprendimento rinforzato basato sulla Thought Preference Optimization (TPO).
A differenza di molti approcci comuni alle funzionalità di ragionamento, la minore dipendenza del TPO da operatori o funzioni logiche per valutare e premiare gli output del modello rende più facile scalare alle attività generali. Ciò ha consentito a Granite 3.2 Instruct di aumentare le prestazioni in attività che richiedono un ragionamento complesso senza compromettere le prestazioni altrove.
I benefici di questo approccio sono più evidenti rispetto ai modelli DeepSeek-R1-Distill, che (nonostante i loro nomi) sono in realtà versioni dei modelli Llama e Qwen ottimizzate per emulare il processo di ragionamento di DeepSeek-R1. Vale la pena notare che, a differenza dei modelli R1-Distill, i modelli IBM Granite 3.2 Instruct non sono stati addestrati utilizzando dati generati da DeepSeek, il che semplifica notevolmente le loro implicazioni normative.
Considera le prestazioni pre e post ragionamento di modelli Llama, Qwen e Granite di dimensioni simili su ArenaHard e Alpaca-Eval-2, benchmark popolari che misurano la capacità di ragionare su istruzioni difficili. Mentre la tecnica di DeepSeek riduce le prestazioni su queste attività non mirate, le tecniche CoT utilizzate per far evolvere Granite 3.1 Instruct in Granite 3.2 Instruct hanno migliorato significativamente l'esecuzione delle istruzioni.
Allo stesso modo, Granite 3.2 evita i compromessi sulle prestazioni generali che tipicamente comporta l'introduzione delle funzionalità di ragionamento.
IBM tiene conto delle esigenze aziendali, compresa la sicurezza, al centro di tutte le decisioni di progettazione. Mentre i modelli derivati da DeepSeek mostrano un calo significativo delle prestazioni di sicurezza (misurate in base alle prestazioni del benchmark AtTaq), l'approccio di IBM ha preservato l'affidabilità di Granite 3.2 Instruct agli attacchi avversari.
Come detto, il rilascio di Granite 3.2 segna solo l'inizio delle esplorazioni di IBM sulle funzionalità di ragionamento per i modelli aziendali. Gran parte della nostra ricerca attuale mira a utilizzare al meglio il processo di ragionamento per sua natura più lungo e affidabile di Granite 3.2 per un'ulteriore ottimizzazione del modello.
Uno di questi percorsi di esplorazione è incentrato sul rafforzamento di Granite 3.2 con tecniche di scaling dell'inferenza più complesse, tra cui il filtraggio delle particelle e il voto a maggioranza (chiamato anche autoconsistenza). I primi esperimenti dimostrano che, se utilizzate insieme a queste tecniche di scalabilità dell'inferenza, le prestazioni di Granite 3.2 nelle attività di ragionamento matematico possono eguagliare o superare le prestazioni di modelli all'avanguardia molto più ampi.
Granite Vision 3.2 2B è un modello linguistico leggero di grandi dimensioni con funzionalità di computer vision impiegato per i casi d'uso aziendali quotidiani, addestrato con particolare attenzione alla comprensione visiva dei documenti. Gestendo sia gli input di immagini che di testo, le prestazioni di Granite Vision 3.2 su benchmark aziendali essenziali, come DocVQA e ChartQA, competono con quelle di modelli aperti ancora più grandi.
Sebbene Granite Vision 3.2 2B non sia esplicitamente concepito per sostituire modelli Granite di solo testo di dimensioni simili per attività linguistiche, è in grado di gestire efficacemente scenari di testo come input e output.
Granite Vision 3.2 2B può gestire un'ampia varietà di attività di comprensione visiva, ma si specializza in attività più rilevanti per la comprensione dei documenti e la retrieval augmented generation (RAG) multimodale.
La maggior parte dei VLM, chiamati anche modelli linguistici di grandi dimensioni multimodali (MLLM), sono addestrati per attività visive prevalentemente su immagini naturali. Ciò non garantisce necessariamente prestazioni ottimali sulle immagini dei documenti, le cui caratteristiche visive uniche (layout, caratteri, grafici, infografiche) differiscono significativamente da quelle delle immagini naturali. Rispetto alla maggior parte dei casi d'uso generalizzati di input di immagine e output di testo, la comprensione dei documenti richiede una comprensione più specifica e dettagliata del contesto visivo.
Le due sfide principali per consentire agli MLLM di elaborare efficacemente i documenti e le immagini associate sono la codifica adeguata delle immagini ad alta risoluzione e l'interpretazione accurata del testo situato visivamente all'interno di tali documenti. Gli approcci specializzati in genere si basano su sistemi esterni di riconoscimento ottico dei caratteri (OCR) per elaborare il testo all'interno delle immagini in un framework di "percezione e comprensione" o su architetture di modelli su misura progettate esclusivamente per la comprensione dei documenti.
Entrambi gli approcci presentano alcuni svantaggi. La dipendenza dalla comprensione esterna dei documenti basata sull'OCR può comportare l'accumulo di errori prima che le informazioni essenziali raggiungano la lingua, mentre molti metodi dedicati senza OCR hanno difficoltà a gestire l'input ad alta risoluzione o risentono di una mancanza di conoscenza generale rispetto a quella di un LLM competitivo.2
Più recentemente, sono state ottenute ottime prestazioni nella comprensione dei documenti ottimizzando le istruzioni dei modelli di linguaggio di visione generalizzato su set di dati incentrati sui documenti. Sfortunatamente, i progressi in questo approccio sono stati alquanto limitati dalla carenza di set di dati open source adeguati. Per facilitare ulteriori progressi con questo approccio, lo sviluppo di Granite Vision 3.2 da parte di IBM ha comportato un ampio lavoro verso un set di dati completo che segue le istruzioni per la comprensione visiva dei documenti.
Il set di dati DocFM è un ampio set di dati di istruzioni ottimizzate per le attività di visione basato su un nucleo di dati aziendali selezionati. Nel documento tecnico allegato vengono forniti dettagli approfonditi sulle fonti di dati utilizzate nella raccolta di set di dati per la comprensione dei documenti, sui metodi di filtraggio e pulizia utilizzati per elaborare tale raccolta iniziale e sulle metodologie impiegate per generare sinteticamente attività di addestramento per Granite Vision.
I dati sulla comprensione dei documenti utilizzati per addestrare Granite Vision riguardano una vasta gamma di classi di documenti con le categorie di immagini generali dei documenti, grafici, diagrammi di flusso e diagrammi classici. Il set di dati che segue le istruzioni derivato in ultima analisi da queste fonti di dati comprende una serie diversificata di attività che includono la risposta alle domande dei documenti, la comprensione del testo della scena, l'estrazione di valori chiave, la base del testo, l'analisi del layout, i sottotitoli, la comprensione dell'interfaccia utente e il codice.
DocFM è un set di dati molto ampio che IBM intende utilizzare per una serie di attività di apprendimento visivo a valle in futuro. L'addestramento di Granite Vision è stato basato su un sottoinsieme di DocFM per creare una serie di set di dati visivi sintetici con risposta a domande. Una panoramica completa del documento che comprende i set di dati utilizzati per Granite Vision è fornita nella Tabella 5 dell'appendice al documento tecnico.
Nella progettazione e nell'addestramento di Granite 3.2 Vision, IBM ha anche introdotto una nuova tecnica in fase di test che, anziché basarsi su un modello di guardrail esterno per monitorare le attività dannose, incorpora un approccio di sicurezza dedicato direttamente nel modello stesso.
Il nostro insight chiave è che all'interno dei numerosi livelli di attenzione e di trasformazione di Granite esiste un sottoinsieme sparso di caratteristiche dell'immagine che potrebbero essere utili per identificare problemi di sicurezza quando le attività di monitoraggio della sicurezza vengono formalizzate come problemi di classificazione.
In un processo ulteriormente dettagliato nel documento tecnico di Granite Vision, IBM Research ha progettato un processo per isolare ed esaminare i vettori di attenzione prodotti all'interno del meccanismo di attenzione di Granite Vision al fine di valutare quali vettori, in media, sono correlati in modo affidabile con determinate classi di input dannosi. Una volta identificate, le teste di ’attenzione responsabili della generazione di tali "vettori di sicurezza" possono essere utilizzate per determinare se un determinato input è sicuro.
IBM continuerà ad esplorare le potenziali applicazioni dei vettori di attenzione sparsi. Una potenziale via di esplorazione riguarda il loro utilizzo per adattare le future versioni di Granite Guardian per un monitoraggio della sicurezza completamente multimodale.
Granite Guardian 3.2, l'ultima generazione di modelli di guardrail IBM progettati per rilevare i rischi nei prompt e nelle risposte, offre prestazioni pari agli equivalenti di Guardian 3.1, con una maggiore velocità e costi di inferenza e utilizzo della memoria inferiori.
IBM Granite Guardian 3.2 introduce l'affidabilità verbalizzata, una nuova funzionalità che fornisce una valutazione più dettagliata dei rischi rilevati per riconoscere l'ambiguità inerente a determinati scenari di monitoraggio della sicurezza.
Invece di generare solo un "Sì" o "No" binario nel processo di monitoraggio degli input e degli output per il rischio, i modelli Granite Guardian 3.2 indicheranno anche il loro relativo livello di certezza. Quando vengono rilevati rischi potenziali, i modelli Guardian 3.2 indicano un'affidabilità "alta" o "bassa", come dimostrato nell'esempio seguente:
Granite Guardian 3.2 introduce due nuove dimensioni di modello:
Granite Guardian 3.2 5B è stato derivato da Guardian Guardian 3.1 8B (che a sua volta è stato creato attraverso la messa a punto del modello linguistico di base per la classificazione della sicurezza). Ispirandosi alla ricerca che dimostra che i livelli più profondi di una rete neurale sono spesso ridondanti, non utilizzati appieno dal pre-addestramento o semplicemente meno critici rispetto ai livelli più superficiali delle reti, IBM ha perseguito una strategia di rimozione iterativa per "snellire" il modello 8B. Il processo ha portato a una riduzione di circa il 30% dei parametri dell'8B, mantenendo prestazioni simili a quelle del modello originale.
Granite Guardian 3.2 3B-A800M è stato creato perfezionando il nostro modello base mixture of experts(MoE), che attiva solo 800 milioni dei suoi 3 miliardi di parametri totali al momento dell'inferenza. La sua introduzione aggiunge un'opzione particolarmente efficiente ed economica alla gamma Granite Guardian.
La popolare famiglia open source di modelli Granite Time Series compatti di IBM, denominati Tiny Time Mixers (TTM), è stata scaricata oltre 8 milioni di volte su Hugging Face. Mentre le precedenti varianti di TTM distribuite nell'ambito delle serie TTM-R1 e TTM-R2 supportavano le previsioni zero-shot e few-shot per risoluzioni dal minuto all'ora, la più recente aggiunta alla linea di Granite Time Series, TTM-R2.1, supporta orizzonti di previsioni giornalieri e settimanali.
È disponibile un elenco dettagliato di tutte le fonti di dati utilizzate per addestrare TTM-R2 e TTM-R2.1 nella parte inferiore della scheda modello TTM-R2/R2.1 Hugging Face. Un elenco completo delle varianti è disponibile nella scheda "File e versioni".
Alcune procedure per iniziare a usare Tiny Time Mixers sono disponibili nel Cookbook Granite Time Series.
Nella GIFT-Eval Time Series Forecasting Leaderboard di Salesforce, un benchmark completo che valuta le prestazioni del modello di serie temporali su input multivariati su 24 set di dati che comprendono 7 domini, 10 frequenze e lunghezze di previsione che vanno dalle previsioni a breve a quelle a lungo termine, i modelli TTM-R2 (incluse le nuove varianti TTM-R2.1) superano tutti i modelli per l'accuratezza delle previsioni puntuali misurata dall'errore scalato assoluto medio (MASE).3 TTM-R2 si colloca anche nella top 5 per la previsione probabilistica, misurata in base al punteggio di probabilità classificato continuo (CRPS).
Vale la pena notare che i modelli TTM ottengono questi risultati superando modelli molto più grandi. Con dimensioni "minuscole" di parametri compresi tra 1 e 5 milioni, i modelli TTM sono centinaia di volte più piccoli dei modelli al secondo e terzo posto per MASE, vale a dire il TimesFM-2.0 di Google (500 milioni di parametri) e il Chronos-Bolt-Base di Amazon (205 milioni di parametri).
La versione TTM-R2.1 include un assortimento di modelli con lunghezze di contesto e orizzonti di previsione variabili. Mentre i precedenti modelli TTM-R2 offrono lunghezze di contesto di 1536, 1024 o 512, TTM-R2.1 include modelli con lunghezze di contesto più brevi che vanno da 512 a 52, il che lo rende adatto alle previsioni giornaliere e settimanali.
I modelli TTM-R2.1 non sostituiscono necessariamente i loro predecessori TTM-R2. La versione "migliore" di TTM dipende dalla natura dei suoi dati e dal caso d'uso. Ad esempio,
Il modulo get_model semplifica il compito di selezionare la variante di modello corretta tra la vasta offerta disponibile.
La designazione"
Quando abilitato, un vettore di embedding che indica la frequenza dei dati, viene aggiunto come "prefisso" all'input del modello, insieme alle informazioni dalla finestra di contesto. Come descritto in dettaglio nel documento tecnico TTM, il team del modello ha scoperto che la sintonizzazione della frequenza migliora le prestazioni durante il pre-addestramento su grandi raccolte di set di dati con diverse risoluzioni. Durante l'inferenza, questo token di prefisso consente al modello di adattarsi rapidamente alla frequenza dei dati di input, il che è particolarmente utile quando la lunghezza del contesto è molto breve.
Mentre tutti i precedenti modelli di Granite Embedding (e anche quasi tutti i modelli di embedding nell'era moderna del deep learning) apprendono gli embedding densi , il più recente modello di Granite Embedding, Granite-Embedding-Sparse-30M-English, ha un'architettura leggermente modificata che gli consente di apprendere gli embedding sparsi .
Ottimizzato per corrispondenze esatte, ricerca di parole chiave e posizionamento in inglese, Granite-Embedding-30M-Sparse bilancia efficienza e scalabilità tra diversi budget di risorse e latenza. È distribuito tramite Granite Experiments, un playground di IBM Research per testare idee open source e accelerare il ciclo di sviluppo.
Un tipico modello di embedding denso richiede un input di testo (come un documento, una frase o una query) e genera un embedding vettoriale di dimensioni fisse. La dimensione di quel vettore, ovvero quanti numeri (o dimensioni) contiene, è una scelta di progettazione. I modelli che apprendono embedding più piccoli sono più veloci, ma meno precisi. I modelli che apprendono embedding più grandi sono più lenti, ma più precisi. Vengono chiamati embedding vettoriali "densi" perché ogni dimensione memorizza un valore specifico.
Le dimensioni individuali di un embedding denso non corrispondono direttamente agli attributi del significato semantico dell'input in alcun modo letterale. Gli embedding densi sono essenzialmente una black box: i modelli possono usarli per eseguire operazioni, ma noi umani non possiamo interpretarli in modo significativo.
Gli embedding sparsi sono più intuitivi. La loro dimensione di embedding è la stessa del loro vocabolario: cioè, ogni dimensione dell'embedding vettoriale corrisponde a una delle "parole", o, più precisamente, a uno dei token, che il modello ha appreso. Il valore specifico contenuto in ogni dimensione di un vettore di embedding sparso riflette la rilevanza del token che quella dimensione rappresenta per l'input per il quale il modello sta generando un embedding. Gli embedding sparsi sono quindi abbastanza interpretabili.
Per passaggi di testo più brevi, come tweet, commenti o brevi recensioni di prodotti, gli embedding sparsi possono essere significativamente più veloci e offrire prestazioni migliori (o come minimo pari) a quelle degli embedding densi. Solitamente offrono ottime prestazioni "pronte all'uso", senza bisogno di alcuna messa a punto.
Detto questo, non sono prive di svantaggi. L'opportunità di migliorare le prestazioni di un modello di embedding sparso oltre la sua baseline originale è limitata, grazie alla messa a punto. Per passaggi di testo più lunghi, qualsiasi vantaggio in termini di efficienza inizia a svanire o addirittura a invertirsi man mano che vengono utilizzate sempre più dimensioni per riflettere la rilevanza di un numero crescente di token nel vocabolario del modello.
Il modello sparso Granite Embedding 30 M offre prestazioni all'incirca equivalenti alla sua controparte densa da 30 milioni nei benchmark di recupero delle informazioni (BEIR), offrendo al contempo un leggero vantaggio rispetto a SPLADE-v3.
Tutti i modelli Granite 3.2 sono disponibili con la licenza di autorizzazione Apache 2.0 su Hugging Face. Alcuni modelli sono disponibili anche su IBM watsonx.ai e tramite partner di piattaforma tra cui (in ordine alfabetico) LM Studio, Ollama e Replicate. In futuro, questo articolo verrà aggiornato per riflettere la disponibilità della piattaforma ampliata per i modelli Granite 3.2.
Diverse guide e procedure per lavorare con i modelli Granite sono disponibili nei documenti Granite e nel Granite Snack Cookbook su GitHub. Gli sviluppatori possono anche iniziare con i modelli Granite nel Granite model playground o esplorando la nostra gamma di utili demo e tutorial, come:
1. "Large Language Models Are Zero-Shot Reasoners," arXiv, 24 maggio 2022
2. "DocPedia: unleashing the power of large multimodal model in the frequency domain for versatile document understanding," arXiv, arXiv, 20 novembre 2023
3. Alla data di pubblicazione di questo articolo
Addestra, convalida, adatta e implementa le funzionalità di AI generativa, foundation model e machine learning con IBM watsonx.ai, uno studio aziendale di nuova generazione per builder AI. Crea applicazioni AI in tempi ridotti e con una minima quantità di dati.
Metti l'AI al servizio della tua azienda grazie all'esperienza leader di settore e alla gamma di soluzioni di IBM nel campo dell'AI.
Reinventa i flussi di lavoro e le operazioni critiche aggiungendo l'AI per massimizzare le esperienze, il processo decisionale in tempo reale e il valore di business.