Crediti: Tirza van Dijk | Unsplash

L'intelligenza artificiale (IA) agente è emersa come l'ultima frontiera nel settore del software, andando ben oltre le capacità dei chatbot più intelligenti. Questi sistemi di IA operano con un grado crescente di autonomia, posizionandosi come motori fondamentali per migliorare l'efficienza in una vasta gamma di contesti aziendali. La capacità di agire in modo indipendente e proattivo distingue gli agenti IA dai loro predecessori, promettendo una trasformazione profonda del modo in cui le aziende gestiscono le operazioni e interagiscono con la tecnologia.

Andrew McNamara, direttore del machine learning applicato presso Shopify, chiarisce la distinzione: "Il termine 'agente' si riferisce a sistemi di IA che possono eseguire azioni per conto degli utenti, non solo generare testo o rispondere a domande." Questi sistemi, aggiunge McNamara, funzionano ininterrottamente fino al completamento di un compito, citando il Sidekick di Shopify, un agente proattivo sviluppato per i commercianti, come esempio emblematico di questa capacità. L'ambito di sviluppo dell'IA agente si sta rapidamente espandendo, interessando numerosi settori aziendali e promettendo di ridefinire le strategie operative.

Secondo Anthropic, un fornitore leader di grandi modelli linguistici (LLM), l'ingegneria del software è il campo dove gli agenti di IA trovano la loro applicazione più frequente, rappresentando circa la metà dei casi d'uso. Seguono l'automazione delle attività amministrative, il marketing, le vendite, la finanza e l'analisi dei dati, dimostrando la versatilità e l'ampio potenziale di queste tecnologie. Un esempio concreto della loro applicazione pratica è la risoluzione di incidenti IT, come evidenziato da Heath Ramsey, vicepresidente di gruppo della gestione prodotti per la piattaforma IA di ServiceNow.

In questo scenario, gli agenti IA sono in grado di estrarre dati contestuali da vari sistemi, confrontarli con risoluzioni e politiche precedenti, applicare soluzioni appropriate, aggiornare i registri e informare i membri del team interessati, il tutto con un'efficienza e una rapidità ineguagliabili. Questo non solo accelera il processo di risoluzione, ma riduce anche il carico di lavoro manuale e minimizza gli errori umani. Tuttavia, lo sviluppo incentrato sugli agenti richiede un approccio radicalmente nuovo al pensiero sistemico, volto a evitare insidie comuni come l'indeterminismo e la saturazione dei token. Esistono anche problemi di sicurezza intrinseci agli LLM, come la tendenza di un modello a "mentire" o a inventare informazioni per raggiungere un obiettivo, una condizione che i ricercatori definiscono "disallineamento degli agenti".

Per i team incaricati di creare agenti che si integrano con altri sistemi e che devono ragionare attraverso diverse opzioni per eseguire flussi di lavoro a più passaggi, una pianificazione iniziale adeguata è assolutamente essenziale. Per queste e altre ragioni, la progettazione dell'architettura degli agenti richiede un approccio e un insieme di strategie completamente nuovi. Anurag Gurtu, amministratore delegato di AIrrived, un fornitore di piattaforme di IA agente, sottolinea la necessità di un cambiamento fondamentale: "Creare sistemi di agenti richiede un'architettura fondamentalmente nuova, progettata per l'autonomia, non solo per l'automazione." Gurtu paragona gli agenti a entità complete, affermando che "gli agenti necessitano di un ambiente di esecuzione, un cervello, mani, memoria e barriere di sicurezza" per operare in modo efficace e sicuro.

Nonostante le promettenti capacità dell'IA agentiva, il ritorno sull'investimento (ROI) dell'IA rimane un obiettivo in evoluzione. Secondo Alteryx, meno della metà delle organizzazioni segnala un impatto misurabile dagli esperimenti con l'IA agentiva, e meno di un terzo si fida dell'IA per prendere decisioni accurate. Questo indica che, sebbene la tecnologia sia avanzata, la sua implementazione efficace e la misurazione del suo valore richiedono ancora un affinamento. È quindi fondamentale esplorare gli ingredienti che sottostanno a sistemi agentivi di successo a livello aziendale, concentrandosi sui tratti comuni per estrarre orientamenti pratici e lezioni apprese per sviluppatori e architetti, anziché limitarsi a piattaforme di fornitori specifici.

Componenti architettonici di un sistema agentivo

I sistemi agentivi sono costituiti da un insieme di blocchi fondamentali che rendono possibile la loro operatività. Insieme, questi blocchi formano una rete interconnessa di architettura software, con componenti diversi che servono a scopi distinti. Ari Weil, evangelista del cloud presso Akamai, offre una metafora evocativa: "Creare un agente di IA è come costruire un sistema nervoso." Questo sistema complesso comprende strati dedicati al ragionamento, alla memoria, alla raccolta del contesto, alla coordinazione, alla validazione e a misure di sicurezza che prevedono l'intervento umano.

Heath Ramsey di ServiceNow rafforza questa visione, aggiungendo che "i sistemi agentivi si basano su una combinazione di IA, automazione dei flussi di lavoro e controlli aziendali che funzionano congiuntamente." Questo approccio olistico è cruciale per garantire che gli agenti possano operare in modo efficace, sicuro e allineato agli obiettivi aziendali.

Modello di ragionamento

Al centro di ogni sistema agentivo si trova il suo modello sottostante. "Un modello di ragionamento si posiziona nel nucleo," afferma Frank Kilcommins, direttore dell'architettura aziendale presso Jentic, creatori di un livello di integrazione per l'IA. Questo motore di ragionamento è responsabile della pianificazione, basandosi sulla richiesta dell'utente, combinata con il contesto disponibile e le capacità esistenti. È l'elemento che permette all'agente di comprendere un obiettivo e di formulare una serie di passi per raggiungerlo.

Non tutti i modelli di ragionamento sono ugualmente adatti a questo scopo. Andrew McNamara di Shopify sottolinea l'importanza di selezionare "modelli che sembrino agentivi." Questi modelli, prosegue, "hanno la giusta quantità di chiamate a strumenti e seguono le istruzioni con fermezza, il che facilita dare loro indicazioni e dirigerli." La scelta di un modello appropriato è quindi fondamentale per la prevedibilità e l'efficacia dell'agente.

Contesto e dati

Un agente, per operare in modo intelligente, necessita di un contesto ricco e pertinente. Questo contesto può assumere diverse forme: dati interni dell'azienda, conoscenza istituzionale e politiche, prompt di sistema, dati esterni, la memoria di conversazioni precedenti e i metadati dell'agente. Questi ultimi includono i prompt dell'utente, i passaggi di ragionamento e le interazioni con strumenti e fonti di dati, essenziali per osservare e debuggare il comportamento dell'agente. Edgar Kussberg, direttore prodotto per IA, agenti, IDE e strumenti di sviluppo presso Sonar, elenca diverse fonti di dati cruciali:

  • Basi di dati e API
  • Sistemi di generazione aumentata da recupero (RAG - Retrieval Augmented Generation) e database vettoriali
  • Sistemi di file e archivi di documenti
  • Pannelli di controllo interni o sistemi esterni come Google Drive

Le organizzazioni stanno attivamente costruendo basi di conoscenza per gli agenti al fine di organizzare questi dati e ottimizzare il processo di recupero. Contemporaneamente, stanno emergendo schemi dietro i processi di recupero semantico che alimentano i sistemi di gestione del contesto degli agenti. Anusha Kovi, ingegnere di business intelligence presso Amazon, osserva che "per quanto ricordo, la maggior parte dei team combina un archivio vettoriale come pgvector con qualcosa di strutturato come un catalogo dati o un grafo di conoscenza." Questo approccio ibrido consente di sfruttare sia la potenza della ricerca semantica che la precisione dei dati strutturati.

Strumenti e scoperta

Per essere operativi, gli agenti necessitano di qualcosa di più del solo contesto statico: hanno bisogno di accesso in lettura e scrittura a basi di dati, strumenti e API. Jackie Brosamer, direttrice dati e IA presso Block, la società di servizi finanziari dietro Square e Cash App, afferma: "Parte del lavoro più importante che si sta svolgendo per rendere gli agenti più potenti riguarda i modi in cui connettiamo l'IA e i sistemi esistenti." Senza questa capacità di interazione, gli agenti rimarrebbero confinati a un ruolo passivo.

Per abilitare l'accesso a queste capacità, l'industria si è unificata attorno al Model Context Protocol (MCP) come connettore universale tra agenti e sistemi. Stanno emergendo registri MCP per unificare e catalogare le capacità MCP per gli agenti su larga scala, facilitando la scoperta e l'integrazione di nuove funzionalità. Esistono numerosi casi pratici pubblici sull'uso dell'MCP nelle architetture degli agenti, tra cui:

  • L'agente open-source "goose" di Block per lo sviluppo di software basato su LLM
  • L'utilizzo dell'MCP da parte di Workato per flussi di lavoro aziendali potenziati da Claude

Questi esempi dimostrano come il MCP stia diventando uno standard de facto per l'interoperabilità dei sistemi agentivi.

Flussi di lavoro definiti

Un altro componente utile, cruciale per l'efficacia e la prevedibilità dei sistemi agentivi, è la presenza di flussi di lavoro chiaramente documentati per le procedure comuni. Questi includono azioni multi-passaggio che sono interconnesse tra server MCP o tramite chiamate dirette all'API. "L'importante è che questi agenti si coordinino attraverso flussi di lavoro definiti," spiega Heath Ramsey di ServiceNow, "in modo che l'autonomia si espanda in modo prevedibile e controllato, anziché diventare caotica."

Frank Kilcommins di Jentic descrive come questo possa essere realizzato utilizzando "definizioni di capacità chiare e leggibili da macchina," facendo riferimento alla specifica Arazzo. Arazzo, uno standard del settore promosso dalla OpenAPI Initiative, fornisce un metodo robusto per documentare tali componenti, garantendo che gli agenti possano comprendere e interagire con le capacità disponibili in modo coerente e affidabile. Questo livello di strutturazione è fondamentale per superare la complessità intrinseca dei sistemi multi-agente e per massimizzare il loro potenziale in un ambiente aziendale.