Uploaded by Giovanni De Vito

scheda dei prodotti di AITransfer

advertisement
Scheda dei prodotti di AITransfer
Tolki
descrizione dell'idea progettuale
Tolki è una web chatbot basata sull’intelligenza artificiale, progettata per rendere più facile e veloce
interfacciarsi con le pubbliche amministrazioni.
Tolki svolgerà le seguenti attività:
•
•
•
Guidare l’utente fornendo istruzioni chiare e rispondendo alle sue domande lungo il processo di
esecuzione di una pratica online, o per informazioni riguardati il sito o un’attività che deve
svolgere online/on site. Questo servizio potrà andare a sostituire il servizio di assistenza
telefonica.
Sostituire i moduli da compilare, permettendo all’utente di caricare i dati necessari tramite
immagine (di documenti, o di altra modulistica), registrazione vocale o messaggio, e con questi
dati generare una pratica completa, con la quale potrà richiedere il servizio in questione.
Mandare e-mail automatizzate sia all’utente nonché all’ente con il quale si sta interfacciando.
Tolki sarà multimediale:
•
•
L’utente potrà messaggiare con l’IA, tramite testo o audio.
Inviare immagini che l’IA potrà leggere ed interpretare, per supportare l’utente o svolgere
pratiche.
benefici di Tolki
I benefici per l'ente che andrà a adottare Tolki saranno un aumento dell’accessibilità, miglior supporto
utente, riduzione dei costi e semplificazione delle pratiche online:
•
•
•
•
accessibilità
o La chat permetterà all’utente di interfacciarsi con diversi mezzi comunicativi, come i
messaggi scritti o vocali e le immagini di documenti o vecchie pratiche. Permettendo
anche agli utenti con disabilità l’utilizzo del sito attraverso mezzi alternativi di
comunicazione.
o L’utente che troverà il sito di accessibilità difficile potrà comunicare con l’intelligenza
artificiale per comprendere meglio il sito e le sue funzionalità. Dando così all’individuo
l’indipendenza di poter utilizzare il sito senza aiuti esterni.
supporto utente
o Tolki sarà allenato sui dati presenti nel sito in cui verrà implementato riuscendo ad offrire
servizio di supporto specifico e dettagliato.
o Il supporto offerto sarà non solo immediato, ma attivo 24/7 senza costi aggiuntivi di
operatori telefonici, operatori via chat o e-mail.
riduzione dei costi
o Il servizio offrendo supporto senza necessità di operatori umani, riduce i costi del servizio
di assistenza utente.
o Tolki potendo leggere e scrivere e-mail, potrà sostituire un operatore apposito per il
supporto via e-mail.
semplificazione delle pratiche online
o la chat chiedendo all’utente i dati necessari potrà generare documentazione in formato
pdf.
o Tolki potrà svolgere tutte le pratiche ed i servizi presenti nel sito facendo uso della sua
capacità di poter ricevere dati in qualsiasi forma dall’utente.
livello di maturità tecnologico
TRL 3 – Prova di concetto sperimentale
Tolki è già stato sperimentato attraverso una beta che permette la chat via messaggi con l’IA, il
caricamento di documenti e la generazione di un’ipotetica pratica.
https://aitransfer.it/tolki/try
integrazione con i processi dell’ente
Tolki si andrà a porre tra l’utente e l’ente, andando a creare un layer di astrazione che permetterà
all’utente di interfacciarsi ai processi dell’ente in maniera più naturale. Dunque, tutte le operazioni che
svolge l’ente continueranno ad essere compiute attraverso le APIs già presenti, e Tolki andrà
semplicemente a comunicare con queste APIs per conto dell’utente. Mentre per l’assistenza all’utente la
nostra soluzione andrà a fare una analisi dell’HTML della pagina web, per fornire supporto.
stack architetturale
front-end
L'integrazione del front-end sarà semplice e veloce. Vi forniremo un client di implementazione (per
framework come Django o ExpressJS), mentre per Vanilla Javascript sarà sufficiente aggiungere uno
<script> tag. In entrambi i casi la PA avrà una chiave API da fornire durante il caricamento dello script
per motivi di sicurezza e privacy, rendendo lo script funzionante solo su domini preimpostati.
Per quanto riguarda il design, Tolki seguirà le regole di designers.italia.it, utilizzando il bootstrap dedicato
e rendendo il plugin in linea con qualsiasi sito delle PA.
Tolki sarà un plugin che consente di accedere a un'interfaccia di supporto, situata in basso a destra (o in
qualsiasi altra posizione preferita) del sito, che consente di agire come ospiti (senza accedere) o di
accedere tramite SPID o CIE per facilitare la compilazione di moduli e offrire un servizio migliore.
In tal modo, Tolki guiderà l’utente, compilerà pratiche, prenoterà appuntamenti, e permetterà di chiedere
informazioni senza interruzioni di servizio. Inoltre, Tolki è in grado di inviare resoconti, documenti,
pratiche o altro richiesto dal cliente, includendo input testuali, vocali, documenti o immagini.
Il design di Tolki è stato realizzato sulla base di Bootstrap Italia, utilizzando gli elementi forniti dalla
libreria e i colori della "Blue Palette", rendendo così l'implementazione semplice ed efficace e non
richiedendo modifiche di adattamento per siti che utilizzano altre palette. In questo modo, Tolki rimane a
tema con i siti delle pubbliche amministrazioni senza risultare un elemento di troppo.
back-end
Il back-end di Tolki è costituito da tre cluster di macchine virtuali (VM) che computano input e output ed
eseguono tutti i calcoli e controlli necessari in breve tempo:
•
•
•
Security Cluster: riceve gli inputs dell’utente. Al suo interno si troveranno gli algoritmi in Python
classici e di machine learning. Il sistema di Machine Learning è stato affinato per riconoscere e
interpretare perfettamente documenti italiani e audio, esso resterà in continuo aggiornamento ed
apprendimento grazie agli input multimediali che riceverà dall’utente.
AI Cluster: riceve l’input dal Security Cluster. Questo cluster è il cuore dell'LLM. Il LLM
permette all'intelligenza artificiale di comprendere il linguaggio scritto o parlato dall'utente e di
elaborarlo in modo da fornire una risposta adeguata.
Core Cluster: riceve l’input dall’AI Cluster. Quest’ultimo cluster contiene algoritmi in Python
classici, i quali impediscono azioni indesiderate ed evitano di dare accesso a servizi esterni al
LLM. In questo modo, garantiamo un servizio di alta qualità e sicurezza.
Intendiamo partire con un solo VPS Per cluster. Con lo svilupparsi del servizio e la necessità di aumentare
la potenza di calcolo e la necessità di servire più richieste, grazie alla scalabilità di Amazon intendiamo
aggiungere ad ogni cluster una o più VPS in modo da renderlo scalabile andando a dividere la potenza di
calcolo su più macchine.
infrastruttura
L’infrastruttura cloud andrà da intermediare tra l’utente e l’ente. Quando l’utente andrà a comunicare con
Tolki, i dati verranno mandato al nostro cloud, il quale gestirà l’input e manderà le richieste al server
dell’ente se necessario.
Tolki sarà basato sul servizio, erogato da AWS (Amazon Web Services), Amazon Elastic Compute Cloud
(Amazon EC2), questo Cloud sarà in territorio europeo, assicurandoci in questo modo un rispetto sulle
leggi sulla privacy europee da parte dell’IaaS. Amazon EC2 fa parte del could market di ACN (Agenzia
per la Cybersicurezza Nazionale), dunque in possesso della qualifica transitoria QI1 della ACN. Amazon
EC2 è un servizio infrastrutturale dalla forte enfasi sulla scalabilità e sulla capacità di calcolo,
caratteristiche che lo rendono ideale per la distribuzione di un servizio come Tolki.
Scheda qualifica ACN per Amazon EC2
•
•
•
•
•
•
•
•
Id scheda: IA-804
Nome: Amazon Elastic Compute Cloud (Amazon EC2)
Tipologia: IaaS
Nome Fornitore: AMAZON WEB SERVICES EMEA SARL
Livello di qualificazione: QC1
Data di qualificazione: 19/01/23
Scadenza qualificazione: 18/01/24
Pubblicata: Sì
APIs
Tolki avrà una architettura a microservizi con diverse APIs esposte, utilizzate dal nostro fronend, ma
anche utilizzabili autonomamente dalla pubblica amministrazione. Di seguito mostriamo un elenco delle
principali APIs e delle loro funzionalità:
•
•
•
•
/img-to-json: prende un’immagine e ne ritorna il JSON con i dati estratti se è un’immagine
riconosciuta dall’algoritmo di machine learning.
/audio-to-json: prende una traccia audio e la converte in JSON.
/txt-to-json: prende testo e interpretandolo grazie al LLM risponde un JSON.
/assistant: prende il testo dell’utente o un JSON e risponde con un messaggio di supporto.
sicurezza dei dati
comunicazione FE - BE
La comunicazione tra front-end e back-end, così come l'accesso alle API del nostro servizio, è sicura e
protetta. Oltre ad una chiave pubblica e privata per ogni sito, operiamo con un TLS enforce che controlla
il cipher della connessione, bloccando script automatizzati sulla base di un controllo con i browser e
dispositivi in commercio. Inoltre, offriamo un'opzione per il front-end che permette di criptare i dati
mandati al server tramite una combinazione di Fernet e RSA encryption, oltre ad un controllo per i
browser automatizzati. Questo permette di evitare attacchi Man In The Middle tra utente e server. Si tenga
presente che il server in sé non può eseguire azioni pericolose o accedere a dati privati dell'utente.
Tuttavia, vogliamo fornire un servizio ben protetto e sicuro, rendendo impossibile la decrittazione dei dati
prima che arrivino al nostro server.
dati dell’utente
I dati personali degli utenti non sono mai memorizzati nei nostri cluster. Durante il processo di check,
interpretazione e risposta, i dati sono allocati in RAM e successivamente eliminati. Lo stesso vale per le
immagini, le quali vengono elaborate a livello di byte prima di essere controllate e interpretate dal nostro
back-end in Python. Solo se i dati sono ritenuti appropriati per l'operazione in corso, verranno elaborati e
restituiti.
Intelligenza Artificiale
La nostra "intelligenza artificiale" non è altro che un ibrido di modelli LLM e Machine Learning. Grazie a
questi modelli, il nostro Core Cluster è in grado di ricevere qualsiasi tipo di input pre-elaborato dall'AI. È
importante sottolineare che né LLM né i modelli di Machine Learning hanno in alcun modo accesso a
database, API esterne o al web. Il loro unico scopo è rendere il messaggio leggibile al Core Cluster, il
quale esegue le azioni ben definite dopo aver effettuato tutti i controlli necessari per garantire la sicurezza
dei dati degli utenti. Il codice di backend è stato scritto con attenzione per prevenire eventuali abusi o
problemi e garantire un livello di sicurezza elevato per gli utenti.
Fixty
descrizione dell'idea progettuale
Fixty è un'applicazione innovativa che lavora in collaborazione con i Comuni per semplificare la
segnalazione e la risoluzione dei problemi presenti sul territorio. Utilizzando il machine learning, sarà in
grado di analizzare le foto scattate dagli utenti e convertirle in un testo di segnalazione che il cittadino
potrà rivedere ed inviare all’ente di riferimento. Presenterà le seguenti funzionalità:
•
•
•
•
•
•
identificare il luogo in cui sono state catturate le immagini del disservizio da voler segnalare
identificare il tipo di problema evidenziato nella foto stessa, come un semaforo rotto o una strada
dissestata.
indicherà quante altre segnalazioni sono state fatte del relativo problema.
il livello di gravità del problema.
Sistema di punteggi, basato sulle segnalazioni del cittadino. Tali punti potranno essere spesi
dall’utente per ricevere premi che attestino la sua buona attitudine civica.
Generare ed inviare una e-mail al comune di riferimento, con la segnalazione generata.
benefici di Fixty
Il servizio porterà una serie di benefici al comune che lo adotterà:
•
•
•
•
Un vantaggio significativo in termini di costi, per la riduzione delle cause risarcitorie legate a
strade rotte o marciapiedi danneggiati che non sono stati segnalati tempestivamente dai cittadini. I
Comuni possono essere informati sulle condizioni delle strade e dei marciapiedi e intervenire
prontamente per riparare eventuali danni.
Tracciamento di tutte le segnalazioni ricevute, consentendo ai Comuni di monitorare e gestire in
modo efficiente i problemi segnalati.
Far sentire il cittadino più ascoltato da parte del proprio comune, dunque più collaborativo con
quest’ultimo.
Garantire la sicurezza e il benessere dei cittadini, così da ridurre spese sanitarie pubbliche ed altre
spese collaterali.
livello di maturità tecnologico
TRL 2 – Formulato il concetto della tecnologia
Abbiamo definito il problema e come Fixty può apportare un aiuto significativo, l’implementazione del
front-end e dell’infrastruttura.
integrazione con i processi dell’ente
Fixty si porrà come intermediario tra i cittadini e le pubbliche amministrazioni, permettendo agli utenti di
far valere la propria voce con rapidità e semplicità, spronando così i cittadini all’educazione civica.
Il servizio andrà a compilare emails o ad utilizzare e-services al posto del cittadino; dunque, si integrerà
senza aggiunta di altri layers ai servizi già presenti nell’ente di riferimento.
Essendo Fixty un servizio indipendente dalle piattaforme web delle pubbliche amministrazioni (sarà
difatti accessibile da web o mobile app), avrà un design che non rispetta le norme per i siti delle pubbliche
amministrazioni di https://designers.italia.it/. Nel caso il comune volesse integrare il servizio nel proprio
sito, il design sarà adattabile agli standard richiesti, con rapidità e senza costi aggiuntivi.
stack architetturale
front-end
Fixty sarà una applicazione usufruibile da mobile o web, con un design moderno ed accessibile dal
cittadino tramite SPID o CIE.
Nella schermata principale l’utente potrà:
•
•
•
•
Vedere i disservizi nelle sue vicinanze (tramite mappa o tramite lista), categorizzati per tre livelli
di gravità.
Vedere i punteggi acquisiti con le segnalazioni e riscattarli.
Effettuare una nuova segnalazione scattando o caricando foto del disservizio che si vuole
riportare.
Accedere alla cronologia delle proprie segnalazioni passate.
La pagina di segnalazione permetterà all’utente di:
•
•
•
Aggiungere foto relative alla segnalazione
Controllare e modificare la posizione e il tipo di disservizio.
Aggiungere note sulla segnalazione.
back-end
Il back-end sarà composto da due cluster, uno per l’intelligenza artificiale e l’altro per le funzionalità del
servizio:
•
•
AI Cluster: Questo cluster racchiuderà tutta l’intelligenza artificiale, e svolgerà i seguenti servizi:
o prenderà le immagini caricate dall’utente ed andare a classificarle in un tipo di
disservizio. Questa funzione sarà basata su un algoritmo di machine learning in costante
allenamento sulle immagini inviate dagli utenti.
o Una volta indentificato il tipo di disservizio, questo verrà utilizzato dal LLM, insieme alla
posizione (estratta dai metadati della foto), per generare il testo di segnalazione.
Core Cluster: cluster che si occuperà delle seguenti funzionalità:
o Login/logout utenti.
o Gestione dei punteggi dell’utente (riscatto e assegnazione).
o Gestione DB, il database avrà all’interno i cittadini e le segnalazioni che hanno effettuato.
o Invio segnalazioni all’ente di competenza via e-mail o tramite APIs.
All'interno del Core Cluster, è prevista l'allocazione di una VM dedicata alla gestione delle segnalazioni.
In particolare, questa VM fungerà da database e conterrà le immagini delle segnalazioni, insieme al
codice fiscale del cittadino che ha effettuato la segnalazione e una descrizione del problema. Questo ci
permetterà di monitorare le segnalazioni e di fornire un supporto tempestivo alle pubbliche
amministrazioni competenti per la risoluzione dei problemi.
APIs
Fixty avrà una architettura a microservizi, dunque utilizzerà diversi endpoints per svolgere il proprio
lavoro. Nel caso il comune volesse usufruire della funzionalità di classificazione dell’immagine
esporremo la seguente API:
/img-classification: prenderà una immagine e ne ritornerà un JSON di classificazione dell’immagine
stessa. Tale JSON indicherà il tipo di disservizio, il livello di gravità e la posizione.
infrastruttura
L’infrastruttura cloud andrà da intermediare tra l’utente e l’ente. Quando l’utente andrà a comunicare con
il servizio, i dati verranno mandato al nostro cloud, il quale gestirà l’input e manderà le richieste al server
dell’ente o tramite e-mail.
Fixty sarà basato sul servizio, erogato da AWS (Amazon Web Services), Amazon Elastic Compute Cloud
(Amazon EC2), questo Cloud sarà in territorio europeo, assicurandoci in questo modo un rispetto sulle
leggi sulla privacy europee da parte dell’IaaS. Amazon EC2 fa parte del could market di ACN (Agenzia
per la Cybersicurezza Nazionale), dunque in possesso della qualifica transitoria QI1 della ACN. Amazon
EC2 è un servizio infrastrutturale dalla forte enfasi sulla scalabilità e sulla capacità di calcolo,
caratteristiche che lo rendono ideale per la distribuzione di un servizio come Fixty.
Scheda qualifica ACN per Amazon EC2
•
•
•
•
•
•
•
•
Id scheda: IA-804
Nome: Amazon Elastic Compute Cloud (Amazon EC2)
Tipologia: IaaS
Nome Fornitore: AMAZON WEB SERVICES EMEA SARL
Livello di qualificazione: QC1
Data di qualificazione: 19/01/23
Scadenza qualificazione: 18/01/24
Pubblicata: Sì
sicurezza dei dati
Comunicazione FE - BE
Assicuriamo sicurezza e protezione nella comunicazione tra frontend e backend, così come nell'accesso
alle API del nostro servizio, grazie alle seguenti pratiche:
•
•
•
•
Utilizzo di chiave pubblica e privata per ogni utente, per permettere lo scambio di dati criptato tra
utente e servizio.
TLS enforce che controlla il cipher della connessione, bloccando script automatizzati sulla base di
un controllo con i browser e dispositivi in commercio.
Opzione per il frontend che permette di criptare i dati mandati al server tramite una combinazione
di Fernet e RSA encryption. Questo permette di evitare attacchi Man In The Middle tra utente e
server.
Il server in sé non può eseguire azioni pericolose o accedere a dati privati dell'utente.
dati dell’utente
Per mantenere i dati degli utenti sicuri nel database del Core Cluster adotteremo le seguenti pratiche:
•
•
Criptazione del database stesso, così che se dovessimo mai subire attacchi informatici non
perderemmo dati sensibili.
Nel database abbiamo deciso di salvare solo i dati necessari, cioè in questo caso il codice fiscale
del cittadino.
Intelligenza Artificiale
Per tenere l’intelligenza artificiale sotto controllo e sicura: né il LLM né i modelli di Machine Learning
hanno accesso a servizi esterni o al database.
Il loro unico scopo è rendere il messaggio leggibile al Core Cluster, il quale esegue le azioni ben definite
dopo aver effettuato tutti i controlli necessari per garantire la sicurezza dei dati degli utenti.
Related documents
Download