Gérer les modèles et les tâches

Au cours des processus d'entraînement et de déploiement de modèles ainsi que d'obtention de prédictions, vous devez gérer des ressources sur Google Cloud Platform. Cette page vous explique comment manier les modèles, les versions et les tâches.

Nommer les ressources AI Platform Training

Vous devez spécifier un nom pour chaque tâche que vous créez. Les règles de dénomination sont les mêmes pour les trois types de ressources. Chaque nom :

  • ne doit contenir que des lettres, des chiffres et des traits de soulignement ;
  • est sensible à la casse ;
  • doit commencer par une lettre ;
  • ne doit pas dépasser 128 caractères ;
  • doit être unique dans son espace de noms (le projet pour les modèles et les tâches, et le modèle parent pour les versions).

Il est recommandé de créer des noms faciles à distinguer dans les listes de ressources telles que les journaux de tâches. Voici quelques suggestions :

  • Nommez toutes les tâches relatives au même modèle en leur attribuant un nom composé du nom du modèle et d'un index de tâche (par exemple, l'horodatage de création de la tâche).
  • Nommez les modèles de façon à les identifier facilement à partir de l'ensemble de données qu'ils utilisent (census_wide_deep est généralement préférable à my_new_model, par exemple).
  • Il est préférable que les versions soient facilement lisibles. Plutôt que d'utiliser un horodatage ou une valeur unique du même type, nous vous recommandons d'employer des indicateurs de version simples, comme v1.

Gérer les tâches

AI Platform Training peut gérer deux types de tâches : l'entraînement et la prédiction par lot. Les détails spécifiques à chaque type sont différents, mais l'opération de base reste la même.

Le tableau suivant récapitule les opérations relatives aux tâches et répertorie les interfaces qui permettent de les exécuter :

Opération Interfaces Remarques
create projects.jobs.create

Le processus de création de tâche est décrit en détail dans les guides sur l'entraînement et la prédiction par lot.

gcloud ai-platform jobs submit training

gcloud ai-platform jobs submit prediction

Aucune mise en œuvre de console.
cancel projects.jobs.cancel

Annule une tâche en cours d'exécution.

gcloud ai-platform jobs cancel

Correspond à Annuler sur la page Informations sur la tâche.
get projects.jobs.get Les informations obtenues sont décrites dans la documentation de référence de la ressource Jobs.

gcloud ai-platform jobs describe

Page Informations sur la tâche (accessible via un lien de la liste Tâches).
list projects.jobs.list

gcloud ai-platform jobs list

Liste Tâches.

Gérer les opérations asynchrones

La plupart des opérations de gestion des ressources d'AI Platform Training renvoient un résultat le plus rapidement possible et fournissent une réponse complète. Il existe toutefois deux types d'opérations asynchrones que vous devez connaître : les tâches et les opérations de longue durée.

Lorsque vous lancez une opération asynchrone, vous voulez généralement savoir quand elle se termine. Le processus d'obtention de l'état est différent pour les tâches et les opérations de longue durée :

Obtenir l'état d'une tâche

Pour obtenir l'état d'une tâche, vous pouvez utiliser la méthode projects.jobs.get. Cette méthode est également fournie par l'interface gcloud ai-platform jobs describe et sur la page Tâches dans Google Cloud Console. Quelle que soit la façon dont l'état est obtenu, les informations sont basées sur les membres de la ressource de type Job. Vous savez que la tâche est terminée lorsque Job.state dans la réponse correspond à l'une de ces valeurs :

  • SUCCEEDED
  • FAILED
  • CANCELLED

Obtenir l'état d'une opération de longue durée

AI Platform Training comprend trois opérations de longue durée :

  • Création de version
  • Suppression de modèle
  • Suppression de version

Parmi ces opérations de longue durée, seule la création de version peut prendre un peu plus de temps. La suppression de modèles et de versions s'effectue généralement quasiment en temps réel.

Si vous créez une version à l'aide de l'outil de ligne de commande gcloud ou de Cloud Console, l'interface vous informe automatiquement lorsque l'opération est terminée. Si vous créez une version à l'aide de l'API, vous pouvez suivre vous-même l'état de l'opération comme suit :

  1. Appelez la méthode projects.models.versions.create. Dans l'objet Operation de la réponse obtenue, copiez le nom d'opération attribué par le service. La clé correspondant à la valeur du nom est "name".

  2. Interrogez régulièrement l'état de l'opération au moyen de la méthode projects.operations.get.

    1. À l'aide du nom de l'opération obtenu à la première étape, créez une chaîne de nom au format suivant :

      'projects/my_project/operations/operation_name'
      

      Le message de réponse contient un objet Operation.

    2. Vérifiez la valeur de la clé "done". Il s'agit d'un indicateur booléen traduisant l'achèvement de l'opération. Si la valeur correspond à "vrai" (true), l'opération est terminée.

  3. Une fois l'opération terminée, l'objet Operation inclut l'une des deux clés suivantes :

    • La clé "response" apparaît si l'opération a réussi. Sa valeur doit correspondre à google.protobuf.Empty, car aucune des opérations de longue durée AI Platform Training ne contient d'objet de réponse.

    • La clé "error" apparaît en cas d'erreur. Sa valeur correspond à un objet Status.

Étape suivante