L’Avanzamento dei Modelli Linguistici di OpenAI
Di solito, quando un’azienda di software rilascia una nuova versione principale a maggio, non cerca di affiancarla con un’altra versione principale quattro mesi dopo. Ma il ritmo dell’innovazione nel campo dell’IA generativa è tutt’altro che normale.
Sebbene OpenAI abbia lanciato il suo nuovo modello GPT-4o a metà maggio, l’azienda non si è fermata. Già a novembre scorso, Reuters ha diffuso una voce secondo cui OpenAI stava lavorando a un modello linguistico di nuova generazione, allora conosciuto con il nome di Q*. Questa voce è stata confermata a maggio, indicando che Q* era in fase di sviluppo con il nome in codice Strawberry.
Si scopre che Strawberry è in realtà un modello chiamato o1-preview, ora disponibile come opzione per gli abbonati a ChatGPT Plus. Puoi selezionare il modello dal menu a tendina:
Screenshot di David Gewirtz/ZDNET
Scomporre domande e problemi in fasi
Come potete immaginare, se un nuovo modello di ChatGPT è disponibile, lo metterò alla prova. Ed è proprio quello che sto facendo qui.
Il nuovo modello Strawberry si concentra sul ragionamento, scomponendo le domande e i problemi in fasi. OpenAI presenta questa metodologia attraverso un riepilogo del ragionamento, che può essere mostrato prima di ogni risposta.
Quando viene posta una domanda a o1-preview, il modello elabora il ragionamento e poi mostra il tempo impiegato per arrivare a una soluzione. Se apri la lista a tendina, vedrai un riepilogo del ragionamento. Ecco un esempio tratto da uno dei miei test di programmazione:
Screenshot di David Gewirtz/ZDNET
Il modello o1-preview fornisce numerose spiegazioni sul codice
È positivo che l’IA abbia saputo abbastanza da includere la gestione degli errori. Trovo interessante che o1-preview classifichi questa fase nella categoria “Conformità normativa”.
Ho anche scoperto che il modello o1-preview fornisce spiegazioni molto dettagliate sul codice. Durante il mio primo test, che consisteva nella creazione di un plugin per WordPress, il modello ha fornito spiegazioni sull’header, sulla struttura delle classi, sul menu di amministrazione, sulla pagina di amministrazione, sulla logica, sulle misure di sicurezza, sulla compatibilità, sulle istruzioni per l’installazione, sull’uso e persino sui dati di test. Molte più informazioni rispetto ai modelli precedenti.
Ma, in realtà, la prova del nove è nei fatti. Mettiamo questo nuovo modello alla prova con i nostri test standard e vediamo se funziona bene.
Scrivere un plugin WordPress
Questo semplice test di codifica richiede una conoscenza del linguaggio di programmazione PHP e del framework WordPress. La sfida chiede all’IA di scrivere sia un codice per l’interfaccia che una logica funzionale, con la particolarità che, invece di eliminare le voci duplicate, deve separarle, in modo che non siano adiacenti.
Il modello o1-preview ha eccelso. Ha inizialmente presentato l’interfaccia utente sotto forma di un semplice campo di input:
Screenshot di David Gewirtz/ZDNET
Una volta inseriti i dati e cliccato su “Randomize Lines”, l’IA ha generato un campo di output con i dati correttamente randomizzati. Si può notare che Abigail Williams è duplicata e, come richiesto dalle istruzioni del test, le due occorrenze non sono elencate una accanto all’altra:
Screenshot di David Gewirtz/ZDNET
Nei miei test di altri LLM, solo quattro dei dieci modelli hanno superato questo test. Il modello o1-preview ha superato perfettamente questa prova.
2. Riscrittura di una funzione di stringa
Il nostro secondo test corregge una regex (espressione regolare) per stringhe che conteneva un bug segnalato da un utente. Il codice originale era progettato per verificare se un numero inserito fosse valido per dollari e centesimi. Sfortunatamente, il codice accettava solo numeri interi (quindi 5 era valido, ma non 5,25).
Il modello o1-preview ha riscritto il codice con successo. Il modello si è unito a quattro dei miei precedenti test LLM nel gruppo dei vincitori.
3. Scoperta di un bug fastidioso
Questo test è stato creato da un bug reale che ho avuto difficoltà a risolvere. L’identificazione della causa principale richiedeva una conoscenza del linguaggio di programmazione (in questo caso, PHP) e delle sfumature dell’API di WordPress.
I messaggi di errore forniti non erano tecnicamente corretti. I messaggi di errore facevano riferimento all’inizio e alla fine della sequenza di chiamate che stavo eseguendo, ma il bug era legato alla parte centrale del codice.
Non ero l’unico a sforzarmi per risolvere il problema. Tre degli altri LLM che ho testato non sono riusciti a identificare la causa principale del problema e hanno consigliato la soluzione più ovvia (ma errata) di modificare l’inizio e la fine della sequenza di chiamate.
Il modello o1-preview ha fornito la soluzione corretta. Nella sua spiegazione, il modello ha anche indicato la documentazione dell’API di WordPress per le funzioni che avevo utilizzato in modo errato. Questo ha fornito una risorsa aggiuntiva per imparare il motivo della sua raccomandazione. Molto utile.
4. Scrivere uno script
Questa sfida richiede che l’IA integri conoscenze in tre sfere di programmazione distinte:
- Il linguaggio AppleScript
- Il DOM di Chrome (la struttura interna di una pagina web)
- Keyboard Maestro (uno strumento di programmazione specializzato)
Per risolvere questa questione, è necessario comprendere queste tre tecnologie e il modo in cui devono lavorare insieme.
Ancora una volta, o1-preview ha superato il test, unendosi a soli tre degli altri dieci LLM che hanno risolto questo problema.
Un chatbot molto loquace
La nuova approccio al ragionamento di o1-preview non diminuisce quindi la capacità di ChatGPT di superare i nostri test di programmazione. Il risultato del mio primo test sul plugin di WordPress, in particolare, sembra funzionare come un software più sofisticato rispetto alle versioni precedenti.
È positivo che ChatGPT fornisca fasi di ragionamento all’inizio del suo lavoro e dati esplicativi alla fine. Tuttavia, le spiegazioni possono essere lunghe. Ho chiesto a o1-preview di scrivere “Hello world” in C#, la linea di test canonica nella programmazione. Ecco come ha risposto GPT-4o:
Screenshot di David Gewirtz/ZDNET
Ecco come o1-preview ha risposto allo stesso test:
Screenshot di David Gewirtz/ZDNET
È un bel po’. Puoi anche aprire il menu a tendina del ragionamento per ottenere ulteriori informazioni:
Screenshot di David Gewirtz/ZDNET
Tutte queste informazioni sono eccellenti. Ma è un bel po’ di testo da filtrare. Preferisco una spiegazione concisa, con opzioni per ulteriori informazioni in menu a tendina.
Tuttavia, il modello o1-preview di ChatGPT ha dato risultati eccellenti. Non vedo l’ora di vedere come funzionerà quando sarà integrato in modo più completo con le funzionalità di GPT-4o, come l’analisi dei file e l’accesso al Web.
Hai provato a programmare con o1-preview? Quali sono state le tue esperienze? Facci sapere nei commenti qui sotto.
Fonte: “ZDNet.com”
[…] padre di ChatGPT ha trovato i fondi necessari per continuare le sue ricerche nell’intelligenza artificiale. […]