Tre chatbot, un servizio: come abbiamo scalato la nostra piattaforma AI da prototipo a prodotto

Intelligenza artificiale e chatbot con agenti virtuali e supporto clienti.

Questo articolo è il seguito naturale di Da N8N a Google Cloud Se non l’hai letto, fallo prima: spiega perché abbiamo abbandonato N8N e costruito la nostra infrastruttura RAG su Google Cloud Platform.

Questo articolo racconta cosa succede dopo — quando un chatbot smette di essere un esperimento e diventa qualcosa che vendi ai tuoi clienti.

Da uno a tre: il momento in cui capisci di avere un prodotto

Quando abbiamo lanciato Marvin — il nostro assistente interno per Hosting4Agency — pensavamo di aver risolto un problema nostro. Helpdesk di livello 1, risposte sulle FAQ, supporto prevendita. Funzionava, e funzionava bene.

Poi ci hanno chiesto: “ma potreste farlo anche per noi?”

La prima richiesta è arrivata da The Red House Company, gestori di appartamenti di lusso a Venezia. Volevano un chatbot che aiutasse gli ospiti a trovare casa, verificare disponibilità e prenotare — tutto in chat, senza moduli, senza telefonate. Qualcosa di più di un semplice FAQ bot: un agente che conosce gli appartamenti, capisce le date, chiama le API del gestionale e crea ordini reali su WooCommerce.

La seconda da “Una famosa RIR di cui facciamo parte”, una associazione di imprese culturali e creative. Volevamo aiutare i soci a navigare tra bandi europei, progetti attivi e servizi — un assistente che conoscesse il sito meglio di qualsiasi operatore.

In poche settimane avevamo tre chatbot in produzione. E ci siamo trovati a rispondere a una domanda che non avevamo ancora affrontato davvero: come si gestisce una piattaforma multi-cliente basata su AI?

Robot AI con elementi digitali e simboli di tecnologia e innovazione.
Dal supporto helpdesk di Marvin alle prenotazioni su WooCommerce gestite da Tobia: ogni assistente virtuale opera esclusivamente all’interno del proprio perimetro di dati per azzerare il rischio di allucinazioni.

L’architettura che scala: un progetto GCP, tre agenti separati

La scelta fondamentale è stata tenere tutto su un unico progetto Google Cloud Platform (elan42-stage), con risorse separate per ogni cliente. Non tre infrastrutture diverse: una sola, con isolamento logico e billing separata.

Ogni chatbot ha:

Semplice sulla carta, molto meno senza un’architettura chiara.

La Knowledge Base: ogni bot sa solo quello che deve sapere

Uno dei problemi classici dei chatbot aziendali è la contaminazione delle risposte: il bot mischia informazioni di contesti diversi, inventa dettagli, cita cose che non esistono.

La nostra soluzione è strutturale: ogni agente ha accesso solo al proprio datastore su Vertex AI Agent Builder. Marvin non sa nulla degli appartamenti di Red House. Tobia non sa nulla dei bandi europei della RIR.

Oltre al corpus RAG (documenti scritti dal corpus del sito), ogni progetto ha una Knowledge Base LLM-wiki — una serie di file Markdown strutturati scritti appositamente per il modello, con informazioni che il sito non esprime in modo esplicito ma che il bot deve conoscere. Niente prezzi (regola editoriale ferrea), niente dati personali — solo conoscenza pubblica, curata.

Il corpus viene caricato su Cloud Storage come text/plain. Dettaglio tecnico non ovvio: Vertex AI Agent Builder rifiuta i file Markdown perché li interpreta come text/markdown. I nostri script rinominano automaticamente i .md in .txt all’upload. Piccola cosa, ore di debug la prima volta.

Automazione con robot e documenti digitali per efficienza aziendale.
Preparazione knowledge base per Platform AI ELAN42. Dati raw (corpus documenti). Dati strutturati (knowledge base).

Il “Tastone Rosso” per ogni cliente

Uno dei pezzi di cui andiamo più fieri è la semplicità operativa. Quando un cliente aggiorna il proprio sito, o quando vogliamo arricchire la knowledge base, basta un comando:

python3 projects/redhouse/sync_redhouse.py

Questo script — il nostro “Tastone Rosso” — svuota il bucket Cloud Storage del cliente, ricarica tutti i file aggiornati e lancia l’import su Vertex AI Agent Builder con riconciliazione completa (FULL). In pochi minuti il bot sa già le cose nuove.

Stessa logica per tutti e tre i bot. Stesso pattern, parametri diversi.

Pulsante rosso grande per avviare un processo o un'azione.
Semplificare l’operatività: lo script di sincronizzazione che agisce come un “Tastone Rosso”, svuotando il Cloud Storage e ricaricando all’istante la Knowledge Base aggiornata su Vertex AI Agent Builder.

Passwordless by default: niente file .json in giro

Fino a qualche settimana fa, ogni sviluppatore che voleva eseguire gli script doveva avere un file service-account.json sul proprio computer. File che viaggiano via email, finiscono in cartelle sbagliate, rimangono nei backup.

Abbiamo eliminato completamente questo pattern. Tutti gli script usano ora Application Default Credentials (ADC) di Google Cloud:

gcloud auth application-default login

Un solo comando, il browser si apre, ti autentichi con il tuo account ELAN42, e hai accesso a tutto ciò per cui sei autorizzato. Nessun file. Nessuna password condivisa. Nessun rischio.

I segreti sensibili — come il bearer token che autentica Dialogflow CX verso il plugin WordPress di Red House — vivono in Secret Manager su Google Cloud Platform, accessibili solo agli account del gruppo elan42-stage@elan42.com.

L’accesso è governato da Cloud IAM: ogni collaboratore ha i permessi minimi necessari, assegnati al gruppo, non al singolo. Aggiungi un nuovo sviluppatore al gruppo Google Workspace e in cinque minuti può lavorare sul progetto, senza che tu gli mandi nulla.

Tobia prenota davvero: l’integrazione con WordPress e WooCommerce

Il chatbot di Red House non è solo un FAQ bot. Tobia — questo il suo nome, il leone di San Marco della Serenissima — può fare cose concrete:

  1. Cercare appartamenti disponibili per date e numero di ospiti, interrogando in tempo reale Krossbooking (il PMS di Red House)
  2. Presentare le opzioni con prezzi e link diretti
  3. Raccogliere i dati dell’ospite in chat
  4. Creare una prenotazione reale su WooCommerce e restituire un link di pagamento sicuro
  5. Tenere la casa “in opzione” per 10 minuti mentre l’ospite paga

Tutto questo avviene tramite il nostro plugin WordPress ELAN42-chatbot, che espone un set di endpoint REST autenticati. Dialogflow CX chiama questi endpoint tramite un tool OpenAPI, con autenticazione bearer token conservata su Secret Manager.

Il risultato: un cliente che scrive “ho una casa vicino alla Biennale per 2 persone la prima settimana di settembre?” riceve in chat disponibilità reale, prezzi reali e un link per pagare. Senza moduli. Senza aspettare.

Analisi dei dati e intelligenza artificiale in un ambiente di lavoro digitale.
Se è una AI a visitare il sito, inizia a chattare con la nostra AI ed il cliente NON perde il booking / vendita.

Billing separata per cliente: i label di Cloud Storage

Quando gestisci chatbot per clienti diversi su un unico progetto GCP, la billing è un problema reale. Come sai quanto sta costando il bot di Red House vs quello della RIR?

La risposta di Google Cloud Platform sono i resource label: coppie chiave-valore che puoi applicare a ogni risorsa (bucket, datastore, agente). Noi usiamo cliente=redhouse e cliente=rir su ogni risorsa.

Nel Cloud Billing puoi poi filtrare i costi per label e avere un report preciso per cliente. Non perfetto — alcune risorse condivise non si labelizzano facilmente — ma sufficiente per un foglio di rendicontazione mensile.

La Gen2: Conversational Messenger e l’embed via Cloud Storage

Con la migrazione al nuovo progetto GCP abbiamo anche aggiornato il pattern di embed.

Il vecchio sistema usava Dialogflow Messenger direttamente nei siti, con project-id e agent-id hardcoded nell’HTML. Funzionava, ma era fragile: ogni migrazione richiedeva di mettere mano al codice del sito cliente.

Il nuovo pattern (che chiamiamo Gen2) usa:

  1. Una pagina HTML statica ospitata su un bucket Cloud Storage pubblico (elan42-stage-marvin-web, elan42-stage-tobia-web, elan42-stage-rir-web)
  2. Un Conversational Messenger abilitato sull’agente Dialogflow CX (API unauthenticated)
  3. Un semplice <iframe> nel sito cliente che punta alla pagina GCS

Il vantaggio: se dobbiamo migrare un agente o cambiare progetto GCP, aggiorniamo la pagina nel bucket e l’iframe del cliente non cambia. Zero interventi sui siti in produzione.

Robot e drone collegati a cloud AI in ambiente tecnologico.
Un’unica infrastruttura solida su Google Cloud Platform in grado di orchestrare e isolare logicamente più agenti AI, trasformando un prototipo interno in un prodotto multi-cliente scalabile.

Il prossimo passo: Google Agent Development Kit

Dobbiamo essere onesti con voi (e con noi stessi): l’architettura attuale, basata su Dialogflow CX Generative Playbooks, è la generazione precedente dello stack Google.

Google ha rilasciato 3 settimane fa l’Agent Development Kit (ADK) — un framework Python open source per costruire agenti AI multi-step, con orchestrazione nativa, tool use strutturato e integrazione profonda con Vertex AI e Gemini. È più flessibile, più potente, e probabilmente dove tutto il mondo sta andando.

I nostri Playbook funzionano bene oggi. Ma abbiamo già pianificato la migrazione. ADK permette di definire il comportamento dell’agente in codice Python invece che in un’interfaccia grafica — il che significa versionamento, testing, CI/CD. Tutto quello che uno sviluppatore si aspetta.

Ma … ne parleremo in un prossimo articolo! 🤞🏼

Cosa abbiamo imparato

Costruire una piattaforma AI multi-cliente su Google Cloud Platform ci ha insegnato alcune cose che non si trovano facilmente nella documentazione:

Iscriviti alla Newsletter!

Con CIAO, la rubrica AI di ELAN42, continueremo a raccontare cosa sta succedendo nel mondo dell’intelligenza artificiale attraverso casi reali, tecnologie e strategie che utilizziamo nei nostri progetti.

Se la tua azienda vorrebbe un chatbot AI per dare assistenza post o pre vendita ai tuoi clienti, forse è arrivato il momento di scriverci.

Contattaci a info@elan42.com per scoprire come la nostra digital agency ELAN42 può portare i tuoi assistenti AI verso l’eccellenza

Contattaci

"*" indica i campi obbligatori

Questo campo serve per la convalida e dovrebbe essere lasciato inalterato.
CATEGORIE: CIAO
TORNA AL BLOG