OmniParser: Revolucionando la comprensión de pantallas para agentes de interfaz gráfica basados en visión

OmniParser

Logo

¿Qué es este proyecto?

OmniParser es una herramienta integral de análisis de pantallas diseñada para agentes de interfaz gráfica basados en visión pura. Analiza capturas de pantalla de interfaces de usuario y las convierte en elementos estructurados y fáciles de entender, mejorando significativamente la capacidad de los modelos de visión como GPT-4V para generar acciones que pueden anclarse con precisión en las regiones correspondientes de la interfaz.

Características principales

  • Detección de elementos de pantalla y análisis en datos estructurados
  • Predicción de si los elementos de pantalla son interactuables o no
  • Capacidades de descripción funcional de iconos
  • Detección detallada de iconos pequeños
  • Registro local de trayectorias para crear canales de datos de entrenamiento
  • Integración con OmniTool para control de máquinas virtuales Windows 11

Público objetivo

  • Investigadores de IA que trabajan en agentes basados en visión
  • Desarrolladores que crean herramientas de automatización de interfaz gráfica
  • Equipos que crean canales de datos de entrenamiento para agentes de interacción con interfaces gráficas

Cómo utilizarlo

Instalación

cd OmniParser
conda create -n "omni" python==3.12
conda activate omni
pip install -r requirements.txt

Descarga de los pesos del modelo:

# descargar los puntos de control del modelo al directorio local OmniParser/weights/
for f in icon_detect/{train_args.yaml,model.pt,model.yaml} icon_caption/{config.json,generation_config.json,model.safetensors}; do huggingface-cli download microsoft/OmniParser-v2.0 "$f" --local-dir weights; done
mv weights/icon_caption weights/icon_caption_florence

Ejecutando la demo

Explora ejemplos en demo.ipynb o ejecuta la demo de Gradio:

python gradio_demo.py

URL/repositorio del proyecto

Casos de uso/escenarios de aplicación

  • Mejora de las capacidades de modelos de visión para interacción con interfaz de usuario
  • Automatización de pruebas e interacción con interfaces gráficas
  • Creación de canales de datos de entrenamiento para agentes de dominio específico
  • Orquestación multi-agente para tareas complejas de interfaz
  • Integración con LLMs como OpenAI (4o/o1/o3-mini), DeepSeek (R1), Qwen (2.5VL) o Anthropic Computer Use
  • Navegación por interfaz gráfica y automatización de tareas
  • Detección de elementos y anclaje para accesibilidad de interfaces

Compartir este artículo