Cos'è InstructLab?

Copia URL

InstructLab semplifica il processo di personalizzazione dei modelli linguistici di grandi dimensioni (LLM) con dati privati. 

Gli LLM fungono da base per l'IA generativa (IA gen), come chatbot e assistenti di programmazione. Questi LLM possono essere proprietari (come i modelli GPT di OpenAI e Claude di Anthropic) o offrire vari gradi di accessibilità riguardo al preaddestramento dei dati e alle restrizioni nell'utilizzo (come i modelli Llama di Meta, Mistral di Mistral AI e Granite di IBM).

Spesso gli utenti dell'IA devono adeguare un LLM preaddestrato a una particolare finalità aziendale, tenendo conto dei limiti alle modalità di modifica di un LLM:

  • Per comprendere un'area specifica di conoscenze o competenze in genere il fine tuning di un LLM implica un addestramento costoso e che richiede notevoli risorse.
  • Non è possibile integrare nuovamente i miglioramenti nel modello linguistico di grandi dimensioni, per cui i modelli non possono continuare a essere perfezionati grazie ai contributi degli utenti.
  • Generalmente, i perfezionamenti degli LLM richiedevano grandi quantità di dati generati dall'uomo, difficili da ottenere in termini di tempo e di costi.

InstructLab segue un approccio che supera queste limitazioni. Può migliorare un LLM usando molti meno dati generati dall'uomo e molte meno risorse di elaborazione di quelle generalmente utilizzate per riaddestrare un modello,

InstructLab è basato sull'attività di IBM Research condotta sull'allineamento su larga scala dei chatbot, abbreviato LAB, da cui prende il nome. Il metodo LAB è descritto in una ricerca del 2024 svolta da membri dell'MIT-IBM Watson AI Lab e dell'IBM Research.

Non basandosi su un modello specifico, InstructLab offre la possibilità di integrare le competenze esistenti con nuove conoscenze di livello avanzato a supporto di un LLM di propria scelta. Questo impianto di competenze e conoscenze viene costantemente perfezionato grazie ai contributi e può essere applicato per supportare build regolari di un LLM migliorato. 

Il progetto InstructLab è incentrato principalmente sull'iterazione rapida e punta a riaddestrare i modelli con regolarità. Le organizzazioni possono anche utilizzare gli strumenti di allineamento dei modelli di InstructLab per addestrare i propri LLM privati con competenze e conoscenze di loro proprietà.

Come applicare l'IA in azienda

Il metodo LAB è strutturato su tre fasi principali:

  • Selezione dei dati basata su tassonomia. La tassonomia è una serie di dati di addestramento variegati selezionati manualmente come esempi di nuove conoscenze e competenze per il modello.
  • Generazione di dati artificiali su larga scala. Il modello viene poi utilizzato per generare nuovi esempi basati sui dati di addestramento dei seed. Considerato che la qualità dei dati artificiali può variare, il metodo LAB aggiunge un passaggio automatizzato per perfezionare gli esempi di risposta, assicurandosi che siano fondati e sicuri.
  • Ottimizzazione dell'allineamento iterativa e su larga scala. Infine, il modello viene riaddestrato sulla base della serie di dati artificiali. Il metodo LAB include due fasi di ottimizzazione: quella delle conoscenze e quella delle competenze.

Il set di dati cresce grazie al contributo di competenze e conoscenze, e ogni aggiunta migliora la qualità del modello da ottimizzare. 

Risorse da Red Hat

Confrontiamo InstructLab con le altre modalità di personalizzazione di un LLM per soddisfare gli scenari di utilizzo specifici del tuo dominio.

Preaddestramento

Il preaddestramento rappresenta il livello più profondo di personalizzazione dei modelli e consente alle organizzazioni di scegliere quali dati di addestramento determinano la comprensione di base dei modelli. 

Durante il preaddestramento, un LLM viene addestrato per prevedere il token successivo utilizzando bilioni di token di dati non etichettati. Questo processo può essere molto costoso, e talvolta richiede migliaia di GPU e mesi di lavoro. Solo le organizzazioni che dispongono di molte risorse possono preaddestrare un LLM altamente competente.

Ottimizzazione dell'allineamento

Dopo il preaddestramento, gli LLM vengono sottoposti all'ottimizzazione dell'allineamento, per rendere le risposte del modello più accurate e utili possibile. Generalmente, il primo passaggio di questo processo è l'ottimizzazione delle istruzioni, che addestra un modello direttamente su attività di interesse specifiche. 

Si passa poi all'ottimizzazione delle preferenze, che può includere l'apprendimento per rinforzo da feedback umano (RLHF). In questa fase, il modello viene testato manualmente e se ne valuta l'output, segnalando se le risposte sono preferite oppure no. Un processo RLHF può includere diverse fasi di feedback e perfezionamento per ottimizzare un modello.

Secondo i ricercatori la quantità di feedback ricevuta in questa fase può essere sensibilmente inferiore rispetto all'insieme iniziale di dati di addestramento (decine di migliaia di annotazioni umane rispetto ai bilioni di token di dati necessari per il preaddestramento), ma può comunque sbloccare funzionalità latenti del modello.

InstructLab

Come concetto di base, il metodo LAB prevede che dovrebbe essere possibile ottenere i vantaggi dell'allineamento del modello anche da un insieme più ridotto di dati generati dall'uomo. Un modello di IA può avvalersi di un numero limitato di esempi umani per generare una notevole quantità di dati artificiali, perfezionare l'elenco per una migliore qualità e infine utilizzare l'insieme di dati artificiali di alta qualità per un'ulteriore ottimizzazione e addestramento. Al contrario dell'ottimizzazione delle istruzioni, che generalmente ha bisogno di migliaia di esempi di feedback umano, LAB può rendere un modello notevolmente migliore utilizzando relativamente pochi esempi forniti dall'uomo.

Cosa contraddistingue InstructLab dalla retrieval augmented generation (RAG)?

In breve, InstructLab e la retrieval augmented generation (RAG) risolvono problemi diversi.

RAG è un metodo conveniente per integrare un LLM con conoscenze specifiche che non facevano parte del suo preaddestramento. Utilizzando RAG, un chatbot può rispondere con precisione alle domande relative a un campo o settore specifico senza riaddestrare il modello. 

Con RAG, i documenti delle conoscenze sono archiviati in un database vettoriale, poi recuperati in blocchi e inviati al modello come parte delle query dell'utente. Questo è utile per chiunque voglia aggiungere dati proprietari a un LLM senza rinunciare al controllo delle informazioni o per chi ha bisogno di un LLM per accedere a informazioni tempestive. 

Il metodo InstructLab, al contrario, attinge a contributi degli utenti finali per supportare build periodiche di una versione migliorata di un LLM. InstructLab contribuisce a espandere le conoscenze e a sfruttare nuove competenze di un LLM.

È possibile "potenziare" un processo RAG utilizzando la tecnica RAG su un modello ottimizzato da InstructLab.

Scopri di più sulla tecnologia RAG

Red Hat AI InstructLab su IBM Cloud consente di contribuire a un LLM senza la necessità di possedere e gestire un'infrastruttura hardware.

Di per sé, Red Hat InstructLab è un progetto open source che semplifica lo sviluppo degli LLM, offrendo un approccio conveniente per allineare i modelli utilizzando meno dati e risorse.

IBM Cloud è una piattaforma di cloud aziendale progettata anche per i settori più regolamentati, che offre un cloud altamente resiliente, efficiente, sicuro e conforme.

Red Hat AI InstructLab unito a IBM Cloud offre una soluzione scalabile e conveniente per semplificare, adattare e garantire l'allineamento dei LLM agli scenari di utilizzo specifici della tua organizzazione.

Scopri di più su Red Hat InstructLab su IBM Cloud

Risorsa

Definizione della strategia aziendale per l'IA: una guida introduttiva

Leggi questa guida introduttiva per scoprire come Red Hat OpenShift AI e Red Hat Enterprise Linux AI possono accelerare il percorso di adozione dell'IA.

Tutte le versioni di prova dei prodotti Red Hat

Grazie alle versioni di prova gratuite dei prodotti Red Hat potrai acquisire esperienza pratica, prepararti per le certificazioni o capire se il prodotto che hai scelto è giusto per le esigenze della tua organizzazione.

Continua a leggere

Automazione open source: differenze tra Ansible e Chef

Ansible e Chef sono strumenti open source per l'automazione dell'IT sviluppati dalla community. Questo articolo illustra in maniera approfondita le analogie e le differenze fra Ansible e Chef.

I vantaggi di Ansible, Terraform, Puppet, Chef e Salt

Scopri cos'hanno in comune e quali sono le differenze tra Ansible, Terraform, Puppet, Chef e Salt.

Cos'è Podman Desktop?

Podman Desktop è uno strumento open source gratuito pensato per semplificare l'utilizzo dei container in ambienti di sviluppo locali.

Open source: risorse consigliate

Articoli correlati