top of page
Immagine del redattoreAndrea Viliotti

Ottimizzare i Processi Aziendali con gli AI-Based Agents Workflow (AgWf) e CrewAI

La ricerca "Re-Thinking Process Mining in the AI-Based Agents Era" è frutto della collaborazione tra diversi ricercatori e professionisti provenienti da diverse istituzioni accademiche e aziende, tra cui la RWTH Aachen University, Fraunhofer FIT, l'Università di Sousse, il gruppo ECE e Microsoft. L'indirizzo di ricerca si concentra su come il mining di processi, una tecnica di analisi dei dati che consente di scoprire, monitorare e migliorare processi aziendali attraverso l'estrazione di informazioni dai log di eventi, possa essere rivisitato e reinterpretato nell'era degli agenti basati sull'intelligenza artificiale.

 

In questo scenario, il process mining, tradizionalmente incentrato sull'analisi di dati di processi statici e strutturati, potrebbe dover evolversi per affrontare le nuove sfide derivanti dall'integrazione di agenti intelligenti. Questi agenti, in grado di prendere decisioni autonome e interagire con sistemi complessi in tempo reale, impongono l'adozione di nuovi approcci per la loro modellazione, analisi e ottimizzazione. Di conseguenza, le tecniche di process mining devono considerare la dinamicità e la complessità introdotte dall'intelligenza artificiale, ridefinendo i metodi di raccolta e analisi dei dati.

 

Questa ricerca coinvolge esperti provenienti da diversi campi disciplinari e da diverse parti del mondo, sottolineando l'importanza di un approccio interdisciplinare per affrontare le sfide legate alla trasformazione digitale e all'uso sempre più diffuso degli agenti basati sull'intelligenza artificiale.


Ottimizzare i Processi Aziendali con gli AI-Based Agents Workflow (AgWf) e CrewAI
Ottimizzare i Processi Aziendali con gli AI-Based Agents Workflow (AgWf) e CrewAI

Il Process Mining (PM) è una disciplina della data science che si concentra sull'analisi dei processi attraverso l'estrazione di informazioni dai dati relativi agli eventi registrati nei sistemi informativi che ne supportano l'esecuzione. All'interno del process mining, sono state proposte diverse tecniche, tra cui la scoperta automatica di modelli di processo (process discovery), la verifica della conformità (conformance checking) che confronta il comportamento di un registro di eventi con un modello di processo, e l'analisi predittiva che prevede la prossima attività o il tempo rimanente in un caso specifico.

 

Negli ultimi anni, i modelli di linguaggio di grandi dimensioni, comunemente noti come LLM, hanno acquisito una posizione rilevante come assistenti potenti nell'ambito del process mining. Il process mining è una tecnica che permette di analizzare i processi aziendali attraverso i dati generati dai sistemi informatici, e gli LLM hanno dimostrato di essere in grado di svolgere compiti significativi in questo contesto. Tra le capacità più evidenti vi è la possibilità di rispondere in modo efficace a domande astratte relative agli artefatti generati durante il process mining. Ad esempio, è possibile che gli LLM riescano a identificare anomalie semantiche nei processi o a individuare le cause di determinati problemi. Inoltre, questi modelli sono in grado di generare codice eseguibile, come Python o SQL, applicabile agli artefatti del process mining, facilitando l'analisi e la manipolazione dei dati in modo automatizzato. Nonostante questi progressi, l'efficacia degli LLM si riduce sensibilmente quando si tratta di affrontare scenari più complessi.

 

Un esempio concreto di limitazione degli LLM riguarda i compiti compositi, ovvero attività che potrebbero essere suddivise in vari passaggi logici da un analista umano. Per illustrare meglio, si può considerare la situazione in cui è necessario stimare il livello di ingiustizia all'interno di un registro di eventi. Il livello di ingiustizia si riferisce alla presenza di discriminazioni o disparità di trattamento tra gruppi diversi, ad esempio tra un gruppo protetto (come una minoranza etnica o di genere) e un gruppo non protetto, nell'ambito delle decisioni o delle azioni descritte nel registro di eventi. Un'analisi di questo tipo richiede solitamente una serie di fasi distinte: in primo luogo, è necessaria l'identificazione di un gruppo protetto. Successivamente, si confrontano i dati relativi al gruppo protetto con quelli dei gruppi non protetti per evidenziare eventuali disparità o trattamenti iniqui. Questo tipo di decomposizione del compito in più fasi rappresenta una sfida per gli LLM, che potrebbero non essere in grado di scomporre e gestire correttamente ciascun passaggio del processo in modo autonomo.

 

Un ulteriore esempio riguarda compiti che richiedono una combinazione di abilità tecniche e semantiche. In questi casi, non solo è necessaria la generazione di codice per calcolare statistiche affidabili su un registro di eventi, ma è anche indispensabile che l'LLM abbia la capacità di interpretare correttamente i risultati ottenuti dall'esecuzione di tale codice. Ad esempio, si può immaginare un processo in cui viene generato un modello di processo dichiarativo, ovvero una rappresentazione astratta delle regole e delle condizioni che definiscono come un processo dovrebbe funzionare. Dopo aver prodotto questo modello, l'LLM dovrebbe essere in grado di scrivere codice per verificare la conformità tra il registro di eventi e il modello di processo. Infine, è fondamentale che l'LLM possieda le competenze semantiche necessarie per interpretare i risultati di questa verifica e fornire una comprensione chiara di quanto il registro rispetti o meno il modello stabilito. Tuttavia, proprio in questi scenari complessi, gli LLM possono incontrare difficoltà a completare con successo tutte le fasi richieste, evidenziando i limiti attuali della tecnologia.

 

In questo contesto, viene proposta l'applicazione del paradigma AI-Based Agents Workflow (AgWf) nel campo del process mining. Gli AI-Based Agents Workflow combinano funzioni deterministiche, ovvero funzioni che seguono regole precise e predeterminate, e funzioni non deterministiche, che includono compiti basati sull'intelligenza artificiale e che possono avere esiti non sempre prevedibili. Questa combinazione consente di sfruttare al massimo sia le tecniche consolidate e ben sviluppate nel process mining, sia le capacità di comprensione e interpretazione semantica offerte dai modelli di linguaggio di grandi dimensioni, o LLM.

 

Un aspetto centrale degli AgWf è il loro fondamento nel principio del divide-et-impera. Questo principio suggerisce che i compiti complessi vengano suddivisi in parti più semplici e gestibili, affinché ogni singola parte possa essere eseguita efficacemente dagli LLM. In questo modo, si cerca di migliorare la qualità del risultato complessivo, affrontando le difficoltà tipiche di scenari complessi attraverso una gestione più organizzata e sistematica dei compiti, sfruttando al contempo le capacità specifiche degli LLM in combinazione con strumenti già esistenti nel process mining.

 

Nella ricerca sono state esaminate diverse applicazioni di process mining che traggono vantaggio dall'implementazione basata sugli AI-Based Agents Workflow (AgWf). Sono stati introdotti vari tipi di compiti basati sull'intelligenza artificiale che risultano utili nell'implementazione di pipeline di process mining, come i router, che indirizzano le attività, gli ensemble, che combinano risultati da più modelli, gli evaluator, che valutano l'efficacia delle soluzioni, e gli improvers, che ottimizzano i processi. Questi elementi si rivelano fondamentali per migliorare l'efficienza e la qualità delle analisi nel contesto del process mining.

 

Viene inoltre presentato il framework CrewAI, progettato per facilitare l'implementazione degli AgWf. Questo framework si dimostra particolarmente utile per la gestione di workflow complessi, integrando diverse funzionalità e strumenti per gestire le pipeline di process mining. Sono illustrati due esempi applicativi concreti, che mostrano come gli AgWf possano essere utilizzati efficacemente nel contesto del process mining. In uno degli esempi, viene mostrato un AgWf multi-task, ovvero un flusso di lavoro che affronta più compiti simultaneamente.

 

Concetti fondamentali di AI-Based Agents Workflow

Ogni attività nel flusso di lavoro basato sull'intelligenza artificiale può essere associata a una serie di strumenti tramite una specifica funzione chiamata "tools". La scelta dello strumento più idoneo per eseguire un determinato compito è gestita da una funzione non deterministica alimentata dall'intelligenza artificiale. Questa funzione non assicura che venga selezionato lo stesso strumento ogni volta che viene attivata, poiché l'esito può variare di volta in volta.

 

Il simbolo UΣ rappresenta l'universo di tutte le stringhe possibili, cioè l'insieme di tutte le sequenze di simboli che possono essere generate o processate dagli strumenti e dalle attività che fanno parte del flusso di lavoro.

 

Definizione 1 (Flusso di Lavoro Basato su Agenti AI, AgWf)

Un Flusso di Lavoro Basato su Agenti AI (AgWf) è una tupla (F, T, tools, selector, prec, t1, tf) tale che:

– F ⊆ (UΣ ̸→ UΣ) è un insieme di strumenti.

– T ⊆ (UΣ ⇝ UΣ) è un insieme di compiti (basati su AI).

– tools: T → P(F) associa un insieme di strumenti a un compito.

– selector: UΣ ×P(F) ⇝ F seleziona uno strumento (per l'inchiesta specifica) tra quelli disponibili.

– prec: T → P(T) associa un compito a un insieme di compiti precedenti.

– t1 ∈ T è il compito iniziale del flusso di lavoro.

– tf ∈ T è il compito finale del flusso di lavoro.

 

Nella definizione, non si fa mai menzione esplicita del termine agente. Si presuppone che l'agente (basato su AI) sia l'esecutore sottostante dello strumento basato su AI. In particolare, l'agente è coinvolto nell'esecuzione di due attività non deterministiche:

– La selezione dello strumento, tra quelli disponibili per il compito, da utilizzare per l'inchiesta (mentre lo strumento selezionato è deterministico).

– L'esecuzione del compito stesso, che porta alla risposta finale del compito.

 

Compiti differenti, basati su AI, possono essere associati a diversi agenti AI, per rispecchiare le diverse competenze richieste. Ad esempio, compiti più semplici potrebbero essere eseguiti da agenti meno complessi (riducendo così i costi e i tempi di esecuzione), mentre compiti più complessi richiedono agenti più capaci.

 

Si osserva inoltre che, nella Def. 1, la selezione dei compiti e degli strumenti è non deterministica, mentre la definizione del flusso di lavoro è statica. Il passo successivo naturale nella definizione degli agenti basati su AI consiste nell'orchestrazione automatica dei flussi di lavoro (dove i compiti e il loro ordine sono decisi da un orchestratore).

 

Nella successiva Def. 2, si definisce l'esecuzione di un flusso di lavoro basato su AI. Prima, viene estratta una sequenza di compiti che rispetta l'ordine fornito dal flusso di lavoro. Successivamente, ciascun compito viene eseguito, producendo un output che viene aggiunto (tramite la funzione ⊕) all'inchiesta originale. Sebbene la definizione successiva (Def. 2) possa essere modificata per tenere conto delle esecuzioni concorrenti dei compiti, l'attuale implementazione disponibile per AgWf funziona stabilmente con esecuzioni sequenziali.

 

Definizione 2 (Esecuzione AgWf - Sequenziale)

Sia AgWf = (F, T, tools, selector, prec, t1, tf) un flusso di lavoro basato su agenti AI.

Si definisce l'esecuzione come una tupla ExAgWf = (AgWf, ST, SΣ) tale che: 

– ST = ⟨t1, ... , tf⟩, con t1, ... , tf ∈ T, è una sequenza di task che rispettano l'ordine definito da prec. 

– SΣ = ⟨σ0, σ1, ... , σf⟩ è una sequenza di stringhe, dove σ0 rappresenta lo stato iniziale del flusso di lavoro (ossia la richiesta iniziale dell'utente). 

– Per ogni i ∈ {1, ... , f}: 

  • Se tools(ti) = ∅, allora σi = σi−1 ⊕ ti(σi−1). 

  • Se tools(ti) ≠ ∅, allora σi = σi−1 ⊕ ti(σi−1 ⊕ selector(σi−1, tools(ti))(σi−1)).

 

Nella Def. 2, si distingue tra i task senza strumenti associati e quelli con strumenti associati. Nel primo caso, lo stato del flusso di lavoro è definito come la concatenazione dello stato precedente e del risultato dell'esecuzione del task (basato sull'intelligenza artificiale). Nel secondo caso, l'esecuzione segue questi passaggi: 

1. La selezione di uno strumento tra quelli disponibili. 

2. L'applicazione dello strumento selezionato in modo deterministico sullo stato precedente. 

3. L'esecuzione del task (basato sull'intelligenza artificiale) sullo stato precedente e sul risultato dell'applicazione dello strumento selezionato.

 

Sebbene l'output dello strumento deterministico non venga memorizzato permanentemente nella Def. 2, esso viene utilizzato attivamente per determinare la risposta finale del task basato sull'intelligenza artificiale.

 

AgWf flusso di lavoro intelligente per ottimizzare la gestione dei processi aziendali

Nel contesto di un flusso di lavoro che sfrutta agenti dotati di intelligenza artificiale, viene utilizzata una strategia che integra due diverse astrazioni per rispondere a una richiesta specifica. Queste astrazioni sono il grafo "directly-follows" (DFG) e le varianti di processo. Il grafo "directly-follows" rappresenta una sequenza di attività in un processo, mostrando come un'attività segua immediatamente un'altra. Le varianti di processo, invece, catturano le diverse versioni o modalità con cui un processo può essere eseguito, includendo deviazioni rispetto alla sequenza tipica.

 

I risultati generati dai diversi agenti vengono successivamente combinati attraverso un modello a ensemble, il cui scopo è estrarre il meglio dalle singole risposte prodotte dalle differenti astrazioni. La strategia implica l'uso di quattro diversi prompt, ognuno dei quali può fornire una prospettiva unica sul processo analizzato. Questa molteplicità di approcci consente di ottenere risultati migliori, poiché ciascuna astrazione offre una diversa prospettiva su un artefatto di gestione dei processi.

 

È stato osservato in alcuni studi che l'astrazione delle varianti di processo può essere particolarmente utile per l'analisi delle cause profonde di un problema. Ciò significa che, in un contesto in cui si cerca di capire le origini di un'anomalia o di un malfunzionamento, l'osservazione di come le varianti differiscono rispetto al processo standard può fornire informazioni preziose. D'altra parte, il grafo "directly-follows" potrebbe essere più adeguato per individuare anomalie di tipo semantico, ovvero irregolarità nel modo in cui le attività si collegano tra loro in base alla loro sequenza temporale e logica.

 

Tuttavia, vi sono situazioni in cui l'approccio opposto si dimostra più efficace. Ad esempio, se i problemi di prestazione in un processo si concentrano su una singola transizione tra due attività, il grafo DFG può rivelarsi molto utile per individuare la causa principale del problema. Questo avviene perché il grafo mostra direttamente quali attività seguono altre, rendendo evidente un eventuale rallentamento o disfunzione in una specifica fase del processo. Al contrario, in un processo di tipo "peer-to-peer" (P2P), come quello utilizzato per i pagamenti, se una fattura viene pagata due volte in momenti diversi e non in modo consecutivo, questa anomalia potrebbe non essere visibile nell'analisi basata sul grafo DFG. Invece, l'analisi delle varianti di processo evidenzierebbe questa irregolarità, poiché cattura tutte le deviazioni rispetto al flusso normale del processo.

 

L'integrazione di queste diverse prospettive attraverso l'uso di un modello a ensemble consente quindi di coprire una gamma più ampia di potenziali problemi, aumentando l'efficacia complessiva del sistema di intelligenza artificiale nel rispondere a richieste complesse.

 

Esaminando un esempio specifico, si nota la presenza di task con un inizio e una fine chiaramente definiti, rappresentati da T1 e T4. Il flusso di lavoro, caratterizzato dalla possibilità di eseguire due diverse sequenze di attività, permette di scambiare l'ordine tra T2 e T3. Le sequenze risultanti da questa flessibilità sono quindi ⟨T1, T2, T3, T4⟩ e ⟨T1, T3, T2, T4⟩. Durante l'esecuzione di ciascun task, il risultato viene concatenato alla stringa di input iniziale, creando una risposta progressivamente più ricca e articolata.

 

Ad esempio, partendo da una richiesta ipotetica dell'utente, come "Dimmi quali sono le violazioni nel processo contenuto nel file di log /home/erik/p2p.xes", il task T1 può ottimizzare questa richiesta aggiungendo un dettaglio supplementare: "Potresti analizzare il comportamento nel processo, fornendo un elenco dei comportamenti anomali?". In questo modo, la richiesta originale viene affinata e resa più mirata per le analisi successive.

 

Il task T2 prosegue il lavoro, integrando un'analisi basata sulla rappresentazione del grafo "directly-follows" (DFG). Un esempio di output potrebbe essere: "La transizione da 'Crea Richiesta di Acquisto' a 'Crea Ordine di Acquisto' non dovrebbe mai avvenire senza approvazione." Questo commento segnala un'anomalia specifica relativa alla sequenza delle attività nel processo, evidenziando un problema di controllo o verifica delle fasi.

 

Il task T3, invece, utilizza le varianti di processo come fonte di informazione. Un possibile esempio del suo contributo potrebbe essere: "Non dovresti mai pagare due volte la stessa fattura." In questo caso, l'analisi delle varianti permette di individuare deviazioni rispetto al normale flusso del processo, concentrandosi su possibili errori come la duplicazione dei pagamenti.

 

Infine, il task T4 si occupa di unire le osservazioni fornite dai task precedenti, restituendo una visione complessiva più completa e approfondita del problema. Un esempio di conclusione potrebbe essere: "In conclusione, i principali problemi riscontrati sono la mancanza di standardizzazione nella gestione delle richieste di acquisto e la presenza di pagamenti multipli per la stessa fattura." Questa sintesi combina le diverse prospettive emerse dai task precedenti, fornendo una risposta articolata che non solo individua i comportamenti anomali, ma cerca anche di identificare le possibili cause di tali anomalie.

 

L'esempio evidenzia come un approccio multi-agente, capace di integrare diverse prospettive analitiche su uno stesso processo, consenta di ottenere una risposta più ricca e dettagliata. Attraverso l'utilizzo combinato di tecniche diverse come il grafo DFG e l'analisi delle varianti di processo, si riescono a mettere in luce non solo i sintomi di un problema, ma anche le sue possibili origini, migliorando la comprensione e la gestione del processo.

 

Scomposizione dei compiti per massimizzare l'efficacia degli agenti AI nei processi

Esistono diverse implementazioni possibili dei flussi di lavoro basati su agenti di intelligenza artificiale (AgWf) per svolgere gli stessi compiti, come la rilevazione del bias. Nonostante le molteplici implementazioni, è evidente che alcune siano più efficaci di altre.

 

L'implementazione meno efficace prevede un singolo compito che deve fornire una stima del livello di ingiustizia presente nel log eventi considerato. In un contesto tradizionale, un analista umano risolverebbe il problema dividendo il log eventi tra i casi appartenenti al gruppo protetto e quelli del gruppo non protetto, confrontando successivamente il comportamento tra i due gruppi. Tuttavia, i compiti basati su intelligenza artificiale, secondo la Definizione 1, possono utilizzare un solo strumento e produrre una risposta immediata alla richiesta. Di conseguenza, non sarebbero in grado di completare con successo l'intero processo descritto. Nel migliore dei casi, questi compiti potrebbero derivare alcune intuizioni sulla correttezza analizzando le varianti del processo, ad esempio se attività potenzialmente discriminatorie sono presenti nelle varianti del processo.

 

Un'altra implementazione propone di scomporre il flusso di lavoro in due compiti: uno dedicato all'identificazione del gruppo protetto e l'altro al confronto tra il gruppo protetto e il gruppo non protetto. Questa suddivisione è valida, ma il secondo compito deve scegliere tra diversi strumenti, il che potrebbe portare a risultati incompleti in termini di approfondimento delle problematiche legate all'equità.

 

L'implementazione più efficace prevede la scomposizione del flusso di lavoro in quattro compiti distinti. I compiti secondo e terzo confrontano i gruppi protetto e non protetto utilizzando due approcci diversi, basati rispettivamente sul grafo dei seguiti diretti (DFG) e sulle varianti del processo. I risultati di questi confronti vengono poi uniti da un insieme di algoritmi, che sintetizzano un report finale sull'ingiustizia rilevata nel log eventi.

 

Dato che gli agenti basati su intelligenza artificiale attuali hanno ancora capacità e ambiti di azione limitati, scomporre l'obiettivo finale in sotto compiti più semplici, ciascuno con uno scopo ben definito e limitato, consente di raggiungere più facilmente il risultato desiderato. Questa strategia semplifica l'analisi e l'elaborazione dei problemi complessi, massimizzando l'efficacia dell'approccio basato sull'intelligenza artificiale.

 

Tipi di compiti nei flussi di lavoro AI per l'ottimizzazione dei processi 

Nell'ambito dei flussi di lavoro basati su agenti di intelligenza artificiale (AgWf), i compiti svolgono ruoli diversi e specifici a seconda del contesto applicativo. In particolare, nell'analisi dei processi (PM), vengono identificati vari tipi di compiti con funzioni ben definite.

 

I "Prompt Optimizers" sono compiti che ricevono la richiesta originale dell'utente e la trasformano in un linguaggio ottimizzato per le capacità degli agenti AI. Questi compiti non richiedono solitamente l'uso di strumenti, poiché il loro obiettivo principale è migliorare la chiarezza e l'efficacia della richiesta, assicurando che sia formulata in modo ottimale per la successiva elaborazione.

 

Gli "Ensembles" accettano un prompt che contiene una raccolta di informazioni provenienti da diversi compiti, ciascuno dei quali offre una prospettiva diversa sull'argomento. Il loro obiettivo è restituire un testo coerente che sintetizzi i principali risultati dell'analisi. Ad esempio, un ensemble potrebbe riunire analisi relative a differenti dimensioni del processo, come il flusso di controllo, gli aspetti temporali, i dati e le risorse, producendo un report unificato sull'intero processo.

 

I "Routers" sono compiti che ricevono un prompt e decidono quale nodo dipendente deve essere eseguito. Sebbene il routing esplicito non sia consentito nella definizione di flusso di lavoro (Def. 1), i compiti successivi possono essere istruiti a considerare l'output del router e, eventualmente, saltare la produzione di ulteriori risultati. Un esempio tipico di routing è la scelta tra risolvere direttamente il problema utilizzando un modello linguistico ampio (LLM), nel caso in cui si tratti di un compito semantico che non richiede un accesso approfondito ai dati del log eventi, oppure generare codice eseguibile utilizzando una libreria di process mining come pm4py.

 

Gli "Evaluators" sono compiti che valutano l'output di un compito precedente e ne misurano la qualità, ad esempio assegnando un punteggio da 1.0 a 10.0. Questo tipo di compito è utile per comprendere l'efficacia dell'esecuzione di un compito. Sebbene la definizione di AgWf non preveda la possibilità di cicli (loop), in caso di output di bassa qualità è possibile implementare un meccanismo di ritorno (wrap back), in cui l'esecuzione viene riportata a uno stato precedente per essere ripetuta.

 

Infine, gli "Output Improvers" sono compiti che cercano di migliorare la qualità dell'output dei compiti precedenti. Questi compiti possono affinare ulteriormente le informazioni già generate, offrendo ad esempio una "seconda opinione", oppure, nel caso della generazione di codice, possono migliorare la qualità o la sicurezza del codice prodotto, garantendo che esso sia più robusto e privo di errori.

 

Questi diversi tipi di compiti consentono di gestire e ottimizzare il flusso di lavoro AI in modo più articolato ed efficiente, migliorando la qualità e la precisione del risultato finale.

 

Come implementare flussi di lavoro AgWf AI con CrewAI e modelli LLM avanzati 

Il framework CrewAI, sviluppato in Python, è stato concepito per implementare flussi di lavoro basati su agenti di intelligenza artificiale (AgWf) utilizzando modelli di linguaggio di grandi dimensioni (LLM). Questo framework si basa su una serie di concetti chiave che ne definiscono la struttura e il funzionamento.

 

Gli agenti basati su intelligenza artificiale sono descritti come una combinazione di modelli di linguaggio di grandi dimensioni (LLM) e prompt di sistema, che orientano il comportamento del modello verso un ruolo specifico tramite una tecnica chiamata "role prompting". I compiti basati su intelligenza artificiale vengono definiti attraverso istruzioni testuali e sono associati a un agente AI specifico. Gli strumenti impiegati nel flusso di lavoro sono rappresentati da unità Python, che possono essere classi o funzioni. Ogni compito può essere collegato a determinati strumenti, la cui selezione avviene tramite l'analisi della documentazione disponibile, inclusi gli argomenti di input e il tipo di output previsto.

 

Nel contesto tradizionale, i compiti vengono eseguiti in modo sequenziale, sebbene di recente sia stato introdotto il concetto di esecuzione concorrente tramite processi gerarchici, una funzionalità che necessita ancora di ulteriori sviluppi. Uno dei criteri fondamentali nella scelta di un LLM è la sua capacità di individuare lo strumento più idoneo per ogni specifico compito. Modelli come Llama-3.1, Qwen 2.0, Mistral Large 2 o GPT-4O/GPT-4O-Mini garantiscono un supporto eccellente per l'implementazione di AgWf. Considerando che un flusso di lavoro può comprendere numerosi compiti differenti, la velocità del modello diventa un aspetto cruciale: modelli più leggeri come Llama 3.1 70B e GPT-4O-Mini possono risultare preferibili rispetto alle loro versioni più grandi, grazie alle loro prestazioni soddisfacenti e al minore costo computazionale.

 

CrewAI introduce anche concetti aggiuntivi rispetto alla Definizione 1, come la memoria delle entità, che è un dizionario in cui vengono salvate e recuperate variabili durante l'esecuzione del flusso di lavoro. Ad esempio, da un log iniziale è possibile creare due sub-log (come log di addestramento e di test), e il log di addestramento può essere utilizzato per generare ipotesi che verranno poi testate sul log di test. Inoltre, è possibile definire funzioni Python (callback) da eseguire alla fine di alcuni compiti, ad esempio per salvare i risultati o verificare la correttezza formale.

 

Un esempio di flusso di lavoro CrewAI per la valutazione dell'equità è disponibile attraverso un Jupyter notebook. In questo esempio, viene impiegato il modello Qwen 2.0 72B. Il primo compito si concentra sull'identificazione del gruppo protetto, generando del codice SQL che viene eseguito sul log degli eventi per suddividere i casi tra gruppi "protetti" e "non protetti". Grazie alle avanzate capacità di CrewAI, i log degli eventi risultanti vengono archiviati nella memoria delle entità per essere utilizzati nelle fasi successive. Il compito successivo confronta i due gruppi, producendo una lista di osservazioni testuali. Ogni compito viene assegnato a un agente diverso e, sebbene entrambi utilizzino lo stesso LLM (Qwen 2.0 72B), i prompt di sistema definiscono ruoli distinti per ciascun agente.

 

Viene inoltre definito un ulteriore AgWf per l'analisi delle cause principali, che include due differenti meccanismi di valutazione, accessibile all'indirizzo indicato. Nello specifico, il primo passaggio (T1) esegue l'analisi delle cause principali partendo dall'astrazione DFG, generando un elenco di possibili cause. Successivamente, il passaggio T2 assegna a ciascuna intuizione un punteggio di affidabilità, compreso tra 1.0 (valore minimo) e 10.0 (valore massimo). Il passaggio T3 ha l'obiettivo di fornire una catena di ragionamento per la prima delle intuizioni prodotte, descrivendo in dettaglio i passi logici seguiti. Al termine del flusso di lavoro, vengono restituite le intuizioni classificate con i rispettivi punteggi di affidabilità e i dettagli del ragionamento per la prima intuizione.

 

In questo contesto, vengono definiti tre agenti distinti basati sullo stesso modello linguistico di grandi dimensioni (LLM), ciascuno configurato con diversi prompt di sistema. Rispetto al flusso di lavoro precedentemente delineato, i compiti risultano più semplici da eseguire. Per questa ragione, viene proposta l'adozione del modello Qwen 2.0 8B LLM, significativamente più piccolo rispetto al modello Qwen 2.0 72B LLM, pur mantenendo prestazioni adeguate alle necessità descritte.

 

Prossimi sviluppi dei flussi di lavoro con Agenti di Intelligenza Artificiale

Per quanto riguarda i prossimi sviluppi dei flussi di lavoro basati su agenti di intelligenza artificiale (AgWf), sono state individuate alcune direzioni chiave per migliorare l'efficienza e l'efficacia dell'implementazione.

 

Un'importante area di ricerca riguarda la definizione automatica dei flussi di lavoro (AgWf). Fino ad ora, la decomposizione di un compito in più sotto compiti è stata svolta manualmente dagli esseri umani. Tuttavia, alcuni approcci hanno dimostrato che un modello di linguaggio (LLM) orchestrante potrebbe svolgere automaticamente questa funzione. L'orchestratore decomporrebbe il compito originale in una serie di compiti più piccoli da assegnare ad agenti specializzati. Una delle sfide principali è la corretta interpretazione del compito iniziale da parte dell'orchestratore. Ciò significa che l'LLM deve essere in grado di chiedere chiarimenti, se necessario, per assicurarsi che la suddivisione del compito sia appropriata.

Un altro aspetto importante è mantenere l'essere umano al centro del processo (human-in-the-loop). Sebbene gli AgWf possano automatizzare molti compiti, alcuni potrebbero trarre vantaggio da chiarimenti forniti dall'utente finale. Ad esempio, il prompt optimizer potrebbe avere difficoltà a ottimizzare richieste molto generiche e, in questi casi, potrebbe essere utile interagire con l'utente per ottenere maggiori dettagli.

 

Valutare l'efficacia degli AgWf rappresenta un'ulteriore sfida. La qualità del risultato finale è strettamente legata alla qualità dei singoli agenti incaricati di svolgere le diverse attività. Ad esempio, un errore nella fase iniziale di instradamento della richiesta potrebbe compromettere in modo rilevante l'intera qualità del risultato, anche se tutte le altre attività vengono svolte correttamente. Perciò, è fondamentale valutare con attenzione l'efficacia di ciascuna attività per assicurare che l'output finale raggiunga un elevato livello qualitativo.

 

Quando si coinvolgono più agenti in un sistema, è importante considerare anche le dinamiche di collaborazione e i tratti comportamentali degli agenti stessi. I compiti possono essere programmati affinché gli agenti siano consapevoli di sé o del contesto generale, come l'obiettivo complessivo o il flusso di lavoro. Tuttavia, alcune fonti indicano che anche i modelli linguistici di grandi dimensioni attualmente più avanzati presentano comportamenti cooperativi e capacità di negoziazione limitati, il che può portare a risultati insoddisfacenti.

 

Infine, il supporto offerto dagli strumenti attualmente disponibili per l'implementazione di AgWf(s) è ancora in fase di maturazione. Tra i vari framework proposti, il LangGraph risulta particolarmente rilevante per la sua ampia gamma di funzionalità, come la possibilità di connettersi direttamente ai motori di ricerca. Tuttavia, la struttura di questa libreria è in continua evoluzione, rendendo i prototipi fortemente dipendenti dalla versione specifica utilizzata, con il rischio che smettano di funzionare con aggiornamenti futuri. Anche le interfacce utente proposte per LangGraph mostrano una significativa dipendenza dalla versione della libreria sottostante, limitando la loro affidabilità nel tempo.

 

Nel tentativo di trovare un compromesso tra facilità d'uso e supporto alle funzionalità, è stato proposto CrewAI. Nonostante ciò, questo strumento manca ancora di alcune delle caratteristiche avanzate offerte da LangGraph e non dispone di un'interfaccia grafica. Un'altra soluzione considerata è AutoGen, sviluppata da Microsoft, che rappresenta un'opzione ragionevole, sebbene meno completa rispetto a LangGraph. AutoGen offre un'interfaccia grafica intuitiva che facilita la definizione dei flussi di lavoro, ma rimane inferiore in termini di completezza delle funzionalità rispetto a LangGraph.

 

In generale, tutte le soluzioni analizzate necessitano di ulteriori sviluppi per raggiungere un elevato livello di maturità.

 

Conclusioni

La ricerca "Re-Thinking Process Mining in the AI-Based Agents Era" apre a una riflessione cruciale per il futuro delle imprese che si trovano a integrare sempre più agenti intelligenti nei propri processi. Il punto fondamentale che emerge è che il tradizionale process mining, basato su modelli statici e ben definiti, rischia di essere superato dalla dinamicità e complessità che l'intelligenza artificiale introduce nei sistemi aziendali. In un contesto in cui gli agenti AI operano autonomamente e in tempo reale, le imprese devono ripensare non solo le modalità di raccolta e analisi dei dati, ma anche l'intero concetto di ottimizzazione dei processi.

 

Uno degli aspetti strategici più rilevanti è la capacità di scomporre compiti complessi in parti gestibili. Questa strategia, basata sul principio del "divide et impera", diventa essenziale quando si affrontano problemi multifaccettati, come l'analisi di equità o la rilevazione di anomalie in processi sempre più interconnessi. La capacità di suddividere le attività in sotto compiti permette di sfruttare al massimo le potenzialità degli agenti AI, evitando che essi falliscano quando il compito è troppo complesso per essere affrontato in modo olistico. Le aziende devono quindi adottare un approccio modulare, in cui l'efficacia deriva dalla collaborazione tra agenti specializzati, piuttosto che dall'affidamento a un'unica soluzione generalista.

 

Altro punto di riflessione è la non determinazione tipica degli agenti AI. Questa caratteristica, solitamente vista come un limite rispetto agli approcci deterministici tradizionali, può in realtà rappresentare un'opportunità. La variabilità di risultato, se opportunamente gestita, permette di adattarsi a contesti mutevoli e di esplorare soluzioni innovative a problemi complessi. Per le imprese, questo significa accettare un grado di incertezza nel processo decisionale, bilanciato però dalla possibilità di ottenere insights più raffinati e personalizzati.

 

La prospettiva strategica suggerisce che, per sfruttare appieno il potenziale degli AI-Based Agents Workflow (AgWf), le imprese dovrebbero concentrarsi su una governance flessibile dei processi, che non solo permetta l'adozione di nuove tecnologie, ma incoraggi anche un'interpretazione più dinamica e adattativa dei risultati ottenuti. La sfida non risiede solo nell'implementazione tecnica di questi workflow, ma nella capacità di allineare la cultura aziendale alla gestione di scenari complessi e non completamente prevedibili.

 

Infine, l'approccio human-in-the-loop si rivela strategicamente fondamentale. Mentre l'automazione può accelerare i processi, la presenza umana rimane cruciale per fornire chiarimenti, prendere decisioni in contesti ambigui e guidare l'intelligenza artificiale verso risultati che siano non solo ottimizzati, ma anche etici e allineati agli obiettivi aziendali. Questo equilibrio tra automazione e intervento umano potrebbe diventare il vero vantaggio competitivo per le aziende che vogliono rimanere al passo con l'evoluzione digitale.

36 visualizzazioni0 commenti

Post recenti

Mostra tutti

Comments

Rated 0 out of 5 stars.
No ratings yet

Add a rating
bottom of page