Documento e dati aziendali
Un Word o PDF da compilare e un JSON con le informazioni dell’azienda, anche con strutture differenti.
Il progetto del marzo 2026, sviluppato nell’arco di circa tre mesi, ha automatizzato una parte del lavoro documentale di un’azienda che prepara domande per bandi di gara e appalti. Il materiale da compilare comprende documenti Word e PDF anche di decine di pagine, con campi testuali, tabelle e caselle da spuntare. A ciascun documento vengono affiancati i dati dell’azienda in un file JSON.
Ho seguito l’intero backend: organizzazione della pipeline, orchestrazione degli agenti e dei modelli linguistici, compilazione dei documenti, database MariaDB e integrazione con il frontend già utilizzato dall’azienda. La soluzione è entrata nel lavoro quotidiano del cliente e viene impiegata per compilare decine di documenti al giorno, con la possibilità di rivedere e modificare il risultato attraverso l’interfaccia.
Il progetto comprendeva vincoli precisi sulla scelta dei modelli e sulla localizzazione dei server. Ho utilizzato modelli Mistral e un’infrastruttura Microsoft Azure situata in Europa, secondo le richieste del cliente. La protezione delle informazioni aziendali ha accompagnato il lavoro sul backend e sulla loro archiviazione.
Il problema non consisteva soltanto nell’inserire del testo in un file. Un documento di gara può distribuire le richieste fra paragrafi, celle e caselle, ripetendo informazioni in punti diversi. Per compilarlo occorre riconoscere dove si trova la richiesta, capire a quale dato corrisponde e inserirlo nello spazio previsto, mantenendo utilizzabile la struttura del documento.
Anche il JSON in ingresso poteva avere una struttura variabile. Le informazioni dell’azienda non arrivavano necessariamente con gli stessi nomi o nella stessa organizzazione. Il sistema doveva mettere in relazione il significato dei dati disponibili con ciò che il documento chiedeva, senza dipendere soltanto dalla coincidenza letterale fra un’etichetta e una chiave del file.
Il cliente aveva già provato strumenti basati su ChatGPT e Claude nel proprio processo. Sul materiale utilizzato emergevano compilazioni inesatte, parti lasciate incomplete, problemi nella scrittura dei file Word e difficoltà durante la conversione dei documenti. Questi tentativi hanno definito l’esigenza di un programma dedicato, nel quale il modello linguistico fosse inserito dentro un flusso applicativo progettato per quel compito.
Un ulteriore requisito era distinguere una mancanza di dati da un campo che può essere compilato. Nei documenti aziendali una risposta plausibile non equivale a un’informazione disponibile. Il backend doveva quindi utilizzare i dati forniti e lasciare vuoti gli spazi per i quali mancava il contenuto necessario, rendendoli disponibili alla successiva integrazione della persona.
Ho costruito una pipeline che riceve due ingressi: il documento da completare e il JSON con le informazioni aziendali. L’orchestrazione collega l’interpretazione del materiale, l’associazione dei dati alle richieste e la produzione del documento compilato. Gli agenti e i modelli LLM fanno parte di questo percorso, insieme alle logiche del backend necessarie per lavorare sui file e mantenere il risultato dentro il processo dell’azienda.
Mistral è stato scelto per rispettare il requisito del cliente sull’utilizzo di modelli europei. L’elaborazione è stata collocata su server Microsoft Azure localizzati in Europa. La scelta del modello e la posizione dell’infrastruttura sono due aspetti distinti della soluzione, coordinati con gli altri requisiti del progetto e con la gestione delle informazioni trattate.
Ho realizzato anche il database MariaDB che sostiene il lavoro nel tempo. I dati aziendali e il materiale del processo vengono archiviati per poter riprendere un documento, modificarlo e scaricarlo in momenti successivi. Il riutilizzo delle informazioni già presenti evita di dover caricare ogni volta i dati della stessa azienda e collega la compilazione del singolo file alla gestione continuativa del lavoro documentale.

Un Word o PDF da compilare e un JSON con le informazioni dell’azienda, anche con strutture differenti.
Il backend orchestra Mistral e le logiche applicative per associare i dati disponibili e completare le aree pertinenti.
Il documento passa al frontend aziendale per il controllo; MariaDB conserva dati e materiale del lavoro per riprenderli successivamente.
Schema descrittivo del flusso di lavoro del progetto.
6 fasi, dalla preparazione iniziale agli strumenti da consegnare.
Ho impostato il backend a partire dalla varietà dei documenti trattati dal cliente. L’ingresso poteva essere un Word oppure un PDF multipagina, con aree di testo, celle e caselle distribuite lungo il file. La lettura del documento doveva individuare le richieste da completare e conservarne il rapporto con la posizione in cui inserire le informazioni.
La struttura era una parte essenziale del risultato. Una risposta corretta collocata nella sezione sbagliata, oppure un testo che altera la tabella, non risolve il lavoro richiesto. L’analisi dei documenti è stata quindi collegata alla compilazione del file, con attenzione ai problemi di formattazione e conversione incontrati nel processo precedente.
Ho sviluppato il collegamento fra le informazioni aziendali e le richieste presenti nel documento. Il JSON veniva trattato come una fonte di dati con struttura variabile: il compito era ricavare quali informazioni fossero disponibili e a quali spazi del documento potessero corrispondere.
Questa associazione richiede di considerare il contenuto, oltre alla forma con cui viene fornito. Un dato può essere organizzato diversamente da un file all’altro, mentre il documento può richiederlo con una formulazione differente. Il flusso usa le informazioni presenti per compilare i punti pertinenti; quando il dato necessario manca, la cella o il campo resta vuoto.
Ho realizzato l’orchestrazione che mette in relazione l’interpretazione del documento, i dati di ingresso e la compilazione. La pipeline coordina gli agenti e i modelli linguistici all’interno del backend, così il loro contributo viene utilizzato nel punto appropriato del lavoro sui documenti.
Il progetto ha richiesto una soluzione su misura per il materiale e il processo dell’azienda. L’utilizzo di Mistral è stato inserito in questa architettura secondo il vincolo del cliente sui modelli europei. Il risultato è un flusso applicativo che collega il ragionamento sulle informazioni alla produzione del documento da usare, con le parti del processo organizzate dal backend.

Ho collegato le informazioni selezionate alla compilazione dei documenti. Il sistema lavora sulle diverse aree previste dal file, comprese le tabelle e le caselle da spuntare, affrontando insieme il contenuto da inserire e la struttura in cui deve comparire.
Il backend è stato integrato nel frontend dell’azienda. Attraverso l’interfaccia il personale può controllare il risultato, correggere eventuali problemi e aggiungere le informazioni ancora necessarie. Questo passaggio permette di inserire l’automazione nel lavoro effettivo: il documento compilato resta modificabile e il controllo della persona si concentra anche sui punti che richiedono un’integrazione.
Ho creato il database MariaDB per archiviare i dati utilizzati dal sistema e il materiale legato al processo di compilazione. Le informazioni dell’azienda possono così essere conservate e riutilizzate, evitando di ricominciare con un nuovo caricamento ogni volta che lo stesso soggetto deve preparare un altro documento.
L’archiviazione sostiene anche un lavoro distribuito in più momenti. Un file può essere creato, ripreso, modificato e scaricato quando serve. Il collegamento fra database e backend permette di conservare la continuità fra le informazioni già disponibili, il documento in lavorazione e le aggiunte o correzioni effettuate tramite l’interfaccia.
Ho inserito il backend nell’infrastruttura Azure localizzata in Europa prevista per il progetto. La posizione dei server risponde alla richiesta del cliente sulla sede dell’elaborazione, mentre la scelta di Mistral risponde al requisito relativo ai modelli utilizzati.
La gestione di dati riservati ha richiesto misure di protezione nel backend e nell’archiviazione. Questo aspetto accompagna il funzionamento quotidiano del sistema, che mette in relazione documenti, dati aziendali e interventi degli utenti. Il lavoro si è tradotto in una soluzione operativa, collegata agli strumenti del cliente e utilizzata ogni giorno per decine di documenti.

Il sistema è operativo presso il cliente e viene utilizzato quotidianamente per compilare decine di documenti destinati a bandi e gare. Il flusso parte dal file Word o PDF e dal JSON con i dati aziendali e restituisce il documento compilato, con la possibilità di controllarlo, modificarlo e integrarlo attraverso il frontend dell’azienda.
Nella valutazione del progetto oltre il 70% delle celle veniva compilato correttamente. Il sistema distingueva inoltre i punti per i quali erano presenti informazioni da quelli privi di dati sufficienti: questi ultimi restavano vuoti, in modo da poter essere completati dalla persona con le informazioni necessarie.
Il risultato comprende un backend dedicato e un processo documentale che prosegue oltre la prima compilazione. L’archiviazione in MariaDB rende disponibili i dati già acquisiti e permette di riprendere i file in momenti diversi. L’integrazione con l’interfaccia esistente, i modelli Mistral e l’infrastruttura Azure in Europa completano una soluzione sviluppata intorno al lavoro e ai vincoli dell’azienda.
La percentuale superiore al 70% descrive le celle compilate correttamente nella valutazione del progetto; non rappresenta una misura generale delle prestazioni dei modelli citati.
Descrivimi cosa vuoi ottenere e quali dati hai a disposizione. La prima call di 30 minuti è gratuita.