Implantar modelosYOLO Ultralytics mediante la integración de ExecuTorch
Explore cómo exportar modelos Ultralytics YOLO como Ultralytics YOLO11 al formato ExecuTorch para un despliegue eficiente y PyTorch en dispositivos edge y móviles.
Explore cómo exportar modelos Ultralytics YOLO como Ultralytics YOLO11 al formato ExecuTorch para un despliegue eficiente y PyTorch en dispositivos edge y móviles.
Ciertas aplicaciones de visión por ordenador, como la inspección de calidad automatizada, los drones autónomos o los sistemas de seguridad inteligentes, funcionan mejor cuando los modelosYOLO de Ultralytics , como Ultralytics YOLO11se ejecutan cerca del sensor que captura las imágenes. En otras palabras, estos modelos necesitan procesar los datos directamente donde se generan, en cámaras, drones o sistemas integrados, en lugar de enviarlos a la nube.
Este enfoque, conocido como IA periférica, permite a los modelos realizar inferencias directamente en el dispositivo donde se capturan los datos. Al procesar la información localmente en lugar de depender de servidores remotos, los sistemas pueden lograr una menor latencia, una mayor privacidad de los datos y una mayor fiabilidad, incluso en entornos con conectividad a Internet limitada o inexistente.
Por ejemplo, una cámara de fabricación que inspecciona miles de productos cada minuto, o un dron que navega por entornos complejos, no pueden permitirse los retrasos que conlleva el procesamiento en la nube. Ejecutar YOLO11 directamente en el dispositivo permite realizar inferencias al instante.
Para que la ejecución de modelos Ultralytics YOLO en el borde sea más fácil y eficiente, la nueva integración ExecuTorch soportada por Ultralytics proporciona una forma simplificada de exportar y desplegar modelos directamente en dispositivos móviles e integrados. ExecuTorch forma parte del ecosistema PyTorch Edge y ofrece una solución integral para ejecutar modelos de inteligencia artificial directamente en hardware móvil y periférico, como teléfonos, wearables, placas integradas y microcontroladores.
Esta integración facilita la implementación de un modeloYOLO Ultralytics , como YOLO11, desde la formación hasta el despliegue en dispositivos periféricos. Al combinar las capacidades de visión de YOLO11con el tiempo de ejecución ligero de ExecuTorch y el canal de exportación PyTorch , los usuarios pueden desplegar modelos que se ejecutan de forma eficiente en hardware periférico, al tiempo que conservan la precisión y el rendimiento de la inferencia PyTorch.
En este artículo, vamos a ver más de cerca cómo funciona la integración ExecuTorch, por qué es un gran ajuste para aplicaciones de borde AI, y cómo se puede empezar a implementar modelos Ultralytics YOLO con ExecuTorch. Comencemos.
Normalmente, cuando se entrena un modelo en PyTorch, se ejecuta en potentes servidores o unidades de procesamiento gráfico (GPU) en la nube. Sin embargo, desplegar ese mismo modelo en un dispositivo móvil o integrado, como un smartphone, un dron o un microcontrolador, requiere una solución especializada que pueda gestionar una potencia de cálculo, una memoria y una conectividad limitadas.
Eso es exactamente lo que aporta ExecuTorch. ExecuTorch es una solución integral desarrollada como parte del ecosistema PyTorch Edge que permite una inferencia eficiente en el dispositivo a través de plataformas móviles, integradas y periféricas. Amplía las capacidades de PyTorchmás allá de la nube, permitiendo que los modelos de IA se ejecuten directamente en dispositivos locales.
En esencia, ExecuTorch proporciona un tiempo de ejecución C++ ligero que permite que los modelos PyTorch se ejecuten directamente en el dispositivo. ExecuTorch utiliza el formato de modelo PyTorch ExecuTorch (.pte), una exportación optimizada diseñada para una carga más rápida, una menor huella de memoria y una mejor portabilidad.
Admite XNNPACK como backend predeterminado para una inferencia eficiente de la unidad central de procesamientoCPU) y amplía la compatibilidad a una amplia gama de backends de hardware, incluidos Core ML, Metal, Vulkan, Qualcomm, MediaTek, Arm EthosU y OpenVINO, entre otros.
Estos backends permiten una aceleración optimizada en dispositivos móviles, integrados y especializados. ExecuTorch también se integra con el canal de exportación PyTorch , lo que proporciona compatibilidad con funciones avanzadas como la cuantización y la gestión dinámica de formas para mejorar el rendimiento y la adaptabilidad en distintos entornos de implantación.
La cuantificación reduce el tamaño del modelo y aumenta la velocidad de inferencia al convertir valores de alta precisión (como los flotantes de 32 bits) en otros de menor precisión, mientras que el manejo dinámico de formas se utiliza para que los modelos procesen con eficacia tamaños de entrada variables. Ambas funciones son cruciales para ejecutar modelos de inteligencia artificial en dispositivos con recursos limitados.

Más allá de su tiempo de ejecución, ExecuTorch también actúa como una capa de abstracción unificada para múltiples backends de hardware. En pocas palabras, abstrae los detalles específicos del hardware y gestiona cómo interactúan los modelos con las distintas unidades de procesamiento, incluidas CPU, GPU y unidades de procesamiento neuronal (NPU).
Una vez exportado un modelo, ExecuTorch puede configurarse para que se dirija al backend más adecuado para un dispositivo determinado. Los desarrolladores pueden desplegar modelos de forma eficiente en distintos equipos sin necesidad de escribir código específico para cada dispositivo ni de mantener flujos de trabajo de conversión independientes.
Gracias a su diseño modular y portátil y a su perfecta integración PyTorch , ExecuTorch es una gran opción para implementar modelos de visión por ordenador como Ultralytics YOLO11 en sistemas móviles e integrados. Acorta la distancia entre la formación del modelo y el despliegue en el mundo real, haciendo que la IA de vanguardia sea más rápida, eficiente y fácil de implementar.
Antes de ver cómo exportar los modelosYOLO Ultralytics al formato ExecuTorch, vamos a explorar qué hace de ExecuTorch una opción fiable para desplegar IA en el edge.
He aquí algunas de sus principales características:
Ahora que tenemos una mejor comprensión de lo que ofrece ExecuTorch, vamos a ver cómo exportar los modelosYOLO Ultralytics al formato ExecuTorch.
Para empezar, tendrá que instalar el paqueteUltralytics Python utilizando pip, que es un instalador de paquetes. Puede hacerlo ejecutando "pip install ultralytics" en su terminal o símbolo del sistema.
Si estás trabajando en un entorno Jupyter Notebook o Google Colab, simplemente añade un signo de exclamación antes del comando, como "!pip install ultralytics". Una vez instalado, el paquete Ultralytics proporciona todas las herramientas necesarias para entrenar, probar y exportar modelos de visión por ordenador, incluido Ultralytics YOLO11.
Si se encuentra con algún problema durante la instalación o la exportación del modelo, la documentación oficial Ultralytics y la guía de problemas comunes contienen pasos detallados para la solución de problemas y las mejores prácticas para ayudarle a ponerse en marcha sin problemas.
Tras instalar el paquete Ultralytics , puede cargar una variante del modelo YOLO11 y exportarla al formato ExecuTorch. Por ejemplo, puede utilizar un modelo preentrenado como "yolo11n.pt" y exportarlo llamando a la función export con el formato configurado como "executorch".
Esto crea un directorio llamado "yolo11n_executorch_model", que incluye el archivo del modelo optimizado (.pte) y un archivo YAML de metadatos independiente que contiene detalles importantes como el tamaño de la imagen y los nombres de las clases.
Aquí tienes el código para exportar tu modelo:
from ultralytics import YOLO
model = YOLO("yolo11n.pt")
model.export(format="executorch")
Una vez exportado, el modelo está listo para ser desplegado en dispositivos móviles y de borde utilizando el tiempo de ejecución ExecuTorch. El archivo de modelo .pte exportado puede cargarse en su aplicación para ejecutar la inferencia en tiempo real en el dispositivo sin necesidad de conexión a la nube.
Por ejemplo, el siguiente fragmento de código muestra cómo cargar el modelo exportado y ejecutar la inferencia. Inferencia significa simplemente utilizar un modelo entrenado para hacer predicciones sobre nuevos datos. En este caso, el modelo se prueba con una imagen de un autobús tomada de una URL pública.
executorch_model = YOLO("yolo11n_executorch_model")
results = executorch_model.predict(ultralytics, save=True)
Tras ejecutar el código, encontrará la imagen de salida con los objetos detectados guardada en la carpeta "detect".

Mientras explora las diferentes opciones de exportación soportadas por Ultralytics, puede que se pregunte qué hace que la integración de ExecuTorch sea única. La diferencia clave es lo bien que combina el rendimiento, la simplicidad y la flexibilidad, lo que facilita la implementación de potentes modelos de IA directamente en dispositivos móviles y periféricos.
He aquí algunas de las principales ventajas de utilizar la integración de ExecuTorch:
Recientemente, Ultralytics fue reconocida como una historia de éxito de PyTorch ExecuTorch, destacando nuestro apoyo temprano para la inferencia en el dispositivo y las contribuciones en curso al ecosistema PyTorch . Este reconocimiento refleja un objetivo compartido de hacer que la IA de alto rendimiento sea más accesible en plataformas móviles y periféricas.
En la práctica, esto se parece a las soluciones Vision AI del mundo real que funcionan con eficacia en todo tipo de dispositivos, desde teléfonos inteligentes hasta sistemas integrados. Por ejemplo, en la industria manufacturera, los dispositivos de vanguardia desempeñan un papel crucial en la supervisión de las líneas de producción y la detección de defectos en tiempo real.

En lugar de enviar imágenes o datos de sensores a la nube para su procesamiento, lo que puede introducir retrasos y depender de la conectividad a Internet, la integración de ExecuTorch permite que los modelos YOLO11 se ejecuten directamente en el hardware local. Esto significa que las fábricas pueden detect problemas de calidad al instante, reducir el tiempo de inactividad y mantener la privacidad de los datos, todo ello con recursos informáticos limitados.
He aquí algunos otros ejemplos de cómo pueden aplicarse la integración de ExecuTorch y los modelosYOLO Ultralytics :

La exportación de modelos Ultralytics YOLO al formato ExecuTorch facilita el despliegue de modelos de visión por ordenador en muchos dispositivos, incluidos smartphones, tabletas y sistemas integrados como Raspberry Pi. Esto significa que es posible ejecutar inferencia optimizada en el dispositivo sin depender de la conectividad en la nube, lo que mejora la velocidad, la privacidad y la fiabilidad.
Junto con ExecuTorch, Ultralytics admite una amplia gama de integraciones, como TensorRT, OpenVINO y CoreML, entre otras, lo que ofrece a los desarrolladores la flexibilidad necesaria para ejecutar sus modelos en distintas plataformas. A medida que crece la adopción de Vision AI, estas integraciones simplifican el despliegue de sistemas inteligentes creados para funcionar eficazmente en condiciones reales.
¿Siente curiosidad por la IA? Consulte nuestro repositorio de GitHub, únase a nuestra comunidad y explore nuestras opciones de licencia para poner en marcha su proyecto Vision AI. Obtenga más información sobre innovaciones como la IA en el comercio minorista y la visión por ordenador en logística visitando nuestras páginas de soluciones.