Vous pouvez déployer un modèle d'Decision Optimization, créer et surveiller des tâches et obtenir des solutions à l'aide de l'API REST dewatsonx.ai Runtime.
Créez votre clé d'API. Copiez-la ou téléchargez-la à partir de la fenêtre ouverte où la clé API a été créée avec succès (vous ne pouvez plus y accéder lorsque vous fermez cette fenêtre).
Sélectionnez une instance watsonx.ai Runtime dans la liste des services AI/MachineMachine Learning la vue de liste des ressourcesIBM Cloud
Copiez le nom, le GUID et le CRN du panneau d'information de votre instance watsonx.ai Runtime. (Pour ouvrir le panneau d'information, cliquez n'importe où dans la ligne à côté du nom de votre service watsonx.ai Runtime, mais pas sur le nom lui-même. Le volet d'information s'ouvre alors dans la même fenêtre)
Sélectionnez un espace de déploiement dans la liste des déploiements.
Copiez le " GUID de l'espace du " Gérer > onglet Général. Pour plus d'informations, reportez-vous à la page relative aux espaces de déploiement.
A propos de cette tâche
Copy link to section
Les étapes suivantes vous montrent comment déployer un modèle d'Decision Optimization à l'aide de l'API REST du moteur d'exécutionwatsonx.ai L'exemple d'API REST utilise curl, un outil de ligne de commande et une bibliothèque pour le transfert de données à l'aide d'une syntaxe d'URL. Vous pouvez télécharger curl et en savoir plus sur le site http://curl.haxx.se. Pour plus d'informations sur les API REST pertinentes pour Decision Optimization, voir les sections suivantes:
Pour les utilisateurs Windows, utilisez ^ au lieu de \ comme séparateur multiligne et des guillemets doubles " dans ces exemples de code. Les utilisateurs Windows doivent également utiliser l'indentation d'au moins un espace de caractères dans les lignes d'en-tête.
Pour plus de clarté, certains exemples de code dans cette procédure ont été placés dans un fichier json pour rendre les commandes plus lisibles et plus faciles à utiliser.
Une fois que vous avez créé un déploiement à l'aide de l'API REST, vous pouvez également le visualiser et lui envoyer des tâches à partir de la page Déploiements > Espaces de l'interface utilisateur https://dataplatform.cloud.ibm.com.
Procédure
Copy link to section
Générez un jeton IAM à l'aide de votre clé APIIBM Cloud en procédant comme suit.
Utilisez le jeton obtenu (valeur access_token) ajouté en préfixe par le mot Bearer dans l'en-tête Authorization et watsonx.ai Runtime service GUID dans l'en-tête ML-Instance-ID, dans tous les appels d'API.
Facultatif: Si vous n'avez pas obtenu votre SPACE-ID à partir de l'interface utilisateur comme décrit précédemment, vous pouvez créer un espace à l'aide de l'API REST comme suit. Utilisez le jeton précédemment obtenu précédé du mot bearer dans l'en-tête Authorization de tous les appels API.
Toutes les demandes d'API requièrent un paramètre de version prenant une date au format version=YYYY-MM-DD. Cet exemple de code affiche un modèle qui utilise le fichier create_model.json. L'URL variera en fonction de la région/localisation choisie pour votre service watsonx.ai Runtime. Voir URL des points de terminaison.
La version Python est indiquée explicitement ici dans un bloc custom. Facultatif. Sans cela, votre modèle utilisera la version par défaut qui est actuellement Python 3.11. Comme la version par défaut évoluera avec le temps, l'indication de la version Python vous permet explicitement de le modifier ultérieurement ou de continuer à utiliser une ancienne version prise en charge lorsque la version par défaut est mise à jour. Les versions actuellement prises en charge sont 3.11 et 3.10 (obsolète).
Si vous souhaitez pouvoir exécuter des travaux pour ce modèle à partir de l'interface utilisateur, au lieu d'utiliser seulement l'API REST, vous devez définir le schéma pour les données d'entrée et de sortie. Si vous ne définissez pas le schéma lorsque vous créez le modèle, vous pouvez uniquement exécuter les travaux à l'aide de l'API REST et non à partir de l'interface utilisateur.
Vous pouvez également utiliser le schéma spécifié pour l'entrée et la sortie dans votre modèle d'optimisation:
Copy to clipboardCopié dans le presse-papiersShow more
Lorsque vous publiez un modèle, vous fournissez des informations sur son type de modèle et sur la spécification logicielle à utiliser.
Les types de modèle admis sont par exemple :
do-opl_22.1 pour les modèles OPL
do-cplex_22.1 pour les modèles CPLEX
do-cpo_22.1 pour les modèles CP
do-docplex_22.1 pour les modèles Python
La version 20.1 peut également être utilisée pour ces types de modèle.
Pour la spécification logicielle, vous pouvez utiliser les spécifications par défaut en utilisant leurs noms do_22.1 ou do_20.1. Voir aussi Bloc-notes d'extension de spécification logicielle qui explique comment étendre la spécification logicielle Decision Optimization (environnements d'exécution avec des bibliothèques Python supplémentaires pour les modèles DOcplex).
Une ID-MODÈLE est renvoyée dans la zone id dans metadata.
Copy to clipboardCopié dans le presse-papiersShow more
Téléchargez une formulation de modèle Decision Optimization prête pour le déploiement.
Tout d'abord, compressez votre modèle dans un fichier (tar.gz, .zip or
.jar) et téléchargez-le pour qu'il soit déployé par le service watsonx.ai Runtime.
Cet exemple de code télécharge un modèle nommé diet.zip, contenant un modèle Python mais pas de données maître :
Vous pouvez télécharger cet exemple et d'autres modèles à partir du site DO-samples. Sélectionnez le sous-dossier correspondant au produit et à la version en question.
Déploiement de votre modèle
Créez une référence à votre modèle. Utilisez l'ID d'espace, l'ID de modèle obtenu lorsque vous avez créé votre modèle prêt pour le déploiement et la spécification matérielle. Par exemple :
Vous pouvez ensuite soumettre des travaux pour votre modèle déployé en définissant les données d'entrée et de sortie (résultats de la résolution d'optimisation) et le fichier journal.
Par exemple, les éléments suivants montrent le contenu d'un fichier appelé myjob.json. Il contient des données d'entrée (en ligne), des paramètres de résolution
et indique que la sortie doit être un fichier .csv. Pour plus d'informations, voir Decision Optimization batch deployment and model execution.
Si vous supprimez un travail à l'aide de l'API, il continuera de s'afficher dans l'interface utilisateur.
Facultatif: vous pouvez supprimer des déploiements comme suit:
Si vous avez supprimé un déploiement contenant des travaux à l'aide de l'API, les travaux continuent de s'afficher dans l'espace de déploiement dans l'interface utilisateur.
Résultats
Copy link to section
Lorsque le modèle a été déployé et le travail exécuté, les résultats de la solution sont fournis soit en ligne, soit dans le fichier et à l'emplacement que vous avez indiqués, par exemple à l'aide d'une référence S3. Vous pouvez envoyer de nouveaux travaux à l'aide de l'ID de déploiement sans qu'il soit nécessaire de redéployer le modèle.