ExecutionTemplate

Es la descripción de una carga de trabajo de ejecución de notebook.

Representación 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,

  // Union field job_parameters can be only one of the following:
  "dataprocParameters": {
    object (DataprocParameters)
  },
  "vertexAiParameters": {
    object (VertexAIParameters)
  }
  // End of list of possible types for union field job_parameters.
}
Campos
scaleTier
(deprecated)

enum (ScaleTier)

Obligatorio. Es el nivel de ajuste del hardware que se usa para la ejecución del notebook. OBSOLETO. Se descontinuará. Por el momento, solo se admite CUSTOM.

masterType

string

Especifica el tipo de máquina virtual que se usará para el trabajador principal del trabajo de entrenamiento. Debes especificar este campo cuando scaleTier está configurado como CUSTOM.

Puedes usar ciertos tipos de máquinas de Compute Engine directamente en este campo. Se admiten los siguientes tipos:

  • 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

Como alternativa, puedes usar los siguientes tipos de máquinas heredadas:

  • 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

Por último, si deseas usar una TPU para el entrenamiento, especifica cloud_tpu en este campo. Obtén más información sobre las opciones de configuración especiales para el entrenamiento con TPU.

acceleratorConfig

object (SchedulerAcceleratorConfig)

Es la configuración (recuento y tipo de acelerador) para la ejecución de notebooks con hardware.

labels

map (key: string, value: string)

Son las etiquetas para la ejecución. Si la ejecución está programada, se incluirá el campo "nbs-scheduled". De lo contrario, se trata de una ejecución inmediata y el campo incluido será "nbs-immediate". Usa campos para indexar de manera eficiente entre varios tipos de ejecuciones.

Un objeto que contiene una lista de pares "key": value. Ejemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

inputNotebookFile

string

Ruta de acceso al archivo del notebook que se ejecutará. Debe estar en un bucket de Google Cloud Storage. Formato: gs://{bucket_name}/{folder}/{notebook_file_name}, p. ej., gs://notebook_user/scheduled_notebooks/sentiment_notebook.ipynb

containerImageUri

string

URI de imagen de contenedor para un ejemplo de DLVM: "gcr.io/deeplearning-platform-release/base-cu100". Puedes encontrar más ejemplos en: https://cloud.google.com/ai-platform/deep-learning-containers/docs/choosing-container

outputNotebookFolder

string

Ruta de acceso a la carpeta del notebook en la que se escribirá. Debe estar en la ruta de acceso de un bucket de Google Cloud Storage. Formato: gs://{bucket_name}/{folder}, p. ej., gs://notebook_user/scheduled_notebooks

paramsYamlFile

string

Son los parámetros que se anularán en el notebook durante la ejecución. Consulta https://papermill.readthedocs.io/en/latest/usage-parameterize.html para obtener información sobre cómo especificar parámetros en el notebook de entrada y pasarlos aquí en un archivo YAML. Ej.: gs://notebook_user/scheduled_notebooks/sentiment_notebook_params.yaml

parameters

string

Son los parámetros que se usan en el notebook "inputNotebookFile".

serviceAccount

string

Dirección de correo electrónico de una cuenta de servicio que se usará cuando se ejecute la ejecución. Debes tener el permiso iam.serviceAccounts.actAs para la cuenta de servicio especificada.

jobType

enum (JobType)

Es el tipo de trabajo que se usará en esta ejecución.

kernelSpec

string

Nombre de la especificación del kernel que se usará. Se debe especificar si el nombre de la especificación del kernel en el destino de ejecución no coincide con el nombre en el archivo de notebook de entrada.

tensorboard

string

Es el nombre de un recurso de Agent Platform [TensorBoard] al que esta ejecución subirá los registros de TensorBoard. Formato: projects/{project}/locations/{location}/tensorboards/{tensorboard}

Campo de unión job_parameters. Son los parámetros de un tipo de ejecución. NOTA: Actualmente, no hay parámetros adicionales para los trabajos de Vertex AI. job_parameters puede ser solo uno de los parámetros siguientes:
dataprocParameters

object (DataprocParameters)

Son los parámetros que se usan en las ejecuciones de JobType de Dataproc.

vertexAiParameters

object (VertexAIParameters)

Son los parámetros que se usan en las ejecuciones de JobType de Agent Platform.

ScaleTier

Obligatorio. Especifica los tipos de máquinas, la cantidad de réplicas para los trabajadores y los servidores de parámetros.

Enums
SCALE_TIER_UNSPECIFIED Es el nivel de la escala sin especificar.
BASIC Una sola instancia de trabajador. Este nivel es adecuado para aprender a usar Cloud ML y experimentar con modelos nuevos mediante conjuntos de datos pequeños.
STANDARD_1 Muchos trabajadores y algunos servidores de parámetros.
PREMIUM_1 Una gran cantidad de trabajadores con muchos servidores de parámetros.
BASIC_GPU Una sola instancia de trabajador con una GPU K80.
BASIC_TPU Una sola instancia de trabajador con una Cloud TPU.
CUSTOM

El nivel CUSTOM no es un nivel establecido, sino que te permite usar tu propia especificación de clúster. Cuando usas este nivel, establece valores para configurar tu clúster de procesamiento según estos lineamientos:

  • Debes configurar ExecutionTemplate.masterType a fin de especificar el tipo de máquina que usarás para el nodo principal. Esta es la única configuración obligatoria.

SchedulerAcceleratorConfig

Es la definición de un acelerador de hardware. Ten en cuenta que no todas las combinaciones de type y coreCount son válidas. Consulta GPU en Compute Engine para encontrar una combinación válida. Las TPU no son compatibles.

Representación JSON
{
  "type": enum (SchedulerAcceleratorType),
  "coreCount": string
}
Campos
type

enum (SchedulerAcceleratorType)

Es el tipo de este acelerador.

coreCount

string (int64 format)

Es la cantidad de núcleos de este acelerador.

SchedulerAcceleratorType

Son los tipos de aceleradores de hardware para los trabajos de AI Platform Training.

Enums
SCHEDULER_ACCELERATOR_TYPE_UNSPECIFIED Tipo de acelerador no especificado. Sin GPU según la configuración predeterminada
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

Es el backend que se usó para esta ejecución.

Enums
JOB_TYPE_UNSPECIFIED No se especificó ningún tipo.
VERTEX_AI Trabajo personalizado en aiplatform.googleapis.com. Es el valor predeterminado para una ejecución.
DATAPROC Ejecuta la ejecución en un clúster con Dataproc como trabajo. https://cloud.google.com/dataproc/docs/reference/rest/v1/projects.regions.jobs

DataprocParameters

Son los parámetros que se usan en las ejecuciones de JobType de Dataproc.

Representación JSON
{
  "cluster": string
}
Campos
cluster

string

Es el URI del clúster que se usa para ejecutar la ejecución de Dataproc. Formato: projects/{PROJECT_ID}/regions/{REGION}/clusters/{CLUSTER_NAME}

VertexAIParameters

Son los parámetros que se usan en las ejecuciones de JobType de Agent Platform.

Representación JSON
{
  "network": string,
  "env": {
    string: string,
    ...
  }
}
Campos
network

string

Es el nombre completo de la red de Compute Engine con la que el trabajo debe intercambiar tráfico. Por ejemplo, projects/12345/global/networks/myVPC Format tiene el formato projects/{project}/global/networks/{network}. Aquí, {project} es un número de proyecto, como en 12345, y {network} es un nombre de red.

El acceso privado a servicios ya debe estar configurado para la red. Si no se especifica, el trabajo no intercambia tráfico con ninguna red.

env

map (key: string, value: string)

Variables de entorno Se pueden especificar hasta 100 variables de entorno únicas. Ejemplo: GCP_BUCKET=gs://my-bucket/samples/

Un objeto que contiene una lista de pares "key": value. Ejemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" }.