Gérer les versions d'exécution

AI Platform Prediction se sert d'images pour configurer les VM qui traitent vos requêtes d'entraînement et de prédiction dans le cloud. Ces images contiennent le système d'exploitation de base, les packages technologiques principaux, les packages pip (bibliothèques Python) et les packages de système d'exploitation. Les images sont mises à jour périodiquement de façon à inclure les dernières améliorations et fonctionnalités. La gestion des versions d'AI Platform Prediction vous permet de sélectionner la configuration appropriée pour votre modèle.

Remarques importantes sur la gestion des versions

  • Vous devez tester de manière approfondie vos tâches et modèles d'entraînement chaque fois que vous passez à une nouvelle version de l'environnement d'exécution, qu'il s'agisse d'une mise à jour majeure ou mineure.
  • AI Platform Prediction est compatible avec chaque version d'exécution pendant 12 mois après sa sortie. Au terme de cette période de 12 mois, vous ne pouvez plus créer de tâches d'entraînement, de tâches de prédiction par lot ni de versions de modèle utilisant la version d'exécution.

    Vingt-quatre mois après la sortie de la version d'exécution, AI Platform Prediction supprime toutes les versions de modèle qui utilisent la version d'exécution.

    En savoir plus sur la chronologie des disponibilités pour les versions d'exécution

Comprendre les numéros de version

Les images dont se sert AI Platform Prediction correspondent à la version d'exécution d'AI Platform. Le format utilisé pour désigner une version d'exécution est le suivant :

major_version.minor_version

Versions majeures et mineures

De nouvelles versions majeures et mineures sont créées périodiquement pour intégrer un ou plusieurs de ces éléments :

  • Versions des logiciels suivants :
    • Système d'exploitation
    • Frameworks de machine learning compatibles
  • Modifications ou mises à jour des fonctionnalités d'AI Platform Prediction

Une nouvelle version majeure peut inclure des modifications importantes nécessitant des mises à jour du code écrit par rapport aux versions précédentes. Une nouvelle version mineure ne doit pas comprendre de modifications importantes et doit être rétrocompatible avec toutes les variantes de la même version majeure.

Sélectionner des versions d'exécution

Veillez à sélectionner la version d'exécution compatible avec les dernières versions de votre framework de machine learning et des autres packages que vous utilisez.

La version d'exécution la plus ancienne d'AI Platform Prediction compatible avec scikit-learn et XGBoost est la version 1.4.

Vous pouvez consulter les détails de chaque version dans la liste des versions d'AI Platform Prediction.

Versions d'exécution pour la prédiction en ligne

Lorsque vous créez votre version de modèle, veillez à spécifier la version d'exécution que vous souhaitez utiliser pour les requêtes de prédiction en ligne. Si la version d'exécution par défaut de votre version de modèle est incorrecte, créez une version du modèle avec la bonne version d'exécution.

Les requêtes de prédiction en ligne utilisent toujours la version d'exécution par défaut de la version de modèle. Vous ne pouvez pas spécifier une autre version d'exécution pour remplacer la version d'exécution par défaut dans votre requête de prédiction en ligne.

Définir la version d'exécution

Veillez à spécifier une version d'exécution lorsque vous créez une version de modèle déployée à partir d'un modèle entraîné. Cela permet de définir la version d'exécution par défaut pour les requêtes de prédiction en ligne et par lot.

gcloud

Utilisez l'indicateur --runtime-version lorsque vous exécutez la commande gcloud ai-platform versions create :

gcloud ai-platform versions create version_name \
    --model model_name \
    --origin gs://my/trained/model/path \
    --runtime-version 2.6 \
    --python-version 3.7

Python

Spécifiez runtimeVersion lorsque vous définissez la ressource de la version :

versionDef = {'name' = 'v1',
    'description' = 'The first iteration of the completely_made_up model',
    'deploymentUri' = 'gs://my/model/output/directory',
    'runtimeVersion' = '2.6',
    'pythonVersion': '3.7'}
 

Définir la version d'exécution pour une prédiction par lot

Vous pouvez spécifier une version d'exécution à utiliser lorsque vous créez une tâche de prédiction par lots. Si vous ne le faites pas, AI Platform Prediction utilise la version d'exécution par défaut définie dans la version du modèle.

gcloud

Utilisez l'indicateur --runtime-version lorsque vous exécutez la commande gcloud ai-platform jobs submit prediction :

gcloud ai-platform jobs submit prediction my_batch_job_333 \
    --model my_model \
    --input-paths gs://my/cloud/storage/data/path/* \
    --output-path gs://my/cloud/storage/data/output/path \
    --region us-central1 \
    --data-format text \
    --runtime-version 2.1

Python

Spécifiez runtimeVersion dans PredictionInput :

body = {
    'jobId': 'my_batch_job_333',
    'predictionInput': {
        'dataFormat': 'JSON',
        'inputPaths': ['gs://my/cloud/storage/data/path/*'],
        'outputPath': 'gs://my/cloud/storage/data/output/path',
        'region': 'us-central1',
        'modelName': 'projects/my_project/models/my_model',
        'runtimeVersion': '2.1'}}

Étape suivante