Scopri di più sui diversi metodi di ottimizzazione e su come funzionano.
I modelli possono essere regolati nei modi seguenti:
Fine tuning: Utilizzando le conoscenze pregresse del modello di base come punto di partenza, la messa a punto fine personalizza il modello regolandolo con un set di dati più piccolo e specifico per l'attività. Questo processo modifica i pesi dei parametri di un modello i cui pesi sono stati impostati attraverso un addestramento precedente per ottimizzare il modello per un compito.
Nota: Attualmente non è possibile sintonizzare con precisione i modelli di fondazione in watsonx.ai, ma è possibile sintonizzarli in modo immediato.Ottimizzazione prompt: regola il contenuto del prompt passato al modello per guidare il modello a generare l'output che corrisponde a un modello specificato. Il foundation model sottostante e i pesi dei suoi parametri non vengono modificati. Viene modificato solo l'input della richiesta.
Sebbene il risultato della sintonizzazione immediata sia un nuovo asset del modello sintonizzato, il modello sintonizzato aggiunge semplicemente un livello di funzione che viene eseguito prima che l'input venga elaborato dal foundation model sottostante. Quando si mette a punto un modello, il foundation model sottostante non viene modificato, il che significa che può essere utilizzato per rispondere a diverse esigenze aziendali senza essere riqualificato ogni volta. Di conseguenza, si riducono le esigenze di calcolo e i costi di inferenza.
Per iniziare, vedere Messa a punto di un foundation model.
Funzionamento dell'ottimizzazione dei prompt
I modelli Foundation sono sensibili all'input che fornisci loro. L'input, o il modo in cui richiedi il modello, può introdurre il contesto che il modello utilizzerà per personalizzarne l'output generato. Il prompt engineering per trovare il prompt right spesso funziona correttamente. Tuttavia, può essere dispendioso in termini di tempo, soggetto a errori e la sua efficacia può essere limitata dalla lunghezza della finestra di contesto consentita dal modello sottostante.
L'ottimizzazione di un modello in Tuning Studio applica il machine learning all'attività di progettazione di prompt. Invece di aggiungere parole all'input stesso, l'ottimizzazione prompt è un metodo per trovare una sequenza di valori che, quando aggiunti come prefisso al testo di input, migliorino la possibilità del modello di generare l'output desiderato. Questa sequenza di valori è denominata vettore prompt.
Normalmente, le parole nel prompt vengono vettorizzate dal modello. La vettorizzazione è il processo di conversione del testo in token e quindi in numeri definiti dal tokenizer del modello per identificare i token. Infine, gli ID token vengono codificati, il che significa che vengono convertiti in una rappresentazione vettoriale, che è il formato di input previsto dal livello di integrazione del modello. L'ottimizzazione del prompt ignora il processo di vettorizzazione del testo del modello e crea direttamente un vettore di prompt. Questo vettore di prompt modificabile è concatenato al testo di input vettoriale e i due vengono passati come un unico input al livello di incorporazione del modello. I valori di questo vettore di prompt creato influenzano i pesi di incorporazione delle parole impostati dal modello e influenzano le parole che il modello sceglie di aggiungere all'output.
Per trovare i valori migliori per il vettore di prompt, eseguire un esperimento di ottimizzazione. Si dimostra il tipo di output che si desidera per un input corrispondente fornendo al modello coppie di esempio di input e output nei dati di addestramento. Ad ogni esecuzione di addestramento dell'esperimento, l'output generato viene confrontato con l'output dei dati di addestramento. Sulla base di ciò che apprende dalle differenze tra i due, l'esperimento regola i valori nel vettore di prompt. Dopo che molti eseguono i dati di addestramento, il modello trova il vettore di prompt che funziona meglio.
Puoi scegliere di avviare il processo di addestramento fornendo il testo vettorizzato dall'esperimento. Oppure è possibile consentire all'esperimento di utilizzare valori casuali nel vettore di prompt. In entrambi i casi, a meno che i valori iniziali non siano esattamente corretti, verranno modificati ripetutamente come parte del processo di formazione. Fornire il proprio testo di inizializzazione può aiutare l'esperimento a raggiungere un buon risultato più rapidamente.
Il risultato dell'esperimento è una versione ottimizzata del modello sottostante. Si inoltra l'input al modello ottimizzato per l'inferenza e il modello genera l'output che segue il modello ottimizzato per.
Per ulteriori informazioni sul processo di prompt-tuning utilizzato in Tuning Studio, vedere Flusso di lavoro del prompt-tuning.
Ulteriori informazioni
- Post sul blog diIBM Research: Cos'è il prompt-tuning?
- Documento di ricerca: Il potere della scala per la regolazione efficiente dei parametri dei prompt
- Parametri di ottimizzazione
Argomento principale Tuning Studio