Indica un intervallo di date:
  • Dal Al
politica

Abbiamo testato Claude Opus 4.5 per pesare il consenso di Luca Zaia in Veneto

Anthropic ha rilasciato la versione Opus 4.5 del suo modello di intelligenza artficiale Claude. E lo ha definito, senza falsa modestia, come «il miglior modello al mondo per il coding». Senza la pretesa di poter effettivamente assegnare questa patente, InfoData ha deciso di testare il modello per raccontare un aspetto delle recenti elezioni regionali in Veneto: il peso politico del presidente uscente Luca Zaia, candidatosi non senza polemiche come capolista in tutte le province. L’idea quella di estrarre i dati relativi ai voti ottenuti, sezione per sezione, dalla Lega e le preferenze andate a Zaia. Ed è esattamente questa la richiesta rivolta al modello, con un unico suggerimento: «può essere utile che ti condivida il codice html della pagina?». Un modo, questo, per aggirare un eventuale blocco all’accesso di un sito, imparata dopo diversi tentativi di estrarre dati scrivendo codice con l’AI. InfoData, infatti, aveva già utilizzato in passato Claude per estrarre dati relativi alle elezioni regionali, non sempre riuscendo nell’esperimento.

In quelle occasioni era stato scritto un codice Python che costruiva l’url delle pagine con i risultati di ciascun comune al voto, le apriva ed estraeva le percentuali ottenute dai candidati di centrodestra e centrosinistra. In questo caso, con l’obiettivo di testare il nuovo modello, la richiesta è stata come detto molto più specifica. E la soluzione tecnica adottata dalla macchina differente. Una volta caricato l’html, la macchina ha risposto spiegando che il codice «che mi hai fornito conferma che Eligendo (la piattaforma del Viminale per la pubblicazione dei dati elettorali, ndr) è una Single Page Application (SPA) basata su Vue.js/Quasar – il contenuto è caricato dinamicamente via JavaScript, quindi l’html statico non contiene i dati. La buona notizia è che questo significa che ci sono sicuramente delle Api Json sottostanti. Proviamo a esplorare la struttura delle Api del Ministero dell’Interno». In soldoni, ci sono delle Application Programming Interface, appunto le Api, ovvero un protocollo che consente ad un computer di interrogare direttamente Eligendo per estrarre i dati. Non è finita: «ho trovato un repository GitHub che documenta proprio le Api non documentate di Eligendo», ha aggiunto Opus 4.5. Ovvero delle Api non inserite nella documentazione ufficiale del sito in questione.

Claude Opus 4.5 ha spiegato a chi scrive come cercare gli endpoint, ovvero il punto di accesso alle Api, attraverso il browser (nel caso specifico, Safari, ma si può usare quello che si preferisce, ndr), per estrarre dei file con estensione .har, una sorta di file archivio all’interno del quale il modello ha trovato le informazioni necessarie per impostare lo script. Ovvero il codice Python che chi scrive ha fatto girare sulla propria macchina per estrarre i dati elettorali veneti. Da sottolineare che, prima di lanciare l’intero percorso di estrazione, Claude ha suggerito di effettuare un test su un’unica sezione per verificare che la logica del procedimento funzionasse. Tutto perfetto? Quasi, nel senso che arrivato al comune di Chioggia, il codice ha incontrato un errore, che non gli ha consentito di estrarre gli altri comuni della provincia di Venezia. Varcato il confine con quella di Verona, però, ha ripreso a funzionare.

Secondo il modello di Anthropic, al quale è bastato incollare il messaggio di errore apparso sul terminale utilizzato per far girare lo script, si è trattato di «un errore di rete temporaneo: il DNS (il sistema che traduce gli i nomi di dominio, come www.ilsole24ore.com, in indirizzi IP numerici, ndr) non ha risolto l’hostname per qualche secondo (può succedere con connessioni instabili o sovraccarico)». Per risolvere il problema, ha aggiornato lo script inserendo:«retry automatici per errori di rete, salvataggio progressivo del CSV (così non perdi dati) e possibilità di riprendere da dove si è interrotto». Rilanciato con questa correzione, lo script ha estratto i dati come richiesti. E questo ha concluso, positivamente, la prima parte del test: un approccio innovativo rispetto a quello utilizzato in passato, molto più veloce e soprattutto sviluppato in poco più di un’ora di lavoro.

Il passaggio successivo è stato quello di realizzare una mappa con i dati estratti. Il risultato è visibile in apertura di questo pezzo. Prima di arrivarci, però, il primo passo è stato quello di suggerire a Claude Opus 4.5 delle possibili visualizzazioni dei dati scaricati. Oltre a quello che chi scrive aveva in mente, la macchina ha suggerito, tra gli altri, un grafico a dispersione, per confrontare i voti della Lega e quelli di Zaia, o uno a barre doppie che visualizzasse il medesimo rapporto. Caduta la scelta sulla mappa, è stato necessario indicare i colori, i caratteri da utilizzare, il titolo e il sottotiolo, oltre a chiedere di inserire un filtro su base provinciale. È sorto però un problema: «ho un vincolo tecnico: non riesco a scaricare i file geografici Istat dall’ambiente di sviluppo per via delle restrizioni di rete», ha spiegato la macchina. Ma è stato sufficiente fornirglieli perché riuscisse a generare una mappa, che ha quindi subito alcune modifiche: una per centrarla nella visualizzazione, l’altra per fare in modo che la provincia selezionata venisse ingrandita, l’ultima per inserire il testo nei pop up che si aprono quando si clicca sul territorio di un comune. Il modello, ma questo aspetto non è inedito, ha anche spiegato come caricare il codice html della mappa su GitHub Pages per poi embeddarlo, ovvero inserirlo, su InfoData: unica pecca, non ha fornito da subito tutti i file necessari per farlo ed è stato necessario chiederglielo espressamente. Al di là di questo, è stata sufficiente un’ora di lavoro per costruire la mappa: molto di più di quanto non si impieghi con un tool di data visualization, ma si tratta di un primo passo. Certo è che Opus 4.5 sembra avere delle potenzialità molto importanti, a cominciare da quelle legate all’estrazione dei dati. Che sia o meno il migliore del mondo, il giudizio è lasciato a chi legge.

L’intera conversazione che ha portato alla generazione dello script per estrarre i dati è disponibile a questo link. Quella per costruire la mappa si trova invece a questo link. I dati estratti ed il codice generato sono disponibili su GitHub.

Per approfondire.

Ai Survival Kit quinta edizione: tutto quello che c’è da sapere sull’intelligenza artificiale

Cosa è FOIAbot? Un chatbot per la trasparenza della Pa

I chatbot non hanno superato la prova di matematica alla maturità ma non è una brutta notizia