Architettura e framework

Architettura software

Il cuore tecnologico di OpenCity Chatbot AI si basa su un’architettura di tipo RAG (Retrieval-Augmented Generation). A differenza dei sistemi basati su sola intelligenza artificiale generica, questo approccio garantisce che ogni risposta sia ancorata esclusivamente a dati certi e verificati.

Quando un utente pone una domanda, il flusso di elaborazione segue tre fasi principali:

  1. Retrieval: la richiesta viene gestita dal componente open source OpenCity AI, che analizza il contenuto della domanda e interroga il motore di ricerca interno per individuare le informazioni specifiche presenti sul sito web dell'Ente;

  2. Arricchimento del contesto: il sistema "arricchisce" la domanda dell'utente unendola ai frammenti di testo ufficiali recuperati dal sito. In questa fase, il chatbot ha già la risposta corretta sotto forma di dati grezzi;

  3. Generation: il pacchetto informativo (domanda + dati ufficiali) viene inviato a un modello linguistico avanzato (LLM) tramite API sicure. In questa fase finale, l'LLM non attinge alla propria conoscenza generica, ma si limita a elaborare in forma di dialogo le informazioni ricevute, restituendo al cittadino una risposta chiara, cortese e precisa.

Questa architettura garantisce la massima trasparenza, grazie alla base open source, e la massima affidabilità, poiché separa la fase di "conoscenza" (gestita dai dati comunali) dalla fase di "esposizione" (gestita dall'IA).

Opensource e neutralità tecnologica

OpenCity AI Chatbot è configurato come un modulo completamente autonomo, progettato per essere introdotto nell'ecosistema digitale dell'Ente senza generare vincoli o dipendenze tecnologiche.

A differenza di altre soluzioni sul mercato, il sistema garantisce la massima libertà di manovra grazie a due pilastri:

  • Nessun prerequisito di piattaforma: il chatbot è pronto all'uso come soluzione stand-alone, capace di operare indipendentemente dai software già in dote all'Amministrazione;

  • Nessun obbligo di migrazione: l’Ente non è obbligato a migrare il proprio sito web o a modificare l’attuale infrastruttura digitale per poter beneficiare dell’assistente virtuale. Il sistema si integra sul portale esistente, permettendo all'Ente di evolvere i propri servizi ai cittadini senza dover affrontare i costi e le complessità di un cambio di piattaforma o di un trasloco di contenuti.

Questa impostazione garantisce una piena interoperabilità e permette all'Ente di potenziare l'interazione con l'utenza in tempi rapidi, mantenendo intatto l'investimento tecnologico già effettuato sul proprio sito istituzionale.

Erogazione in SaaS

Il servizio viene fornito interamente in modalità SaaS (Software as a Service). Questa scelta architettonica è pensata per azzerare l’impatto sull'infrastruttura dell'Ente: essendo una soluzione cloud nativa, l'Ente non deve installare alcun software né configurare o gestire server dedicati.

Agnosticismo rispetto ai modelli di linguaggio (LLM)

OpenCity AI è agnostico rispetto alla soluzione LLM (Large Language Model) adottata, garantendo:

  • intercambiabilità dei modelli: attualmente il sistema utilizza Gemini, ma l'architettura è predisposta per integrare altri modelli leader di mercato a seconda delle necessità o dell'evoluzione tecnologica;

  • sperimentazione: il nostro team sta attivamente sperimentando l'uso di modelli locali Open Source.

Ecosistema di plugin e repository

L'estensibilità del sistema è garantita da un’architettura modulare che conta attualmente su 8 plugin interamente Open Source, progettati per potenziare le capacità di interazione e integrazione del chatbot.

L'attuale configurazione prevede:

  • 5 plugin sviluppati internamente: moduli progettati ad hoc dai nostri team per rispondere alle specifiche esigenze verticali della Pubblica Amministrazione italiana;

  • 3 plugin preesistenti: componenti selezionati dalla comunità Open Source globale, integrati e ottimizzati per garantire la massima stabilità e interoperabilità.

Tutti i moduli, corredati dalla relativa documentazione tecnica e dal codice sorgente, sono disponibili per la consultazione presso i nostri repository ufficiali:

Framework

Il sistema si basa sul framework Open Source Cheshire Cat AIarrow-up-right che, tramite il nostro contributo sotto forma di plug-in anche essi Open Source, permette di gestire tutto il flusso delle chat.

Le funzionalità del prodotto ci permettono di:

  • avere sempre a disposizione le informazioni del sito web (aggiornate alla mezzanotte del giorno corrente);

  • mantenere la privacy degli utenti tramite specifiche funzionalità di anonimizzazione;

  • mostrare le fonti da cui sono state prese le informazioni;

  • rifiutare richieste non pertinenti.

Last updated

Was this helpful?