AI Deploy - Premiers pas
Découvrez AI Deploy et lancez votre première application
AI Deploy est couvert par les Conditions particulières OVHcloud Public Cloud.
Objectif
OVHcloud propose un ensemble d’outils AI managés conçus pour construire vos projets de Machine Learning.
Ce guide explique comment démarrer avec AI Deploy d’OVHcloud, en couvrant le déploiement de votre première application, que ce soit depuis l’espace client (interface) ou via l’interface en ligne de commande ovhai.
Prérequis
- Un projet Public Cloud dans votre compte OVHcloud
Accès à l'espace client OVHcloud
- Lien direct :
- Chemin de navigation :
Public Cloud> Sélectionnez votre projet
En pratique
S’abonner à AI Deploy
Cliquez sur pour accéder à votre projet Public Cloud, puis rendez-vous dans la catégorie AI & Machine Learning du menu de gauche et choisissez AI Deploy.
Cliquez sur le bouton Déployer une app et acceptez les conditions générales le cas échéant.
Une fois ce clic effectué, vous serez redirigé vers le processus de création détaillé ci-dessous.
Déployer votre première application
Étape 1 : nommer votre application
Choisissez d’abord un nom pour votre app AI Deploy, ou conservez le nom généré automatiquement s’il vous convient, afin de faciliter la gestion de l’ensemble de vos apps.
Étape 2 : sélectionner la localisation
Sélectionnez l’endroit où votre app AI Deploy sera hébergée, c’est-à-dire son emplacement physique.
OVHcloud propose plusieurs datacenters. Vous trouverez les capacités disponibles pour AI Deploy dans le guide Capacités AI Deploy.
Étape 3 : allouer les ressources de calcul
Pour déployer une app AI Deploy, vous devez allouer des ressources de calcul. L’app prend en charge plusieurs configurations de ressources :
- Ressources GPU : de 1 à 4 GPU
- Ressources CPU : de 1 à 12 CPU
Notez que chaque instance est facturée en fonction de son temps d’exécution.
Chaque ressource de calcul comprend :
- Cœurs CPU ou GPU : la puissance de traitement de votre app
- RAM : la mémoire de votre app
- Stockage local : l’espace de stockage de votre app
Vous pouvez ajuster la taille de la ressource pour personnaliser l’allocation de cœurs CPU ou GPU, de RAM et de stockage local selon les besoins spécifiques de votre app.
Étape 4 : sélectionner l’application à déployer
AI Deploy permet à un utilisateur de déployer des applications à partir de deux sources :
- Depuis votre propre image Docker, ce qui vous offre une flexibilité totale pour déployer ce que vous souhaitez. Cette image peut être stockée sur de nombreux types de registre (Managed Private Registry OVHcloud, Docker Hub, GitHub packages, ...) et le format attendu est
<registry-address>/<image-identifier>:<tag-name>. - Depuis un catalogue OVHcloud comportant déjà des modèles et applications AI intégrés.
Dans ce tutoriel, nous allons utiliser une image Docker OVHcloud de démonstration pour déployer votre première app AI Deploy. L’objectif est de déployer et d’appeler une simple API Flask qui vous accueillera en renvoyant Hello suivi du name que vous avez envoyé dans votre requête. Il n’y a pas d’interface web. Ce qui est fourni est un endpoint API que vous pouvez joindre via HTTP.
Si vous souhaitez déployer votre propre image, vous devez respecter certaines règles, comme l’ajout d’un utilisateur spécifique. Suivez notre guide Construire et utiliser des images personnalisées. Le guide Utiliser et gérer vos registres publics et privés pourrait également vous intéresser.
Pour utiliser cette image Docker OVHcloud de démonstration, saisissez le nom suivant comme image Docker personnalisée : ovhcom/ai-deploy-hello-world. Cliquez ensuite sur le bouton + pour confirmer.
Vous pouvez retrouver cette image sur le DockerHub OVHcloud. Pour plus d’informations sur cette image Docker, consultez le dépôt GitHub.
Étape 5 : allouer les ressources de calcul et définir la stratégie de scaling
Vous pouvez ensuite modifier le nombre de réplicas sur lesquels votre app AI Deploy sera déployée, selon une stratégie de scaling.
La stratégie de scaling statique vous permet de choisir un nombre fixe de réplicas sur lesquels l’app sera déployée. Pour cette méthode, le nombre minimum de réplicas est de 1 et le maximum de 10. Cette stratégie est utile lorsque votre consommation ou votre charge d’inférence est fixe. Elle permet en outre d’avoir des coûts fixes.
Avec la stratégie d’autoscaling, il est possible de choisir à la fois le nombre minimum de réplicas (1 par défaut) et le nombre maximum de réplicas. La haute disponibilité mesurera l’utilisation moyenne des ressources sur l’ensemble des réplicas et ajoutera des instances si cette moyenne dépasse le seuil de pourcentage d’utilisation moyenne spécifié. À l’inverse, elle supprimera des instances lorsque cette utilisation moyenne des ressources passera sous ce seuil. Vous pouvez même descendre à 0 en l’absence d’usage, limitant ainsi les coûts. La métrique surveillée peut être CPU ou RAM, ou une métrique personnalisée. Cette solution peut être préférable en cas de charges d’inférence irrégulières ou en dents de scie.
Pour plus de détails sur les stratégies de scaling, reportez-vous à notre guide dédié : AI Deploy - Stratégies de scaling.
Étape 6 : port HTTP par défaut
Le port HTTP exposé par défaut pour l’URL de votre app est 8080. Cependant, si vous utilisez un framework spécifique nécessitant un port différent, vous pouvez remplacer le port par défaut et configurer votre application pour utiliser le port alternatif souhaité.
Étape 7 : règle d’accès
Le paramètre suivant à définir est la confidentialité. Vous pouvez opter pour un accès public (ouvert à internet) ou un accès restreint.
L’accès public signifie que tout le monde est autorisé. Utilisez cette option avec précaution. L’accès public est généralement utilisé pour les tests, mais pas en production, puisque n’importe qui pourra utiliser votre app.
À l’inverse, un accès sécurisé nécessitera des identifiants pour accéder à l’app. Deux options sont disponibles dans ce cas :
- Un utilisateur AI Platform. On peut le voir comme une restriction par nom d’utilisateur et mot de passe. Assez simple, mais peu granulaire.
- Un token AI (solution préférée). Un token est très efficace, car vous pouvez l’associer à des labels. Cela sera expliqué à l’étape 8.
Nous sélectionnerons l’accès restreint pour ce déploiement.
Étape 8 : configuration avancée (optionnel)
Cette étape vous permet de personnaliser votre app AI Deploy avec des fonctionnalités supplémentaires. Vous pouvez choisir de configurer une, plusieurs, ou aucune des options ci-dessous.
Commandes
Vous pouvez remplacer la commande Docker par défaut (entrypoint) par une commande personnalisée. Cela est utile si votre image Docker possède un entrypoint spécifique que vous souhaitez modifier.
Volumes
Si votre application nécessite des données externes pour fonctionner, comme des scripts ou des modèles, vous pouvez charger ces données sur des conteneurs Swift, compatibles S3, ou sur des dépôts Git publics/privés, puis monter ces solutions de stockage sur votre app.
Vous pouvez également monter un Object Storage comme dossier de sortie, par exemple pour récupérer les données générées par votre application.
Vous pouvez attacher autant de volumes que vous le souhaitez à votre app, avec diverses options.
Dans les deux cas, vous devrez préciser :
Storage containerouGit repository URL: le nom du conteneur à synchroniser, ou l’URL du dépôt GitHub (celle qui se termine par.git).Mount directory: l’emplacement dans l’app où les données synchronisées sont montées.
Il existe également des paramètres optionnels :
Authorisation: les droits de permission sur les données montées. Les droits disponibles sont lecture seule (ro) et lecture-écriture (rw). La valeur par défaut est ro.Cache: indique si les données synchronisées doivent être ajoutées au cache du projet. Les données présentes dans le cache peuvent être utilisées par d’autres apps sans synchronisation supplémentaire. Pour bénéficier du cache, les nouvelles apps doivent également monter les données avec l’option cache.
Pour en savoir plus sur les données, les volumes et les permissions, consultez la page dédiée aux données.
Labels
Vous avez ensuite la possibilité d’ajouter des labels Clé/Valeur pour filtrer ou organiser l’accès à votre app AI Deploy.
Par exemple, ajoutez un label avec Key=owner et Value=elea.
Cela rendra l’application accessible uniquement aux utilisateurs disposant du token associé à ce label (clé/valeur). L’accès sera ainsi restreint aux utilisateurs disposant d’un token associé à ce label (clé-valeur).
Pour en savoir plus sur cette fonctionnalité, consultez le tutoriel dédié.
Sonde de disponibilité
Enfin, vous pouvez activer la fonctionnalité Readliness probe. Pour ce faire, renseignez :
- Probe API endpoint : l’endpoint
/healthde votre app. - Probe port : le port associé à l’endpoint de la sonde.
Cela vous permet de surveiller l’état de santé de votre app et de vous assurer qu’elle est prête à recevoir du trafic.
Étape 9 : vérifier et lancer votre app AI Deploy
Cette dernière étape fournit un récapitulatif du déploiement de votre app AI Deploy, vous permettant de vérifier les options et paramètres précédemment sélectionnés.
Vous pouvez également générer la commande CLI ovhai équivalente, qui vous permet de déployer la même application via l’interface en ligne de commande. Cette CLI peut être téléchargée ici. Pour plus d’informations, consultez la documentation CLI - Lancer une app AI Deploy.
Pour lancer votre app AI Deploy, cliquez sur Commander maintenant. Notez que votre app ne sera pas immédiatement disponible, car elle nécessite un certain temps pour :
- Récupérer l’image Docker
- Monter les éventuels volumes de données configurés
Une fois le déploiement terminé, votre première app AI Deploy sera en production et prête à être utilisée.
Se connecter à votre app AI Deploy
Étape 1 : vérifier le statut de votre app AI Deploy
Rendez-vous d’abord dans les détails de votre app pour vérifier qu’elle a bien atteint le statut En service.
Pour votre information, vous pouvez accéder à votre application déployée en cliquant sur le bouton bleu HTTP access, qui exposera le port HTTP par défaut de votre app. Cependant, comme nous avons déployé une API Flask dans ce tutoriel, vous ne pourrez pas y accéder via le bouton HTTP access, aucune interface n’ayant été déployée.
Étape 2 : générer un token de sécurité
Lors du processus de déploiement des apps AI Deploy, nous avons sélectionné Restricted access. Pour interroger votre app, vous avez d’abord besoin d’un token de sécurité valide.
Dans le menu de gauche de votre espace client OVHcloud, rendez-vous dans le AI Dashboard de la section AI & Machine Learning. Sélectionnez l’onglet Tokens.
Cliquez sur le bouton + Créer un token, puis renseignez un nom, un sélecteur de label, un rôle et une région comme ci-dessous :
Quelques explications :
- Sélecteur de label : vous pouvez restreindre le token accordé par labels. Vous pouvez indiquer un identifiant spécifique, un type, ou tout label déjà créé, tel que owner=elea dans notre cas.
- Rôle : AI Platform Operator peut lire et gérer votre app AI Deploy. AI Platform Read only peut uniquement lire votre app AI Deploy.
- Région : les tokens sont régionalisés. Sélectionnez la région associée à votre app AI Deploy.
Générer votre première requête cURL
Maintenant que votre app AI Deploy est en cours d’exécution et que le token est généré, vous êtes prêt pour votre première requête.
Comme nous sommes en accès restreint, vous devrez préciser le token d’authentification dans l’en-tête, selon ce format :
Dans notre cas, le code cURL exact est :
Ce qui nous donne
Si vous voyez ce message avec le name que vous avez fourni, vous avez lancé avec succès votre première app !
Générer votre première requête Python
Si vous souhaitez interroger cette API avec Python, cet exemple de code utilisant la bibliothèque Python Request pourrait vous convenir :
Résultat :
Et voilà !
Arrêter et supprimer votre app AI Deploy
Vous avez la flexibilité de laisser votre app AI Deploy s’exécuter indéfiniment. À tout moment, vous pouvez facilement arrêter votre application, en utilisant soit l’interface (espace client OVHcloud), soit la CLI ovhai.
Cliquez sur pour accéder à votre projet Public Cloud, puis sélectionnez la section AI Deploy. Repérez l’app AI Deploy que vous souhaitez arrêter. Cliquez sur le bouton ... et arrêtez votre application AI Deploy en sélectionnant Arrêter dans le menu contextuel.

Une fois arrêtée, votre app AI Deploy libérera les ressources de calcul précédemment allouées. Votre endpoint est conservé, et si vous redémarrez votre app AI Deploy, le même endpoint pourra être réutilisé sans problème. Par ailleurs, lorsque vous arrêtez votre app, vous ne réservez plus de ressources de calcul, ce qui signifie que vous n’avez plus de dépenses pour cette partie. Seules des dépenses liées au stockage attaché peuvent subsister.
Si vous souhaitez supprimer complètement votre app AI Deploy, sélectionnez l’action Supprimer.
Veillez également à supprimer vos données Object Storage si vous n’en avez plus besoin, en vous rendant dans la section Object Storage (dans la catégorie Storage).
Aller plus loin
- Vous pouvez imaginer déployer un modèle AI pour la reconnaissance de croquis grâce à AI Deploy. Reportez-vous à ce tutoriel.
- Vous souhaitez utiliser Streamlit pour créer une app ? C'est par ici.
Si vous avez besoin d'une formation ou d'une assistance technique pour la mise en oeuvre de nos solutions, contactez votre commercial ou cliquez sur ce lien pour obtenir un devis et demander une analyse personnalisée de votre projet à nos experts de l’équipe Professional Services.
Nous voulons vos retours !
N’hésitez pas à nous faire part de vos questions, retours et suggestions pour améliorer le service sur le serveur Discord OVHcloud !