Come ottimizzare ChatGPT 3.5 Turbo

Come massimizzare l'efficienza di ChatGPT 3.5 Turbo

 

Nel caso non lo avessi già sentito, OpenAI ha recentemente annunciato la disponibilità del fine-tuning per GPT-3.5 Turbo. Inoltre, ci si aspetta che il fine-tuning per GPT-4.0 venga rilasciato più avanti in autunno. Per gli sviluppatori, questa è stata una notizia molto ben accolta. 

Ma perché esattamente questo annuncio è così importante? In breve, perché il fine-tuning di un modello GPT-3.5 Turbo offre diversi importanti vantaggi. Mentre esploreremo quali sono questi vantaggi più avanti in questo articolo, in sostanza, il fine-tuning consente agli sviluppatori di gestire i propri progetti in modo più efficace e di abbreviare le proprie indicazioni (a volte fino al 90%) incorporando le istruzioni direttamente nel modello stesso. 

Con una versione fine-tuned di GPT-3.5 Turbo, è possibile superare le capacità di base di Chat GPT-3.5 per determinati compiti. Esploriamo in modo approfondito come puoi fine-tunare i tuoi modelli GPT-3.5 Turbo. 

 

Preparazione dei dati per il fine-tuning

 

Il primo passo per il fine-tuning dei tuoi dati per GPT-3.5 Turbo è formattarli nella corretta struttura in formato JSONL. Ogni riga nel tuo file JSONL avrà una chiave messaggio con tre diversi tipi di messaggi:

  • Il messaggio di input (chiamato anche messaggio dell’utente)
  • Il contesto del messaggio (chiamato anche messaggio del sistema)
  • La risposta del modello (chiamata anche messaggio dell’assistente)

Ecco un esempio con tutti e tre questi tipi di messaggi:

{  "messages": [    { "role": "system", "content": "Sei uno sviluppatore JavaScript esperto nell'individuazione e correzione degli errori" },    { "role": "user", "content": "Trova i problemi nel seguente codice." },    { "role": "assistant", "content": "Il codice fornito ha diversi aspetti che potrebbero essere migliorati." }  ]}

 

Successivamente, dovrai salvare il tuo file oggetto JSON una volta che i dati sono stati preparati. 

 

Caricamento dei file per il fine-tuning

 

Una volta creato e salvato il tuo set di dati come sopra, è ora di caricare i file per poterli fine-tunare. 

Ecco un esempio di come puoi farlo tramite uno script Python fornito da OpenAI:

curl https://api.openai.com/v1/files \  -H "Authorization: Bearer $OPENAI_API_KEY" \  -F "purpose=fine-tune" \  -F "file=@path_to_your_file" 

 

Creazione di un’operazione di fine-tuning

 

È ora giunto il momento di eseguire finalmente il fine-tuning. Anche qui, OpenAI fornisce un esempio di come puoi farlo:

curl https://api.openai.com/v1/fine_tuning/jobs \-H "Content-Type: application/json" \-H "Authorization: Bearer $OPENAI_API_KEY" \-d '{  "training_file": "TRAINING_FILE_ID",  "model": "gpt-3.5-turbo-0613"}'

 

Come mostra l’esempio sopra, dovrai utilizzare una openai.file.create per inviare la richiesta di caricamento del file. Ricorda di salvare l’ID del file, poiché ne avrai bisogno per i passaggi futuri. 

 

Utilizzo del modello fine-tuned

 

È finalmente giunto il momento di distribuire e interagire con il modello fine-tuned. Puoi farlo nel playground di OpenAI. 

Nota l’esempio di OpenAI qui sotto:

curl https://api.openai.com/v1/chat/completions \-H "Content-Type: application/json" \-H "Authorization: Bearer $OPENAI_API_KEY" \-d '{  "model": "ft:gpt-3.5-turbo:org_id",  "messages": [    {      "role": "system",      "content": "Sei uno sviluppatore JavaScript esperto nel correggere errori"    },    {      "role": "user",      "content": "Ciao! Puoi rivedere questo codice che ho scritto?"    }  ]}'

 

Questa è anche un’ottima opportunità per confrontare il nuovo modello sintonizzato con il modello originale di GPT-3.5 Turbo. 

 

Vantaggi del sintonizzazione fine

 

La sintonizzazione fine delle tue richieste GPT-3.5 Turbo offre tre vantaggi principali per migliorare la qualità e le prestazioni del modello

 

Miglior manovrabilità

 

Questo significa che la sintonizzazione fine consente agli sviluppatori di assicurarsi che i loro modelli personalizzati seguano meglio specifiche istruzioni. Ad esempio, se desideri che il tuo modello venga completato in una lingua diversa (come l’italiano o lo spagnolo), la sintonizzazione fine dei modelli ti consente di farlo. 

Lo stesso vale se hai bisogno che il tuo modello renda le uscite più brevi o abbia una certa risposta. Parlando di uscite…

 

Formattazione delle uscite più affidabile

 

Grazie alla sintonizzazione fine, un modello può migliorare la sua capacità di formattare le risposte in modo coerente. Questo è molto importante per qualsiasi applicazione che richieda un formato specifico, come la programmazione. Gli sviluppatori possono sintonizzare fine i loro modelli in modo che le richieste degli utenti vengano convertite in frammenti JSON, che possono poi essere incorporati in moduli di dati più estesi in seguito. 

 

Tono personalizzato

 

Se un’azienda deve assicurarsi che l’output generato dai loro modelli di intelligenza artificiale sia completato con un tono specifico, la sintonizzazione fine è il modo più efficiente per garantirlo. Molte aziende devono assicurarsi che il loro contenuto e i materiali di marketing corrispondano alla voce del loro marchio o abbiano un certo tono per connettersi meglio con i clienti. 

Se un’azienda ha una voce di marca riconoscibile, può sintonizzare finemente i loro modelli GPT-3.5 Turbo quando prepara i dati per la sintonizzazione fine. In particolare, ciò verrà fatto nei tipi di messaggi “messaggio dell’utente” e “messaggio di sistema” come discusso in precedenza. Se fatto correttamente, ciò comporterà la creazione di tutti i messaggi tenendo conto della voce del marchio dell’azienda, riducendo significativamente il tempo necessario per modificare tutto, dalla copia dei social media ai white paper. 

 

Miglioramenti futuri

 

Come già accennato, si prevede che OpenAI rilascerà presto la possibilità di sintonizzare finemente GPT-4.0. Oltre a ciò, l’azienda prevede di rilasciare funzionalità future come offrire il supporto per le chiamate di funzione e la possibilità di sintonizzare finemente tramite l’interfaccia utente. Quest’ultima renderà la sintonizzazione fine più accessibile agli utenti principianti. 

Questi sviluppi con la sintonizzazione fine sono importanti non solo per gli sviluppatori, ma anche per le aziende. Ad esempio, molte delle start-up più promettenti nel settore tecnologico e dello sviluppo, come Sweep o SeekOut, dipendono dall’uso dell’intelligenza artificiale per completare i loro servizi. Aziende come queste troveranno un buon utilizzo nella capacità di sintonizzare finemente i loro modelli di dati GPT. 

 

Conclusioni

 

Grazie a questa nuova capacità di sintonizzare finemente GPT-3.5 Turbo, aziende e sviluppatori possono ora supervisionare in modo più efficace i loro modelli per garantire che si comportino in modo più congruente alle loro applicazioni. 

****[Nahla Davies](http://nahlawrites.com/)**** è una sviluppatrice di software e scrittrice tecnica. Prima di dedicarsi a tempo pieno alla scrittura tecnica, è stata in grado di ricoprire il ruolo di programmatrice principale presso un’organizzazione di branding esperienziale Inc. 5.000 i cui clienti includono Samsung, Time Warner, Netflix e Sony.