arrow_back

Développer des applications d'IA générative avec Gemini et Streamlit : atelier challenge

Testez vos connaissances et partagez-les avec notre communauté
done
Accédez à plus de 700 ateliers pratiques, badges de compétence et cours

Développer des applications d'IA générative avec Gemini et Streamlit : atelier challenge

Atelier 1 heure 30 minutes universal_currency_alt 5 crédits show_chart Intermédiaire
info Cet atelier peut intégrer des outils d'IA pour vous accompagner dans votre apprentissage.
Testez vos connaissances et partagez-les avec notre communauté
done
Accédez à plus de 700 ateliers pratiques, badges de compétence et cours

GSP517

Google Cloud – Ateliers adaptés au rythme de chacun

Présentation

Dans un atelier challenge, vous devez suivre un scénario et effectuer une série de tâches. Aucune instruction détaillée n'est fournie : vous devez utiliser les compétences acquises au cours des ateliers du cours correspondant pour déterminer comment procéder par vous-même. Vous saurez si vous avez exécuté correctement les différentes tâches grâce au score calculé automatiquement (affiché sur cette page).

Lorsque vous participez à un atelier challenge, vous n'étudiez pas de nouveaux concepts Google Cloud. Vous allez approfondir les compétences précédemment acquises. Par exemple, vous devrez modifier les valeurs par défaut ou encore examiner des messages d'erreur pour corriger vous-même les problèmes.

Pour atteindre le score de 100 %, vous devez mener à bien l'ensemble des tâches dans le délai imparti.

Cet atelier est recommandé aux participants inscrits au cours Develop GenAI Apps with Gemini and Streamlit. Êtes-vous prêt pour le challenge ?

Préparation

Avant de cliquer sur le bouton "Démarrer l'atelier"

Lisez ces instructions. Les ateliers sont minutés, et vous ne pouvez pas les mettre en pause. Le minuteur, qui démarre lorsque vous cliquez sur Démarrer l'atelier, indique combien de temps les ressources Google Cloud resteront accessibles.

Cet atelier pratique vous permet de suivre vous-même les activités dans un véritable environnement cloud, et non dans un environnement de simulation ou de démonstration. Nous vous fournissons des identifiants temporaires pour vous connecter à Google Cloud le temps de l'atelier.

Pour réaliser cet atelier :

  • vous devez avoir accès à un navigateur Internet standard (nous vous recommandons d'utiliser Chrome) ;
Remarque : Ouvrez une fenêtre de navigateur en mode incognito/navigation privée pour effectuer cet atelier. Vous éviterez ainsi les conflits entre votre compte personnel et le temporaire étudiant, qui pourraient entraîner des frais supplémentaires facturés sur votre compte personnel.
  • vous disposez d'un temps limité ; une fois l'atelier commencé, vous ne pouvez pas le mettre en pause.
Remarque : Si vous possédez déjà votre propre compte ou projet Google Cloud, veillez à ne pas l'utiliser pour réaliser cet atelier afin d'éviter que des frais supplémentaires ne vous soient facturés.

Scénario du challenge

Vous avez intégré Cymbal Health il y a quelques mois. Cymbal Health est un réseau de santé réputé du centre-est du Minnesota, dont l'objectif est de repenser et transformer la façon dont les soins de santé peuvent être dispensés. Cymbal Health propose un régime de santé qui regroupe couverture et soins médicaux afin de faciliter l'accès des patients à des soins de qualité pour un coût abordable.

Avec ce service à valeur ajoutée, Cymbal Health souhaite améliorer le bien-être et la santé de ses clients en leur fournissant des conseils par le biais d'applications. L'un des domaines sur lesquels la structure souhaite se concentrer est l'amélioration de l'alimentation de ses clients.

logo Cymbal Labs

En exploitant le potentiel de Gemini Pro, un modèle multimodal permettant de générer du texte, des contenus audio, des images et des vidéos, Cymbal Health peut créer des applications qui émettent des recommandations de repas pour ses clients.

Prenons un exemple : votre équipe a travaillé à la création d'une application Chef basée sur l'IA, qui génère des recettes en fonction des préférences culinaires des clients, de leurs restrictions et allergies alimentaires, et des produits qu'ils ont généralement chez eux ou qu'ils peuvent acheter au supermarché. Votre objectif est de créer, tester et déployer une démonstration de faisabilité pour cette application Chef reposant sur le modèle Gemini Pro, le framework Streamlit et Cloud Run. Le client a pour cela dressé la liste des tâches qu'il aimerait vous voir réaliser dans un environnement de bac à sable et dans un délai imparti.

Votre challenge

Les tâches qui vous incombent sont les suivantes :

  • Utiliser cURL pour tester une requête avec l'API
  • Écrire le code Python du framework Streamlit et de la requête pour compléter chef.py
  • Tester l'application
  • Modifier le Dockerfile et transférer l'image Docker dans Artifact Registry
  • Déployer l'application sur Cloud Run et la tester

Tâche 1 : Utiliser cURL pour tester une requête avec l'API

Avant de pouvoir commencer à créer l'application Chef dans Vertex AI, vous devez tester la connectivité avec l'API Gemini.

  1. Accédez au notebook géré par l'utilisateur Vertex AI Workbench qui est fourni dans la console Cloud de l'environnement de l'atelier.

  2. Ouvrez un terminal et téléchargez le fichier prompt.ipynb à partir de Cloud Storage à l'aide de la commande ci-dessous :

    gsutil cp gs://spls/gsp517/prompt.ipynb .
  3. Modifiez prompt.ipynb de façon à inclure votre ID de projet et votre région dans la cellule 3. Vous trouverez ces informations dans le panneau de gauche des instructions de l'atelier.

  4. Modifiez prompt.ipynb : remplacez la requête existante par la requête suivante afin de l'utiliser avec cURL, au niveau de la cellule 5.

    I am a Chef. I need to create Japanese recipes for customers who want low sodium meals. However, I do not want to include recipes that use ingredients associated with a peanuts food allergy. I have ahi tuna, fresh ginger, and edamame in my kitchen and other ingredients. The customer wine preference is red. Please provide some for meal recommendations. For each recommendation include preparation instructions, time to prepare and the recipe title at the begining of the response. Then include the wine paring for each recommendation. At the end of the recommendation provide the calories associated with the meal and the nutritional facts.
  5. Exécutez toutes les cellules et observez les résultats.

  6. Enregistrez prompt.ipynb.

Une fois que les résultats sont satisfaisants, validez l'objectif.

Cliquez sur Vérifier ma progression pour valider l'objectif. Utiliser cURL pour tester une requête avec l'API

Tâche 2 : Écrire le code Python du framework Streamlit et de la requête pour compléter chef.py

Dans cette tâche, vous allez cloner un dépôt GitHub et télécharger le fichier chef.py. Vous allez ensuite ajouter le code du framework Streamlit dans le fichier chef.py pour indiquer la préférence en termes de vin, afin de compléter l'interface utilisateur de l'application. Vous allez également inclure une requête Gemini personnalisée (semblable à celle de la tâche 1, mais comprenant des variables).

  1. À l'aide de Cloud Shell, clonez ce dépôt à partir du répertoire par défaut :

    git clone https://github.com/GoogleCloudPlatform/generative-ai.git
  2. Accédez au répertoire gemini-streamlit-cloudrun :

    cd generative-ai/gemini/sample-apps/gemini-streamlit-cloudrun Important : Toutes les tâches de cet atelier challenge doivent être effectuées dans ce répertoire. Il est impératif que vous téléchargiez le fichier chef.py et que vous le modifiiez dans ce répertoire, faute de quoi il ne pourra pas accéder au framework Streamlit. Vous ne pourrez pas non plus le tester dans Cloud Shell (tâche 3) ni créer le conteneur Docker (tâche 4), ni déployer et tester celui-ci dans Cloud Run (tâche 5) si vous ne respectez pas cette consigne.
  3. Téléchargez le fichier chef.py à l'aide de la commande suivante :

    gsutil cp gs://spls/gsp517/chef.py .
  4. Ouvrez le fichier chef.py dans l'éditeur Cloud Shell et examinez le code :

    Remarque : Le fichier chef.py inclut déjà le code d'interface utilisateur du framework Streamlit pour les variables "cuisine", "dietary_preference", "allergy", "ingredient_1", "ingredient_2" et "ingredient_3". Examinez ce code d'interface avant de passer à l'étape suivante.
  5. Ajoutez une case d'option dans le framework Streamlit pour la variable "wine". Incluez les options "Rouge", "Blanc" et "Aucun".

  1. Enregistrez le fichier chef.py.

  2. Ajoutez la nouvelle requête Gemini indiquée ci-dessous dans le code Python :

    prompt = f"""I am a Chef. I need to create {cuisine} \n recipes for customers who want {dietary_preference} meals. \n However, don't include recipes that use ingredients with the customer's {allergy} allergy. \n I have {ingredient_1}, \n {ingredient_2}, \n and {ingredient_3} \n in my kitchen and other ingredients. \n The customer's wine preference is {wine} \n Please provide some for meal recommendations. For each recommendation include preparation instructions, time to prepare and the recipe title at the begining of the response. Then include the wine paring for each recommendation. At the end of the recommendation provide the calories associated with the meal and the nutritional facts. """
  3. Enregistrez le fichier chef.py.

Une fois que vous êtes satisfait du code de requête Gemini que vous avez ajouté dans chef.py, importez le fichier dans le bucket -generative-ai en exécutant la commande ci-dessous dans Cloud Shell. Dans la console Cloud, cliquez sur Ouvrir le terminal pour ouvrir la session dans Cloud Shell.

gcloud storage cp chef.py gs://{{{project_0.project_id|set at lab start}}}-generative-ai/

Cliquez sur Vérifier ma progression pour valider l'objectif. Écrire le code Python du framework Streamlit et de la requête pour compléter chef.py

Remarque : Veillez à exécuter la commande ci-dessus après avoir modifié le fichier chef.py. Vous avez ainsi l'assurance que le fichier chef.py modifié se trouve dans le bucket.

Tâche 3 : Tester l'application

Dans cette tâche, vous allez utiliser le terminal dans Cloud Shell pour exécuter et tester votre application.

Assurez-vous que vous vous trouvez toujours dans generative-ai/gemini/sample-apps/gemini-streamlit-cloudrun.

  1. Configurez l'environnement virtuel Python et installez les dépendances.

  2. Définissez les variables d'environnement PROJECT (sur votre ID de projet) et REGION (sur la région que vous utilisez dans l'environnement de l'atelier).

  3. Exécutez l'application chef.py et testez-la.

Une fois que vous avez testé l'application dans Cloud Shell et que vous avez vérifié qu'elle fonctionne comme prévu, sans erreur, validez l'objectif.

Cliquez sur Vérifier ma progression pour valider l'objectif. Tester l'application

Tâche 4 : Modifier le Dockerfile et transférer l'image Docker dans Artifact Registry

Dans cette tâche, vous allez modifier l'exemple de Dockerfile pour utiliser votre fichier chef.py et transférer l'image Docker dans Artifact Registry.

Important : Avant que vous n'exécutiez les étapes de cette tâche, nous vous recommandons de définir les variables d'environnement PROJECT (sur votre ID de projet) et REGION (sur la région que vous utilisez dans l'environnement de l'atelier), comme vous l'avez fait précédemment.
  1. Utilisez l'éditeur Cloud Shell pour modifier le Dockerfile afin d'utiliser chef.py, puis enregistrez le fichier.

  2. Dans Cloud Shell, définissez les variables d'environnement suivantes.

    Variable Valeur
    AR_REPO "chef-repo"
    SERVICE_NAME "chef-streamlit-app"
    Remarque : Nous vous recommandons de combiner cette commande et les deux suivantes en une seule commande, car le processus de création du dépôt Artifact Registry et d'envoi du build à Cloud Build prend environ huit minutes.
  3. Créez le dépôt Artifact Registry à l'aide de la commande gcloud artifacts repositories create en spécifiant les paramètres suivants.

    Paramètre Valeur
    repo name $AR_REPO
    location $REGION
    repository format Docker
  4. Envoyez le build à l'aide de la commande gcloud builds submit en spécifiant les paramètres suivants.

    Paramètre Valeur
    tag "$REGION-docker.pkg.dev/$PROJECT/$AR_REPO/$SERVICE_NAME"
  5. Attendez que l'exécution de la commande soit terminée.

Une fois la commande exécutée, validez l'objectif.

Cliquez sur Vérifier ma progression pour valider l'objectif. Modifier le Dockerfile et transférer l'image Docker dans Artifact Registry

Tâche 5 : Déployer l'application sur Cloud Run et la tester

Dans cette tâche, vous allez déployer l'application (en tant qu'artefact Docker) sur Cloud Run, puis la tester tandis qu'elle est en cours d'exécution à partir du point de terminaison du service Cloud Run.

  1. Dans Cloud Shell, déployez l'application (en tant qu'artefact Docker) à l'aide de la commande gcloud run deploy en spécifiant les valeurs de paramètres suivantes :

    Paramètre Valeur
    port 8080
    image "$REGION-docker.pkg.dev/$PROJECT/$AR_REPO/$SERVICE_NAME"
    flag --allow-unauthenticated
    region REGION
    platform managed
    project PROJECT
    set-env-vars PROJECT=$PROJECT,REGION=$REGION
    Remarque : L'invite "Voulez-vous activer ces API pour continuer (cela prendra quelques minutes) ?" peut s'afficher. Si tel est le cas, sélectionnez "Y" (oui).

    Le déploiement prend quelques minutes. À son issue, l'URL du service Cloud Run s'affiche. Vous pouvez y accéder dans le navigateur pour visualiser l'application Cloud Run que vous venez de déployer.

  2. Testez l'application en utilisant le lien fourni.

Une fois que vous avez testé l'application exécutée sur Cloud Run, validez l'objectif.

Cliquez sur Vérifier ma progression pour valider l'objectif. Déployer l'application sur Cloud Run et la tester

Félicitations !

En suivant cet atelier challenge, vous avez validé vos compétences concernant le développement d'applications d'IA générative avec Gemini. Vous avez également appris à les mettre en pratique dans une application Chef basée sur l'IA.

Badge de compétence "Develop GenAI Apps with Gemini and Streamlit"

Étapes suivantes et informations supplémentaires

Formations et certifications Google Cloud

Les formations et certifications Google Cloud vous aident à tirer pleinement parti des technologies Google Cloud. Nos cours portent sur les compétences techniques et les bonnes pratiques à suivre pour être rapidement opérationnel et poursuivre votre apprentissage. Nous proposons des formations pour tous les niveaux, à la demande, en salle et à distance, pour nous adapter aux emplois du temps de chacun. Les certifications vous permettent de valider et de démontrer vos compétences et votre expérience en matière de technologies Google Cloud.

Dernière mise à jour du manuel : 4 avril 2024

Dernier test de l'atelier : 8 mars 2024

Copyright 2024 Google LLC Tous droits réservés. Google et le logo Google sont des marques de Google LLC. Tous les autres noms d'entreprises et de produits peuvent être des marques des entreprises auxquelles ils sont associés.

Ce contenu n'est pas disponible pour le moment

We will notify you via email when it becomes available

Parfait !

We will contact you via email if it becomes available