Cómo usar alias de versiones de modelos

Un alias de modelo es una referencia mutable con nombre a una versión de modelo única en un recurso de modelo. Un alias es "mutable" porque se puede mover de una versión de modelo a otra y "con nombre" porque son cadenas arbitrarias definidas por el usuario. Los alias de modelo son útiles para obtener o implementar una versión de un modelo concreto por referencia sin necesidad de conocer el ID de la versión específica. De esta forma, funcionan de forma similar a las etiquetas de Docker o a las referencias de ramas en Git.

Cuando creas un modelo en Model Registry, a la primera versión se le asigna automáticamente el alias default. El alias predeterminado hace referencia a la versión del modelo que se usa si un usuario ejecuta un comando en un modelo sin especificar una versión concreta. Se necesita una versión de un modelo para llevar el alias predeterminado en todo momento. De lo contrario, el alias predeterminado se comporta como cualquier otro alias definido por el usuario.

Desde la Google Cloud consola, el marcador de alias puede ayudar a las partes interesadas a saber de un vistazo qué modelo es la versión estable lista para implementarse. Además del alias predeterminado, puedes crear y asignar tus propios alias personalizados a los modelos del registro de modelos.

En el registro de modelos, puedes ver de un vistazo qué versión del modelo tiene el alias predeterminado consultando la columna de alias.

La columna Alias y la etiqueta de alias predeterminada.

Si decides reasignar el alias a otra versión del modelo, puedes mover los alias a otra versión.

Algunas consideraciones sobre el uso de alias:

  • Los alias de versión deben ser únicos y solo se puede asignar un alias a una versión por modelo a la vez.
  • Los alias de versión no pueden ser numéricos.
  • Si no especificas una versión del modelo para producción, se usará el modelo predeterminado.
  • Un alias es diferente de una etiqueta. Consulta más información sobre las etiquetas de modelo.
  • Si aplicas un alias que ya se usa en otra versión del modelo, se quitará de esa versión.

Definir una versión de un modelo como predeterminada

  1. En la Google Cloud consola, ve a la página Registro de modelos de Vertex AI.

    Ve a la página Registro de modelos.

  2. En el registro de modelos, selecciona el nombre del modelo que quieras editar. Se abrirá la ventana de detalles del modelo. Se muestran todas las versiones del modelo. Una de las versiones del modelo tiene el alias default.

  3. Selecciona el botón Acciones de la versión del modelo que quieras asignar como predeterminada.

  4. Haz clic en Establecer como predeterminado.

Añadir un alias a una versión de un modelo

  1. En la Google Cloud consola, ve a la página Registro de modelos de Vertex AI.

    Ve a la página Registro de modelos.

  2. En el registro de modelos, selecciona el nombre del modelo que quieras editar. Se abrirá la ventana de detalles del modelo.

  3. En la página de detalles, selecciona la versión del modelo que quieras y haz clic en Más.

  4. Haz clic en Editar alias. Selecciona Añadir nuevo.

  5. Editar alias: haz clic en Añadir alias e introduce el nombre del alias que quieras añadir a la versión del modelo.

  6. Haz clic en Guardar.

Subir una nueva versión de modelo con 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

Eliminar un alias de modelo

Cuando eliminas una versión de un modelo a la que se le ha asignado el alias predeterminado, este se asigna automáticamente a la siguiente versión más reciente.

Consola

  1. En la Google Cloud consola, ve a la página Registro de modelos de Vertex AI.

    Ve a la página Registro de modelos.

  2. En el registro de modelos, selecciona el nombre del modelo que quieras editar. Se abrirá la ventana de detalles del modelo.

  3. En la página de detalles, haz clic en el botón Acciones de la versión del modelo.

  4. Haz clic en Editar alias.

  5. Se muestra una lista de los alias asociados a la versión del modelo. Coloca el cursor a la derecha del campo Alias de la etiqueta para que se muestre el icono de eliminar.

  6. Haz clic en el icono de eliminar del alias que quieras eliminar.

  7. Haz clic en Guardar.

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
    )