Immagine AI

DataFlow-Harness è un framework open-source progettato per guidare gli agenti di intelligenza artificiale nella costruzione di pipeline di elaborazione dati strutturate, persistenti e modificabili. Il sistema è stato sviluppato da ricercatori dell’Università di Pechino, dell’Accademia Zhongguancun e dell’Istituto di Ricerca sugli Algoritmi Avanzati di Shanghai per affrontare uno dei principali limiti degli attuali agenti di programmazione basati sui modelli linguistici di grandi dimensioni.

Un agente può generare rapidamente uno script Python destinato ad analizzare un singolo file JSON o a eseguire una trasformazione circoscritta. Le difficoltà aumentano però quando deve costruire un processo completo per acquisire migliaia di documenti disordinati, suddividerne il contenuto in blocchi, valutarne la qualità, eliminare il rumore e preparare i dati per un sistema di generazione aumentata dal recupero, adattando ogni fase all’infrastruttura già utilizzata dall’organizzazione. In questi scenari, i modelli linguistici tendono a produrre script autonomi e a formato libero, spesso difficili da integrare con le piattaforme MLOps e con gli strumenti di orchestrazione impiegati negli ambienti produttivi. Il codice generato può contenere dipendenze errate, operatori non disponibili, riferimenti a servizi inesistenti o ipotesi non aggiornate sulla configurazione aziendale. Anche quando lo script funziona, il risultato rimane spesso un artefatto usa e getta, complicato da verificare, rappresentare graficamente e modificare da parte di altri ingegneri.

DataFlow-Harness modifica il modo in cui l’agente opera. Invece di consentirgli di produrre liberamente codice Python, il framework lo vincola alla costruzione progressiva di un flusso di lavoro basato sui componenti realmente disponibili nella piattaforma. La pipeline viene rappresentata come un grafo aciclico diretto, o DAG, formato da sorgenti dati, operatori di elaborazione e dipendenze di esecuzione. L’agente non riscrive ogni volta l’intero processo, ma applica modifiche incrementali e tipizzate alla struttura persistente. Può aggiungere un operatore, collegare due nodi, modificare un parametro o associare una risorsa registrata. Ogni intervento viene controllato rispetto allo stato effettivo della piattaforma e alle regole di compatibilità previste dall’ambiente di esecuzione.

I ricercatori definiscono il problema affrontato dal framework come “NL2Pipeline gap”, ossia la distanza tra una richiesta espressa dall’utente in linguaggio naturale e la necessità di produrre una risorsa strutturata, eseguibile e gestibile all’interno di un sistema reale. La semplice accuratezza nella generazione del codice non è sufficiente, perché la pipeline deve utilizzare operatori installati, rispettare gli schemi dei dataset, collegarsi ai modelli e ai servizi registrati e conservare correttamente le dipendenze tra le varie fasi. Gli esperimenti hanno evidenziato questa differenza. Claude Code, autorizzato a scrivere script standard a formato libero e dotato del contesto relativo alla base di codice, ha raggiunto un tasso di successo del 94,2%. Quando lo stesso agente è stato invece limitato alla costruzione di un grafo nativo utilizzando esclusivamente i blocchi della piattaforma, il risultato è sceso all’83,3%. La costruzione di pipeline controllabili e compatibili con un ambiente di produzione si è quindi dimostrata più complessa rispetto alla generazione di codice autonomo.

L’architettura di DataFlow-Harness è organizzata attorno a quattro componenti principali: il backend della pipeline, il livello di interazione DataFlow-WebUI, gli strumenti basati sul Model Context Protocol e il sistema di guida DataFlow-Skills. Il backend rappresenta la fonte centrale dello stato della pipeline. Mantiene il DAG, registra i dataset disponibili, gli operatori, i modelli, i servizi e le relative dipendenze. Le modifiche proposte dall’agente non vengono applicate come porzioni arbitrarie di codice, ma come operazioni strutturate che aggiornano il grafo senza perdere lo stato precedente.

DataFlow-Skills è composto da file Markdown che inseriscono nella finestra di contesto del modello conoscenze specifiche sul dominio e sulle procedure da seguire. Le skill descrivono come selezionare gli operatori, interpretare gli schemi, combinare differenti formati di dati e assemblare correttamente i vari componenti della pipeline. In questo modo l’agente non deve dedurre ogni volta da zero il funzionamento della piattaforma, ma riceve istruzioni esplicite sulle compatibilità e sulle sequenze operative. Il livello MCP consente all’agente di interrogare in tempo reale il registro degli operatori e lo stato corrente del flusso di lavoro. Attraverso questi strumenti può verificare quali componenti siano effettivamente disponibili e proporre modifiche coerenti con le risorse installate. Il sistema controlla quindi che i nodi siano collegati in una sequenza valida, che i riferimenti a dataset, modelli e servizi esistano e che i diversi operatori utilizzino strutture dati compatibili.

DataFlow-WebUI mette a disposizione un’interfaccia conversazionale e un editor grafico del DAG. Gli sviluppatori possono descrivere il processo desiderato in linguaggio naturale e osservare la costruzione progressiva della pipeline. Possono inoltre esaminare graficamente i nodi aggiunti dall’intelligenza artificiale, controllare le connessioni, modificare i parametri e intervenire manualmente prima dell’esecuzione. L’implementazione esegue verifiche statiche sui metadati prima di accettare le modifiche. I controlli riguardano l’esistenza dei dataset registrati, la disponibilità degli operatori, la correttezza dei riferimenti ai modelli, il passaggio dei campi tra una fase e l’altra, l’impiego dei parametri e la validità strutturale complessiva del grafo. Gli errori possono essere corretti direttamente dall’ingegnere oppure sottoposti nuovamente all’agente nei turni successivi.

Il framework è stato valutato attraverso un benchmark composto da 12 attività distribuite in sei scenari industriali di elaborazione dati, tra cui generazione di coppie domanda-risposta, governance delle revisioni e normalizzazione degli schemi. I ricercatori hanno utilizzato Claude Opus 4.7 come modello di base e hanno confrontato DataFlow-Harness con tre differenti configurazioni. La prima configurazione, denominata Vanilla CC, utilizzava Claude Code senza particolari vincoli e consentiva al modello di produrre codice standard. La seconda, Context-Aware CC, forniva all’agente l’accesso al codice sorgente di DataFlow direttamente nella finestra di contesto. La terza, MCP-only, metteva a disposizione gli strumenti MCP e richiedeva la generazione di DAG nativi, ma non includeva le DataFlow-Skills.

DataFlow-Harness ha raggiunto un tasso di successo end-to-end del 93,3%. Il risultato è superiore di dieci punti percentuali rispetto alla configurazione MCP-only, che si è fermata all’83,3%, e supera il 91,7% ottenuto da Claude Code senza vincoli. Le prestazioni sono rimaste inferiori di appena 0,9 punti percentuali rispetto al 94,2% raggiunto dall’agente dotato dell’intero codice sorgente della piattaforma. Il framework ha ridotto anche il consumo di risorse. Il costo medio delle API è stato pari a 0,261 dollari per attività, con una diminuzione del 72,5% rispetto a Claude Code standard e del 42,8% rispetto alla configurazione con accesso alla base di codice. Il tempo necessario per generare i flussi di lavoro è risultato inferiore del 49,9% rispetto alla configurazione standard e del 17,6% rispetto all’agente sensibile al contesto.

Le DataFlow-Skills hanno avuto un ruolo particolarmente importante nelle attività che richiedevano conoscenze implicite del dominio. L’agente dotato soltanto degli strumenti MCP riusciva spesso a creare grafi formalmente validi, ma non sempre era in grado di dedurre la procedura corretta partendo esclusivamente dalle descrizioni degli operatori. Le skill hanno consentito di trasformare queste conoscenze operative in istruzioni riutilizzabili e accessibili durante la costruzione. Uno dei test ha riguardato l’estrazione di domande e risposte da un libro di testo. La pipeline doveva combinare l’analisi di file PDF, il recupero del layout originale, il riconoscimento ottico dei caratteri, l’estrazione delle immagini, la comprensione multimodale e l’associazione tra domande e risposte collocate in sezioni lontane del documento. DataFlow-Harness ha raggiunto una precisione del 97,2% e una copertura dell’87,3%, recuperando un numero maggiore di coppie valide rispetto alle configurazioni di confronto. Il vantaggio non è derivato dalla generazione di nuovi algoritmi per ogni singolo passaggio, ma dalla capacità dell’agente di combinare correttamente risorse e operatori già presenti nella piattaforma. L’approccio ha permesso di evitare la duplicazione delle funzioni esistenti e di mantenere ogni fase della pipeline visibile, controllabile e sostituibile.

DataFlow-Harness è stato utilizzato anche per costruire flussi di generazione di dati sintetici destinati all’addestramento dei modelli. In uno degli esperimenti, l’agente ha creato una pipeline a più stadi che produceva coppie di istruzioni e risposte, le analizzava, le riscriveva, ne valutava la qualità attraverso un giudice basato su un modello linguistico e filtrava gli output non conformi prima di trasferirli alla fase di addestramento. Una pipeline simile, realizzata attraverso script separati, richiederebbe la gestione manuale di numerosi passaggi, dipendenze e formati intermedi. Nel framework, ogni attività rimane invece rappresentata come una fase autonoma e ispezionabile. Gli ingegneri possono verificare gli input e gli output di ogni nodo, sostituire un operatore e applicare i normali controlli utilizzati negli ambienti produttivi. Un ulteriore esperimento ha riguardato la pulizia e la sintesi di dati matematici. I dati generati dalla pipeline DataFlow-Harness sono stati impiegati per addestrare un modello che ha ottenuto una precisione media superiore sui benchmark AIME24 e AIME25 rispetto a un modello addestrato con i dati prodotti dalla pipeline standard generata da Claude Code.

DataFlow-Harness è distribuito con licenza Apache 2.0, ma l’implementazione corrente è nativa della piattaforma DataFlow. Non può essere installata direttamente come estensione pronta all’uso per Airflow, Prefect o Spark. Le organizzazioni che desiderano utilizzare uno di questi sistemi come infrastruttura di esecuzione devono sviluppare un adattatore capace di collegare i registri, i metadati e le interfacce operative interne con il livello di controllo dell’agente. L’adozione richiede inoltre la preparazione dell’ambiente nel quale l’intelligenza artificiale deve operare. Le aziende devono mantenere un registro aggiornato degli operatori, definire gli schemi dei dati, descrivere le risorse disponibili e trasformare le procedure ricorrenti in skill utilizzabili dall’agente. Questo lavoro iniziale consente di imporre limiti precisi e di ridurre gli errori, ma rappresenta un costo di configurazione che non sarebbe giustificato per piccole trasformazioni occasionali.

Il framework non è quindi pensato per sostituire un semplice script quando l’attività è limitata e non deve essere mantenuta nel tempo. È meno adatto anche agli ambienti legacy che non possono esporre metadati affidabili o descrivere in modo strutturato gli operatori e le risorse disponibili. Le verifiche integrate impediscono numerosi errori strutturali, ma non sostituiscono i sistemi di sicurezza e conformità aziendale. Il controllo della validità del DAG non elimina la necessità di applicare politiche di accesso, modelli di rilevamento convalidati, registrazione degli eventi, procedure di approvazione umana e verifiche normative. DataFlow-Harness deve quindi essere considerato come un livello di controllo ingegneristico per la costruzione assistita delle pipeline. L’agente può automatizzare i passaggi ripetitivi entro limiti espliciti, mentre gli ingegneri rimangono responsabili della semantica dei dati, delle politiche aziendali, della sicurezza e delle decisioni che richiedono conoscenza del dominio.

Di Fantasy