Skip to content

YOLO11 Exportation du modèle vers TorchScript pour un déploiement rapide

Le déploiement de modèles de vision par ordinateur dans différents environnements, y compris les systèmes embarqués, les navigateurs web ou les plateformes avec un support limité de Python , nécessite une solution flexible et portable. TorchScript se concentre sur la portabilité et la capacité d'exécuter des modèles dans des environnements où l'ensemble du cadre Python n'est pas disponible. Il est donc idéal pour les scénarios dans lesquels vous devez déployer vos capacités de vision par ordinateur sur différents appareils ou plates-formes.

Exporter vers Torchscript pour sérialiser vos modèles Ultralytics YOLO11 pour une compatibilité multiplateforme et un déploiement simplifié. Dans ce guide, nous vous montrons comment exporter vos modèles YOLO11 au format TorchScript , ce qui vous permettra de les utiliser plus facilement dans un plus grand nombre d'applications.

Pourquoi exporter vers TorchScript?

Torchscript Vue d'ensemble

Développé par les créateurs de PyTorch, TorchScript est un outil puissant pour optimiser et déployer les modèles PyTorch sur une variété de plateformes. L'exportation des modèles YOLO11 vers TorchScript est essentiel pour passer de la recherche aux applications du monde réel. TorchScript L'utilisation de PyTorch , qui fait partie du cadre PyTorch , facilite cette transition en permettant d'utiliser les modèles dans des environnements qui ne prennent pas en charge Python.

Ce processus fait appel à deux techniques : le traçage et la création de scripts. Le traçage enregistre les opérations pendant l'exécution du modèle, tandis que la création de scripts permet de définir des modèles à l'aide d'un sous-ensemble de Python. Ces techniques garantissent que des modèles tels que YOLO11 peuvent toujours exercer leur magie, même en dehors de leur environnement Python habituel.

TorchScript Script et trace

TorchScript Les modèles peuvent également être optimisés grâce à des techniques telles que la fusion d'opérateurs et le raffinement de l'utilisation de la mémoire, ce qui garantit une exécution efficace. Un autre avantage de l'exportation vers TorchScript est qu'elle permet d'accélérer l'exécution des modèles sur diverses plates-formes matérielles. Elle crée une représentation autonome et prête à la production de votre modèle PyTorch qui peut être intégrée dans des environnements C++, des systèmes embarqués ou déployée dans des applications web ou mobiles.

Principales caractéristiques des modèles TorchScript

TorchScript, un élément clé de l'écosystème PyTorch , offre de puissantes fonctionnalités pour optimiser et déployer des modèles d'apprentissage profond.

TorchScript Caractéristiques

Voici les principales caractéristiques qui font de TorchScript un outil précieux pour les développeurs :

  • ExĂ©cution graphique statique: TorchScript utilise une reprĂ©sentation graphique statique du calcul du modèle, ce qui est diffĂ©rent de l'exĂ©cution graphique dynamique de PyTorch. Dans l'exĂ©cution statique du graphe, le graphe de calcul est dĂ©fini et compilĂ© une fois avant l'exĂ©cution rĂ©elle, ce qui amĂ©liore les performances lors de l'infĂ©rence.

  • SĂ©rialisation des modèles: TorchScript vous permet de sĂ©rialiser les modèles PyTorch dans un format indĂ©pendant de la plate-forme. Les modèles sĂ©rialisĂ©s peuvent ĂŞtre chargĂ©s sans nĂ©cessiter le code original Python , ce qui permet de les dĂ©ployer dans diffĂ©rents environnements d'exĂ©cution.

  • Compilation JIT: TorchScript utilise la compilation JIT (Just-In-Time) pour convertir les modèles PyTorch en une reprĂ©sentation intermĂ©diaire optimisĂ©e. La compilation JIT compile le graphe de calcul du modèle, ce qui permet une exĂ©cution efficace sur les appareils cibles.

  • IntĂ©gration inter-langues: Avec TorchScript, vous pouvez exporter les modèles PyTorch vers d'autres langages tels que C++, Java et JavaScript. Il est ainsi plus facile d'intĂ©grer les modèles PyTorch dans des systèmes logiciels existants Ă©crits dans d'autres langages.

  • Conversion graduelle: TorchScript propose une approche de conversion graduelle, vous permettant de convertir progressivement des parties de votre modèle PyTorch en TorchScript. Cette flexibilitĂ© est particulièrement utile lorsqu'il s'agit de modèles complexes ou lorsque vous souhaitez optimiser des parties spĂ©cifiques du code.

Options de déploiement dans TorchScript

Avant d'examiner le code permettant d'exporter les modèles YOLO11 vers le format TorchScript , il convient de comprendre où les modèles TorchScript sont normalement utilisés.

TorchScript offre diverses options de déploiement pour les modèles d'apprentissage automatique, telles que :

  • API C++: Le cas d'utilisation le plus courant de TorchScript est son API C++, qui vous permet de charger et d'exĂ©cuter des modèles TorchScript optimisĂ©s directement dans des applications C++. Cette solution est idĂ©ale pour les environnements de production dans lesquels Python n'est pas adaptĂ© ou disponible. L'API C++ permet une exĂ©cution efficace et Ă  faible coĂ»t des modèles TorchScript , maximisant ainsi le potentiel de performance.

  • DĂ©ploiement mobile: TorchScript offre des outils pour convertir les modèles dans des formats facilement dĂ©ployables sur des appareils mobiles. PyTorch Mobile fournit un moteur d'exĂ©cution pour l'exĂ©cution de ces modèles dans les applications iOS et Android . Cela permet des capacitĂ©s d'infĂ©rence hors ligne Ă  faible latence, amĂ©liorant ainsi l'expĂ©rience de l'utilisateur et la confidentialitĂ© des donnĂ©es.

  • DĂ©ploiement dans le nuage: les modèles TorchScript peuvent ĂŞtre dĂ©ployĂ©s sur des serveurs basĂ©s dans le nuage Ă  l'aide de solutions telles que TorchServe. Cette solution offre des fonctionnalitĂ©s telles que le versionnement des modèles, la mise en lots et la surveillance des mesures pour un dĂ©ploiement Ă©volutif dans des environnements de production. Le dĂ©ploiement dans le nuage avec TorchScript peut rendre vos modèles accessibles via des API ou d'autres services web.

Exportation vers TorchScript: Conversion de votre modèle YOLO11

L'exportation des modèles YOLO11 vers TorchScript facilite leur utilisation à différents endroits et leur permet de fonctionner plus rapidement et plus efficacement. C'est une excellente chose pour tous ceux qui cherchent à utiliser les modèles d'apprentissage profond plus efficacement dans les applications du monde réel.

Installation

Pour installer le paquetage requis, exécutez :

Installation

# Install the required package for YOLO11
pip install ultralytics

Pour des instructions détaillées et les meilleures pratiques liées au processus d'installation, consultez notre guide d'installationUltralytics . Lors de l'installation des paquets requis pour YOLO11, si vous rencontrez des difficultés, consultez notre guide des problèmes courants pour obtenir des solutions et des conseils.

Utilisation

Avant de plonger dans les instructions d'utilisation, il est important de noter que si tous les modèlesUltralytics YOLO11 sont disponibles pour l'exportation, vous pouvez vous assurer que le modèle que vous sélectionnez prend en charge la fonctionnalité d'exportation ici.

Utilisation

from ultralytics import YOLO

# Load the YOLO11 model
model = YOLO("yolo11n.pt")

# Export the model to TorchScript format
model.export(format="torchscript")  # creates 'yolo11n.torchscript'

# Load the exported TorchScript model
torchscript_model = YOLO("yolo11n.torchscript")

# Run inference
results = torchscript_model("https://ultralytics.com/images/bus.jpg")
# Export a YOLO11n PyTorch model to TorchScript format
yolo export model=yolo11n.pt format=torchscript  # creates 'yolo11n.torchscript'

# Run inference with the exported model
yolo predict model=yolo11n.torchscript source='https://ultralytics.com/images/bus.jpg'

Pour plus de détails sur le processus d'exportation, consultez la page de documentationUltralytics sur l'exportation.

Déploiement des modèles exportés YOLO11 TorchScript

Après avoir exporté avec succès vos modèles Ultralytics YOLO11 au format TorchScript , vous pouvez maintenant les déployer. La première étape recommandée pour l'exécution d'un modèle TorchScript consiste à utiliser la méthode YOLO("model.torchscript"), comme indiqué dans l'extrait de code d'utilisation précédent. Toutefois, pour obtenir des instructions détaillées sur le déploiement de vos modèles TorchScript dans divers autres contextes, consultez les ressources suivantes :

  • Explorer le dĂ©ploiement mobile: La documentation PyTorch La documentation mobile fournit des lignes directrices complètes pour le dĂ©ploiement de modèles sur des appareils mobiles, garantissant ainsi l'efficacitĂ© et la rĂ©activitĂ© de vos applications.

  • MaĂ®triser le dĂ©ploiement cĂ´tĂ© serveur: Apprenez Ă  dĂ©ployer des modèles cĂ´tĂ© serveur avec TorchServe, qui propose un tutoriel Ă©tape par Ă©tape pour un service de modèles Ă©volutif et efficace.

  • DĂ©ploiement de C++: Plongez dans le didacticiel sur le chargement d'un modèle TorchScript en C++, qui facilite l'intĂ©gration de vos modèles TorchScript dans des applications C++ pour une performance et une polyvalence accrues.

Résumé

Dans ce guide, nous avons exploré le processus d'exportation des modèles Ultralytics YOLO11 vers le format TorchScript . En suivant les instructions fournies, vous pouvez optimiser les performances des modèles YOLO11 et bénéficier de la flexibilité nécessaire pour les déployer sur différentes plates-formes et dans différents environnements.

Pour plus de détails sur l'utilisation, consultez la documentation officielle deTorchScript.

Par ailleurs, si vous souhaitez en savoir plus sur d'autres intégrations de Ultralytics YOLO11 , visitez notre page de guide d'intégration. Vous y trouverez de nombreuses ressources et informations utiles.

FAQ

Qu'est-ce que Ultralytics YOLO11 modèle d'exportation vers TorchScript?

L'exportation d'un modèle Ultralytics YOLO11 vers TorchScript permet un déploiement flexible et multiplateforme. TorchScript Python , qui fait partie de l'écosystème PyTorch , facilite la sérialisation des modèles, qui peuvent ensuite être exécutés dans des environnements qui ne prennent pas en charge . Il est donc idéal pour déployer des modèles sur des systèmes embarqués, des environnements C++, des applications mobiles et même des navigateurs web. L'exportation vers TorchScript permet une performance efficace et une plus grande applicabilité de vos modèles YOLO11 sur diverses plateformes.

Comment puis-je exporter mon modèle YOLO11 vers TorchScript en utilisant Ultralytics?

Pour exporter un modèle YOLO11 vers TorchScript, vous pouvez utiliser l'exemple de code suivant :

Utilisation

from ultralytics import YOLO

# Load the YOLO11 model
model = YOLO("yolo11n.pt")

# Export the model to TorchScript format
model.export(format="torchscript")  # creates 'yolo11n.torchscript'

# Load the exported TorchScript model
torchscript_model = YOLO("yolo11n.torchscript")

# Run inference
results = torchscript_model("https://ultralytics.com/images/bus.jpg")
# Export a YOLO11n PyTorch model to TorchScript format
yolo export model=yolo11n.pt format=torchscript  # creates 'yolo11n.torchscript'

# Run inference with the exported model
yolo predict model=yolo11n.torchscript source='https://ultralytics.com/images/bus.jpg'

Pour plus de détails sur le processus d'exportation, consultez la documentationUltralytics sur l'exportation.

Pourquoi utiliser TorchScript pour déployer les modèles YOLO11 ?

L'utilisation de TorchScript pour le déploiement des modèles YOLO11 présente plusieurs avantages :

  • PortabilitĂ©: Les modèles exportĂ©s peuvent fonctionner dans des environnements ne nĂ©cessitant pas Python, tels que les applications C++, les systèmes embarquĂ©s ou les appareils mobiles.
  • Optimisation: TorchScript prend en charge l'exĂ©cution statique des graphes et la compilation Just-In-Time (JIT), ce qui permet d'optimiser les performances des modèles.
  • IntĂ©gration inter-langues: les modèles TorchScript peuvent ĂŞtre intĂ©grĂ©s dans d'autres langages de programmation, ce qui amĂ©liore la flexibilitĂ© et l'extensibilitĂ©.
  • SĂ©rialisation: Les modèles peuvent ĂŞtre sĂ©rialisĂ©s, ce qui permet un chargement et une infĂ©rence indĂ©pendants de la plate-forme.

Pour plus d'informations sur le déploiement, consultez les sites PyTorch Mobile Documentation, TorchServe Documentation et C++ Deployment Guide.

Quelles sont les étapes d'installation pour exporter les modèles YOLO11 vers TorchScript?

Pour installer le paquetage nécessaire à l'exportation des modèles YOLO11 , utilisez la commande suivante :

Installation

# Install the required package for YOLO11
pip install ultralytics

Pour des instructions détaillées, consultez le guide d'installationUltralytics . Si des problèmes surviennent pendant l'installation, consultez le guide des problèmes courants.

Comment puis-je déployer mes modèles exportés TorchScript YOLO11 ?

Après avoir exporté les modèles YOLO11 au format TorchScript , vous pouvez les déployer sur diverses plateformes :

  • API C++: IdĂ©ale pour les environnements de production Ă  faible coĂ»t et Ă  haute efficacitĂ©.
  • DĂ©ploiement mobile: Utilisez PyTorch Mobile pour les applications iOS et Android .
  • DĂ©ploiement dans le nuage: Utilisez des services tels que TorchServe pour un dĂ©ploiement Ă©volutif cĂ´tĂ© serveur.

Découvrez des lignes directrices complètes pour le déploiement de modèles dans ces contextes afin de tirer pleinement parti des capacités du site TorchScript.

📅C réé il y a 9 mois ✏️ Mis à jour il y a 2 mois

Commentaires