Crea un notebook de Jupyter

En este instructivo, usarás el SDK de Vertex AI en un notebook de Jupyter para obtener predicciones mediante una instancia de Vertex AI Workbench.

En esta sección, se muestra cómo crear un notebook de Jupyter en una instancia de Vertex AI Workbench. Las instancias de Vertex AI Workbench son entornos de desarrollo basados en notebooks de Jupyter para todo el flujo de trabajo de la ciencia de datos. Las instancias de Vertex AI Workbench se empaquetan previamente con JupyterLab y tienen un conjunto preinstalado de paquetes de aprendizaje profundo, incluida la compatibilidad con los frameworks de TensorFlow y PyTorch. Para obtener más información, consulta Introducción a las instancias de Vertex AI Workbench.

Después de crear un notebook en Vertex AI Workbench, ejecuta partes secuenciales del código de Python para realizar la mayor parte del trabajo a fin de generar las predicciones.

Crea una instancia de Vertex AI Workbench

Para crear una instancia de Vertex AI Workbench, haz lo siguiente:

  1. En la consola de Google Cloud, abre tu proyecto de Google Cloud si aún no está abierto.

  2. En la consola de Google Cloud, ve a la página Instancias de Vertex AI Workbench.

    Ir a Instancias

  3. Si aparece la opción para habilitar la API de Notebooks, haz clic en Habilitar. El proceso de habilitación puede tomar unos minutos en completarse.

  4. Haz clic en  Crear nuevo.

  5. En el cuadro de diálogo Instancia nueva, en Nombre, ingresa un nombre para tu instancia.

  6. En Región, selecciona us-central1 (Iowa).

  7. En Zona, selecciona us-central1-a.

  8. Haz clic en Crear. Si deseas obtener más información acerca de tu instancia, después de que aparezca en tu lista de instancias, haz clic en su nombre para ver sus propiedades.

Prepara tu notebook

La instancia de Vertex AI Workbench ya está autenticada para usar tu proyecto de Google Cloud. Sin embargo, debes instalar e inicializar el SDK de Vertex AI para Python. En esta sección, se explican estos pasos.

Después de crear tu notebook, úsalo para ingresar y ejecutar los fragmentos de código secuenciales de este instructivo. Cada fragmento de código debe ejecutarse de forma individual y en orden.

Crea y abre tu notebook

El notebook es donde ejecutarás el código de este instructivo. Es un archivo con la extensión .ipynb. Cuando la creas, no tiene título. Puedes cambiarle el nombre cuando esté abierto. Para crear y abrir tu notebook, haz lo siguiente:

  1. En la consola de Google Cloud, ve a la página Instancias.

    Ir a Instancias

  2. Junto al nombre de la instancia, haz clic en Abrir JupyterLab.

    Tu instancia de Vertex AI Workbench abre el entorno de JupyterLab.

  3. En JupyterLab, selecciona Archivo > Nuevo > Notebook.

    Se abrirá el archivo de notebook nuevo.

  4. En el panel de navegación izquierda de JupyterLab, busca el notebook nuevo, llamado Untitled.ipynb. Para cambiarle el nombre, haz clic con el botón derecho en el nombre del notebook y, luego, en Cambiar nombre y, luego, ingresa un nombre nuevo.

Instalar el SDK de Vertex AI para Python

Después de abrir el notebook, debes instalar el SDK de Vertex AI para Python. Usa el SDK de Vertex AI para Python a fin de realizar llamadas a la API de Vertex AI que creen tu conjunto de datos, creen tu modelo, entrenen y, luego, implementen tu modelo, y hagan predicciones con tu modelo. Si quieres obtener más información, consulta Usa el SDK de Vertex AI para Python.

Cuando instalas el SDK de Vertex AI para Python, también se instalan otros SDK de Google Cloud en los que depende. En este instructivo, se usan dos de esos SDK:

  • Cloud Storage: Cuando usas el SDK de Vertex AI para Python para realizar llamadas a la API de Vertex AI, Vertex AI almacena artefactos en un bucket de Cloud Storage. El bucket se conoce como bucket de etapa de pruebas. Especifica el bucket de etapa de pruebas cuando inicialices el SDK de Vertex AI para Python. Si quieres obtener más información, consulta Cliente de Python para la API de Google Cloud Storage.

  • BigQuery: Vertex AI entrena tu modelo con un conjunto de datos públicos de BigQuery. El SDK de BigQuery se debe instalar para acceder al conjunto de datos que se usa en este instructivo y descargarlo. Para obtener más información, consulta Bibliotecas cliente de la API de BigQuery.

Para instalar el SDK de Vertex AI para Python y sus SDK dependientes, ejecuta el siguiente código.

# Install the Vertex AI SDK
! pip3 install --upgrade --quiet google-cloud-aiplatform

La marca --quiet suprime el resultado para que solo se muestren los errores, si los hay. El signo de exclamación (!) indica que este es un comando de shell.

Debido a que este es el primer código que ejecutas en tu notebook nuevo, debes ingresarlo en la celda de código en blanco en la parte superior del notebook. Después de ingresar el código en una celda de código, haz clic en  Ejecutar las celdas seleccionadas y avanza o usa la combinación de teclas Shift + Enter para ejecutar el código.

Ejecuta el código para instalar el SDK.

A medida que avanzas con este instructivo, ejecuta el código en la celda de código vacía que aparece automáticamente debajo del código ejecutado más recientemente. Si deseas agregar de forma manual una nueva celda de código, haz clic en el botón  Inserta una celda debajo del archivo de notebook.

Agrega una celda de código nueva.

Configura el ID y la región del proyecto

En este paso, configurarás el ID y la región del proyecto. Primero debes asignarlos a variables para que se pueda hacer referencia a ellos con facilidad más adelante en este instructivo. A continuación, usa el comando gcloud config para configurarlos para la sesión de Google Cloud. Más adelante, los usarás junto con el URI del bucket de Cloud Storage para inicializar el SDK de Vertex AI para Python.

Determina tu ID del proyecto

Para configurar tu ID del proyecto, sigue estos pasos:

  1. Ubica el ID del proyecto de Google Cloud. Para obtener más información, consulta Encuentra el ID del proyecto.

  2. Ejecuta lo siguiente en una celda de código en tu notebook. En el código, reemplaza MY_PROJECT_ID por el ID del proyecto que acabas de ubicar. El resultado que genera este comando es Updated property [core/project]..

    project_id = "MY_PROJECT_ID"  # @param {type:"string"}
    # Set the project id
    ! gcloud config set project {project_id}
    

Configura tu región

En este instructivo, se usa la región us-central1. Para configurar tu región, sigue estos pasos:

  1. Ejecuta el siguiente código para establecer la variable region que usa Vertex AI en us-central1. Este comando no genera resultados. Para obtener más información, consulta Elige tu ubicación.

    region = "us-central1"  # @param {type: "string"}
    

Cree un bucket de Cloud Storage

En este instructivo, se requiere un bucket de Cloud Storage utilizado por Vertex AI para almacenar los artefactos en etapa intermedia. Vertex AI almacena los datos asociados con el conjunto de datos que creas y los recursos de modelo en el bucket de etapa de pruebas. Estos datos se conservan y están disponibles en todas las sesiones. En este instructivo, Vertex AI también almacena tu conjunto de datos en el bucket de etapa de pruebas. Especifica el bucket de etapa de pruebas cuando inicialices el SDK de Vertex AI para Python.

Cada bucket de Cloud Storage debe tener un nombre único a nivel global. Si eliges un nombre que ya se usó, el comando de gsutil mb para crear el bucket fallará. El siguiente código usa una marca de fecha y hora y el nombre de tu proyecto para crear un nombre de bucket único. Agrega el nombre del bucket a gs:// para crear el URI del bucket de Cloud Storage. El comando de shell echo te muestra el URI para que puedas verificar que se creó correctamente.

  1. Para configurar el nombre y el URI de tu bucket, ejecuta el siguiente código. En la última línea, se muestra el URI de tu bucket de Cloud Storage.

    bucket_name = "bucket-name-placeholder"  # @param {type:"string"}
    bucket_uri = f"gs://{bucket_name}"
    
    from datetime import datetime
    timestamp = datetime.now().strftime("%Y%m%d%H%M%S")
    
    if bucket_name == "" or bucket_name is None or bucket_name == "bucket-name-placeholder":
        bucket_name = project_id + "aip-" + timestamp
        bucket_uri = "gs://" + bucket_name
    ! echo $bucket_uri
    
  2. Para crear un bucket con la biblioteca cliente de Cloud Storage y el URI del bucket, ejecuta el siguiente código. Este comando no genera resultados.

    from google.cloud import storage
    client = storage.Client(project=project_id)
    
    # Create a bucket
    bucket = client.create_bucket(bucket_name, location=region)
    
  3. Para verificar que tu bucket se creó correctamente, ejecuta el siguiente comando:

    print("Bucket {} created.".format(bucket.name))
    

Inicializa el SDK de Vertex AI para Python

Si quieres inicializar el SDK de Vertex AI para Python, primero debes importar su biblioteca, aiplatform. A continuación, debes llamar a aiplatform.init y pasar los valores para los siguientes parámetros:

  • project: El project especifica qué proyecto de Google Cloud usar cuando usas el SDK de Vertex AI para Python a fin de realizar llamadas a la API de Vertex AI. En este instructivo, especificarás tu proyecto de Google Cloud con su nombre. También puedes especificar tu proyecto con su número de proyecto.

  • location: location especifica qué región de Google Cloud se usa cuando realizas llamadas a la API. Si no especificas una ubicación, el SDK de Vertex AI para Python usa us-central1.

  • staging_bucket: El staging_bucket especifica qué bucket de Cloud Storage se usa para almacenar en etapa intermedia los artefactos cuando usas el SDK de Vertex AI para Python. Especifica el bucket con un URI que comienza con gs://. En este instructivo, usarás el URI que creaste antes en Crea un bucket de Cloud Storage.

Para configurar tu proyecto de Google Cloud, la región y el bucket de etapa de pruebas, ejecuta el siguiente comando. Este comando no genera resultados.

from google.cloud import aiplatform

# Initialize the Vertex AI SDK
aiplatform.init(project=project_id, location=region, staging_bucket=bucket_uri)

Inicializa BigQuery

En este instructivo, se usa un conjunto de datos públicos de pingüinos de BigQuery para entrenar un modelo. Después de que Vertex AI entrene el modelo, debes especificar los parámetros que representan las características de los pingüinos, y el modelo usará esas características para predecir las especies de pingüinos que representan. Para obtener más información sobre los conjuntos de datos públicos, consulta Conjuntos de datos públicos de BigQuery.

Antes de usar el conjunto de datos de BigQuery, debes inicializar BigQuery con el ID del proyecto. Para hacer esto, ejecuta el siguiente comando. Este comando no genera resultados.

from google.cloud import bigquery

# Set up BigQuery client
bq_client = bigquery.Client(project=project_id)