Vai al contenuto principale
Categorie articolo: Learn

Real Time Knowledge Injection: accrescere l’intelligenza dei chatbot

28 Ottobre 2025 - 6 minuti di lettura

La maggior parte dei chatbot utilizza una memoria a breve termine, o short memory, che limita la loro capacità di immagazzinare informazioni e costruire conoscenza autonoma.

In questo articolo, già pubblicato per MokaByte, Luca Giudici illustra un caso di studio per la Business Unit Memoria, mostrando come hanno implementato la real time knowledge injection: prima sviluppando un sistema RAG e poi evolvendolo in un sistema ad agenti con knowledge base dinamica.

I chatbot e gli attuali problemi di memoria

Negli ultimi anni, aziende e utenti hanno adottato chatbot e assistenti virtuali come strumenti centrali per il supporto clienti e l’automazione dei processi aziendali.
Grazie alla loro capacità di interpretare il linguaggio naturale, gli utenti percepiscono questi strumenti come “intelligenti” e spesso credono che possano ricordare e riutilizzare le informazioni condivise durante le conversazioni.

In realtà, la maggior parte dei chatbot mantiene le informazioni solo per la durata della singola sessione: dimenticano tutto al termine della conversazione e non aggiornano la propria conoscenza in tempo reale.

I limiti della memoria a breve termine

Questa limitazione non rappresenta solo un dettaglio tecnico: costituisce un vero ostacolo per le aziende che utilizzano chatbot per l’assistenza.
Ne ho avuto conferma diretta durante un progetto per Memoria, in cui abbiamo sviluppato un sistema basato su architettura RAG (Retrieval-Augmented Generation) per recuperare risposte dai manuali tecnici di macchinari industriali.

Durante i test, il cliente ha rilevato un errore in una risposta dovuto a una documentazione non aggiornata. Dopo aver corretto il chatbot direttamente in chat, si aspettava che l’assistente fornisse automaticamente la versione corretta alla richiesta successiva.

L’assenza di una memoria persistente ha messo in luce un’esigenza cruciale: permettere all’assistente di aggiornare la propria conoscenza in tempo reale, senza attendere il ciclo successivo di aggiornamento della knowledge base.

Integrare una memoria permanente in un AI assistant supera questi limiti, migliorando precisione, efficienza e affidabilità delle risposte, e garantendo un’esperienza utente veramente intelligente e dinamica.

La soluzione di Memoria basata su RAG

Il nostro progetto nasce da un’architettura RAG (Retrieval-Augmented Generation), che combina il recupero di informazioni con la generazione di linguaggio naturale tramite un LLM (Large Language Model).

Abbiamo iniziato creando una base di conoscenza strutturata dai manuali tecnici, elaborando la documentazione e suddividendola in frammenti di testo. Trasformiamo ogni frammento in un vettore numerico, chiamato embedding.

Rappresentiamo gli embedding in uno spazio vettoriale, un ambiente matematico in cui la posizione di ogni vettore riflette il significato semantico del testo di origine. I testi con contenuti simili si collocano vicini, mentre quelli con significati diversi restano distanti.

Questo meccanismo alimenta il nostro motore semantico che fornisce risposte accurate e contestuali rispetto alla base di conoscenza.

Architettura e implementazione

La prima versione della nostra soluzione presentava la seguente architettura.

Real time knowledge injection - First version of RAG software architecure
Figura 1 – Architettura della prima versione dell’applicazione.

Come mostrato nell’illustrazione, la prima architettura RAG di un chatbot con memoria gestisce le query degli utenti attraverso quattro fasi principali:

  • Ricezione della query: il chatbot acquisisce la domanda dell’utente e la prepara per l’elaborazione semantica.
  • Recupero semantico: il chatbot converte la query in un embedding vettoriale e lo confronta con lo spazio semantico per individuare i frammenti di testo più rilevanti, selezionando le sezioni dei documenti più affini alla richiesta.
  • Generazione della risposta: il modello linguistico riceve i frammenti recuperati e produce una risposta coerente e precisa, sfruttando il contesto disponibile.
  • Restituzione del risultato: il chatbot invia la risposta finale all’utente, completando il flusso di interazione.

Da RAG classico a sistema ad agenti

Per aggiornare la conoscenza del chatbot in tempo reale, abbiamo trasformato la classica architettura RAG in un sistema ad agenti intelligenti dotato di tool capaci di decidere autonomamente come interagire con la knowledge base.

In questo contesto, un tool agisce come una risorsa che l’agente utilizza per ampliare le proprie capacità o svolgere operazioni specifiche oltre le sue funzioni native.

Abbiamo sviluppato due tool principali: uno per aggiornare la knowledge base e uno per gestire la conversazione, strumenti essenziali per fornire risposte sempre aggiornate e pertinenti.

Tool di aggiornamento della knowledge base

Questo tool entra in azione quando l’utente aggiunge nuove informazioni o corregge un dato. Genera l’embedding del testo aggiornato e lo salva in un database vettoriale dedicato, progettato per gestire in tempo reale la nuova conoscenza del chatbot o del sistema RAG, mantenendo i dati sempre coerenti e facilmente recuperabili.

Real time knowledge injection - Tool knowledge update
Figura 2 – Il tool di aggiornamento della knowledge base.

Tool per la gestione della conversazione

Questo tool RAG per chatbot entra in azione ogni volta che l’utente pone una domanda. Interroga sia la knowledge base originale sia quella aggiornata in tempo reale, recupera i frammenti di testo più rilevanti e li invia al modello di linguaggio, che elabora la risposta finale accurata e contestuale.

Real time knowledge injection - Conversational tool
Figura 3 – Tool per la gestione della conversazione.

Architettura finale della soluzione

Integrando i due tool precedentemente descritti, l’architettura finale si presenta come nella seguente immagine.

Real time knowledge injection - System architecture
Figura 4 – L’architettura completa del sistema.

Il processo di elaborazione

Nell’illustrazione sottostante viene mostrato il funzionamento di un chatbot avanzato basato su un agente con knowledge injection. Il processo di gestione delle query utente prevede quattro fasi principali:

  • Ricezione della query: l’utente invia una domanda, che viene acquisita dal chatbot per l’elaborazione.
  • Selezione del tool appropriato: l’agente analizza il significato semantico della query per determinare se si tratta di un aggiornamento della conoscenza o di una semplice richiesta informativa. In caso di aggiornamento, il messaggio viene indirizzato al tool di gestione della knowledge base; per richieste informative, viene utilizzato il tool di conversazione.
  • Fusione dei risultati: quando viene impiegato il tool di conversazione, l’agente integra i dati provenienti dalle due knowledge base distinte, garantendo che la risposta sia sempre aggiornata e coerente.
  • Restituzione della risposta: le informazioni raccolte vengono elaborate da un LLM (Large Language Model) per generare una risposta precisa e contestualizzata.

L’utilizzo di due knowledge base separate introduce la sfida della gestione delle contraddizioni: se un’informazione è presente in entrambe le basi ma con contenuti differenti, il sistema deve stabilire quale versione considerare attendibile. Per risolvere questo problema, viene data priorità alla knowledge base con aggiornamenti in tempo reale, assicurando che le risposte siano sempre basate sui dati più recenti, ignorando eventuali versioni obsolete.

I vantaggi della separazione delle knowledge base sono principalmente due:

  • Gestione semplificata degli aggiornamenti: inserimenti, correzioni e rimozioni diventano più rapidi e sicuri, senza compromettere la knowledge base originale.
  • Performance ottimizzate del database vettoriale: aggiornare direttamente la knowledge base principale richiederebbe la re-indicizzazione di tutti i vettori, impattando le prestazioni. Separando i due spazi, il sistema mantiene alta velocità di ricerca anche con aggiornamenti frequenti.

Questa strategia consente di bilanciare precisione delle risposte, manutenibilità del sistema e performance di ricerca, rendendo il chatbot più affidabile, reattivo e pronto a rispondere in maniera aggiornata alle domande degli utenti.

Conclusioni

L’evoluzione dai tradizionali sistemi RAG ai sistemi basati su agenti con knowledge base dinamica elimina una delle principali limitazioni dei chatbot: l’impossibilità di aggiornare le informazioni in tempo reale.

Questo approccio aumenta la precisione delle risposte, migliora la soddisfazione degli utenti e riduce il tempo necessario per mantenere la knowledge base sempre allineata alle esigenze operative del cliente.

Guardando al futuro, il passo successivo consiste nell’automatizzare l’aggiornamento della documentazione. Le informazioni raccolte in tempo reale nella knowledge base, una volta validate e consolidate, alimentano la creazione di nuove versioni dei manuali d’uso e guide operative, mantenendoli aggiornati senza processi manuali complessi.

In questo modo, il chatbot con knowledge injection non solo supporta gli utenti, ma diventa un motore attivo di miglioramento continuo della documentazione tecnica aziendale, ottimizzando efficienza e affidabilità delle informazioni.

Articolo scritto da