ExecutionTemplate

Description d'une charge de travail d'exécution de notebook.

Représentation JSON
{
  "scaleTier": enum (ScaleTier),
  "masterType": string,
  "acceleratorConfig": {
    object (SchedulerAcceleratorConfig)
  },
  "labels": {
    string: string,
    ...
  },
  "inputNotebookFile": string,
  "containerImageUri": string,
  "outputNotebookFolder": string,
  "paramsYamlFile": string,
  "parameters": string,
  "serviceAccount": string,
  "jobType": enum (JobType),
  "kernelSpec": string,
  "tensorboard": string,

  // The following is a list of mutually exclusive fields. At most one of the
  // fields will be set in a response:
  "dataprocParameters": {
    object (DataprocParameters)
  },
  "vertexAiParameters": {
    object (VertexAIParameters)
  }
  // End of mutually exclusive fields.
}
Champs
scaleTier
(deprecated)

enum (ScaleTier)

Obligatoire. Niveau de scaling du matériel utilisé pour l'exécution du notebook. OBSOLÈTE : sera arrêté. Pour le moment, seul le type "CUSTOM" est accepté.

masterType

string

Spécifie le type de machine virtuelle à utiliser pour le nœud de calcul maître de votre tâche d'entraînement. Vous devez spécifier ce champ lorsque scaleTier est défini sur CUSTOM.

Vous pouvez utiliser certains types de machines Compute Engine directement dans ce champ. Les types de valeurs suivants sont acceptés :

  • n1-standard-4
  • n1-standard-8
  • n1-standard-16
  • n1-standard-32
  • n1-standard-64
  • n1-standard-96
  • n1-highmem-2
  • n1-highmem-4
  • n1-highmem-8
  • n1-highmem-16
  • n1-highmem-32
  • n1-highmem-64
  • n1-highmem-96
  • n1-highcpu-16
  • n1-highcpu-32
  • n1-highcpu-64
  • n1-highcpu-96

Vous pouvez également utiliser les anciens types de machines suivants :

  • standard
  • large_model
  • complex_model_s
  • complex_model_m
  • complex_model_l
  • standard_gpu
  • complex_model_m_gpu
  • complex_model_l_gpu
  • standard_p100
  • complex_model_m_p100
  • standard_v100
  • large_model_v100
  • complex_model_m_v100
  • complex_model_l_v100

Enfin, si vous souhaitez utiliser un TPU pour l'entraînement, spécifiez cloud_tpu dans ce champ. En savoir plus sur les options de configuration spéciales pour l'entraînement avec des TPU

acceleratorConfig

object (SchedulerAcceleratorConfig)

Configuration (nombre et type d'accélérateur) du matériel exécutant le notebook.

labels

map (key: string, value: string)

Libellés pour l'exécution. Si l'exécution est planifiée, un champ "nbs-scheduled" sera inclus. Sinon, il s'agit d'une exécution immédiate et un champ inclus sera "nbs-immediate". Utilisez des champs pour indexer efficacement différents types d'exécutions.

Objet contenant une liste de paires "key": value. Exemple : { "name": "wrench", "mass": "1.3kg", "count": "3" }.

inputNotebookFile

string

Chemin d'accès au fichier notebook à exécuter. Doit se trouver dans un bucket Google Cloud Storage. Format : gs://{bucket_name}/{folder}/{notebook_file_name} (par exemple, gs://notebook_user/scheduled_notebooks/sentiment_notebook.ipynb)

containerImageUri

string

Exemple d'URI d'image de conteneur pour une DLVM : "gcr.io/deeplearning-platform-release/base-cu100". Vous trouverez d'autres exemples sur la page https://cloud.google.com/ai-platform/deep-learning-containers/docs/choosing-container.

outputNotebookFolder

string

Chemin d'accès au dossier du notebook dans lequel écrire. Doit se trouver dans un chemin d'accès à un bucket Google Cloud Storage. Format : gs://{bucket_name}/{folder} (par exemple, gs://notebook_user/scheduled_notebooks)

paramsYamlFile

string

Paramètres à remplacer dans le notebook lors de l'exécution. Consultez https://papermill.readthedocs.io/en/latest/usage-parameterize.html pour savoir comment spécifier les paramètres dans le notebook d'entrée et les transmettre ici dans un fichier YAML. Ex. : gs://notebook_user/scheduled_notebooks/sentiment_notebook_params.yaml

parameters

string

Paramètres utilisés dans le notebook "inputNotebookFile".

serviceAccount

string

Adresse e-mail d'un compte de service à utiliser lors de l'exécution. Vous devez disposer de l'autorisation iam.serviceAccounts.actAs pour le compte de service spécifié.

jobType

enum (JobType)

Type de job à utiliser pour cette exécution.

kernelSpec

string

Nom de la spécification du noyau à utiliser. Cette option doit être spécifiée si le nom de la spécification du noyau sur la cible d'exécution ne correspond pas au nom dans le fichier notebook d'entrée.

tensorboard

string

Nom d'une ressource [Tensorboard] Vertex AI dans laquelle cette exécution importera les journaux Tensorboard. Format : projects/{project}/locations/{location}/tensorboards/{tensorboard}

Paramètres d'un type d'exécution. REMARQUE : Il n'existe actuellement aucun paramètre supplémentaire pour les jobs Vertex AI. Vous trouverez ci-dessous la liste des champs mutuellement exclusifs. Au maximum, un seul des champs sera défini dans une réponse :
dataprocParameters

object (DataprocParameters)

Paramètres utilisés dans les exécutions JobType Dataproc.

vertexAiParameters

object (VertexAIParameters)

Paramètres utilisés dans les exécutions JobType Vertex AI.

Fin des champs qui s'excluent mutuellement.

ScaleTier

Obligatoire. Spécifie les types de machines, le nombre d'instances dupliquées pour les nœuds de calcul et les serveurs de paramètres.

Enums
SCALE_TIER_UNSPECIFIED Niveau de gamme non spécifié.
BASIC Une seule instance de nœud de calcul. Ce niveau convient à la découverte de Cloud ML et au test de nouveaux modèles à l'aide de petits ensembles de données.
STANDARD_1 Plusieurs nœuds de calcul et quelques serveurs de paramètres.
PREMIUM_1 Un grand nombre de nœuds de calcul avec plusieurs serveurs de paramètres.
BASIC_GPU Une seule instance de nœud de calcul avec un GPU K80.
BASIC_TPU Une seule instance de nœud de calcul avec un Cloud TPU.
CUSTOM

Le niveau CUSTOM n'est pas un niveau défini, mais vous permet d'appliquer votre propre spécification de cluster. Lorsque vous utilisez ce niveau, définissez des valeurs pour configurer votre cluster de traitement conformément aux instructions suivantes :

  • Vous devez définir la valeur ExecutionTemplate.masterType pour spécifier le type de machine à utiliser pour votre nœud maître. Il s'agit du seul paramètre obligatoire.

SchedulerAcceleratorConfig

Définition d'un accélérateur matériel. Notez que toutes les combinaisons de type et coreCount ne sont pas valides. Pour trouver une combinaison valide, consultez GPU sur Compute Engine. Les TPU ne sont pas compatibles.

Représentation JSON
{
  "type": enum (SchedulerAcceleratorType),
  "coreCount": string
}
Champs
type

enum (SchedulerAcceleratorType)

Type de cet accélérateur.

coreCount

string (int64 format)

Nombre de cœurs de cet accélérateur.

SchedulerAcceleratorType

Types d'accélérateurs matériels pour les jobs AI Platform Training.

Enums
SCHEDULER_ACCELERATOR_TYPE_UNSPECIFIED Type d'accélérateur non spécifié. Par défaut, aucun GPU.
NVIDIA_TESLA_K80 GPU Nvidia Tesla K80.
NVIDIA_TESLA_P100 GPU Nvidia Tesla P100.
NVIDIA_TESLA_V100 GPU Nvidia Tesla V100.
NVIDIA_TESLA_P4 GPU Nvidia Tesla P4.
NVIDIA_TESLA_T4 GPU Nvidia Tesla T4.
NVIDIA_TESLA_A100 GPU Nvidia Tesla A100.
TPU_V2 TPU v2.
TPU_V3 TPU v3.

JobType (Type de tâche)

Backend utilisé pour cette exécution.

Enums
JOB_TYPE_UNSPECIFIED Aucun type spécifié.
VERTEX_AI Job personnalisé dans aiplatform.googleapis.com. Valeur par défaut pour une exécution.
DATAPROC Exécutez l'exécution sur un cluster avec Dataproc en tant que job. https://cloud.google.com/dataproc/docs/reference/rest/v1/projects.regions.jobs

DataprocParameters

Paramètres utilisés dans les exécutions JobType Dataproc.

Représentation JSON
{
  "cluster": string
}
Champs
cluster

string

URI du cluster utilisé pour exécuter l'exécution Dataproc. Format : projects/{PROJECT_ID}/regions/{REGION}/clusters/{CLUSTER_NAME}

VertexAIParameters

Paramètres utilisés dans les exécutions JobType Vertex AI.

Représentation JSON
{
  "network": string,
  "env": {
    string: string,
    ...
  }
}
Champs
network

string

Nom complet du réseau Compute Engine auquel le job doit être appairé. Exemple :projects/12345/global/networks/myVPC Format est au format projects/{project}/global/networks/{network}. Où {project} est un numéro de projet, comme dans 12345, et {network} est un nom de réseau.

L'accès aux services privés doit déjà être configuré pour le réseau. Si le champ n'est pas spécifié, le job n'est appairé à aucun réseau.

env

map (key: string, value: string)

Variables d'environnement. Vous pouvez spécifier au maximum 100 variables d'environnement uniques. Exemple : GCP_BUCKET=gs://my-bucket/samples/

Objet contenant une liste de paires "key": value. Exemple : { "name": "wrench", "mass": "1.3kg", "count": "3" }.