AI Disclosure
AI Disclosure è nato nella Drupal AI Initiative ad agosto 2026, quando l'articolo 50 dell'AI Act aveva appena cominciato ad applicarsi e Drupal non aveva ancora un modo per dire al lettore come un contenuto era stato scritto. L'ho sviluppato io, a partire da un piano di Marcus Johansson.
Chi sviluppa AI Disclosure, e da quando
Con che cosa è costruito AI Disclosure
Quale problema risolve AI Disclosure
Dal 2 agosto 2026 l'AI Act chiede di etichettare i deep fake e alcuni testi generati con l'AI. Oggi chi pubblica lo dichiara con una riga scritta a mano in fondo alla pagina: ogni redattore la formula a modo suo, nessuno sa quanti contenuti la portano, e i motori non la leggono.
Come AI Disclosure risolve il problema
Un campo che accompagna ogni contenuto e dice quanto l'AI ha contribuito, scelto fra nove livelli. La redazione risponde una volta sola per ogni tipo di contenuto, il modulo calcola se l'etichetta è dovuta e la mostra al lettore con le icone della Commissione europea.
Che risultati ha dato AI Disclosure
Il progetto è nato su Drupal.org il . L'ultima release è la 1.0.0-alpha2 del . Lo usano 70 siti (Drupal.org, al ); il 20 settembre 2026 erano 8.
Che cosa chiede l'AI Act a chi pubblica contenuti
Dal 2 agosto 2026 l'articolo 50 dell'AI Act chiede a chi pubblica di dichiarare due tipi di contenuto: le immagini, gli audio e i video che imitano persone, luoghi o fatti reali fino a sembrare autentici, e i testi generati con l'AI che informano il pubblico su questioni di interesse pubblico. Per i testi c'è un'eccezione: se una persona li ha rivisti e se ne assume la responsabilità editoriale, l'etichetta non è obbligatoria.
La norma quindi non vieta l'AI e non chiede di dichiararla sempre. Chiede di sapere, contenuto per contenuto, se ricorre uno di quei casi.
Come AI Disclosure decide se l'etichetta è dovuta
AI Disclosure classifica ogni contenuto su nove gradi, da «Solo umano» a «Deep fake AI». Sei dei nove portano la premessa dell'obbligo: senza quella il modulo non pone nemmeno le domande successive, e il verdetto è «non dovuta». L'elenco completo, con la frase che ogni grado mostra al lettore e l'icona che porta, sta nella documentazione del modulo (si apre in una nuova scheda).
Con la premessa, la regola si divide in due rami a seconda del mezzo.
Deep fake audiovisivo: paragrafo 1
L'etichetta è dovuta senza condizioni. Revisione umana, responsabilità editoriale e interesse pubblico non vengono nemmeno consultati.
Testo generato con l'AI: paragrafo 2
L'etichetta è dovuta se il contenuto informa il pubblico e riguarda una questione di interesse pubblico. Un no su una delle due chiude a «non dovuta» anche se l'altra resta senza risposta.
Per il testo c'è un'esenzione, e vale solo se ricorrono entrambe le condizioni: una revisione sostanziale con controllo editoriale e una responsabilità editoriale con un nome. La revisione da sola non basta: è la differenza fra «l'ho riletto» e «qualcuno ci mette la firma».
Che cosa risolve AI Disclosure per una redazione
AI Disclosure trasforma la valutazione sull'obbligo di etichetta in un dato del contenuto. La redazione descrive una volta sola come usa l'AI per ogni tipo di contenuto: per esempio, gli articoli scritti con l'assistenza dell'AI e rivisti da un giornalista, o le traduzioni automatiche rilette. Ogni nuovo contenuto eredita quella descrizione, e si cambia solo per le eccezioni.
Da lì il modulo fa tre cose. Mostra al lettore una scheda con l'icona ufficiale pubblicata dalla Commissione europea e una frase chiara. Scrive la stessa informazione nel codice della pagina, dove la leggono motori di ricerca e agenti. Tiene un report di tutto il sito, che dice per ogni contenuto se l'etichetta è dovuta, non è dovuta o manca ancora una risposta per deciderlo.
Il modulo segue le linee guida della Commissione sull'articolo 50 ma non decide al posto di chi pubblica: registra la valutazione e la rende visibile.
Come ho costruito AI Disclosure in Drupal
Il 3 agosto 2026 Marcus Johansson ha pubblicato nella Drupal AI Initiative il piano del modulo: sedici passi, dalle fondamenta alle integrazioni con gli altri moduli AI di Drupal. Gli ho scritto per prenderne lo sviluppo, e il 17 agosto ho aperto il progetto su drupal.org.
Fra il 18 e il 24 agosto ho chiuso le prime tre fasi del piano, dieci passi su sedici, fra cui la struttura dei livelli di AI, le descrizioni riusabili, il campo sui contenuti, la scheda per il lettore, i dati per le macchine, il report e la gestione delle traduzioni. Restano aperti la documentazione di progetto e le integrazioni con cinque moduli AI esistenti, che permetteranno a traduttori e generatori automatici di dichiarare da soli il proprio contributo.
Con chi sviluppo AI Disclosure
AI Disclosure ha tre maintainer. Marcus Johansson (@marcus_johansson (si apre in una nuova scheda)) ha scritto il piano nella Drupal AI Initiative ed è co-maintainer del progetto. Adam Nagy (@joevagyok (si apre in una nuova scheda)) si è unito in seguito come co-maintainer: secondo il suo profilo su drupal.org lavora come consulente Drupal per la Commissione europea sulla Europa Web Platform. Io scrivo il codice: al 22 settembre 2026, 221 dei 226 commit del repository sono miei.
Come uso AI Disclosure su questo sito
Ogni pagina di questo sito porta la scheda di AI Disclosure in fondo al testo. Gli originali italiani dichiarano che sono scritti con l'assistenza dell'AI e rivisti da me. Le versioni inglesi dichiarano che sono tradotte con l'AI e rilette.
Il 22 settembre 2026, mentre scrivevo questa scheda, ho scoperto che il sito non faceva quello che il modulo promette: la dichiarazione era una sola per le due lingue, e le pagine inglesi raccontavano come era nato l'italiano. L'ho corretta lo stesso giorno. È il caso per cui il modulo esiste: una dichiarazione vale per la lingua che il lettore ha davanti.
Il grado però non lo scelgo contenuto per contenuto. Il campo su questa pagina è vuoto: la dichiarazione arriva da un profilo predefinito, Editorial default, che il modulo applica a ogni contenuto che non ne porta uno proprio. Il profilo dice grado «Assistito dall'AI, guidato da una persona», revisione umana fatta, responsabilità editoriale a nome mio, mezzo testo, contenuto che informa il pubblico, questione di interesse pubblico no.
Da quelle risposte il modulo calcola required=not-required, e vale la pena dire perché: non per l'esenzione da revisione, che pure sarebbe soddisfatta, ma perché il paragrafo 2 chiede due condizioni insieme e questa pagina ne porta una sola. Una scheda di progetto informa il pubblico, ma non è una questione di interesse pubblico. Se un giorno scrivessi qui di politica europea, la stessa configurazione produrrebbe required=required senza che io tocchi niente, e l'etichetta comparirebbe da sola.
La scheda in fondo a questa pagina è quel calcolo reso visibile: l'icona ai_modified della Commissione europea, la frase del grado, e il dettaglio richiudibile con la descrizione del profilo. La riga con la responsabilità editoriale non compare perché il grado la tiene spenta fra le parti visibili, non perché manchi il nome.
Chi legge non deve fidarsi della scheda: la stessa informazione sta nel codice della pagina, e si legge da riga di comando. Il comando interroga la versione inglese di questa scheda.
curl -s https://giorgiopagano.org/en/projects/ai-disclosure | grep 'name="ai-disclosure"'Risponde ai_translated; required=not-required; icon=ai_modified: il grado, il verdetto sull'obbligo, e quale icona della Commissione europea va mostrata. La versione inglese dichiara il grado della traduzione, questa pagina ai_assisted_hitl: il verdetto e l'icona restano gli stessi. Come si installa e come si configura sta nella documentazione del modulo (si apre in una nuova scheda).
Fonti su AI Disclosure e sull'articolo 50
- Pagina del progetto AI Disclosure su Drupal.org (si apre in una nuova scheda): maintainer, data di creazione, release e 70 siti. Consultata il 22/09/2026, fonte primaria.
- Issue #75 di questo sito: 8 siti al 20/09/2026, rilevamento interno.
- Piano del modulo nella Drupal AI Initiative (si apre in una nuova scheda): aperto il 03/08/2026, dieci passi su sedici chiusi fra il 18 e il 24/08/2026. Consultato il 22/09/2026, fonte primaria.
- Repository di AI Disclosure su git.drupalcode.org (si apre in una nuova scheda): 226 commit, 221 di Giorgio Alfredo Pagano. Consultato il 22/09/2026, fonte primaria.
- Profilo Drupal.org di Adam Nagy (si apre in una nuova scheda): ruolo e organizzazione, dichiarati da lui. Consultato il 22/09/2026.
- Icone UE per l'etichettatura dei contenuti generati con l'AI (si apre in una nuova scheda), Commissione europea. Fonte primaria.
- FAQ sugli obblighi di trasparenza dell'articolo 50 (si apre in una nuova scheda), Commissione europea. Consultata il 22/09/2026, fonte primaria.
- AI Disclosure Module Adds Article 50 Labelling Tools for Drupal (si apre in una nuova scheda), The Drop Times. Stampa di settore.
Questo contenuto è stato prodotto dall'AI e rivisto da una persona.
Come è stata usata l'AI?
Le bozze sono prodotte con l'assistenza dell'AI, poi dirette, rivedute e verificate da una persona. Numeri, date e versioni sono confrontati con le fonti pubbliche prima della pubblicazione, e la data di quel controllo è indicata nel testo.