Dedicamos 3 días a evaluar el rendimiento de cuatro agentes de IA móviles ( DroidRun, Mobile-Agent, AutoDroid y AppAgent ) en 65 tareas del mundo real utilizando un emulador de Android con aplicaciones como gestión de calendario, creación de contactos, captura de fotos, grabación de audio y operaciones con archivos.
Consulte los resultados de las pruebas comparativas, que incluyen una comparación del rendimiento en el mundo real, los costes y los tiempos de ejecución :
Comparación del rendimiento de los agentes de IA móvil
DroidRun
Mayor tasa de éxito (43%) con un alto coste por tarea exitosa (0,075 $, ~3225 tokens).
DroidRun demostró el mejor rendimiento con una tasa de éxito del 43 % en las 65 tareas. Si analizamos únicamente las tareas que todos los agentes completaron con éxito, DroidRun consumió un promedio de 3225 tokens a un costo de 0,075 dólares por tarea.
Este considerable consumo de recursos refleja la arquitectura de razonamiento en múltiples pasos de DroidRun, donde el agente realiza un seguimiento detallado del estado, genera planes de acción explícitos y proporciona explicaciones para cada decisión. Si bien es costoso, este enfoque integral ofrece la mayor tasa de éxito en la prueba comparativa.
Agente móvil
Rendimiento sólido (29%) y rentable (0,025 dólares, ~1.130 tokens).
Mobile-Agent logró la segunda tasa de éxito más alta, con un 29%, manteniendo una rentabilidad razonable. En las tareas que se completaron con éxito en todos los agentes, Mobile-Agent obtuvo un promedio de $0.025 y 1,130 tokens por tarea.
Esto representa aproximadamente un tercio del coste por tarea de DroidRun, al tiempo que logra cerca de dos tercios de su tasa de éxito, lo que convierte a Mobile-Agent en una opción atractiva para implementaciones donde las limitaciones presupuestarias son importantes.
Sin embargo, la diferencia de 14 puntos porcentuales en la tasa de éxito sugiere que las capacidades de razonamiento adicionales de DroidRun aportan un valor significativo para aplicaciones de misión crítica.
AutoDroid
Máxima rentabilidad (14% de éxito, 0,017 $, ~765 tokens), pero eficacia limitada.
AutoDroid demostró el menor coste en tareas que suelen tener éxito, con tan solo 0,017 dólares y 765 tokens por tarea, lo que la convierte en la opción más económica de la comparativa.
Sin embargo, su tasa de éxito del 14%, menos de la mitad del rendimiento de Mobile-Agent y aproximadamente un tercio del de DroidRun, indica que esta ventaja en costes conlleva importantes desventajas en cuanto a fiabilidad.
A pesar de utilizar un enfoque basado en acciones similar al de DroidRun, la mínima sobrecarga de razonamiento de AutoDroid se traduce en un ahorro sustancial de costes, pero en una capacidad limitada para completar las tareas.
Agente de aplicaciones
El peor desempeño (7% de éxito) con el costo más alto ($0.90, ~2,346 tokens)
AppAgent registró la tasa de éxito más baja, con un 7%, y el costo más alto en tareas que suelen tener éxito, con 0,90 dólares y 2346 tokens por tarea. Doce veces más caro que DroidRun y más de cincuenta veces más costoso que AutoDroid.
Esta baja relación coste-rendimiento se debe al enfoque basado en visión de AppAgent, que procesa capturas de pantalla etiquetadas mediante modelos de lenguaje natural multimodales para cada interacción. Cada captura de pantalla enviada al modelo de lenguaje natural multimodal consume una cantidad considerable de tokens de entrada para el procesamiento de imágenes, mientras que las respuestas de texto reales (tokens de finalización) siguen siendo relativamente modestas.
Esto crea una distribución de tokens muy desequilibrada, donde la sobrecarga del procesamiento de visión domina el coste sin mejoras correspondientes en la finalización de la tarea, ya que el agente tiene dificultades con los cálculos de coordenadas y la identificación de elementos de la interfaz de usuario en interfaces móviles.
Comparación del tiempo de ejecución de agentes de IA móviles
En la única tarea que todos los agentes completaron con éxito, AutoDroid fue el más rápido con 57 segundos, seguido de cerca por Mobile-Agent con 66 segundos. DroidRun completó la tarea en 78 segundos, lo que demuestra que su arquitectura de razonamiento de múltiples pasos permite una ejecución eficiente a pesar del mayor consumo de tokens.
AppAgent presentó una latencia significativamente mayor, de 180 segundos, debido a su enfoque basado en visión, que requiere un procesamiento extenso de capturas de pantalla a través de LLM multimodales para cada interacción.
Aquí puede consultar nuestra metodología de evaluación comparativa.
Descripción general de los agentes de IA móviles
El número de estrellas en GitHub cambia rápidamente, y actualizaremos la tabla en consecuencia.
DroidRun
DroidRun es un framework de código abierto que crea agentes de IA nativos para dispositivos móviles capaces de controlar de forma autónoma aplicaciones y teléfonos. Se trata de un framework fundamental que convierte las interfaces de usuario en datos estructurados con los que pueden interactuar modelos de lenguaje complejos, lo que permite la automatización de procesos complejos directamente en dispositivos móviles.
DroidRun rápidamente ganó popularidad: más de 900 desarrolladores se registraron en 24 horas y el proyecto alcanzó las 3800 estrellas en GitHub, convirtiéndose en uno de los marcos de trabajo de más rápido crecimiento para agentes de IA móviles.
Véalo en acción:
AutoDroid
AutoDroid es un sistema de automatización de tareas móviles diseñado para realizar tareas arbitrarias en cualquier aplicación de Android sin necesidad de configuración manual. Aprovecha el razonamiento de sentido común de grandes modelos de lenguaje como GPT-4 y Vicuna, combinado con análisis automatizados específicos de cada aplicación.
AutoDroid introduce una representación de interfaz de usuario sensible a la funcionalidad para conectar las interfaces de las aplicaciones con los modelos de lógica descriptiva (LLM), utiliza la inyección de memoria basada en la exploración para enseñar al modelo comportamientos específicos de la aplicación e incluye optimización de consultas para reducir los costos de inferencia. Evaluado en un conjunto de 158 tareas, logró una precisión de acción del 90,9 % y un éxito de tarea del 71,3 %, superando a los métodos de referencia basados únicamente en GPT-4. 1
Agente móvil
El repositorio de GitHub X-PLUG/MobileAgent es la implementación oficial de Mobile-Agent, un marco de agente de IA diseñado para controlar de forma autónoma las aplicaciones móviles mediante la percepción y el razonamiento sobre sus representaciones visuales de la interfaz de usuario.
Este proyecto, desarrollado por el grupo X-PLUG de la Universidad de Tsinghua, fue presentado en ICLR 2024 con el objetivo de ampliar los límites de los agentes móviles mediante el aprendizaje multimodal, en particular la percepción visual y el seguimiento de instrucciones. Vea el vídeo para observar su funcionamiento.
Agente de aplicaciones
El repositorio de GitHub TencentQQGYLab/AppAgent es un proyecto de investigación de código abierto del QQG Y-Lab de Tencent. Presenta AppAgent, un marco de trabajo para agentes de IA móviles diseñado para operar de forma autónoma y razonar a través de aplicaciones de Android sin necesidad de código escrito por humanos para cada aplicación individual.
Fuente: AppAgent 2
Características de los agentes de IA móviles
Manejo de comandos orientado a objetivos
El agente determina qué aplicaciones abrir, qué acciones realizar y cómo secuenciarlas. Por ejemplo, los usuarios especifican lo que quieren que se haga (p. ej., «Reservar un viaje al aeropuerto»), no los pasos individuales.
Razonamiento respaldado por LLM
Impulsados por grandes modelos de lenguaje (por ejemplo, GPT-4, Claude, Gemini), estos agentes pueden:
- Identificar la intención del usuario y el contenido de la pantalla.
- Generar planes de acción lógicos y paso a paso.
- Adaptarse a los cambios dinámicos de la interfaz de usuario en los diferentes estados de la aplicación.
Control de aplicación nativo y estructurado
En lugar de depender del web scraping:
- Los agentes extraen jerarquías de interfaz de usuario estructuradas (por ejemplo, árboles de botones y campos basados en XML).
- Interactúan directamente con los elementos de la interfaz de usuario, tratándolos como API de primera clase.
- Ejemplo: DroidRun utiliza las API de accesibilidad de Android para leer y actuar sobre elementos reales de la interfaz de usuario.
Ejecución de flujo de trabajo entre aplicaciones
Los agentes trabajan con múltiples aplicaciones y flujos de trabajo de varios pasos. Pueden replanificar si falla un paso intermedio. Por ejemplo: «Descargar un archivo del correo electrónico → subirlo a Drive Google → enviar una confirmación».
Ejecución en la nube y en el dispositivo para agentes de IA móviles
Los agentes de IA móviles pueden ejecutarse en la nube, en el dispositivo o utilizar un enfoque híbrido.
Los agentes basados en la nube se conectan a modelos como GPT-4, Claude o Gemini mediante llamadas a la API. Esto permite un razonamiento sofisticado y la finalización de tareas en varios pasos. Sin embargo, requiere la transmisión de datos de pantalla y contexto del usuario a servidores externos, lo que genera preocupaciones sobre la privacidad, especialmente en aplicaciones sensibles. El rendimiento también depende de una conectividad de red estable.
Los agentes integrados en el dispositivo ejecutan los modelos directamente en el hardware móvil, manteniendo todos los datos localmente. Esto elimina los riesgos de transmisión y permite la funcionalidad sin conexión. La desventaja es la capacidad limitada del modelo: las NPU y GPU móviles actuales restringen el tamaño del modelo, lo que puede reducir la precisión en tareas de razonamiento complejas.
Las arquitecturas híbridas combinan ambos enfoques. Los modelos ligeros en el dispositivo gestionan las tareas rutinarias y la clasificación inicial de intenciones, mientras que las operaciones complejas se envían a los modelos ligeros en la nube. Apple y Gemini Nano siguen este patrón, procesando las solicitudes sencillas localmente y escalándolas cuando es necesario. El equilibrio óptimo entre el procesamiento local y en la nube continúa evolucionando a medida que mejora el hardware de IA en el borde.
Riesgos de seguridad y privacidad en agentes de IA móviles
Los agentes de IA móviles leen el contenido de la pantalla, navegan por las aplicaciones y ejecutan acciones, obteniendo un acceso profundo a datos confidenciales del usuario. Esto plantea varias preocupaciones:
- Exposición del contenido de la pantalla: Los agentes pueden transmitir contraseñas, mensajes y datos financieros a sistemas LLM en la nube para su procesamiento.
- Fuga de credenciales: Los flujos de trabajo de inicio de sesión automático pueden exponer involuntariamente las contraseñas guardadas y los tokens de autenticación.
- Retención de datos poco clara: a menudo no está claro cómo se almacenan o comparten los registros de los agentes y las capturas de pantalla.
- Riesgo de inyección instantánea: el contenido malicioso de la aplicación podría manipular el comportamiento del agente a través de texto de interfaz de usuario diseñado.
Para abordar estos riesgos se requiere un enfoque por capas:
- Procesamiento en el dispositivo: Ejecutar los modelos localmente reduce la necesidad de transmitir datos confidenciales a servidores externos.
- Enmascaramiento de PII: La detección y el enmascaramiento automáticos de información personal antes de las llamadas a la API limitan la exposición.
- Límites de permisos: Restringir el acceso del agente a categorías de aplicaciones sensibles (banca, salud, mensajería) evita el acceso no deseado a los datos.
- Políticas de API transparentes: Elegir proveedores con políticas claras de manejo y retención de datos ayuda a garantizar el cumplimiento.
Metodología de evaluación comparativa
Realizamos una evaluación comparativa para analizar el rendimiento de los agentes móviles de IA que operan en el sistema operativo Android en tareas reales. Utilizamos el marco de trabajo AndroidWorld y probamos todos los agentes con las mismas tareas estándar.
Marco de trabajo AndroidWorld
AndroidWorld es una plataforma de evaluación comparativa de código abierto desarrollada específicamente por Google Research para evaluar agentes móviles. Esta plataforma tiene como objetivo medir el rendimiento de los agentes que trabajan en aplicaciones Android reales mediante tareas estandarizadas.
La característica más importante de AndroidWorld es que utiliza aplicaciones Android reales en lugar de entornos de prueba artificiales y puede evaluar automáticamente el rendimiento de los agentes. En este estudio, utilizamos 65 tareas que abarcan escenarios de uso cotidiano de dispositivos móviles, como la gestión del calendario, la adición de contactos, la grabación de voz, la toma de fotografías y las operaciones con archivos.
Configuración del entorno
Configuración del sistema: Para configurar el entorno de evaluación comparativa, primero instalamos Android Studio en el sistema operativo Windows 11 y configuramos el emulador oficial de Android de Google.
Configuración del dispositivo virtual: Creamos un dispositivo virtual que simulaba un Pixel 6. Las especificaciones de este dispositivo virtual se configuraron como sistema operativo Android 13 (nivel de API 33), resolución de 1080 × 2400, 8 GB de RAM y 20 GB de espacio de almacenamiento.
Configuración del emulador: Para integrar el emulador con AndroidWorld, configuramos el puerto gRPC como 8554 porque AndroidWorld se comunica con el emulador a través de este puerto.
Configuración del entorno Python: Para preparar el entorno Python, creamos un nuevo entorno conda con Python 3.11 usando Miniconda. Tras clonar el repositorio de AndroidWorld desde GitHub, instalamos todas las dependencias con pip. Uno de los pasos más importantes de AndroidWorld es la configuración del emulador.
El comando de configuración tardó aproximadamente entre 45 y 60 minutos. Durante este proceso, AndroidWorld instaló automáticamente todas las aplicaciones de Android que se iban a probar en el emulador.
Creación de datos de estado inicial : Creó datos de estado inicial para cada aplicación; por ejemplo, agregó algunos eventos a la aplicación de calendario, contactos a la aplicación de contactos y un podcast llamado "banana" a la aplicación de podcasts. También guardó instantáneas para cada tarea, de modo que cada una pueda comenzar desde un estado inicial limpio.
Integraciones de agentes
AutoDroid
Integración de AutoDroid: Para integrar AutoDroid, primero clonamos el repositorio de GitHub e instalamos los paquetes de Python necesarios. La principal característica de AutoDroid es la identificación de elementos de la interfaz de usuario mediante el análisis de XML y la realización de tareas con un enfoque basado en acciones.
El agente asigna un número de índice a cada elemento clicable o enfocable en la pantalla y recibe comandos del LLM como “tap(5)” o “text('hola')”.
Envoltorio de AutoDroid: Para la integración con AndroidWorld, creamos una clase envoltorio llamada autodroid_agent.py. Este envoltorio realiza las configuraciones necesarias en el método de inicialización de AutoDroid, convierte el objetivo de la tarea proveniente de AndroidWorld en un formato de solicitud que AutoDroid puede transformar las acciones generadas por AutoDroid en comandos ADB reales utilizando las funciones execute_adb_call de AndroidWorld.
Flujo de ejecución: En el método step de AutoDroid, el agente primero toma una captura de pantalla y un volcado XML de la pantalla, analiza los elementos de la interfaz de usuario, envía esta información al LLM y realiza acciones de toque, deslizamiento o entrada de texto según la respuesta recibida.
DroidRun
Integración con DroidRun: Seguimos un proceso de integración similar para DroidRun. Después de clonar el repositorio de DroidRun desde GitHub, instalamos las dependencias en requirements.txt.
La estructura arquitectónica de DroidRun es más compleja debido a su sistema de razonamiento por etapas y seguimiento de estados. DroidRun no solo explica qué hará en cada paso, sino también por qué, y puede utilizar los resultados de los pasos anteriores en el siguiente.
Envoltorio de DroidRun: Creamos el envoltorio droidrun_agent.py para la integración con AndroidWorld. La parte más importante de este envoltorio fue lograr que la clase CodeActAgent de DroidRun fuera compatible con la interfaz base del agente de AndroidWorld.
Proceso de ejecución: Al llamar al método execute_task de DroidRun, el agente pasa por una fase de planificación de tareas, ejecuta cada paso y evalúa los resultados. Adaptamos este proceso al modelo de ejecución paso a paso de AndroidWorld. Además, implementamos las herramientas utilizadas por DroidRun (tap_by_index, start_app, list_packages, etc.) con los comandos ADB de AndroidWorld.
Agente de aplicaciones
Integración de AppAgent: La integración de AppAgent fue diferente a las demás porque utiliza un enfoque basado en visión artificial. Tras clonar el repositorio de AppAgent, integramos los archivos Python de la carpeta de scripts en AndroidWorld.
Enfoque basado en visión: El principio de funcionamiento de AppAgent es el siguiente: primero toma una captura de pantalla, luego calcula los recuadros delimitadores de los elementos de la interfaz de usuario, dibuja estos recuadros en la captura de pantalla, asigna un número a cada uno y envía esta captura de pantalla etiquetada a un LLM multimodal. El LLM determina visualmente en qué elemento se debe hacer clic.
Configuración del wrapper: El paso más importante para integrar AppAgent fue redirigir la parte que se comunica con el dispositivo Android mediante el módulo and_controller.py de AppAgent al emulador de AndroidWorld. En el wrapper appagent_agent.py, reimplementamos los métodos get_screenshot y get_xml de AppAgent para que funcionen con las API de AndroidWorld. También hicimos que el archivo model.py de AppAgent, que utiliza el formato de API OpenAI, fuera compatible con la API OpenRouter.
Agente móvil (M3A)
Integración de Mobile-Agent (M3A) : La integración de M3A fue el proceso más completo, ya que funciona completamente mediante visión artificial y cuenta con un sistema de análisis de interfaz de usuario muy detallado. Tras clonar el repositorio de M3A, también instalamos el framework de interacción Mobile-Env para Android, puesto que M3A depende de él.
Análisis en múltiples pasos: El principio de funcionamiento de M3A se basa en dividir la pantalla en cuadrículas, analizar cada cuadrícula por separado y realizar una planificación en múltiples pasos. Al crear el envoltorio m3a_agent.py, necesitábamos integrar el sistema de entorno propio de M3A con el entorno de AndroidWorld. M3A normalmente usa su propio entorno móvil, pero lo redirigimos al entorno de AndroidWorld.
Múltiples llamadas a LLM: Observamos que M3A realiza múltiples llamadas a LLM en cada paso (como planificación, selección de acciones, verificación) y las hicimos compatibles con los límites de pasos de AndroidWorld.
Procedimiento de prueba y recopilación de datos
Flujo de prueba: El procedimiento de prueba para cada agente funcionó de la siguiente manera: Primero, iniciamos el emulador con una instantánea limpia. Una vez que el emulador se abrió por completo, ejecutamos run.py de AndroidWorld. Ejecutamos 65 tareas secuencialmente para cada agente y utilizamos Claude 4.5 Sonnet para todos ellos.
Ejecución de tareas: AndroidWorld realizó automáticamente los siguientes pasos para cada tarea: cargar el estado inicial de la tarea, iniciar el agente, enviar el objetivo de la tarea al agente, realizar un seguimiento de los pasos del agente, detenerse cuando se alcanza el número máximo de pasos o cuando el agente indica "tarea completada" y comprobar si la tarea se realizó correctamente.
Criterios de éxito: El sistema de evaluación de tareas de AndroidWorld incluye criterios de éxito predefinidos. Por ejemplo, para la tarea "Agregar contacto llamado John Doe", AndroidWorld consulta la base de datos de contactos para confirmar que el contacto se haya agregado.
Para las tareas del calendario, se verifica en la base de datos si el evento se creó con la fecha, hora, título y descripción correctos. Al finalizar la ejecución de cada tarea, AndroidWorld nos proporcionó el tiempo de ejecución y el estado de éxito (Verdadero/Falso). Estos datos se registraron automáticamente y se utilizaron para el análisis.
Recopilación de datos: Tras completar la prueba de rendimiento, identificamos la tarea que todos los agentes completaron con éxito. Cada agente ejecutó esta tarea 10 veces y se calculó el tiempo de ejecución promedio, el coste y el consumo de tokens para obtener métricas de rendimiento más fiables.
Posibles razones detrás de las diferencias de rendimiento en los agentes de IA móviles
Las diferencias observadas se deben principalmente a las decisiones arquitectónicas y a los métodos de interacción.
DroidRun prioriza la fiabilidad mediante razonamiento en múltiples pasos, planificación explícita y seguimiento del estado. Esto mejora el éxito de las tareas, pero aumenta el uso de tokens y el coste.
Mobile-Agent equilibra rendimiento y eficiencia. Su razonamiento más sencillo y su comprensión visual reducen los costes manteniendo tasas de éxito moderadas, lo que lo hace adecuado para casos de uso con presupuestos ajustados.
AutoDroid se centra en la ejecución basada en acciones con una mínima sobrecarga de razonamiento. Esto se traduce en el menor coste y los tiempos de ejecución más rápidos, pero también limita su capacidad para gestionar tareas complejas o ambiguas.
AppAgent depende en gran medida de la interacción basada en visión mediante modelos lógicos multimodales. El procesamiento frecuente de capturas de pantalla aumenta la latencia y el coste, mientras que los problemas de coordinación de la interfaz de usuario reducen el éxito de las tareas.
Preguntas frecuentes
Los agentes de IA móvil son sistemas de software que interactúan de forma autónoma con los usuarios y las aplicaciones móviles mediante el uso de lenguaje natural y razonamiento orientado a objetivos para completar tareas en nombre de los usuarios. A diferencia de las herramientas de automatización tradicionales o los primeros asistentes personales, estos agentes funcionan con inteligencia artificial. Algunos de sus casos de uso incluyen:
Automatización de control de calidad móvil sin scripts de prueba
Automatizar flujos de trabajo móviles como la carga de documentos de identidad o el cambio de la configuración del perfil.
Asistentes de IA que gestionan aplicaciones para personas con discapacidad visual, personas mayores o cualquier otra persona.
Tareas cotidianas generales , como crear eventos en el calendario o incluso completar lecciones de Duolingo.
Sé el primero en comentar
Tu dirección de correo electrónico no será publicada. Todos los campos son obligatorios.