CustomTrainingJob
.
Ao criar um CustomTrainingJob
, você define um pipeline de treinamento em
segundo plano. A Vertex AI usa o pipeline de treinamento e o código em seu script de treinamento do Python para treinar e criar seu modelo. Para mais informações, consulte Criar pipelines de treinamento.
Definir o pipeline de treinamento
Para criar um pipeline de treinamento, crie um objeto CustomTrainingJob
. Na próxima etapa, use o comando run
do CustomTrainingJob
para criar e treinar seu modelo. Para criar um CustomTrainingJob
, transmita os seguintes parâmetros
para o construtor:
display_name
: a variávelJOB_NAME
que você criou quando definiu os argumentos de comando do script de treinamento do Python.script_path
: o caminho para o script de treinamento do Python que você criou anteriormente neste tutorial.container_url
: o URI de uma imagem de contêiner do Docker usada para treinar o modelo.requirements
: a lista de dependências do pacote Python do script.model_serving_container_image_uri
: o URI de uma imagem de contêiner do Docker que exibe previsões para seu modelo. Esse contêiner pode ser pré-criado ou sua própria imagem personalizada. Este tutorial usa um contêiner pré-criado.
Execute o código a seguir para criar o pipeline de treinamento. O método CustomTrainingJob
usa o script de treinamento em Python no arquivo task.py
para criar um CustomTrainingJob
.
job = aiplatform.CustomTrainingJob(
display_name=JOB_NAME,
script_path="task.py",
container_uri="us-docker.pkg.dev/vertex-ai/training/tf-cpu.2-8:latest",
requirements=["google-cloud-bigquery>=2.20.0", "db-dtypes", "protobuf<3.20.0"],
model_serving_container_image_uri="us-docker.pkg.dev/vertex-ai/prediction/tf2-cpu.2-8:latest",
)
Criar e treinar o modelo
Na etapa anterior, você criou um
CustomTrainingJob
chamado job
. Para criar e treinar seu modelo, chame o método run
no seu objeto CustomTrainingJob
e transmita a ele os seguintes parâmetros:
dataset
: o conjunto de dados tabular que você criou anteriormente neste tutorial. Esse parâmetro pode ser um conjunto de dados tabular, de imagem, vídeo ou texto.model_display_name
: um nome para o modelo.bigquery_destination
: uma string que especifica o local do conjunto de dados do BigQuery.args
: os argumentos de linha de comando que são transmitidos para o script de treinamento do Python.
Para começar a treinar os dados e criar o modelo, execute o seguinte código no seu notebook:
MODEL_DISPLAY_NAME = "penguins_model_unique"
# Start the training and create your model
model = job.run(
dataset=dataset,
model_display_name=MODEL_DISPLAY_NAME,
bigquery_destination=f"bq://{project_id}",
args=CMDARGS,
)
Antes de continuar na próxima etapa, verifique se o item a seguir aparece na
saída do comando job.run
para verificar se ele foi concluído:
CustomTrainingJob run completed
.
Depois que o job de treinamento for concluído, será possível implantar o modelo.
Implantar seu modelo
Ao implantar o modelo, você também cria um recurso Endpoint
que é usado
para fazer previsões. Para implantar o modelo e criar um endpoint, execute o seguinte código no seu notebook:
DEPLOYED_NAME = "penguins_deployed_unique"
endpoint = model.deploy(deployed_model_display_name=DEPLOYED_NAME)
Aguarde até que seu modelo seja implantado antes de prosseguir para a próxima etapa. Depois que o
modelo for implantado, a saída incluirá o texto Endpoint model deployed
. Também é possível
clicar em Endpoints no painel de navegação esquerdo do console da Vertex AI
e monitorar o valor dele em Modelos. O valor é 0
após a criação do endpoint e antes da implantação do modelo. Após a implantação do modelo, o valor
é atualizado para 1
.
Confira a seguir um endpoint depois de criado e antes da implantação de um modelo.
Confira a seguir um endpoint depois de criado e depois da implantação de um modelo.