Como usar aliases de versão de modelo

Um alias de modelo é uma referência mutável e nomeada de uma versão de modelo exclusiva dentro de um recurso de modelo. Um alias é "mutável", porque pode ser movido de uma versão de modelo para outra e "nomeado" porque são strings arbitrárias definidas pelo usuário. Os aliases de modelo são úteis para buscar ou implantar uma versão de modelo específica por referência sem precisar saber o código dela. Dessa forma, elas operam de maneira semelhante às tags do Docker ou às referências do Branch no Git.

Quando você cria um modelo novo no Model Registry, a primeira versão recebe automaticamente o alias padrão. O alias padrão faz referência à versão do modelo que será usada se um usuário executar um comando em um modelo sem especificar uma versão específica. É necessário ter uma versão de um modelo para manter o alias padrão em todos os momentos. Caso contrário, o alias padrão se comportará como qualquer outro alias definido pelo usuário.

No Console do Google Cloud, o marcador de alias ajuda as partes interessadas a entender rapidamente qual modelo é a versão estável pronta para implantação. Além do alias padrão, é possível criar e atribuir seus próprios aliases personalizados a modelos no Model Registry.

No Model Registry, é possível ver rapidamente qual versão de modelo tem o alias padrão na coluna de alias.

A coluna "Alias" e a tag "Alias" padrão.

Se você decidir reatribuir o alias a uma versão de modelo diferente, poderá mover facilmente os aliases para uma versão diferente.

Algumas considerações para usar aliases:

  • Os aliases de versão precisam ser exclusivos. e um alias só podem ser atribuídos a uma única versão, por modelo, por vez.
  • Os aliases de versão não podem ser numéricos.
  • Se você não especificar uma versão do modelo para produção, o modelo padrão será usado.
  • Um alias é diferente de um rótulo. Saiba mais sobre rótulos de modelo aqui.
  • Se você aplicar um alias existente que seja usado em outra versão do modelo, o alias será removido dessa versão.

Definir uma versão de modelo como padrão

  1. No console do Google Cloud, acesse a página Registro de modelos da Vertex AI.

    Acessar a página "Modelo de registro"

  2. No Model Registry, selecione o nome do modelo que você quer editar. A janela de detalhes do modelo será aberta. Todas as versões do modelo são listadas. Uma das versões de modelo tem o alias default.

  3. Selecione o botão Ações da versão de modelo à qual você quer atribuir a versão padrão.

  4. Clique em Definir como padrão.

Adicionar um alias a um modelo

  1. No console do Google Cloud, acesse a página Registro de modelos da Vertex AI.

    Acessar a página "Modelo de registro"

  2. No Model Registry, selecione o nome do modelo que você quer editar. A janela de detalhes do modelo será aberta.

  3. Na página de detalhes, selecione a versão do modelo que você quer e clique em Mais.

  4. Clique em Editar alias. Selecione Adicionar novo.

  5. Editar alias: clique em Adicionar alias e insira o nome do alias que você quer adicionar ao modelo.

  6. Clique em Salvar.

Fazer upload de uma nova versão de modelo com alias

API

Python


from typing import List

from google.cloud import aiplatform

def upload_new_aliased_model_version_sample(
    parent_name: str,
    artifact_uri: str,
    serving_container_image: str,
    is_default_version: bool,
    version_aliases: List[str],
    version_description: str,
    project: str,
    location: str,
):
    """
    Uploads a new aliased version of a model with ID 'model_id'.
    Args:
        parent_name: The parent resource name of an existing model.
        artifact_uri: The URI of the model artifact to upload.
        serving_container_image: The name of the serving container image to use.
        is_default_version: Whether this version is the default version of the model.
        version_aliases: The aliases of the model version.
        version_description: The description of the model version.
        project: The project ID.
        location: The region name.
    Returns:
        The new version of the model.
    """
    # Initialize the client.
    aiplatform.init(project=project, location=location)

    # Upload a new aliased version of the Model resource with the ID 'model_id'. The parent_name of Model resource can be also
    # 'projects/<your-project-id>/locations/<your-region>/models/<your-model-id>'
    model = aiplatform.Model.upload(
        artifact_uri=artifact_uri,
        serving_container_image=serving_container_image,
        parent_name=parent_name,
        is_default_version=is_default_version,
        version_aliases=version_aliases,
        version_description=version_description,
    )

    return model

Excluir um alias de modelo

Quando você exclui uma versão de modelo atribuída ao alias padrão, o alias é atribuído automaticamente à próxima versão mais recente.

Console

  1. No console do Google Cloud, acesse a página Registro de modelos da Vertex AI.

    Acessar a página "Modelo de registro"

  2. No Model Registry, selecione o nome do modelo que você quer editar. A janela de detalhes do modelo será aberta.

  3. Na página de detalhes, clique no botão Ações na versão do modelo.

  4. Clique em Editar alias.

  5. Uma lista dos aliases anexados à versão de modelo é exibida. Passe o cursor à direita da caixa de texto "Alias" para que o rótulo exiba o ícone de exclusão.

  6. Clique no ícone de exclusão do alias que você quer excluir.

  7. Clique em Save.

API

Python


from typing import List

from google.cloud import aiplatform

def delete_aliases_model_version_sample(
    model_id: str,
    version_aliases: List[str],
    version_id: str,
    project: str,
    location: str,
):
    """
    Delete aliases to a model version.
    Args:
        model_id: The ID of the model.
        version_aliases: The version aliases to assign.
        version_id: The version ID of the model to assign the aliases to.
        project: The project ID.
        location: The region name.
    Returns
        None.
    """
    # Initialize the client.
    aiplatform.init(project=project, location=location)

    # Initialize the Model Registry resource with the ID 'model_id'.The parent_name of Model resource can be also
    # 'projects/<your-project-id>/locations/<your-region>/models/<your-model-id>'
    model_registry = aiplatform.models.ModelRegistry(model=model_id)

    # Remove the version aliases to the model version with the version 'version'.
    model_registry.remove_version_aliases(
        target_aliases=version_aliases, version=version_id
    )