Test di classificazione modello GPAI
Si scorre con la rotella o trascinando il disegno; si ingrandisce con i pulsanti, con Ctrl e la rotella o con i tasti + e −. Il disegno in SVG · il modello in JSON, che si apre trascinandolo nell'editor dei diagrammi di flusso di PortLAB.
Come si legge
- Rombo: una domanda, con la sua frase interrogativa accorciata; il testo intero è nella scheda Strumento. In grassetto, sopra, il passo.
- Riquadro arrotondato: una risposta possibile; la freccia porta alla domanda che viene dopo o all'esito.
- Terminale: un esito, con il suo titolo, nel colore del suo tono: verde favorevole, verde acqua aperto, blu informativo, ambra da approfondire, rosso critico, grigio neutro.
- In corsivo, sotto una risposta: quello che scrive nello stato. «chiave ← valore» assegna, «chiave + valore» aggiunge a un elenco.
Che cosa fa chi usa la pagina
Nella scheda Strumento le domande arrivano una alla volta, raggruppate in sezioni. Chi lo usa sceglie una risposta e lo strumento passa alla domanda che quella risposta indica, oppure all'esito. Con Indietro torna alla domanda precedente, con Ricomincia riparte. A differenza delle pillole, una risposta non sceglie soltanto la strada: può anche registrare un'informazione, che più avanti servirà a decidere la strada o a comporre l'esito.
Qui le domande sono 16 e gli esiti 7; un cammino completo chiede da 1 a 13 risposte.
Il grafo in numeri
| Domande | 16 |
|---|---|
| Risposte | 35 |
| Esiti | 7 |
| Nodi raggiunti da più di una domanda | 8 |
| Forma | grafo orientato aciclico con radice |
| Cammini possibili | 241 |
| Risposte lungo un cammino | 1–13 |
Che oggetto matematico è
Dal punto di vista matematico il percorso è un grafo orientato. I nodi sono le domande e gli esiti, gli archi le risposte: ogni risposta va da una domanda alla domanda o all'esito che viene dopo. Il grafo ha una radice, la prima domanda, da cui si raggiunge ogni nodo, e gli esiti sono le foglie, i nodi da cui non esce niente. È aciclico: nessuna risposta riporta a una domanda già fatta. Un percorso fatto sulla pagina è un cammino dalla radice a una foglia. Nel disegno le risposte sono riquadri, per farne leggere il testo; per il grafo sono archi.
Anche questo strumento è un grafo orientato aciclico con radice
(8 nodi si raggiungono da più di una
domanda), ma il grafo da solo non basta a dire dove si arriva. Le risposte scrivono in uno
stato, un piccolo insieme di variabili
(gpai, prov, sysrisk, contested), e
gli esiti lo leggono. Il percorso è quindi un cammino nel grafo
accompagnato da uno stato che si aggiorna a ogni arco, come in un automa con una memoria finita:
l'esito dipende dall'intero cammino, non solo dal nodo d'arrivo.
Qui 8 nodi si raggiungono da più di una domanda. I tre esiti di classificazione
(GPAI con rischio sistemico, standard, open source) leggono lo stato: chi è il fornitore
(prov, scritto nell'esito) e se la classificazione è contestata
(contested, che aggiunge una nota sulla procedura).
I cammini si contano senza elencarli: una foglia vale 1, e ogni domanda vale la somma dei nodi a cui portano le sue risposte. È programmazione dinamica su un grafo aciclico, e il conto parte dalle foglie. Per lo stato invece bisogna percorrerli: i 241 cammini possibili li elenca il motore della pagina stesso, una risposta alla volta.
Come lo gestisce il portale
I dati dello strumento sono un file JSON per lingua
(04-modjur/ai/dati/04-test_gpai.it.json), scritto da
node-tools/uish/importa_strumenti.js. I testi — domande, risposte, esiti — vengono
dallo script delle pagine originali di
vademecum.ifac.cnr.it,
eseguito in un ambiente isolato; la logica — che cosa scrive ogni risposta, gli smistamenti, gli
esiti composti — è trascritta una volta in forma dichiarativa, con le condizioni scritte come dati
(is, not, eq, in, has,
all, any) e non come codice. Il PHP incorpora il JSON nella pagina, e il
motore js/local/strumenti.js lo controlla (ogni nodo raggiungibile dalla prima
domanda, ogni condizione scritta su variabili che lo stato dichiara) e lo percorre: a ogni risposta
aggiorna lo stato, attraversa gli eventuali smistamenti e, all'esito, compone il testo dai blocchi
le cui condizioni sono vere. Indietro ripristina lo stato salvato prima dell'ultima
risposta.
Il test node-tools/test/uish/strumenti_test.js percorre tutti i 241
cammini e verifica che ciascuno arrivi a un esito completo. Il 1° ottobre 2026 un confronto
differenziale ha percorso gli stessi cammini anche nel JavaScript originale, nodo per nodo e
testo per testo, senza trovare differenze.
Il disegno
Il disegno lo genera node-tools/uish/grafi_decisioni.js dallo stesso JSON
che usa la pagina, quindi non può divergere dal percorso vero: se gli autori cambiano il flusso,
si reimportano i dati e si rigenera. Lo dispone js/common/flusso.js, il motore
dell'editor dei diagrammi di flusso di PortLAB, con lo schema a livelli di Sugiyama, Tagawa e Toda
(1981): ogni nodo sta sul livello del cammino più lungo che lo raggiunge, così nessuna freccia
torna indietro; un arco che salta dei livelli passa per nodi fittizi, uno per livello; l'ordine
dentro ogni livello segue il metodo del baricentro, che toglie gran parte degli incroci. Le
risposte sono riquadri e non etichette sulle frecce perché le frecce che escono da un rombo si
dividono i suoi lati, e con molte risposte le etichette finirebbero l'una sull'altra. Il flusso va
da sinistra a destra: in questo verso i disegni di tutte le pagine occupano meno superficie.
K. Sugiyama, S. Tagawa, M. Toda, «Methods for visual understanding of hierarchical system structures», IEEE Transactions on Systems, Man, and Cybernetics 11(2), 109–125, 1981, doi:10.1109/TSMC.1981.4308636.
Keywords: GPAI, modello di IA per finalità generali, rischio sistemico, FLOP, AI Act, capo V, open source, Orientamenti C(2025) 7719