In questo articolo, Carlos Contreras, Ying Hou, Hin Yee Liu e Olga Miloserdova di AWS, spiegano nel dettaglio come l’IA generativa, insieme a strumenti come Amazon Bedrock e AWS Glue, stia trasformando la gestione dei sistemi critici in Formula 1.
Buona lettura!
Come Formula 1 utilizza l’IA generativa per la risoluzione dei problemi il giorno della gara
Le gare di Formula 1 (F1) sono eventi di straordinaria complessità, in cui ogni millisecondo e ogni decisione operativa possono fare la differenza. Durante le competizioni in diretta, il team IT di F1 deve affrontare criticità che possono compromettere il funzionamento di numerosi servizi, come ad esempio il degrado delle performance di specifiche API. Tali problematiche, infatti, hanno un impatto a cascata sui sistemi che consumano i dati, come F1 TV – il servizio che garantisce la trasmissione live, l’accesso on demand e una ricca telemetria in tempo reale. L’identificazione tempestiva della causa principale e la prevenzione di futuri malfunzionamenti richiedono un’analisi approfondita e il coordinamento di diversi reparti, soprattutto se si considera che, a causa delle restrizioni legate al calendario degli eventi e alle finestre di congelamento delle modifiche, la risoluzione di un problema critico poteva arrivare a durare fino a tre settimane, coinvolgendo team di sviluppo, operazioni, infrastruttura e networking.
Lee Wright, Responsabile delle operazioni IT presso Formula 1, ricorda: “In passato avevamo un problema ricorrente con il sistema dell’API web, che rispondeva con lentezza e produceva output incoerenti. I team dedicavano circa 15 intere giornate lavorative per analizzare i log, identificare anomalie e affinare le soluzioni, procedendo in maniera iterativa durante più eventi”.
Riconoscendo questa sfida come un’opportunità innovativa, F1 ha avviato una collaborazione con Amazon Web Services (AWS) per realizzare una soluzione basata sull’IA, sfruttando Amazon Bedrock. Il progetto ha portato alla creazione di un assistente per l’analisi delle cause radice (RCA), studiato per supportare ingegneri operativi, sviluppatori e specialisti di rete nella diagnostica e nella risoluzione dei problemi, riducendo al minimo l’intervento manuale sia durante che dopo gli eventi live. A supporto della soluzione è stato reso disponibile, inoltre, un repository GitHub contenente una versione generalizzata dell’applicazione chat.
Gli utenti possono interagire con l’assistente RCA attraverso richieste in linguaggio naturale, mentre il sistema, operando in background, esegue un’attenta analisi, individuando le possibili motivazioni degli incidenti e suggerendo le azioni correttive. La piattaforma, integrata con sistemi interni ed esterni, è in grado di interrogare fonti come database SQL, log di Amazon CloudWatch e strumenti di terze parti per monitorare lo stato operativo in tempo reale, rendendo lo strumento efficace per professionisti di diverse discipline.
“Grazie allo strumento RCA, il team è riuscito a identificare la causa principale e a implementare una soluzione in soli 3 giorni, includendo deployment e testing durante un weekend di gara. Il sistema non solo riduce il tempo dedicato alla risoluzione attiva, ma indirizza anche il problema al team competente, consentendo agli altri di concentrarsi su attività strategiche, quali lo sviluppo di nuovi prodotti per migliorare l’esperienza di gara”, aggiunge Lee Wright.
Il vantaggio competitivo della soluzione è evidente: l’adozione dell’IA generativa permette agli ingegneri di Formula 1 di ottenere risposte specifiche in 5–10 secondi, riducendo il tempo iniziale di triage da oltre un giorno a meno di 20 minuti, e abbattendo il tempo complessivo per la risoluzione fino all’86%.
Implementazione dell’architettura della soluzione RCA
Durante un progetto pilota della durata di cinque settimane, in collaborazione con il team di prototipazione AWS, Formula 1 ha dimostrato la fattibilità di automatizzare l’intero processo di troubleshooting per due sistemi critici, replicandone le fasi operative. Il team ha esaminato casi reali, delineando un diagramma di flusso che evidenziava:
- Il processo di troubleshooting;
- I team e i sistemi coinvolti;
- Le verifiche in tempo reale necessarie;
- Le analisi dei log richieste per ciascun scenario.
Le sezioni seguenti approfondiscono i componenti chiave della soluzione: le pipeline ETL per la trasformazione dei log, l’implementazione RAG basata su agenti e l’applicazione chat.
Creazione delle pipeline ETL per la trasformazione dei dati dei log
La preparazione accurata dei dati rappresenta il fondamento per ottenere risultati di qualità in un progetto di IA come quello creato per Formula 1. In particolare, AWS aiuta a migliorare la qualità dei dati nel tempo e Amazon CloudWatch offre visibilità sulle performance dell’intero sistema e consente di impostare allarmi, reagire automaticamente ai cambiamenti e ottenere una visione unificata dello stato operativo. Per questa soluzione, AWS Glue e Apache Spark hanno gestito le trasformazioni dei dati dai log e da altre fonti per migliorare l’accuratezza e l’efficienza dei costi del chatbot. AWS Glue aiuta a scoprire, preparare e integrare i dati su larga scala.
Il processo di trasformazione dei log si articola in tre fasi:
- Standardizzazione dei dati: Uniformare schemi, tipologie e formati consente all’assistente di comprendere appieno le informazioni, migliorandone l’accuratezza. Amazon Bedrock Knowledge Bases necessita di dati in un formato coerente per poterli ingerire correttamente, indipendentemente dalla loro origine e struttura.
- Filtraggio dei dati: L’eliminazione delle informazioni non rilevanti riduce il volume dei dati da analizzare, abbattendo i costi della fase di embeddings e incrementando l’efficienza complessiva. Ad esempio, il chatbot non necessita di tutti gli header di una richiesta HTTP, ma solo di informazioni essenziali come host e user agent.
- Aggregazione dei dati: Consolidare i dati su base minuto per minuto riduce la quantità di informazioni trattate, permettendo di evidenziare, ad esempio, il tempo massimo di risposta per ogni intervallo, semplificando l’analisi dei problemi. Questo approccio ottimizza anche il consumo delle risorse e il tempo di elaborazione.
AWS per Formula 1: sviluppo dell’assistente RCA con Amazon Bedrock Agents e Knowledge Bases
La soluzione RCA sviluppata con Amazon Bedrock Agents e Knowledge Bases consente di scomporre le richieste degli utenti in passaggi esecutivi, invocando API aziendali e accedendo a dati contestuali per produrre risposte complete e accurate. Amazon Bedrock Agents sfrutta la capacità di ragionamento dei modelli di base (FMs) per orchestrare le attività e interagire con fonti interne ed esterne. L’integrazione tra sistemi interni ed esterni permette, ad esempio, di monitorare lo stato dei database, verificare le performance tramite Datadog e generare automaticamente ticket in Jira per analisi future. Il modello Claude 3 Sonnet di Anthropic, in particolare, si distingue per la sua capacità di elaborare input complessi e interpretare formati diversificati, inclusa la gestione di date espresse in modalità differenti. Amazon Bedrock Agents integra le Knowledge Bases, fornendo un’interfaccia unica e consolidata all’utente. L’agente RCA analizza gli strumenti e i database disponibili, crea autonomamente un piano di esecuzione e restituisce una risposta finale consolidata.
Applicazione frontend: l’Interfaccia utente dell’assistente chat
L’interfaccia utente dell’assistente chat è stata realizzata con il framework Streamlit, basato su Phyton, che offre widget intuitivi e potenti per un’interazione fluida. Gli utenti possono testare le iterazioni degli agenti modificando ID e alias, visualizzare la cronologia completa della conversazione e, se necessario, esaminare la traccia dettagliata dei piani esecutivi per verificare la corretta esecuzione delle operazioni. La risposta dell’agente LLM si compone di due sezioni: sulla sinistra la risposta finale neutrale, basata sulle domande dell’utente; sulla destra la traccia dell’orchestrazione dell’agente LLM, nascosta di default per mantenere la risposta pulita e concisa. Gli utenti possono esaminare questa traccia per assicurarsi che gli strumenti corretti siano stati invocati e che i documenti necessari siano stati recuperati dal chatbot.
Un esempio applicativo riguarda la gestione delle problematiche di connessione ai database Formula 1: l’assistente consente di verificare la compatibilità del driver e di controllare la connettività di rete di un’istanza EC2, offrendo anche la possibilità di analizzare i log di sistema per identificare e risolvere eventuali anomalie. Grazie all’integrazione con strumenti di gestione degli incidenti, come Jira, il sistema consente agli ingegneri di diagnosticare e intervenire in tempi record, automatizzando l’escalation dei casi più complessi.
Una versione generalizzata dell’applicazione è disponibile su GitHub, facilitando ulteriori sperimentazioni e adattamenti a differenti scenari d’uso.
In sintesi, la collaborazione tra Formula 1 e AWS ha portato alla realizzazione di un avanzato assistente RCA basato su Amazon Bedrock, in grado di ridurre significativamente i tempi di intervento, passando da settimane a pochi minuti. Questa soluzione, che integra tecnologie all’avanguardia e processi automatizzati, permette al team Formula 1 di concentrare le proprie risorse sull’innovazione e sul miglioramento continuo dei servizi, garantendo così un’esperienza di eccellenza per fan e partner. Un esempio emblematico del potenziale trasformativo dell’IA generativa nelle operazioni tecnologiche, capace di ottimizzare processi complessi e di offrire un vantaggio competitivo in un settore ad altissimo impatto.
di Carlos Contreras, Ying Hou, Hin Yee Liu e Olga Miloserdova di AWS