Especifica la configuración de la máquina para un paso de canalización
Organiza tus páginas con colecciones
Guarda y categoriza el contenido según tus preferencias.
Los componentes de canalización de Kubeflow son funciones de fábrica que crean pasos de canalización. Cada componente describe las entradas, salidas y su implementación. Por ejemplo, train_op es un componente en la siguiente muestra de código.
Por ejemplo, un componente de entrenamiento puede tomar un archivo CSV como entrada y usarlo para entrenar un modelo. Si configuras los parámetros del tipo de máquina en el paso de canalización, puedes administrar los requisitos de cada paso en tu canalización. Si tienes dos pasos de entrenamiento y un paso realiza el entrenamiento en un archivo de datos enorme y el segundo lo hace en un archivo de datos pequeño, puedes asignar más memoria y CPU a la primera tarea y menos recursos a la segunda.
De forma predeterminada, el componente se ejecutará como un CustomJob de Vertex AI mediante una máquina e2-standard-4 con 4 CPU principales y 16 GB de memoria. Para obtener más información sobre cómo seleccionar uno de los recursos de máquina específicos de Google Cloudque se enumeran en Tipos de máquinas, consulta Solicita recursos de máquina de Google Cloud con Vertex AI Pipelines.
En el siguiente ejemplo, se muestra cómo establecer la configuración de la CPU, memoria y GPU para un paso:
CPU_LIMIT: El límite máximo de CPU para este operador. Este valor de string puede ser un número (valor de número entero para la cantidad de CPU) o un número seguido de “m”, que significa 1/1000. Puedes especificar como máximo 96 CPU.
MEMORY_LIMIT: El límite máximo de memoria para este operador. Este valor de string puede ser un número o un número seguido de “K” (kilobyte), “M” (megabyte) o “G” (gigabyte).
Se admiten como máximo 624 GB.
SELECTOR_CONSTRAINT: Cada restricción es una etiqueta de par clave-valor.
Para que el contenedor sea apto para ejecutarse en un nodo, el nodo debe tener cada restricción como etiqueta. Por ejemplo:
'cloud.google.com/gke-accelerator', 'NVIDIA_TESLA_T4'
ACCELERATOR_LIMIT: el límite del acelerador (GPU o TPU) para el
operador. Puedes especificar un número entero positivo. Para obtener más información sobre las GPU disponibles y cómo configurarlas, consulta GPU. Para obtener más información acerca de las TPU disponibles y cómo configurarlas, consulta TPU.
CustomJob admite tipos de máquinas específicos que te limitan a un máximo de 96 CPU y 624 GB de memoria. Según la configuración de CPU, memoria y acelerador que especifiques, Vertex AI Pipelines selecciona automáticamente la coincidencia más cercana de los tipos de máquinas compatibles.
[[["Fácil de comprender","easyToUnderstand","thumb-up"],["Resolvió mi problema","solvedMyProblem","thumb-up"],["Otro","otherUp","thumb-up"]],[["Difícil de entender","hardToUnderstand","thumb-down"],["Información o código de muestra incorrectos","incorrectInformationOrSampleCode","thumb-down"],["Faltan la información o los ejemplos que necesito","missingTheInformationSamplesINeed","thumb-down"],["Problema de traducción","translationIssue","thumb-down"],["Otro","otherDown","thumb-down"]],["Última actualización: 2025-09-04 (UTC)"],[],[],null,["# Specify the machine configuration for a pipeline step\n\nKubeflow pipeline components are factory functions that create pipeline\nsteps. Each component describes the inputs, outputs, and implementation of the\ncomponent. For example, `train_op` is a component in the following code sample.\n\nFor example, a training component could take a CSV file as an input and use it\nto train a model. By setting the machine type parameters on the pipeline step,\nyou can manage the requirements of each step in your pipeline. If you have two\ntraining steps and one step trains on a huge data file and the second step\ntrains on a small data file, you can allocate more memory and CPU to the first\ntask, and fewer resources to the second task.\n\nBy default, the component will run on as a Vertex AI\n[`CustomJob`](/vertex-ai/docs/reference/rest/v1/projects.locations.customJobs)\nusing an **e2-standard-4** machine, with 4 core CPUs and 16GB memory. For more information about selecting one of the Google Cloud-specific machine resources listed in [Machine types](/vertex-ai/docs/training/configure-compute#machine-types), see [Request Google Cloud machine resources with Vertex AI Pipelines](/vertex-ai/docs/pipelines/request-gcp-machine-resources).\n\nThe following sample shows you how to set CPU, memory, and GPU configuration\nsettings for a step:\n**Note:** If you want to specify the disk space in the machine configuration, you must [create a custom training job from a component by requesting Google Cloud machine resources](/vertex-ai/docs/pipelines/request-gcp-machine-resources#create-customtrainingjob-from-component) instead. \n\n from kfp import dsl\n\n @dsl.pipeline(name='custom-container-pipeline')\n def pipeline():\n generate = generate_op()\n train = (\n train_op(\n training_data=generate.outputs['training_data'],\n test_data=generate.outputs['test_data'],\n config_file=generate.outputs['config_file'])\n .set_cpu_limit('\u003cvar translate=\"no\"\u003eCPU_LIMIT\u003c/var\u003e')\n .set_memory_limit('\u003cvar translate=\"no\"\u003eMEMORY_LIMIT\u003c/var\u003e')\n .add_node_selector_constraint(\u003cvar translate=\"no\"\u003e\u003cspan class=\"devsite-syntax-n\"\u003eSELECTOR_CONSTRAINT\u003c/span\u003e\u003c/var\u003e)\n .set_accelerator_limit(\u003cvar translate=\"no\"\u003e\u003cspan class=\"devsite-syntax-n\"\u003eACCELERATOR_LIMIT\u003c/span\u003e\u003c/var\u003e))\n\nReplace the following:\n\n- \u003cvar translate=\"no\"\u003eCPU_LIMIT\u003c/var\u003e: The maximum CPU limit for this operator. This string\n value can be a number (integer value for number of CPUs), or a number\n followed by \"m\", which means 1/1000. You can specify at most 96 CPUs.\n\n- \u003cvar translate=\"no\"\u003eMEMORY_LIMIT\u003c/var\u003e: The maximum memory limit for this operator. This\n string value can be a number, or a number followed by\n \"K\" (kilobyte), \"M\" (megabyte), or \"G\" (gigabyte).\n At most 624GB is supported.\n\n | **Note:** Vertex AI Pipelines does not support calling [`set_memory_request`](https://kubeflow-pipelines.readthedocs.io/page/source/dsl.html#kfp.dsl.PipelineTask.set_memory_request) on an operator ; you must use [`set_memory_limit`](https://kubeflow-pipelines.readthedocs.io/page/source/dsl.html#kfp.dsl.PipelineTask.set_memory_request) to request a specific memory amount.\n- \u003cvar translate=\"no\"\u003eSELECTOR_CONSTRAINT\u003c/var\u003e: Each constraint is a key-value pair label.\n For the container to be eligible to run on a node, the node must have each\n constraint as a label. For example:\n `'cloud.google.com/gke-accelerator', 'NVIDIA_TESLA_T4'`\n\n The following constraints are available:\n - `NVIDIA_GB200`^+^ (includes [GPUDirect-RDMA](/vertex-ai/docs/training/configure-compute#gpudirect-rdma))\n - `NVIDIA_B200`^\\*^ (includes [GPUDirect-RDMA](/vertex-ai/docs/training/configure-compute#gpudirect-rdma))\n - `NVIDIA_H100_MEGA_80GB`^\\*^ (includes [GPUDirect-TCPXO](/vertex-ai/docs/training/configure-compute#gpudirect-tcpxo))\n - `NVIDIA_H100_80GB`\n - `NVIDIA_H200_141GB`^\\*^ (includes [GPUDirect-RDMA](/vertex-ai/docs/training/configure-compute#gpudirect-rdma))\n - `NVIDIA_A100_80GB`\n - `NVIDIA_TESLA_A100` (NVIDIA A100 40GB)\n - `NVIDIA_TESLA_P4`\n - `NVIDIA_TESLA_P100`\n - `NVIDIA_TESLA_T4`\n - `NVIDIA_TESLA_V100`\n - `NVIDIA_L4`\n\n \u003cbr /\u003e\n\n - `TPU_V2`\n - `TPU_V3`\n- \u003cvar translate=\"no\"\u003eACCELERATOR_LIMIT\u003c/var\u003e: The accelerator (GPU or TPU) limit for the\n operator. You can specify a positive integer. For more information about the\n available GPUs and how to configure them, see\n [GPUs](/vertex-ai/docs/training/configure-compute#specifying_gpus). For more information\n about the available TPUs and how to configure them, see\n [TPUs](/vertex-ai/docs/training/configure-compute#tpu).\n\n | **Note:** TPUs are only available in specific locations. For more information, see [Using accelerators](/vertex-ai/docs/general/locations#accelerators).\n\n`CustomJob` supports specific machine types that limit you to a maximum of 96 CPUs and 624GB of memory. Based on the CPU, memory, and accelerator configuration that you specify, Vertex AI Pipelines automatically selects the closest match from the supported machine types."]]