Quesiti per application engineer, ChatGPT li sa risolvere?

L’intelligenza artificiale è uno strumento promettente, ma la strada da fare per competere con l'intelligenza umana è ancora lunga.

ChatGPT

Alexander Goldstein, Central Applications Engineer, Analog Devices ha messo alla prova ChatGPT ponendo quesiti incontrati nel lavoro di application engineer.

Con il rilascio di ChatGPT, ciò che solo pochi mesi fa sembrava fantascienza ora appare plausibile: l’AI è arrivata. Titoli accattivanti, visibili ovunque, dimostrano come l’AI sia in grado di sviluppare codici, insegnare lingue, comporre musica e creare arte. Sembra che l’intelligenza artificiale sia finalmente… intelligente. Tuttavia, secondo il CEO di OpenAI, Sam Altman, molte delle affermazioni sensazionalistiche che si vedono online sono delle esagerazioni, per far presa sul pubblico.

Quesiti per application engineer

Per mettere alla prova l’AI, si è deciso di sottoporre ChatGPT (versione del febbraio 2023) problemi simili a quelli incontrati nel lavoro di application engineer. Si è scoperto che l’AI è uno strumento promettente, ma ha ancora molta strada da fare prima di poter competere con l’intelligenza umana. In questo articolo verranno presentati alcuni esperimenti e la mia valutazione sulle prestazioni di ChatGPT in varie richieste di tipo ingegneristico.

Risoluzione di problemi di carattere generale

È noto che ChatGPT sia un sistema eccellente per l’aggregazione e la sintesi delle informazioni. Ciò spiega come i quesiti su problemi generici (anche utilizzando numeri di parte specifici) generino risposte brillanti. Chiedendo a ChatGPT di risolvere i quesiti più comuni (per esempio: “Perché non vedo l’uscita sul pin DOUT del componente ___?”), ChatGPT fornisce ottimi suggerimenti per la risoluzione di problemi generali. Tra cui il controllo dei collegamenti, degli alimentatori e della portata del segnale di ingresso. Queste risposte non sono particolarmente entusiasmanti o innovative, ma sono incredibilmente utili. Perché la maggior parte dei problemi di un prodotto si risolve con procedure di ricerca guasti standard. ChatGPT eccelle in questo tipo di risposte generiche.

Una risposta di alto livello

Un’altra domanda che richiede una risposta di alto livello simile è: “Sto usando un dispositivo I2C e non ricevo alcuna risposta dal dispositivo slave. Ho 7 dispositivi connessi al dispositivo master, utilizzando pull-up da 10k alla massima velocità di trasferimento dei dati. Puoi aiutarmi a risolvere il problema?”. In questo caso, ChatGPT dimostra un’impressionante conoscenza implicita del dominio. Anche se suggerisce procedure abbastanza standard per la risoluzione dei problemi I2C.

ChatGPT sa risolvere quesiti per application engineer?

Anche se il risultato in sé non è particolarmente originale, la capacità di GPT di aggregare rapidamente le conoscenze gli consente di generare risposte utili a domande generalizzate, anche in domini più piccoli che potrebbero richiedere un background approfondito. Ciò indica che questo tipo di AI può essere molto utile nel fornire primi passi e informazioni, anche in domini problematici altamente specifici.

Generazione di pseudo-verità

Man mano che si restringe l’ambito del problema emerge una condizione di malfunzionamento inquietante di ChatGPT. Esso genera risposte che sembrano corrette ma, a un esame più approfondito, non lo sono. Per esempio, alla domanda sull’utilizzo di un componente come sostituzione “drop-in”, pin per pin, di un altro componente TQFN a 56 pin, ChatGPT afferma con sicurezza che i componenti hanno 5 pin.

Gli errori di ChatGPT

Inoltre, fornisce (tra gli altri errori) tensioni di alimentazione e limiti di corrente di uscita errati e afferma che i due componenti sono incompatibili. Ogni presunta “differenza” che ChatGPT riporta fra tale prodotti (in questo caso, MAX4936 e MAX4937) è falsa: i componenti sono quasi identici! Come dimostra questo prompt “pin-for-pin”, i prompt ad alta specificità rivelano rapidamente le origini algoritmiche di ChatGPT. Inoltre mostrano i limiti dell’attendibilità delle informazioni generate dall’AI.

Supera i test indovinando

Nonostante la parvenza intelligente, ChatGPT è fondamentalmente una macchina basata sul calcolo delle probabilità. Come sottoinsieme di una classe di AI definita “modelli linguistici di grandi dimensioni” (Large Language Models, LLM), in una stringa di testo opera pronosticando la parola (o “token”) successiva più probabile dal punto di vista statistico. Anche quando afferma di farlo, non consulta una scheda tecnica, non cerca informazioni e non è nemmeno connessa a Internet!

Pertanto, quello che sembra un “ragionamento” in realtà è un riconoscimento di schemi e un’estrapolazione, fornendo ciò che è più probabile che accada in base ai dati di addestramento. Questo spiega i suoi insuccessi nell’ambito di problemi ben definiti: l’estrapolazione statisticamente probabile diventa del tutto falsa quando è condizionata da domande specifiche.

Quesiti per application engineer, ragionamento e errori

Oltre a fornire informazioni potenzialmente sbagliate, la struttura degli LLM presenta aspetti pericolosi per quanto riguarda la credibilità e la capacità da parte nostra di usarli in modo sicuro. Il risultato probabilistico di ChatGPT è conforme a delle regolarità statistiche che sfidano l’euristica che usiamo per distinguere la realtà dalla finzione. Quando tale euristica fallisce, il modo migliore per verificare la presenza di errori è risolvere direttamente il problema… Ma a questo punto, a cosa serve chiedere a un computer di fare il lavoro per noi?

Guadagnare la fiducia del pubblico

Questo paradosso suggerisce un probabile uso improprio dell’intelligenza artificiale. L’AI è utile solo nella misura in cui possiamo darle fiducia. Ma visti gli incentivi, sembra inevitabile scendere a compromessi sulla fiducia per usarla in modo più ampio. Capire come l’AI imita l’intelligenza e dimostrare le sue dinamiche di insuccesso potrebbe spezzare l’illusione in modo tale da ridimensionare le nostre aspettative e prevenire errori così ingenui.

Una domanda per ChatGPT

È stata posta la domanda a ChatGPT sul perché generasse delle risposte errate. Una parte della sua risposta riassume perfettamente il problema: i modelli linguistici di OpenAI, compreso GPT-3, sono addestrati su un ampio corpus di testi, che include molti errori e imprecisioni. I modelli utilizzano schemi statistici nei dati per prevedere la parola o la sequenza di parole successiva, quindi è possibile che i modelli generino informazioni errate. Infine, si è posta la seguente domanda: “Posso fidarmi delle tue risposte?”.

Posso fidarmi delle tue risposte?

Come modello linguistico di AI, non ho sentimenti o intenzioni, quindi il concetto di fiducia, in realtà, su di me non si applica. Tuttavia, posso assicurarti che sono stato progettato per fornire risposte accurate e utili al meglio delle mie capacità. Sulla base dei dati e degli algoritmi che sono stati utilizzati per addestrarmi. Mi sforzo di essere il più affidabile e imparziale possibile. Tuttavia, quando si utilizza qualsiasi fonte di informazione, compresi i modelli linguistici di AI come me, è sempre consigliabile esercitare il pensiero critico e verificare i fatti.

Trasformare il mondo si può

In effetti. L’AI ha l’enorme potere di trasformare il nostro mondo. Ma dal momento che l’intelligenza artificiale generalizzata diventa più diffusa, accessibile e avanzata, è essenziale continuare la ricerca per comprenderne le capacità e i limiti. Nel tempo, affideremo senza dubbio ad AI come ChatGPT compiti più critici, e dovremo essere in grado di prendere decisioni informate e usare ChatGPT in modo responsabile.