Perché il progetto è andato oltre la semplice automazione delle email

Il lavoro è nato da una esigenza pratica: leggere le email in arrivo, generare bozze di risposta e consentire agli utenti di revisionarle prima dell’invio. Tuttavia, l’obiettivo ingegneristico era più ampio. L’implementazione è stata concepita come un framework riutilizzabile in cui ingestione delle email, archiviazione dei messaggi, costruzione del prompt, invocazione del modello, revisione umana e osservabilità sono capacità separate, capaci di evolvere in modo indipendente.

Questa separazione è fondamentale. Un’automazione “una tantum” tende a codificare in modo statico formati di messaggio, prompt, ipotesi sul provider e comportamento dell’interfaccia in un unico flusso. Il nostro framework, invece, utilizza configurazioni basate su tabelle, archiviazione canonica dei messaggi, orchestrazione GenAI neutrale rispetto al provider e controlli amministrativi. In questo modo la stessa base può essere riutilizzata per nuove categorie di email, dipartimenti, fornitori di modello, dataset di addestramento e futuri flussi di lavoro assistiti dall’AI.

Principio di design: l’applicazione non delega al modello la gestione del flusso di lavoro. Il database e l’applicazione APEX mantengono identità, stato, permessi, cronologia dei messaggi, validazione, audit e azioni finali dell’utente. GenAI è impiegata solo come servizio di ragionamento e redazione controllato all’interno del perimetro aziendale.

Cosa coprirà la serie

Questo post introduce il problema architetturale: i flussi di lavoro email assistiti da AI sono utili solo quando sono ancorati a dati aziendali affidabili, validati sul server, osservabili e revisionabili da esseri umani. Una semplice chiamata al modello non è sufficiente per la produzione; occorre un framework.

Gli articoli successivi approfondiranno le singole capacità che rendono il framework riutilizzabile e gestibile:

    • GenAI Email Oracle APEX Framework – Architecture Overview (questo post)
    • GenAI Email Oracle APEX Framework – Outlook Integration
    • GenAI Email Oracle APEX Framework – GenAI Orchestration
    • GenAI Email Oracle APEX Framework – APEX Application Layer
    • GenAI Email Oracle APEX Framework – Deployment Guide

Quali sono le potenzialità di GenAI

Generative AI è una classe di intelligenza artificiale progettata per produrre nuovi contenuti a partire da contesto e istruzioni. Nel nostro framework, viene usata per redigere risposte email combinando il messaggio più recente, il contesto della conversazione, esempi specifici di business e le istruzioni del modello.

GenAI è particolarmente efficace per compiti a forte contenuto linguistico, dove è necessario redigere, riassumere, riscrivere, classificare o adattare tono e formato. Non sostituisce il sistema di registrazione, le validazioni di business, i permessi o il giudizio finale umano. Per questo motivo, il framework utilizza GenAI come assistente di redazione all’interno di un flusso di lavoro controllato.

    • Buon fit: redazione di risposte, sintesi di thread, estrazione di intenti, riformulazione di testo, verifica di sovrapposizioni negli esempi di addestramento e generazione di contenuti di prima bozza.
    • Non adatto da solo: decidere destinatari fidati, aggirare approvazioni di flusso, sostituire la validazione del database o inviare comunicazioni esterne senza revisione.

L'architettura a cinque livelli

Il framework è organizzato in cinque strati principali, ognuno con una responsabilità ristretta, per mantenere il codice testabile, estensibile e più semplice da confezionare come capacità di piattaforma.

1. Ingestion

Connette a Outlook tramite Microsoft Graph, recupera le email non lette, le mette in una zona di staging e le segna come lette una volta elaborate.

2. Canonical Store

Persistisce metadati, contenuto del corpo, identificatori di conversazione, risposte generate e flag di elaborazione in tabelle relazionali.

3. Context Builder

Separa il messaggio più recente dalla cronologia, normalizza HTML e testo semplice e costruisce sezioni di prompt strutturate per il modello.

4. AI Gateway

Coordina le richieste a OCI GenAI chat e a OCI text‑embedding. Costruisce payload specifici per il provider, normalizza le risposte e genera vettori per domande di addestramento valide e query runtime tramite il servizio di embedding configurato. Recupera gli esempi più vicini dalla tabella GENAIMODELSDETAILVECTOR e registra separatamente l’uso di chat e vettori nelle tabelle GENAIUSAGETRACKING e GENAIVECTORUSAGETRACKING.

5. APEX Experience

Fornisce amministrazione, test, diagnostica, dashboard, revisione email, salvataggio e flussi di invio.

Diagramma di processo

Il diagramma evidenzia come l’accesso alla casella di posta, la persistenza dei dati, il contesto del prompt, l’invocazione del modello, l’approvazione umana e l’osservabilità siano gestiti come preoccupazioni separate.

Impronta runtime minima: l’orchestrazione avviene interamente su Oracle Database, PL/SQL e APEX. L’applicazione effettua chiamate in uscita a Microsoft Graph per le operazioni di mailbox, a OCI Generative AI per le risposte di chat e al servizio di embedding configurato per i vettori. Non è necessario alcun server applicativo, worker host o proxy AI dedicato.

Modello dati centrale

Il framework è guidato dai dati: il comportamento di business è configurato in tabelle, non sparso nel codice UI. Le categorie di dati più importanti sono:

EntitàDescrizione
Email stagingArea temporanea per le risposte di Microsoft Graph prima della normalizzazione.
Canonical email recordsFonte duratura di metadati, corpo, ID conversazione, stato di elaborazione e bozza di risposta.
Model headersInformazioni su provider, versione, identificatore del modello e istruzioni generali.
Training examplesEsempi rappresentativi di messaggi in ingresso e risposte desiderate per guidare il modello.
Embedding vectorsVettori per le domande di addestramento validi, memorizzati nella tabella GENAIMODELSDETAILVECTOR. Generati da MANAGEEMBEDDINGS tramite il servizio OCI configurato.
Usage trackingRegistra utilizzo del modello chat, contesto utente/sessione, conteggio token, dimensioni richieste/risposte, stato ed errori (GENAIUSAGETRACKING).
Vector Search usage trackingTraccia attività di generazione vettori e ricerca (GENAIVECTORUSAGE_TRACKING), visualizzabili nella dashboard di utilizzo vettoriale.

Contratti tecnici e pacchetti PL/SQL

Il cuore dell’orchestrazione risiede nei pacchetti PL/SQL MANAGEGENAI e MANAGEEMBEDDINGS. MANAGEGENAI si occupa di assemblare i prompt, inviare richieste di chat, normalizzare le risposte e registrare l’uso. MANAGEEMBEDDINGS chiama il servizio remoto OCI per generare vettori, li salva e li rende disponibili per le ricerche di similarità.

Durante il recupero dei vettori, MANAGEGENAI ottiene il vettore della query tramite MANAGEEMBEDDINGS, effettua una ricerca nella tabella GENAIMODELSDETAILVECTOR per trovare gli esempi Q&A più vicini e li inserisce nel prompt della chat. Questo meccanismo garantisce che il modello lavori con esempi di business pertinenti, migliorando coerenza e accuratezza.

Nota di scoping e dipendenze di sicurezza

Questa serie si concentra sull’architettura del framework, sui pacchetti database, sul layer APEX, sull’integrazione Microsoft Graph e sull’orchestrazione GenAI. Non tratta le modifiche di sicurezza e rete specifiche per l’ambiente di deployment, come regole di firewall, endpoint privati, proxy, TLS inspection o approvazioni di sicurezza. Tali controlli devono essere gestiti attraverso i processi standard di infrastruttura e sicurezza dell’organizzazione.

Le inferenze di chat e di embedding utilizzano impostazioni di regione separate. La regione del database è determinata dall’ambiente di deployment e non è impostata dall’esportazione APEX. Per i dettagli di default e scoperta del catalogo modelli, consultare la Deployment Guide.

Conclusioni e prossimi passi

Il GenAI Email Oracle APEX Framework dimostra come sia possibile costruire un sistema di automazione email basato su AI che rispetti i requisiti di governance, audit e controlli umani tipici di un contesto enterprise. La separazione in cinque layer, la gestione dei dati tramite tabelle configurabili e l’uso di pacchetti PL/SQL per l’orchestrazione garantiscono flessibilità, testabilità e facilità di estensione.

Nel prossimo articolo approfondiremo l’integrazione con Outlook tramite Microsoft Graph, illustrando come configurare le credenziali, gestire i token di accesso e sincronizzare le cartelle di posta con il layer di ingestione.