Exportation d’un modèle YOLO26 vers TorchScript pour un déploiement rapide#
PyTorch a déprécié TorchScript et supprime progressivement ses fonctionnalités. Pour les nouveaux déploiements mobiles et edge, utilise l’intégration ExecuTorch prise en charge. Ultralytics conserve l’export TorchScript standard pour assurer la compatibilité avec les applications C++ existantes.
Le déploiement de modèles de vision par ordinateur dans des environnements C++ sans Python nécessite une représentation sérialisée portable. TorchScript assure cette compatibilité pour les applications LibTorch existantes.
Exporte tes modèles Ultralytics YOLO26 vers TorchScript afin de les sérialiser pour assurer la compatibilité multiplateforme et simplifier le déploiement. Dans ce guide, nous te montrerons comment exporter tes modèles YOLO26 au format TorchScript afin de faciliter leur utilisation dans un plus large éventail d’applications.
Pourquoi exporter vers TorchScript ?#

Développé par les créateurs de PyTorch, TorchScript est un outil puissant pour optimiser et déployer des modèles PyTorch sur différentes plateformes. L’exportation de modèles YOLO26 vers TorchScript est essentielle pour passer de la recherche aux applications concrètes. TorchScript, qui fait partie du framework PyTorch, facilite cette transition en permettant d’utiliser des modèles PyTorch dans des environnements qui ne prennent pas en charge Python.
Le processus utilise deux techniques : le traçage et le scripting. Le traçage enregistre les opérations pendant l’exécution du modèle, tandis que le scripting permet de définir des modèles à l’aide d’un sous-ensemble de Python. Ces techniques garantissent que des modèles comme YOLO26 peuvent continuer à fonctionner efficacement, même en dehors de leur environnement Python habituel.

Les modèles TorchScript peuvent également être optimisés grâce à des techniques telles que la fusion d’opérateurs et l’amélioration de l’utilisation de la mémoire, afin de garantir une exécution efficace. Un autre avantage de l’exportation vers TorchScript est la possibilité d’accélérer l’exécution des modèles sur différentes plateformes matérielles. Elle crée une représentation autonome et prête pour la production de ton modèle PyTorch, qui peut être intégrée dans des environnements C++.
Fonctionnalités clés des modèles TorchScript#
TorchScript, un élément clé de l’écosystème PyTorch, fournit de puissantes fonctionnalités pour optimiser et déployer des modèles d’apprentissage profond.

Voici les principales fonctionnalités qui font de TorchScript un outil précieux pour les développeurs :
-
Exécution avec graphe statique : TorchScript utilise une représentation en graphe statique des calculs du modèle, contrairement à l’exécution avec graphe dynamique de PyTorch. Dans une exécution avec graphe statique, le graphe de calcul est défini et compilé une seule fois avant l’exécution réelle, ce qui améliore les performances pendant l’inférence.
-
Sérialisation des modèles : TorchScript te permet de sérialiser les modèles PyTorch dans un format indépendant de la plateforme. Les modèles sérialisés peuvent être chargés sans nécessiter le code Python d’origine, ce qui permet leur déploiement dans différents environnements d’exécution.
-
Compilation JIT : TorchScript utilise la compilation juste à temps (JIT) pour convertir les modèles PyTorch en une représentation intermédiaire optimisée. La compilation JIT du graphe de calcul du modèle permet une exécution efficace sur les appareils cibles.
-
Conversion progressive : TorchScript propose une approche de conversion progressive qui te permet de convertir petit à petit certaines parties de ton modèle PyTorch en TorchScript. Cette flexibilité est particulièrement utile avec des modèles complexes ou lorsque tu souhaites optimiser des portions spécifiques du code.
Options de déploiement dans TorchScript#
Avant d’examiner le code d’exportation des modèles YOLO26 au format TorchScript, voyons où les modèles TorchScript sont généralement utilisés.
TorchScript offre diverses options de déploiement pour les modèles d’apprentissage automatique, notamment :
-
API C++ : le cas d’utilisation le plus courant de TorchScript est son API C++ LibTorch, qui te 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 où Python peut être inadapté ou indisponible. L’API C++ offre une exécution efficace et avec une faible surcharge des modèles TorchScript, afin d’exploiter au mieux leur potentiel en matière de performances.
-
Déploiement mobile : pour une inférence à faible latence et hors ligne ainsi que la confidentialité des données sur les appareils mobiles, utilise ExecuTorch, le remplacement de TorchScript Mobile par PyTorch.
-
Déploiement dans le cloud : les modèles TorchScript peuvent être déployés sur des serveurs cloud à l’aide de solutions telles que TorchServe. Cette solution fournit des fonctionnalités comme la gestion des versions des modèles, le traitement par lots et la surveillance des métriques pour un déploiement évolutif en production. Le déploiement de TorchScript dans le cloud peut rendre tes modèles accessibles via des API ou d’autres services web.
Tâches prises en charge#
L’exportation TorchScript prend en charge les sept tâches Ultralytics. La segmentation sémantique et l’estimation de profondeur sont disponibles uniquement avec YOLO26, la seule famille qui inclut ces têtes.
| Tâche | YOLOv8 | YOLO11 | YOLO26 |
|---|---|---|---|
| Détection | ✅ | ✅ | ✅ |
| Segmentation | ✅ | ✅ | ✅ |
| Sémantique | ❌ | ❌ | ✅ |
| Profondeur | ❌ | ❌ | ✅ |
| Classification | ✅ | ✅ | ✅ |
| Pose | ✅ | ✅ | ✅ |
| OBB | ✅ | ✅ | ✅ |
Exporter vers TorchScript : convertir ton modèle YOLO26#
L’exportation de modèles YOLO26 vers TorchScript facilite leur utilisation dans différents environnements et contribue à les rendre plus rapides et plus efficaces. Cette solution est idéale pour toute personne souhaitant utiliser plus efficacement des modèles d’apprentissage profond dans des applications concrètes.
Installation#
Pour installer le package requis, exécute :
# Install the required package for YOLO26
pip install ultralyticsPour obtenir des instructions détaillées et les bonnes pratiques relatives au processus d'installation, consulte notre guide d'installation Ultralytics. Si tu rencontres des difficultés lors de l'installation des packages requis pour YOLO26, consulte notre guide des problèmes courants pour trouver des solutions et des conseils.
Utilisation#
Tous les modèles Ultralytics YOLO26 sont conçus pour prendre en charge l’exportation directement, ce qui facilite leur intégration à ton workflow de déploiement préféré. Tu peux consulter la liste complète des formats d’exportation et des options de configuration pris en charge pour choisir la meilleure configuration pour ton application.
Le format TorchScript prend en charge les modes Export, Predict et Validate. Exporte ton modèle, puis charge le modèle exporté pour exécuter l’inférence ou valider sa précision.
from ultralytics import YOLO
# Load a YOLO26 model
model = YOLO("yolo26n.pt")
# Export the model to TorchScript format
model.export(format="torchscript") # creates 'yolo26n.torchscript'from ultralytics import YOLO
# Load the exported TorchScript model
model = YOLO("yolo26n.torchscript")
# Run inference
results = model("https://ultralytics.com/images/bus.jpg")from ultralytics import YOLO
# Load the exported TorchScript model
model = YOLO("yolo26n.torchscript")
# Validate accuracy on the COCO8 dataset
metrics = model.val(data="coco8.yaml")Arguments d'exportation#
| Argument | Type | Valeur par défaut | Description |
|---|---|---|---|
format | str | 'torchscript' | Format cible du modèle exporté, définissant sa compatibilité avec différents environnements de déploiement. |
imgsz | int ou tuple | 640 | Taille d’image souhaitée pour l’entrée du modèle. Peut être un entier pour les images carrées ou un tuple (height, width) pour des dimensions spécifiques. |
dynamic | bool | False | Autorise les tailles d’entrée dynamiques, ce qui améliore la flexibilité pour gérer différentes dimensions d’image. |
quantize | int ou str | None | Précision de quantification : 16 (FP16) nécessite une exportation sur GPU avec device=0 ; 32/non défini correspond à FP32. Remplace l’option obsolète half. |
nms | bool, optionnel | None | Sélectionne la sortie brute (None, par défaut), la NMS intégrée (True) ou la tête sans NMS (False). |
batch | int | 1 | Indique la taille du lot d'inférence du modèle exporté ou le nombre maximal d'images que le modèle exporté traitera simultanément en mode predict. |
device | str | None | Indique l’appareil utilisé pour l’exportation : GPU (device=0), CPU (device=cpu), MPS pour Apple Silicon (device=mps). |
Pour plus de détails sur le processus d’exportation, consulte la page de la documentation Ultralytics consacrée à l’exportation.
Déployer des modèles YOLO26 TorchScript exportés#
Après avoir exporté avec succès tes modèles Ultralytics YOLO26 au format TorchScript, tu peux maintenant les déployer. La première étape recommandée pour exécuter un modèle TorchScript consiste à utiliser la méthode YOLO("model.torchscript"), comme indiqué dans l’extrait de code d’utilisation précédent. Pour obtenir des instructions détaillées sur le déploiement de tes modèles TorchScript dans d’autres environnements, consulte les ressources suivantes :
-
Découvrir le déploiement mobile : utilise le pipeline distinct
torch.export()→.pted’ExecuTorch pour le déploiement mobile actuel avec PyTorch. -
Maîtriser le déploiement côté serveur : apprends à déployer des modèles côté serveur avec TorchServe grâce à ce tutoriel détaillé pour un service de modèles évolutif et efficace.
-
Mettre en œuvre un déploiement C++ : consulte le tutoriel sur le chargement d’un modèle TorchScript en C++ pour faciliter l’intégration de tes modèles TorchScript dans des applications C++ et améliorer leurs performances et leur polyvalence.
Résumé#
Dans ce guide, nous avons étudié le processus d’exportation des modèles Ultralytics YOLO26 au format TorchScript. En suivant les instructions fournies, tu peux optimiser les modèles YOLO26 pour améliorer leurs performances et bénéficier de la flexibilité nécessaire pour les déployer sur différentes plateformes et dans divers environnements.
Pour plus de détails sur l’utilisation, consulte la documentation officielle de TorchScript.
Si tu souhaites également en savoir plus sur les autres intégrations Ultralytics YOLO26, consulte notre page du guide des intégrations. Tu y trouveras de nombreuses ressources et informations utiles.
FAQ#
L’exportation d’un modèle Ultralytics YOLO26 vers TorchScript permet un déploiement flexible et multiplateforme. TorchScript, 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 ne prenant pas en charge Python. Cette solution est donc utile pour déployer des modèles dans des environnements C++.
L’utilisation de TorchScript pour déployer des modèles YOLO26 offre plusieurs avantages :
- Portabilité : les modèles exportés peuvent s’exécuter dans des applications C++ sans Python.
- Optimisation : TorchScript prend en charge l’exécution avec graphe statique et la compilation juste à temps (JIT), ce qui peut optimiser les performances des modèles.
- Intégration multilingage : les modèles TorchScript peuvent être intégrés à 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 leur chargement et leur inférence indépendamment de la plateforme.
Pour plus d’informations sur le déploiement, consulte la documentation de TorchServe et le guide de déploiement C++. Pour le déploiement mobile sur appareil, PyTorch recommande désormais ExecuTorch, qui utilise son propre pipeline distinct
torch.export()→.pteplutôt que TorchScript.Pour installer le package requis pour exporter des modèles YOLO26, utilise la commande suivante :
Installation# Install the required package for YOLO26 pip install ultralyticsPour obtenir des instructions détaillées, consulte le guide d’installation Ultralytics. En cas de problème lors de l’installation, consulte le guide des problèmes courants.
Après avoir exporté tes modèles YOLO26 au format TorchScript, tu peux les déployer sur différentes plateformes :
- API C++ : utilise LibTorch dans des environnements de production efficaces et à faible surcharge.
- Déploiement mobile : utilise ExecuTorch, le remplacement pris en charge par PyTorch, avec un pipeline d’exportation
.ptedistinct. - Déploiement dans le cloud : utilise des services comme TorchServe pour un déploiement évolutif côté serveur.
Consulte les recommandations détaillées pour déployer des modèles dans ces environnements afin de tirer pleinement parti des fonctionnalités de TorchScript.
Pour exporter un modèle YOLO26 vers TorchScript, tu peux utiliser l’exemple de code suivant :
Pour plus de détails sur le processus d’exportation, consulte la documentation Ultralytics sur l’exportation.