Modelli e piattaforme di IA

Agenti Mobili: Agente Autonomo Multimodale per Dispositivi Mobili con Percezione Visiva

mm
Aggiungi Unite.AI alle tue fonti preferite su Google

L’avvento dei Modelli Linguistici Multimodali (MLLM) ha segnato l’inizio di una nuova era per gli agenti di dispositivi mobili, in grado di comprendere e interagire con il mondo attraverso testo, immagini e voce. Questi agenti rappresentano un significativo progresso rispetto all’intelligenza artificiale tradizionale, offrendo un modo più ricco e intuitivo per gli utenti di interagire con i loro dispositivi. Sfruttando i MLLM, questi agenti possono elaborare e sintetizzare grandi quantità di informazioni da diverse modalità, consentendo loro di offrire assistenza personalizzata e migliorare l’esperienza degli utenti in modi precedentemente inimmaginabili.

Questi agenti sono alimentati da tecniche di apprendimento automatico all’avanguardia e avanzate capacità di elaborazione del linguaggio naturale, consentendo loro di comprendere e generare testo simile a quello umano, nonché interpretare dati visivi e uditivi con notevole precisione. Dall’identificazione di oggetti e scene in immagini alla comprensione di comandi vocali e all’analisi del sentimento del testo, questi agenti multimodali sono in grado di gestire una vasta gamma di input in modo fluido. Il potenziale di questa tecnologia è vasto, offrendo servizi più sofisticati e consapevoli del contesto, come ad esempio assistenti virtuali sintonizzati sulle emozioni umane e strumenti educativi che si adattano agli stili di apprendimento individuali. Hanno anche il potenziale di rivoluzionare l’accessibilità, rendendo la tecnologia più accessibile attraverso barriere linguistiche e sensoriali.

In questo articolo, parleremo di Mobile-Agents, un agente autonomo multimodale per dispositivi mobili che sfrutta la capacità di strumenti di percezione visiva per identificare e localizzare gli elementi visivi e testuali all’interno dell’interfaccia di un’applicazione mobile in modo accurato. Utilizzando questo contesto di visione percepita, il framework Mobile-Agent pianifica e scompone le operazioni complesse in modo autonomo, navigando attraverso le app mobili attraverso operazioni passo dopo passo. Il framework Mobile-Agent si differenzia dalle soluzioni esistenti poiché non si basa sui metadati del sistema mobile o sui file XML delle applicazioni mobili, consentendo una maggiore flessibilità in diversi ambienti di sistema mobile in modo centrato sulla visione. L’approccio seguito dal framework Mobile-Agent elimina la necessità di personalizzazioni specifiche del sistema, portando a prestazioni migliorate e minori richieste computazionali.

Agenti Mobili: Agente Autonomo Multimodale per Dispositivi Mobili

Nel mondo veloce della tecnologia mobile, un concetto pionieristico emerge come un punto di riferimento: i Modelli Linguistici di Grande Scala, in particolare i Modelli Linguistici Multimodali o MLLM in grado di generare una vasta gamma di testo, immagini, video e discorsi in diverse lingue. Lo sviluppo rapido dei framework MLLM negli ultimi anni ha dato vita a una nuova e potente applicazione dei MLLM: gli agenti mobili autonomi. Gli agenti mobili autonomi sono entità software che agiscono, si muovono e funzionano in modo indipendente, senza necessità di comandi umani diretti, progettati per attraversare reti o dispositivi per eseguire compiti, raccogliere informazioni o risolvere problemi.

Gli agenti mobili sono progettati per operare il dispositivo mobile dell’utente in base alle istruzioni dell’utente e ai visual della schermata, un compito che richiede agli agenti di possedere sia la comprensione semantica che le capacità di percezione visiva. Tuttavia, gli agenti mobili esistenti sono lontani dalla perfezione, poiché si basano su modelli linguistici multimodali di grande scala, e anche lo stato attuale dei framework MLLM, compresi GPT-4V, mancano delle capacità di percezione visiva necessarie per servire come agente mobile efficiente. Inoltre, sebbene i framework esistenti possano generare operazioni efficaci, hanno difficoltà a localizzare la posizione di queste operazioni con precisione sullo schermo, limitando le applicazioni e la capacità degli agenti mobili di operare su dispositivi mobili.

Per affrontare questo problema, alcuni framework hanno scelto di sfruttare i file di layout dell’interfaccia utente per assistere GPT-4V o altri MLLM con capacità di localizzazione, con alcuni framework che riescono a estrarre posizioni azionabili sullo schermo accedendo ai file XML dell’applicazione, mentre altri framework hanno scelto di utilizzare il codice HTML dalle applicazioni web. Come si può vedere, la maggior parte di questi framework si basa sull’accesso ai file sottostanti e locali dell’applicazione, rendendo il metodo quasi inefficace se il framework non può accedere a questi file. Per affrontare questo problema ed eliminare la dipendenza degli agenti locali dai file sottostanti per i metodi di localizzazione, gli sviluppatori hanno lavorato su Mobile-Agent, un agente mobile autonomo con impressionanti capacità di percezione visiva. Utilizzando il suo modulo di percezione visiva, il framework Mobile-Agent utilizza screenshot del dispositivo mobile per localizzare le operazioni con precisione.

Inoltre, il framework Mobile-Agents mira a sfruttare le capacità contestuali dei framework MLLM all’avanguardia come GPT-4V per raggiungere capacità di pianificazione autonoma che consentono al modello di pianificare compiti in base alla storia delle operazioni, alle istruzioni dell’utente e agli screenshot in modo olistico. Per migliorare ulteriormente la capacità dell’agente di identificare istruzioni incomplete e operazioni errate, il framework Mobile-Agent introduce un metodo di auto-riflessione. Sotto la guida di prompt attentamente progettati, l’agente riflette su operazioni errate e non valide in modo costante e arresta le operazioni una volta che il compito o l’istruzione è stato completato.

Nel complesso, i contributi del framework Mobile-Agent possono essere riassunti come segue:

  1. Mobile-Agent agisce come un agente autonomo per dispositivi mobili, utilizzando strumenti di percezione visiva per eseguire la localizzazione delle operazioni. Pianifica metodicamente ogni passo e si impegna nell’auto-riflessione. Notabilmente, Mobile-Agent si basa esclusivamente su screenshot del dispositivo, senza l’uso di codice di sistema, mostrando una soluzione basata esclusivamente su tecniche di visione.
  2. Mobile-Agent introduce Mobile-Eval, un benchmark progettato per valutare gli agenti dei dispositivi mobili. Questo benchmark include una varietà delle dieci applicazioni mobili più utilizzate, insieme a istruzioni intelligenti per queste applicazioni, categorizzate in tre livelli di difficoltà.

Mobile-Agent: Architettura e Metodologia

Al suo nucleo, il framework Mobile-Agent consiste in un modello linguistico multimodale all’avanguardia, il GPT-4V, un modulo di rilevamento del testo utilizzato per compiti di localizzazione del testo. Insieme a GPT-4V, Mobile-Agent impiega anche un modulo di rilevamento degli icona per la localizzazione degli icona.

Percezione Visiva

Come menzionato in precedenza, il modello MLLM GPT-4V fornisce risultati soddisfacenti per le istruzioni e gli screenshot, ma non riesce a output la posizione efficace dove le operazioni si verificano. A causa di questa limitazione, il framework Mobile-Agent che implementa il modello GPT-4V deve fare affidamento su strumenti esterni per assistere nella localizzazione delle operazioni, facilitando così l’output delle operazioni sullo schermo mobile.

Localizzazione del Testo

Il framework Mobile-Agent implementa uno strumento OCR per rilevare la posizione del testo corrispondente sullo schermo ogni volta che l’agente deve toccare un testo specifico visualizzato sullo schermo del dispositivo mobile. Ci sono tre scenari unici di localizzazione del testo.

Scenario 1: Nessun Testo Specificato Rilevato

Problema: L’OCR non riesce a rilevare il testo specificato, che può verificarsi in immagini complesse o a causa delle limitazioni dell’OCR.

Risposta: Istruire l’agente a:

  • Riselezionare il testo per toccarlo, consentendo una correzione manuale dell’errore dell’OCR, o
  • Scegliere un’operazione alternativa, come utilizzare un metodo di input diverso o eseguire un’altra azione pertinente al compito in corso.

Giustificazione: Questa flessibilità è necessaria per gestire le occasionali inesattezze o allucinazioni di GPT-4V, assicurando che l’agente possa comunque proseguire in modo efficace.

Scenario 2: Istanza Singola di Testo Specificato Rilevata

Operazione: Generare automaticamente un’azione per cliccare sulle coordinate centrali del riquadro di testo rilevato.

Giustificazione: Con una sola istanza rilevata, la probabilità di identificazione corretta è alta, rendendo efficiente procedere con un’azione diretta.

Scenario 3: Multiple Istanze di Testo Specificato Rilevate

Valutazione: Valutare innanzitutto il numero di istanze rilevate:

Molte Istanze: Indica uno schermo ingombro di contenuti simili, complicando la selezione.

Azione: Richiedere all’agente di riselezionare il testo, mirando a raffinare la selezione o adattare i parametri di ricerca.

Pochi Istanze: Un numero gestibile di rilevamenti consente un approccio più sfumato.

Azione: Ritagliare le aree intorno a queste istanze, espandendo i riquadri di rilevamento del testo verso l’esterno per catturare ulteriore contesto. Questa espansione assicura che più informazioni vengano preservate, aiutando nella presa di decisioni.

Prossimo Passo: Disegnare riquadri di rilevamento sulle immagini ritagliate e presentarle all’agente. Questo aiuto visivo aiuta l’agente a decidere quale istanza interagire, in base a indizi contestuali o requisiti del compito.

Questo approccio strutturato ottimizza l’interazione tra i risultati dell’OCR e le operazioni dell’agente, migliorando l’affidabilità e l’adattabilità del sistema nel gestire compiti basati sul testo in vari scenari. L’intero processo è dimostrato nell’immagine seguente.

Localizzazione degli Icona

Il framework Mobile-Agent implementa uno strumento di rilevamento degli icona per localizzare la posizione di un’icona quando l’agente deve cliccarla sullo schermo del dispositivo mobile. Per essere più specifici, il framework richiede all’agente di fornire attributi specifici dell’immagine, tra cui forma e colore, e poi il framework implementa il metodo Grounding DINO con il prompt dell’icona per identificare tutte le icone contenute nello screenshot. Infine, Mobile-Agent impiega il framework CLIP per calcolare la somiglianza tra la descrizione della regione di clic e le icone eliminate, e seleziona la regione con la somiglianza più alta per un clic.

Esecuzione delle Istruzioni

Per tradurre le azioni in operazioni sullo schermo da parte degli agenti, il framework Mobile-Agent definisce 8 diverse operazioni.

  • Lanciare Applicazione (Nome App): Avviare l’applicazione designata dall’interfaccia del desktop.
  • Toccare il Testo (Etichetta Testo): Interagire con la porzione dello schermo che visualizza l’etichetta “Etichetta Testo”.
  • Interagire con l’Icona (Descrizione Icona, Posizione): Target e toccare l’area dell’icona specificata, dove “Descrizione Icona” dettaglia attributi come colore e forma dell’icona. Scegliere “Posizione” dalle opzioni come alto, basso, sinistra, destra o centro, possibilmente combinando due per una navigazione precisa e per ridurre gli errori.
  • Inserire Testo (Testo di Input): Inserire il testo “Testo di Input” nel campo di testo attivo.
  • Scorrere Su e Giù: Navigare verso l’alto o verso il basso attraverso il contenuto della pagina presente.
  • Tornare Indietro: Tornare alla pagina precedentemente visualizzata.
  • Chiudere: Navigare direttamente al desktop dalla schermata corrente.
  • Arrestare: Concludere l’operazione una volta che il compito è stato completato.

Pianificazione Autonoma

Ogni passo dell’operazione viene eseguito iterativamente dal framework, e prima dell’inizio di ogni iterazione, all’utente viene richiesto di fornire un’istruzione di input, e il modello Mobile-Agent utilizza l’istruzione per generare un prompt di sistema per l’intero processo. Inoltre, prima dell’inizio di ogni iterazione, il framework cattura uno screenshot e lo fornisce all’agente. L’agente osserva quindi lo screenshot, la storia delle operazioni e i prompt di sistema per output il prossimo passo delle operazioni.

Auto-Riflessione

Durante le sue operazioni, l’agente potrebbe incontrare errori che gli impediscono di eseguire correttamente un comando. Per migliorare il tasso di completamento delle istruzioni, è stato implementato un approccio di auto-valutazione, attivato in due circostanze specifiche. Inizialmente, se l’agente esegue un’azione difettosa o non valida che arresta il progresso, come quando riconosce che lo screenshot rimane invariato dopo l’operazione o visualizza una pagina errata, verrà diretto a considerare azioni alternative o adattare i parametri dell’operazione esistente. In secondo luogo, l’agente potrebbe perdere alcuni elementi di una direttiva complessa. Una volta che l’agente ha eseguito una serie di azioni in base al suo piano iniziale, verrà richiesto di rivedere la sequenza di azioni, l’ultimo screenshot e la direttiva dell’utente per valutare se il compito è stato completato. Se vengono rilevate discordanze, l’agente è incaricato di generare autonomamente nuove azioni per adempiere alla direttiva.

Mobile-Agent: Esperimenti e Risultati

Per valutare le sue capacità in modo completo, il framework Mobile-Agent introduce il benchmark Mobile-Eval, che consiste in 10 applicazioni mobili comunemente utilizzate, e progetta tre istruzioni per ogni applicazione. La prima operazione è semplice e copre solo le operazioni di base dell’applicazione, mentre la seconda operazione è leggermente più complessa della prima, poiché include requisiti aggiuntivi. Infine, la terza operazione è la più complessa di tutte, poiché contiene una direttiva utente astratta con l’utente che non specifica esplicitamente quale app utilizzare o quale operazione eseguire.

Proseguendo, per valutare le prestazioni da diverse prospettive, il framework Mobile-Agent progetta e implementa 4 metriche diverse.

  • Su o Successo: Se il mobile-agent completa le istruzioni, viene considerato un successo.
  • Punteggio di Processo o PS: La metrica del Punteggio di Processo misura l’accuratezza di ogni passo durante l’esecuzione delle istruzioni dell’utente e viene calcolata dividendo il numero di passi corretti per il numero totale di passi.
  • Efficienza Relativa o RE: Il punteggio di efficienza relativa è un rapporto o confronto tra il numero di passi che un essere umano deve eseguire per eseguire manualmente l’istruzione e il numero di passi che l’agente deve eseguire per eseguire la stessa istruzione.
  • Tasso di Completamento o CR: La metrica del tasso di completamento divide il numero di passi operati con successo dall’agente con il numero totale di passi eseguiti da un essere umano per completare l’istruzione. Il valore di CR è 1 quando l’agente completa l’istruzione con successo.

I risultati sono dimostrati nella figura seguente.

Inizialmente, per i tre compiti assegnati, il Mobile-Agent ha raggiunto tassi di completamento del 91%, 82% e 82%, rispettivamente. Sebbene non tutti i compiti siano stati eseguiti in modo impeccabile, i tassi di raggiungimento per ogni categoria di compito hanno superato il 90%. Inoltre, la metrica PS rivela che il Mobile-Agent dimostra costantemente una alta probabilità di eseguire azioni accurate per i tre compiti, con tassi di successo intorno all’80%. Inoltre, secondo la metrica RE, il Mobile-Agent mostra un’efficienza dell’80% nell’eseguire operazioni a un livello paragonabile all’ottimalità umana. Questi risultati collettivamente sottolineano la competenza del Mobile-Agent come assistente per dispositivi mobili.

La figura seguente illustra la capacità del Mobile-Agent di comprendere i comandi dell’utente e orchestrare autonomamente le sue azioni. Anche in assenza di dettagli operativi espliciti nelle istruzioni, il Mobile-Agent ha interpretato abilmente le esigenze dell’utente, convertendole in compiti azionabili. Seguendo questa comprensione, l’agente ha eseguito le istruzioni attraverso un processo di pianificazione sistematico.

Pensieri Finali

In questo articolo abbiamo parlato di Mobile-Agents, un agente autonomo multimodale per dispositivi mobili che inizialmente utilizza tecnologie di percezione visiva per rilevare e localizzare con precisione sia gli elementi visivi che quelli testuali all’interno dell’interfaccia di un’applicazione mobile. Con questo contesto di visione percepita, il framework Mobile-Agent pianifica e scompone le operazioni complesse in modo autonomo, navigando attraverso le app mobili passo dopo passo. Questo framework si distingue dalle soluzioni esistenti poiché non si basa sui metadati del sistema mobile o sui file XML delle applicazioni mobili, facilitando così una maggiore flessibilità in diversi ambienti di sistema mobile con un focus sulla elaborazione visiva. La strategia impiegata dal framework Mobile-Agent elimina la necessità di adattamenti specifici del sistema, portando a prestazioni migliorate e minori richieste computazionali. Il framework Mobile-Agent differisce dalle soluzioni esistenti in quanto non si basa sui file XML delle applicazioni mobili, facilitando così una maggiore flessibilità in diversi ambienti di sistema mobile con un focus sulla elaborazione visiva. La strategia adottata dal framework Mobile-Agent elimina la necessità di adattamenti specifici del sistema, portando a prestazioni migliorate e minori richieste computazionali. Il framework Mobile-Agent facilita una maggiore flessibilità nei vari sistemi operativi mobili, concentrandosi sull’elaborazione visiva.

Un ingegnere per professione, uno scrittore per passione. Kunal è uno scrittore tecnico con un profondo amore e comprensione di AI e ML, dedicato a semplificare concetti complessi in questi campi attraverso la sua documentazione coinvolgente e informativa.