Quando realiza uma preparação personalizada, tem de especificar o código de aprendizagem automática (ML) que quer que o Vertex AI execute. Para o fazer, configure as definições do contentor de preparação para um contentor personalizado ou uma aplicação de preparação Python executada num contentor pré-criado.
Para determinar se quer usar um contentor personalizado ou um contentor pré-criado, leia os requisitos do código de preparação.
Este documento descreve os campos da API Vertex AI que tem de especificar em qualquer um dos casos anteriores.
Onde especificar as definições do contentor
Especifique os detalhes da configuração num elemento
WorkerPoolSpec. Consoante a forma como
realiza a preparação personalizada, coloque este WorkerPoolSpec num dos seguintes
campos da API:
Se estiver a criar um
CustomJobrecurso, especifique oWorkerPoolSpecemCustomJob.jobSpec.workerPoolSpecs.Se estiver a usar a CLI gcloud, pode usar a flag
--worker-pool-specou a flag--configno comandogcloud ai custom-jobs createpara especificar as opções do conjunto de trabalhadores.Saiba mais sobre como criar um
CustomJob.Se estiver a criar um
HyperparameterTuningJobrecurso, especifique oWorkerPoolSpecemHyperparameterTuningJob.trialJobSpec.workerPoolSpecs.Se estiver a usar a CLI gcloud, pode usar a flag
--configno comandogcloud ai hpt-tuning-jobs createpara especificar as opções do conjunto de trabalhadores.Saiba mais sobre como criar um
HyperparameterTuningJob.Se estiver a criar um
TrainingPipelinerecurso sem ajuste de hiperparâmetros, especifique oWorkerPoolSpecemTrainingPipeline.trainingTaskInputs.workerPoolSpecs.Saiba como criar um público-alvo personalizado.
TrainingPipelineSe estiver a criar um
TrainingPipelinecom o aperfeiçoamento de hiperparâmetros, especifique oWorkerPoolSpecemTrainingPipeline.trainingTaskInputs.trialJobSpec.workerPoolSpecs.
Se estiver a realizar treino distribuído, pode usar diferentes definições para cada conjunto de trabalhadores.
Configure as definições do contentor
Consoante esteja a usar um contentor pré-criado ou um contentor personalizado,
tem de especificar campos diferentes no elemento WorkerPoolSpec. Selecione o separador do seu cenário:
Contentor pré-criado
Selecione um contentor pré-criado que suporte a framework de ML que planeia usar para a preparação. Especifique um dos URIs da imagem do contentor no campo
pythonPackageSpec.executorImageUri.Especifique os URIs do Cloud Storage da sua aplicação de formação em Python no campo
pythonPackageSpec.packageUris.Especifique o módulo do ponto de entrada da sua aplicação de preparação no campo
pythonPackageSpec.pythonModule.Opcionalmente, especifique uma lista de argumentos da linha de comandos a transmitir ao módulo do ponto de entrada da aplicação de preparação no campo
pythonPackageSpec.args.
Os exemplos seguintes realçam onde especifica estas definições do contentor
quando cria um CustomJob:
Consola
Na Google Cloud consola, não pode criar um CustomJob diretamente. No entanto,
pode criar um TrainingPipeline que crie um
CustomJob. Quando cria um
TrainingPipeline na Google Cloud consola, pode especificar definições de contentores
pré-criadas em determinados campos no passo Contentor de preparação:
pythonPackageSpec.executorImageUri: use as listas pendentes Estrutura do modelo e Versão da estrutura do modelo.pythonPackageSpec.packageUris: use o campo Localização da embalagem.pythonPackageSpec.pythonModule: use o campo Módulo Python.pythonPackageSpec.args: use o campo Arguments.
gcloud
gcloud ai custom-jobs create \
--region=LOCATION \
--display-name=JOB_NAME \
--python-package-uris=PYTHON_PACKAGE_URIS \
--worker-pool-spec=machine-type=MACHINE_TYPE,replica-count=REPLICA_COUNT,executor-image-uri=PYTHON_PACKAGE_EXECUTOR_IMAGE_URI,python-module=PYTHON_MODULE
Para mais contexto, leia o guia de criação de um
CustomJob.
Contentor personalizado
Especifique o URI do Artifact Registry ou do Docker Hub do seu contentor personalizado no campo
containerSpec.imageUri.Opcionalmente, se quiser substituir as instruções de
ENTRYPOINTouCMDno seu contentor, especifique os camposcontainerSpec.commandoucontainerSpec.args. Estes campos afetam a forma como o seu contentor é executado de acordo com as seguintes regras:Se não especificar nenhum dos campos: o seu contentor é executado de acordo com a respetiva instrução
ENTRYPOINTe instruçãoCMD(se existir). Consulte a documentação do Docker sobre como oCMDe oENTRYPOINTinteragem.Se especificar apenas
containerSpec.command: o contentor é executado com o valor decontainerSpec.commanda substituir a respetiva instruçãoENTRYPOINT. Se o contentor tiver uma instruçãoCMD, esta é ignorada.Se especificar apenas
containerSpec.args: o contentor é executado de acordo com a respetiva instruçãoENTRYPOINT, com o valor decontainerSpec.argsa substituir a respetiva instruçãoCMD.Se especificar ambos os campos: o seu contentor é executado com
containerSpec.commanda substituir a respetiva instruçãoENTRYPOINTecontainerSpec.argsa substituir a respetiva instruçãoCMD.
O exemplo seguinte realça onde pode especificar algumas destas definições do contentor quando cria um CustomJob:
Consola
Na Google Cloud consola, não pode criar um CustomJob diretamente. No entanto,
pode criar um TrainingPipeline que crie um
CustomJob. Quando cria um
TrainingPipeline na Google Cloud consola, pode especificar definições do contentor personalizadas em determinados campos no passo Contentor de treino:
containerSpec.imageUri: use o campo Imagem do contentor.containerSpec.command: este campo da API não é configurável na Google Cloud consola.containerSpec.args: use o campo Arguments.
gcloud
gcloud ai custom-jobs create \
--region=LOCATION \
--display-name=JOB_NAME \
--worker-pool-spec=machine-type=MACHINE_TYPE,replica-count=REPLICA_COUNT,container-image-uri=CUSTOM_CONTAINER_IMAGE_URI
Java
Antes de experimentar este exemplo, siga as Javainstruções de configuração no início rápido do Vertex AI com bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API Java Vertex AI.
Para se autenticar no Vertex AI, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
Node.js
Antes de experimentar este exemplo, siga as Node.jsinstruções de configuração no início rápido do Vertex AI com bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API Node.js Vertex AI.
Para se autenticar no Vertex AI, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
Python
Para saber como instalar ou atualizar o SDK Vertex AI para Python, consulte o artigo Instale o SDK Vertex AI para Python. Para mais informações, consulte a Python documentação de referência da API.
Para mais contexto, leia o guia de criação de um
CustomJob.
O que se segue?
- Saiba como realizar uma preparação personalizada criando um
CustomJob.