Tous les produits
Search
Centre de documentation

Platform For AI:Déploiement personnalisé via la console

Dernière mise à jour :Sep 12, 2026

Le déploiement personnalisé EAS (Elastic Algorithm Service) offre une méthode flexible et complète pour héberger des services d'inférence IA, vous permettant d'empaqueter n'importe quel algorithme ou modèle sous forme de service en ligne.

Remarque

Nous vous recommandons d'essayer d'abord le déploiement basé sur des scénarios pour les cas d'utilisation tels que les LLM et ComfyUI. Si cette approche ne répond pas à vos besoins, utilisez le déploiement personnalisé.

Démarrage rapide : Déployer un service web simple

Cette rubrique explique comment déployer rapidement un service web simple en utilisant le déploiement basé sur une image.

Étape 1 : Préparer le fichier de code

Enregistrez le code de l'application Flask suivant dans un fichier app.py. Notez que le service écoute sur le port 8000.

app.py

from flask import Flask

app = Flask(__name__)

@app.route('/hello')
def hello_world():
    # Your model inference or other business logic goes here.
    return 'Hello World'

if __name__ == '__main__':
    app.run(host='0.0.0.0', port=8000)

Étape 2 : Télécharger le code vers OSS

Téléchargez le fichier app.py dans un bucket OSS. Assurez-vous que le bucket OSS et l'espace de travail EAS se trouvent dans la même région. Par exemple, téléchargez le fichier dans le répertoire oss://examplebucket/code/.

Étape 3 : Configurer et déployer le service

  1. Connectez-vous à la console PAI. Sélectionnez une région en haut de la page. Ensuite, sélectionnez l'espace de travail souhaité et cliquez sur Enter Elastic Algorithm Service (EAS).

  2. Dans l'onglet Inference Service, cliquez sur Deploy Service. Dans la section Custom Model Deployment, cliquez sur Custom Deployment.

  3. Sur la page de configuration, définissez les paramètres clés dans les sections Environment Information et Resource Information comme suit :

    • Deployment Method : Sélectionnez Image-based Deployment.

    • Image Configuration : Sélectionnez l'Alibaba Cloud Image python-inference:3.9-ubuntu2004.

    • Storage Mounting : Montez le répertoire OSS contenant le fichier app.py sur le chemin /mnt/data/ du conteneur.

      • URI : Sélectionnez le répertoire OSS où se trouve votre code. Dans cet exemple, le répertoire est oss://examplebucket/code/.

      • Mount Path : Spécifiez un chemin local dans le conteneur pour le répertoire. Dans cet exemple, le chemin est /mnt/data/.

    • Command : Étant donné que app.py a été monté dans le répertoire /mnt/data/ du conteneur, la commande de démarrage est : python /mnt/data/app.py.

    • Third-party Library Settings : L'exemple de code dépend de la bibliothèque flask, qui n'est pas incluse dans l'image officielle sélectionnée. Ajoutez flask aux Third-party Libraries. EAS installe automatiquement la bibliothèque au démarrage du service.

    • Resource Configuration : Allouez les ressources de calcul appropriées au service. Pour cet exemple simple, une petite instance CPU suffit.

      • Resource Type : Ressources publiques.

      • Resource Specification : Sélectionnez ecs.c7.large.

  4. Une fois la configuration terminée, cliquez sur Deploy. Lorsque l'état du service passe à Running, vous pouvez appeler le service.

Configuration supplémentaire

Environnement d'exécution

Dans la section Environment Information, configurez l'environnement d'exécution et les dépendances de votre service.

Paramètre

Description

Image Configuration

L'environnement d'exécution de base du service. Vous pouvez utiliser les images officielles fournies par PAI, ou utiliser votre propre image en sélectionnant Custom Image ou en saisissant une Image Address. Pour plus d'informations, consultez Images personnalisées.

Remarque

Si l'image inclut une interface Web UI, sélectionnez Enable Web App. EAS démarre automatiquement le serveur web, ce qui vous permet d'accéder directement à la page frontale.

Mount storage

Montez des modèles, du code ou des données depuis des services de stockage cloud tels qu'OSS et NAS vers un chemin local dans le conteneur. Cette pratique découple le code et les données de l'environnement et simplifie les mises à jour indépendantes. Pour plus d'informations, consultez le montage du stockage.

Mount dataset

Pour gérer les versions de vos modèles ou de vos données, vous pouvez utiliser la fonctionnalité Dataset pour le montage. Pour plus d'informations, consultez Créer et gérer des jeux de données.

Command

Définissez la commande de démarrage de l'image, par exemple python /run.py.

Port Number

Définissez le port d'écoute du service. Cette étape est facultative dans certains scénarios.

Par exemple, si votre service s'abonne à une file d'attente de messages au lieu de dépendre du trafic de la passerelle EAS, la spécification d'un port est optionnelle.

Important

Le moteur EAS réserve les ports 8080 et 9090. Pour éviter les conflits de démarrage, n'utilisez pas ces ports lors du déploiement d'un nouveau service.

Third-party Library Settings

Si vous devez uniquement installer quelques bibliothèques Python supplémentaires, vous pouvez ajouter directement les noms des bibliothèques ou spécifier un Path of requirements.txt pour éviter de reconstruire l'image.

Environment Variables

Définissez les variables d'environnement pour l'instance de service sous forme de paires clé-valeur.

Ressources de calcul

Dans la section Resource Information, vous pouvez configurer les ressources de calcul de votre service, notamment en sélectionnant un type de ressource et une spécification d'instance, en configurant le disque système et en définissant le nombre de réplicas et les politiques de planification. Pour plus d'informations, consultez la configuration des ressources.

Réseau du service

  • VPC : Configurez un VPC si votre service doit accéder à des ressources du réseau public, à des bases de données ou à des files d'attente de messages au sein d'un VPC, ou si vous souhaitez que les clients appellent le service directement via un VPC. Pour plus d'informations, consultez la rubrique Accès aux ressources du réseau public ou interne.

  • Appel de service : Après le déploiement, choisissez une méthode d'appel adaptée à votre scénario métier, telle qu'une passerelle, NLB, Nacos ou gRPC. Pour plus d'informations, consultez la rubrique sur l'appel de service.

Sécurité du service

Dans la section Features, configurez l'authentification et la sécurité des données pour votre service.

Paramètre

Description

Custom Authentication

Si vous ne souhaitez pas utiliser le jeton généré par le système, vous pouvez personnaliser le jeton d'authentification pour l'accès au service.

Configure Secure Encryption Environment

Intégrez le service de gestion de confiance du système pour chiffrer de manière sécurisée les données, les modèles et le code pendant le déploiement et l'appel, permettant ainsi une inférence de confiance. Cette fonctionnalité s'applique principalement aux fichiers de stockage montés. Activez cette fonctionnalité après avoir configuré le montage du stockage. Pour plus d'informations, consultez le service d'inférence chiffré sécurisé.

Instance RAM Role

L'association d'un rôle RAM d'instance à une instance permet au code du service d'utiliser les identifiants temporaires du Security Token Service (STS) pour accéder à d'autres ressources cloud. Cette méthode élimine le besoin de clés AccessKey fixes, réduisant ainsi le risque de fuite de clés. Pour plus d'informations, consultez la rubrique Configurer un rôle RAM EAS.

AI Safety Guardrail

Cette fonctionnalité effectue des contrôles de sécurité du contenu sur les entrées et les sorties des services d'inférence LLM afin d'intercepter les contenus nuisibles. Elle prend en charge les API OpenAI Completions (texte vers texte), Chat Completions (texte vers texte) et Image Generation (texte vers image)..

Remarque

Cette fonctionnalité est disponible uniquement dans la région Chine (Shanghai).

Visibility

Contrôle la visibilité du service dans la liste des services :

  • Visible in Workspace : Tous les membres de l'espace de travail peuvent afficher le service. Cela convient à la collaboration en équipe.

  • Owner Only : Seul l'utilisateur ayant créé le service peut l'afficher. Cela convient aux tests personnels ou aux services sensibles.

Stabilité du service

Dans la section Features, vous pouvez configurer les paramètres suivants liés à la stabilité :

  • Service Response Timeout Period : Configurez le délai d'expiration pour chaque requête. La valeur par défaut est de 5 secondes. Pour les scénarios chronophages tels que l'inférence de grands modèles ou la sortie en streaming, augmentez cette valeur pour éviter que les requêtes ne soient tronquées.

  • Health Check : Le système sonde périodiquement la disponibilité des instances, remplaçant automatiquement les instances anormales pour permettre une auto-réparation des pannes. Pour plus d'informations, consultez la rubrique sur les contrôles d'intégrité.

  • Compute monitoring & fault tolerance : Surveille en temps réel l'état de santé des ressources de calcul pour les services d'inférence distribués, permettant une détection automatique des pannes et une auto-réparation intelligente. Pour plus d'informations, consultez la rubrique sur la surveillance de la puissance de calcul et la tolérance aux pannes.

  • Stratégies de déploiement et de mise à jour : Utilisez des fonctionnalités telles que le déploiement canari, les mises à jour progressives, l'arrêt gracieux et les calendriers de mise à jour pour garantir la continuité du service lors des mises à niveau de version. Pour plus d'informations, consultez la rubrique sur la gestion des versions.

Performances du service

Utilisez l'accélération du stockage et la planification intelligente pour améliorer les performances du service, accélérer la vitesse de démarrage, augmenter le débit et réduire la latence.

  • Distributed cache acceleration : Met en cache les fichiers de modèle ou de données du stockage monté, tel qu'OSS, vers le stockage local de l'instance pour réduire la latence des E/S. Pour plus d'informations, consultez la rubrique sur l'accélération du cache de modèle.

  • Model Weight Service (MoWS) : Améliore considérablement l'efficacité de la mise à l'échelle et la vitesse de démarrage du service pour les déploiements d'instances à grande échelle en mettant en cache les poids du modèle localement et en les partageant entre les instances. Pour plus d'informations, consultez le Model Weight Service.

  • LLM Intelligent Router : Pour les services LLM disposant de plusieurs instances backend, cette fonctionnalité distribue dynamiquement les requêtes en fonction de la charge du backend. Cela équilibre la puissance de calcul et l'utilisation de la mémoire GPU entre les instances et améliore l'utilisation des ressources du cluster. Pour plus d'informations, consultez le déploiement du routeur intelligent LLM.

Observabilité du service

Dans la section Features, activez les fonctionnalités d'observabilité suivantes pour obtenir des informations sur l'état du service et résoudre les problèmes :

Paramètre

Description

Save Call Records

Conservez tous les enregistrements de requêtes et de réponses du service dans MaxCompute ou Simple Log Service à des fins d'audit, d'analyse ou de dépannage.

  • MaxCompute : Sélectionnez un MaxCompute Project existant (ou créez-en un si vous n'en avez pas) et spécifiez un nom pour la MaxCompute Table. Le système crée automatiquement cette table dans le projet sélectionné lors du déploiement du service.

  • Simple Log Service : Sélectionnez un Simple Log Service Project existant (ou créez-en un si vous n'en avez pas) et spécifiez un nom pour le logstore. Le système crée automatiquement ce Logstore dans le projet sélectionné lors du déploiement du service.

Tracing Analysis

Certaines images officielles intègrent un composant de collecte qui vous permet d'activer le traçage en un seul clic. Pour les autres images, vous pouvez intégrer un agent ARMS via une configuration simple pour une surveillance de bout en bout de la chaîne d'appel de service. Pour plus d'informations, consultez la rubrique Activer le traçage pour les applications LLM dans EAS. Pour configurer le traçage :

  • Dans le champ Command, ajoutez aliyun-bootstrap -a install && aliyun-instrument python app.py pour installer l'agent et démarrer l'application avec l'agent ARMS Python. Remplacez app.py par le fichier principal de votre application.

  • Dans la section Third-party Library Configuration, ajoutez aliyun-bootstrap pour télécharger le programme d'installation de l'agent depuis le dépôt PyPI.

Services asynchrones et élastiques

  • Inférence asynchrone : Pour les scénarios d'inférence de longue durée tels que l'AIGC et le traitement vidéo, nous vous recommandons d'activer une Asynchronous Queue. Le client reçoit une réponse immédiate et peut récupérer le résultat final par interrogation ou en utilisant un rappel. Pour plus d'informations, consultez la rubrique Déployer un service d'inférence asynchrone.

  • Elastic Job Service : Dans la section Features, activez le Task Mode pour déployer le service d'inférence en tant que service de travail à la demande. Cela convient au traitement par lots de données et aux tâches planifiées. Les ressources sont automatiquement libérées après l'achèvement de la tâche pour réduire les coûts. Pour plus d'informations, consultez l'Elastic Job Service.

Configuration JSON

Dans la section Service Configuration, vous pouvez afficher et modifier directement la configuration JSON complète correspondant aux paramètres actuels de l'interface utilisateur.

Remarque

Pour l'automatisation et une configuration fine, vous pouvez également définir et déployer des services directement à l'aide d'un fichier JSON. Pour plus d'informations, consultez la rubrique Déployer des services à l'aide de JSON.