Intelligenza artificiale

Chatbot AI per il sito: come si progetta un assistente ancorato ai propri contenuti

Come si costruisce un chatbot AI che risponde solo con i contenuti del sito: base di conoscenza, contesto o RAG, prompt injection, costi, limiti di richieste e obblighi di trasparenza.

Fabio Folgori5 min di lettura

Telefono a disco marrone in una stanza dalle pareti grigie
Foto di Annie Spratt su Unsplash

Mettere un modello linguistico dietro una finestra di chat è questione di un'ora. Fare in modo che risponda solo con le informazioni giuste, rifiuti il resto, non si lasci manipolare e abbia un costo prevedibile è il lavoro vero. Questo articolo racconta come lo imposto, partendo dall'esempio che ho più vicino: la chat di questo sito.

Ancorato, non generalista

Un chatbot generalista sul sito di un'attività è un rischio: inventa prezzi, promette servizi che non esistono, risponde su argomenti che non ti riguardano. L'assistente utile è ancorato: risponde solo con una base di conoscenza definita e, fuori da quella, rifiuta con gentilezza e indirizza a una persona.

Il comportamento atteso si scrive prima del codice:

  • domanda coperta: risposta breve, con il passo successivo (una pagina, un contatto);
  • domanda parzialmente coperta: ciò che si sa, più l'indicazione di chiedere a una persona;
  • domanda fuori ambito: rifiuto cortese e promemoria di cosa l'assistente sa fare;
  • tentativo di aggirare le istruzioni: nessun cambio di comportamento.

Contesto intero o RAG

Ci sono due architetture.

  • Base di conoscenza nel contesto: l'intero testo di riferimento viene passato al modello a ogni richiesta. Con poche decine di pagine è la scelta migliore: niente indicizzazione, niente errori di recupero, e con il caching dei prompt il costo della parte ripetuta cala drasticamente.
  • RAG: si cercano i passaggi pertinenti e si passano solo quelli. Necessario quando i contenuti sono troppi per il contesto o cambiano di continuo. Aggiunge un punto di fallimento, la ricerca, che va misurato. Ne parlo in dettaglio in Assistente AI sui documenti interni.

Per un sito di presentazione, nove volte su dieci la prima strada è sufficiente.

Scrivere la base di conoscenza

È la parte che decide la qualità, e non si genera automaticamente dalle pagine del sito. Le pagine sono scritte per convincere; la base di conoscenza deve essere scritta per rispondere: fatti, condizioni, limiti, cosa non si fa. Ogni affermazione deve essere vera e verificabile, e quando un servizio cambia la base va aggiornata insieme al sito.

Sicurezza: prompt injection e superficie

Gli utenti proveranno a far ignorare le istruzioni al modello. Le difese efficaci sono architetturali, non solo testuali:

  • separare istruzioni e contenuti: le regole stanno nel prompt di sistema, l'input dell'utente non le può sovrascrivere per costruzione;
  • minimo privilegio: se il chatbot può solo rispondere da una base pubblica, anche un attacco riuscito non rivela nulla di riservato. Se deve leggere dati personali o compiere azioni (prenotare, modificare), ogni operazione va autorizzata e validata lato server, mai affidata al modello;
  • chiave API solo sul server: il browser parla con il proprio backend, mai direttamente con il fornitore del modello;
  • limiti di richieste per utente e per IP, per evitare abusi e costi fuori controllo;
  • lunghezza massima di domande e risposte.

Costi e prestazioni

Il costo dipende da modello, token in ingresso e in uscita, traffico. Le leve principali: caching della parte fissa del prompt, risposte brevi per impostazione, un modello proporzionato al compito (spesso non serve il più potente) e risposte in streaming, che migliorano la percezione di velocità senza costi aggiuntivi.

Trasparenza, privacy, accessibilità

  • L'utente deve sapere che sta parlando con un sistema di intelligenza artificiale: il Regolamento europeo sull'AI prevede obblighi di trasparenza su questo punto.
  • Le conversazioni possono contenere dati personali: informativa, tempi di conservazione dei log, fornitori con condizioni che escludono l'addestramento sui dati inviati.
  • La chat deve funzionare da tastiera e con i lettori di schermo, con l'area dei messaggi annunciata correttamente.

Prima di pubblicare

Un insieme di domande di prova (coperte, parziali, fuori ambito, tentativi di manipolazione) eseguito a ogni modifica della base di conoscenza o delle istruzioni. È la parte meno vistosa e quella che evita le figuracce.

Misurare se funziona

Un assistente sul sito si valuta con indicatori concreti, non con l'impressione che «risponda bene»:

  • tasso di risposte coperte: quante domande trovano risposta nella base di conoscenza;
  • rifiuti e passaggi a una persona: quanti, e su quali argomenti;
  • argomenti ricorrenti: cosa chiedono davvero le persone, spesso diverso da ciò che il sito mette in evidenza;
  • contatti generati: quante conversazioni finiscono con una richiesta o un clic verso la pagina giusta;
  • feedback esplicito, con un semplice pollice su o giù.

I registri delle conversazioni, anonimizzati e conservati per un tempo limitato, sono la fonte migliore per migliorare: una domanda frequente senza risposta indica un'informazione mancante nella base di conoscenza, e spesso anche nel sito. In questo senso un assistente ben gestito diventa anche uno strumento per capire cosa manca ai contenuti.

Come la vedo io

La chat di questo sito è costruita così: un unico file di conoscenza scritto a mano, letto dal server, passato a un modello di Anthropic con istruzioni precise. Risponde solo su ciò che c'è scritto, rifiuta tutto il resto, ha un limite di richieste e, se manca la chiave API, ripiega su risposte di riserva invece di rompersi. Non sa tutto, e va bene così: preferisco un assistente che dice «non lo so, scrivimi» a uno che improvvisa.

Diffido dei chatbot che promettono di «sapere tutto sulla tua attività» dopo aver letto il sito in automatico. Il valore sta nella cura della base di conoscenza e nei limiti, non nella potenza del modello.

Perché affidarlo a me

Programmo dal 1999, ho consegnato più di 300 progetti e lavoro come sviluppatore esterno con circa 30 agenzie, da Roma e da remoto. Progetto assistenti AI ancorati ai contenuti, con base di conoscenza curata, protezioni lato server, costi sotto controllo e test prima della pubblicazione.

Se vuoi un assistente sul tuo sito, scrivimi: in una chiacchierata di circa 20 minuti capiamo cosa deve sapere e cosa deve rifiutare. Il servizio è in Intelligenza artificiale e automazioni.

Domande frequenti

Se la base di conoscenza è di poche decine di pagine, inserirla per intero nel contesto, con il caching dei prompt, è più semplice e spesso più accurato. Il RAG diventa necessario quando i contenuti sono molti o cambiano spesso.

Ci proveranno. Si riduce il rischio separando istruzioni e contenuti, non dando al modello accesso a dati o azioni che non servono, e validando lato server ogni operazione. Un chatbot che può solo rispondere da una base pubblica ha poco da rivelare.

Dipende da modello, lunghezza delle risposte e traffico. Con il caching della base di conoscenza, risposte brevi e un limite di richieste per utente, il costo resta prevedibile; va comunque monitorato.

Sì. Oltre a essere corretto verso l'utente, il Regolamento europeo sull'intelligenza artificiale prevede obblighi di trasparenza per i sistemi che interagiscono con le persone.

  • #chatbot ai
  • #assistente virtuale
  • #base di conoscenza
  • #intelligenza artificiale
  • #prompt injection

Altri articoli

// Contatti

Un progetto, un problema o solo un dubbio?

Agenzia, attività o professionista: scegli come preferisci parlarmi. Rispondo entro un giorno lavorativo, senza impegno.