Créer un notebook Jupyter

Dans ce tutoriel, vous allez utiliser le SDK Vertex AI dans un notebook Jupyter pour obtenir des prédictions à l'aide d'une instance Vertex AI Workbench.

Cette section explique comment créer un notebook Jupyter dans une instance Vertex AI Workbench. Les instances Vertex AI Workbench sont des environnements de développement basés sur des notebooks Jupyter pour l'ensemble du workflow de science des données. Les instances Vertex AI Workbench sont préinstallées avec JupyterLab et disposent d'une suite de packages de deep learning préinstallée, assurant la compatibilité avec les frameworks TensorFlow et PyTorch. Pour en savoir plus, consultez la présentation des instances Vertex AI Workbench.

Après avoir créé un notebook dans Vertex AI Workbench, vous exécutez des parties séquentielles de code Python pour effectuer la majeure partie du travail permettant de générer vos prédictions.

Créer une instance Vertex AI Workbench

Pour créer une instance Vertex AI Workbench, procédez comme suit :

  1. Dans la console Google Cloud, ouvrez votre projet Google Cloud s'il n'est pas déjà ouvert.

  2. Dans la console Google Cloud, accédez à la page Instances Vertex AI Workbench.

    Accéder à la page "Instances"

  3. Si l'option permettant d'activer l'API Notebooks s'affiche, cliquez sur Activer. Le processus d'activation peut prendre quelques instants.

  4. Cliquez sur  Créer.

  5. Dans la boîte de dialogue Nouvelle instance, sous Nom, saisissez le nom de votre instance.

  6. Pour Région, sélectionnez us-central1 (Iowa).

  7. Pour la Zone, sélectionnez us-central1-a.

  8. Cliquez sur Créer. Si vous souhaitez en savoir plus sur votre instance, une fois que celle-ci apparaît dans votre liste d'instances, cliquez sur son nom pour afficher ses propriétés.

Préparer votre notebook

Votre instance Vertex AI Workbench est déjà authentifiée pour utiliser votre projet Google Cloud. Cependant, vous devez installer et initialiser le SDK Vertex AI pour Python. Cette section vous explique en détail chacune de ces étapes.

Une fois votre notebook créé, il vous servira à saisir et exécuter les extraits de code séquentiels dans ce tutoriel. Chaque extrait de code doit être exécuté individuellement et dans l'ordre.

Créer et ouvrir votre notebook

Votre notebook est l'emplacement où vous exécutez le code de ce tutoriel. Il s'agit d'un fichier avec l'extension .ipynb. Lorsque vous le créez, ce fichier n'a pas de titre. Vous pouvez le renommer une fois qu'il est ouvert. Pour créer et ouvrir votre notebook, procédez comme suit :

  1. Dans la console Google Cloud, accédez à la page Instances.

    Accéder à la page "Instances"

  2. En regard du nom de l'instance, cliquez sur Ouvrir JupyterLab.

    Votre instance Vertex AI Workbench ouvre l'environnement JupyterLab.

  3. Dans JupyterLab, sélectionnez Fichier > Nouveau > Notebook.

    Le nouveau fichier notebook s'ouvre.

  4. Dans le volet de navigation de gauche de JupyterLab, recherchez votre nouveau notebook nommé Untitled.ipynb. Pour le renommer, effectuez un clic droit sur le nom de votre notebook, cliquez sur Renommer, puis saisissez un nouveau nom.

installer le SDK Vertex AI pour Python ;

Après avoir ouvert votre notebook, vous devez installer le SDK Vertex AI pour Python. Le SDK Vertex AI pour Python vous sert à effectuer des appels d'API Vertex AI qui créent votre ensemble de données, créent votre modèle, entraînent et déploient votre modèle, puis effectuent des prédictions avec votre modèle. Pour en savoir plus, consultez la section Utiliser le SDK Vertex AI pour Python.

Lorsque vous installez le SDK Vertex AI pour Python, d'autres SDK Google Cloud dont il dépend sont également installés. Deux de ces SDK sont utilisés dans ce tutoriel :

  • Cloud Storage - Lorsque vous utilisez le SDK Vertex AI pour Python pour effectuer des appels d'API Vertex AI, Vertex AI stocke les artefacts dans un bucket Cloud Storage. Le bucket est appelé bucket de préproduction. Vous spécifiez le bucket de préproduction lorsque vous initialisez le SDK Vertex AI pour Python. Pour en savoir plus, consultez Client Python pour l'API Google Cloud Storage.

  • BigQuery - Vertex AI entraîne votre modèle à l'aide d'un ensemble de données public BigQuery. Le SDK BigQuery doit être installé pour accéder à l'ensemble de données utilisé dans ce tutoriel et le télécharger. Pour en savoir plus, consultez Bibliothèques clientes de l'API BigQuery.

Pour installer le SDK Vertex AI pour Python et ses SDK dépendants, exécutez le code suivant.

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

L'option --quiet permet de supprimer le résultat et de n'afficher que les erreurs, le cas échéant. Le point d'exclamation (!) indique qu'il s'agit d'une commande shell.

Comme il s'agit du premier code que vous exécutez dans votre nouveau notebook, vous devez le saisir dans la cellule de code vide en haut de votre notebook. Après avoir saisi le code dans une cellule de code, cliquez sur  Exécuter les cellules sélectionnées et passer à l'étape suivante ou utilisez le raccourci clavier Shift + Enter pour exécuter le code.

Exécuter le code pour installer le SDK.

Au fur et à mesure que vous avancez dans ce tutoriel, exécutez le code dans la cellule de code vide qui apparaît automatiquement sous le code le plus récemment exécuté. Si vous souhaitez ajouter manuellement une nouvelle cellule de code, cliquez sur le bouton  Insérer une cellule en dessous du fichier notebook.

Ajouter une cellule de code.

Définir votre ID de projet et votre région

Au cours de cette étape, vous allez définir votre ID de projet et votre région. Vous les affectez d'abord à des variables afin de pouvoir les référencer facilement plus tard dans ce tutoriel. Ensuite, vous utilisez la commande gcloud config afin de les paramétrer pour votre session Google Cloud. Vous les utiliserez plus tard avec l'URI de votre bucket Cloud Storage pour initialiser le SDK Vertex AI pour Python.

Définir votre ID de projet

Pour définir votre ID de projet, procédez comme suit :

  1. Localisez votre ID de projet Google Cloud. Pour en savoir plus, consultez la section Trouver votre ID de projet.

  2. Exécutez le code suivant dans une cellule de code de votre notebook. Dans le code, remplacez MY_PROJECT_ID par l'ID du projet que vous venez de localiser. Le résultat généré par cette commande est Updated property [core/project]..

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

Définir votre région

Ce tutoriel utilise la région us-central1. Pour définir votre région, procédez comme suit :

  1. Exécutez le code suivant pour définir la variable region utilisée par Vertex AI sur us-central1. Cette commande ne génère pas de résultat. Pour en savoir plus, consultez la section Choisir votre emplacement.

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

Créer un bucket Cloud Storage

Ce tutoriel nécessite un bucket Cloud Storage utilisé par Vertex AI pour organiser les artefacts. Vertex AI stocke les données associées à l'ensemble de données que vous créez et aux ressources du modèle dans le bucket de préproduction. Ces données sont conservées et disponibles dans toutes les sessions. Dans ce tutoriel, Vertex AI stocke également votre ensemble de données dans le bucket de préproduction. Vous spécifiez votre bucket de préproduction lorsque vous initialisez le SDK Vertex AI pour Python.

Le nom de chaque bucket Cloud Storage doit être unique. Si vous choisissez un nom qui a été utilisé, la commande gsutil mb permettant de créer votre bucket échoue. Le code suivant utilise un horodatage et le nom de votre projet pour créer un nom de bucket unique. Vous ajoutez le nom du bucket à gs:// pour créer l'URI de votre bucket Cloud Storage. La commande shell echo affiche l'URI de façon à pouvoir vérifier qu'il a été créé correctement.

  1. Pour définir le nom et l'URI de votre bucket, exécutez le code suivant. La dernière ligne affiche l'URI de votre bucket 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. Pour créer un bucket à l'aide de la bibliothèque cliente Cloud Storage et l'URI du bucket, exécutez le code suivant : Ce code ne génère pas de résultat.

    from google.cloud import storage
    client = storage.Client(project=project_id)
    
    # Create a bucket
    bucket = client.create_bucket(bucket_name, location=region)
    
  3. Pour vérifier que votre bucket a bien été créé, exécutez la commande suivante :

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

Initialiser le SDK Vertex AI pour Python

Pour initialiser le SDK Vertex AI pour Python, vous devez d'abord importer sa bibliothèque, aiplatform. Vous devez ensuite appeler aiplatform.init et transmettre les valeurs pour les paramètres suivants :

  • project - project spécifie le projet Google Cloud à utiliser lorsque vous utilisez le SDK Vertex AI pour Python pour effectuer des appels à l'API Vertex AI. Dans ce tutoriel, vous allez spécifier votre projet Google Cloud avec son nom. Vous pouvez également spécifier votre projet avec son numéro de projet.

  • location - location spécifie la région Google Cloud à utiliser lorsque vous effectuez des appels d'API. Si vous ne spécifiez pas d'emplacement, le SDK Vertex AI pour Python utilise la région us-central1.

  • staging_bucket - staging_bucket spécifie le bucket Cloud Storage à utiliser pour organiser les artefacts lorsque vous utilisez le SDK Vertex AI pour Python. Vous spécifiez le bucket avec un URI commençant par gs://. Dans ce tutoriel, vous allez utiliser l'URI créé précédemment dans la section Créer un bucket Cloud Storage.

Pour définir votre projet Google Cloud, votre région et votre bucket de préproduction, exécutez la commande suivante. Cette commande ne génère pas de résultat.

from google.cloud import aiplatform

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

Initialiser BigQuery

Ce tutoriel utilise un ensemble de données public BigQuery consacré aux manchots pour entraîner un modèle. Une fois que Vertex AI a entraîné le modèle, vous spécifiez des paramètres qui représentent les caractéristiques des manchots, et le modèle utilise ces caractéristiques pour prédire les espèces de manchots qu'ils représentent. Pour en savoir plus sur les ensembles de données publics, consultez la section Ensembles de données publics BigQuery.

Avant d'utiliser l'ensemble de données BigQuery, vous devez initialiser BigQuery avec votre ID de projet. Pour ce faire, exécutez la commande suivante. Cette commande ne génère pas de résultat.

from google.cloud import bigquery

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