Ce tutoriel vous montre comment utiliser Gemini pour Google Cloud, un service dans Google Cloud, pour explorer, créer, modifier, tester et déployer exemple d'application Python.
Pour l'exemple suivant, considérez que vous êtes un développeur une équipe qui développe une application d'inventaire. Vous êtes en charge du prototypage de base qui contient quelques méthodes d'API permettant de fonctionner dans le cadre application d'inventaire. Vous souhaitez développer l'application dans votre environnement VS Code local avant de la déployer sur Google Cloud. Cependant, vous n'êtes pas sûr quel service Google Cloud convient le mieux à votre cas d'utilisation.
Dans ce tutoriel, vous utilisez Gemini pour Google Cloud avec Visual Studio Code comme IDE pour créer un exemple d'application d'inventaire comportant deux méthodes d'API.
Ce tutoriel s'adresse aux développeurs de tout niveau d'expérience a contribué à la création d'applications, mais ne connaît peut-être pas les technologies cloud. Nous partons du principe que vous avez déjà utilisé VS Code en tant que votre IDE, et que vous connaissez Python et le framework Flask.
Objectifs
Découvrez les différents services Google que vous pouvez utiliser pour déployer une application en en posant des questions contextuelles à Gemini.
Demandez à Gemini de fournir des modèles que vous pouvez utiliser pour développer une application Python de base dans Cloud Run.
Créer, explorer et modifier l'application en utilisant Gemini pour : expliquer et générer le code.
Exécuter et tester l'application en local, puis la déployer sur Google Cloud en utilisant Gemini pour générer les étapes.
Produits Google Cloud utilisés
Ce tutoriel utilise les produits Google Cloud facturables suivants. Utilisez le simulateur de coût pour générer une estimation des coûts en fonction de votre utilisation prévue.
- Cloud Run. Cloud Run est une plate-forme de calcul qui vous permet d'exécuter des conteneurs directement sur la plate-forme de l'infrastructure. Vous pouvez déployer du code écrit dans n'importe quel langage de programmation Cloud Run si vous pouvez créer une image de conteneur à partir de celle-ci. Pour obtenir des informations sur les tarifs, consultez la page Cloud Run.
Outre le produit mentionné précédemment, ce tutoriel utilise également le produits suivants:
Gemini. Gemini est un collaborateur toujours actif de Google Cloud, qui propose une assistance basée sur l'IA générative un large éventail d'utilisateurs, y compris des développeurs et des data scientists. Pour fournir une expérience d'assistance intégrée, Gemini est intégré dans de nombreux produits Google Cloud.
Extension Cloud Code pour VS Code. Cette extension est un IDE plug-in compatible avec le cycle de développement de Kubernetes les applications Cloud Run. Pour en savoir plus sur la l'extension Cloud Code, consultez la section Cloud Code pour les fonctionnalités VS Code.
Avant de commencer
Installez une copie locale de VS Code. si ce n'est pas déjà fait.
Installez l'extension Cloud Code pour VS Code.
Suivez les instructions du guide d'installation Python Git et le client Docker. Suivez également la procédure pour créer un projet Google Cloud.
- Assurez-vous que Gemini est configuré pour votre compte utilisateur et votre projet Google Cloud.
Activez Gemini pour votre IDE.
Suivez les étapes pour vous connecter à Google Cloud dans votre IDE et sélectionner un configuré pour Google Cloud.
Découvrir les services Google Cloud
Si vous débutez sur Google Cloud, Gemini peut vous aider choisir les services Google Cloud qui répondent aux exigences de l'architecture des applications.
Dans votre IDE, vous pouvez discuter avec Gemini pour obtenir de l'aide. En utilisant dans le volet Gemini, vous saisissez des invites (questions ou déclarations qui décrivent l'aide souhaitée), et Gemini renvoie des réponses. Requêtes peut inclure du contexte issu d'un code existant que Google Cloud analyse pour fournir des réponses plus utiles ou complètes. Pour en savoir plus sur la rédaction de requêtes permettant de générer de bonnes réponses, consultez Rédiger de meilleures requêtes pour Gemini.
Pour envoyer une requête à Gemini concernant les services Google Cloud, procédez comme suit:
Dans la barre d'activité de votre IDE, cliquez sur spark Gemini Code Assist.
Pour localiser la barre d'activité de VS Code, consultez Interface utilisateur.
Dans le volet Gemini Code Assist: Chat, saisissez la requête suivante. puis cliquez sur Send (Envoyer) :
I am new to Google Cloud and I want to use the Cloud Code extension. Give me some examples of Google services that I can use to build and deploy a sample app using containers.
Gemini répond avec une liste de services Google Cloud et des descriptions détaillées.
Dans cet exemple, supposons que Gemini suggère à la fois Cloud Run et Cloud Run fonctionnent comme deux fonctions Google Cloud qui peuvent vous aider à créer et déployer un exemple d'application, mais dont vous avez besoin des informations sur ces services.
Découvrez comment et quand Gemini pour Google Cloud utilise vos données.
Saisissez une question complémentaire telle que celle-ci:
What is the difference between Cloud Run and Cloud Functions? Explain to me in simple terms as I am new to Google Cloud.
Gemini explique en détail les différences entre les deux aux services Google Cloud.
Facultatif: Pour réinitialiser l'historique de vos discussions, dans Gemini Code Assist: Chat cliquez sur Supprimer, puis sur Réinitialiser par chat.
Créer une application Python Hello World
Imaginez que vous souhaitez utiliser Cloud Run pour créer et déployer une application Python de base. Comme vous débutez avec Cloud Run et que Cloud Code, vous avez besoin d'aide pour créer l'application. Dans cette section, vous demandez à Gemini vous aider à créer une application Python Hello World dans Cloud Run.
Lancez votre IDE, si ce n'est pas déjà fait.
Dans la barre d'activité de votre IDE, cliquez sur spark Gemini Code Assist.
Dans le volet Gemini Code Assist: Chat, saisissez la requête suivante. puis cliquez sur Send (Envoyer) :
How to create a new Cloud Run app in Cloud Code using the command palette? What languages are supported?
La palette de commandes de VS Code fournit la liste de toutes les commandes, y compris les commandes pour Cloud Code.
Le résultat ressemble à ce qui suit :
To create a new Cloud Run app in Cloud Code using the command palette, follow these steps: 1. Open the command palette (press Ctrl/Cmd+Shift+P or click View > Command Palette). 2. Run the "Cloud Code: New Cloud Run App" command. ...
Gemini affiche également les langues disponibles pour le Application Cloud Run.
Dans cet exemple, vous choisissez d'utiliser pour créer l'application exemple.
Pour apprendre à créer une application Python à partir d'un modèle Cloud Run, saisissez la requête suivante:
How do I create a Python app from a Cloud Run template using the command palette? I am using Cloud Code.
Le résultat ressemble à ce qui suit :
To create a Python app from a Cloud Run template using the command palette, follow these steps: 1. Open Cloud Code. 2. Click the Command Palette (press Ctrl/Cmd+Shift+P or click View > Command Palette). 3. Run the "Cloud Code: New Application" command. ...
Suivez les étapes indiquées par Gemini dans sa réponse à créer une application Python de base Hello World dans Cloud Run ; Vous pouvez également vous reporter à la section suivante pour créer l'application Hello World Python.
Étapes alternatives pour créer une application Python Hello World
Lancez votre IDE, si ce n'est pas déjà fait.
Ouvrez la palette de commandes: appuyez sur Commande+Maj+P (macOS) ou Ctrl+Maj+P (pour Windows et Linux).
Dans le champ de la palette de commandes, saisissez
Cloud Code: New Application
. puis cliquez sur le résultat.Dans la liste des exemples disponibles, sélectionnez Cloud Run application (Application Cloud Run).
Dans la liste des modèles disponibles, sélectionnez Python (Flask): Cloud Run.
Enregistrez la nouvelle application à l'emplacement de votre choix.
Une notification confirme que votre application a été créée.
Un aperçu du fichier README du service sélectionné s'ouvre dans votre IDE, comme illustré dans la figure 1:
<ph type="x-smartling-placeholder">Explorer l'application Python Hello World
Maintenant que vous avez créé votre application Hello World dans Cloud Run, vous pouvez utiliser Gemini pour expliquer les fichiers et les extraits de code déployés dans votre IDE. Pour explorer le code de l'application exemple que vous avez créé, procédez comme suit:
Lancez votre IDE.
Ouvrez l'Explorer: appuyez sur Commande+Maj+E (macOS) ou Ctrl+Maj+E (pour Windows et Linux).
Vous pouvez voir les fichiers associés à votre application exemple.
Dans la liste des fichiers, cliquez sur
Dockerfile
pour afficher son contenu.Sélectionnez tout le contenu de
Dockerfile
, cliquez sur l'icône représentant une ampoule, puis cliquez sur Explain this (Expliquer ceci), comme illustré dans la figure 2:Gemini génère une explication en langage naturel concernant contenus et fonction de
Dockerfile
. Si vous n'êtes pas sûr de certains points dans la réponse, vous pouvez poser des questions de suivi.Pour en savoir plus sur le fichier
app.py
mentionné dansDockerfile
, consultez Dans le volet Gemini, saisissez la requête suivante:What is the function of the app.py file in Dockerfile?
Gemini génère une réponse semblable à la suivante:
The app.py file is the entrypoint for the container. It is the file that will be executed when the container is launched. In this case, the app.py file will run the Python code that is contained within it.
Vous pouvez aussi sélectionner le texte
app.py
dansDockerfile
, cliquer sur l'icône représentant une ampoule, puis cliquez sur Expliquer ceci.Ouvrez l'Explorer: appuyez sur Commande+Maj+E (macOS) ou Ctrl+Maj+E (pour Windows et Linux).
Ouvrez le fichier
app.py
. Vous voyez deux variables :K_SERVICE
etK_REVISION
.Pour en savoir plus sur les variables du fichier
app.py
, consultez le Code Gemini Assistance: Chat, saisissez la requête suivante:What is the function of `K_SERVICE` and `K_REVISION` in the `app.py` file?
Vous pouvez également sélectionner le texte suivant dans Dockerfile : cliquez sur l'icône représentant une ampoule, puis sur Expliquer ceci:
service = os.environ.get('K_SERVICE', 'Unknown service') revision = os.environ.get('K_REVISION', 'Unknown revision')
La réponse est semblable à ce qui suit :
The code above is using the os.environ module to get the values of the K_SERVICE and K_REVISION environment variables. These variables are set by Cloud Run when it deploys the service, and they contain the name of the service and the revision number, respectively. ...
Générer des exemples de données pour l'application
Vous disposez d'une application Flask de base créée dans Cloud Run. Avant de commencer vous pouvez ajouter des fonctionnalités pour créer l'application d'inventaire, vous avez besoin d'un fichier contient une liste d'exemples d'articles d'inventaire. Pour utiliser Gemini pour : générer les échantillons de données appropriés, procédez comme suit:
Pour afficher les fichiers associés à votre exemple d'application, dans votre IDE, cliquez sur Explorer :
Cliquez sur l'icône New file (Nouveau fichier) et créez un fichier appelé
inventory.py
.Pour permettre à Gemini de générer les exemples de données, dans le code Gemini Assistance: Chat, saisissez la requête suivante:
Create a variable called inventory which is a list of 3 JSON objects. Each JSON object has 2 attributes: productid and onhandqty. Both attributes are strings.
Gemini génère un exemple de code pour trois objets JSON.
Dans la réponse, cliquez sur . addInsert in current file (Insérer dans le fichier actuel) pour insérer l'exemple de code dans le fichier
<ph type="x-smartling-placeholder">inventory.py
, comme illustré dans la figure 3:Le fichier
inventory.py
se présente comme suit:inventory = [ {"productid": "milk", "onhandqty": "10"}, {"productid": "bread", "onhandqty": "5"}, {"productid": "eggs", "onhandqty": "12"} ]
Vous avez créé le fichier
inventory.py
, qui inclut un une liste d'éléments d'inventaire.
Modifier l'application Python Hello World
Après avoir créé le fichier inventory.py
, vous allez introduire quelques méthodes API dans
le fichier app.py
qui peut effectuer des opérations sur les données d'inventaire. Pour effectuer cette opération,
vous pouvez utiliser la fonctionnalité de génération de code de Gemini.
Pour afficher les fichiers associés à votre application exemple, dans votre IDE, procédez comme suit : Cliquez sur Explorer.
Pour afficher le contenu, cliquez sur le fichier
app.py
.Modifiez les instructions d'importation de sorte que le fichier
app.py
inclue les Fichierinventory.py
:import os from flask import Flask, render_template from inventory import inventory
Pour que Gemini génère le code de la première méthode API, Dans le fichier
app.py
, saisissez le commentaire suivant : appuyez sur Ctrl+Entrée:# Generate an app route to display a list of inventory # items in the JSON format from the # inventory.py file. Use the GET method.
Gemini génère une réponse dans le fichier
app.py
.Selon la configuration système, le raccourci clavier permettant de générer à l'aide de Gemini peut être différent Ctrl+Entrée utilisée dans ce tutoriel.
Maintenez le pointeur sur n'importe quelle partie de la réponse.
Une barre d'outils Gemini s'affiche.
Gemini peut générer plusieurs réponses. Dans la barre d'outils, vous pouvez faire défiler chaque réponse en utilisant à l'aide des touches < et <. Dans l'exemple suivant, Gemini ne génère qu'une seule réponse, comme illustré dans la figure 4:
<ph type="x-smartling-placeholder">Pour accepter l'exemple de code suggéré, cliquez sur Accept (Accepter) dans la barre d'outils.
La sortie ressemble à ceci :
# Generate an App route to display a list of inventory # items in the JSON format from the # inventory.py file. Use the GET method. @app.route('/inventory', methods=['GET']) def get_inventory(): """Return a list of inventory items.""" return jsonify(inventory)
Facultatif: Pour en savoir plus sur la fonction
jsonify(inventory)
, mettez en surbrillance puis demandez à Gemini de vous expliquer le code.Modifiez les instructions d'importation de sorte que le fichier
app.py
inclue les Fonctionjsonify
:import os from flask import Flask, render_template, jsonify from inventory import inventory
Pour ajouter une autre méthode API, dans le fichier
app.py
, saisissez la méthode l'invite suivante, puis appuyez sur Ctrl+Entrée:# Generate an App route to get an inventory item # given the productid. Use the GET method. # If there is an invalid productid, # display a 404 error.
Gemini génère une réponse dans le fichier
app.py
.Maintenez le pointeur sur n'importe quelle partie de la réponse.
Une barre d'outils Gemini s'affiche.
Pour accepter l'un des exemples de code suggérés, cliquez sur Accept (Accepter) dans la barre d'outils.
La sortie ressemble à ceci :
# Generate an App route to get an inventory item # given the productid. Use the GET method. # If there is an invalid productid, # display a 404 error. @app.route('/inventory/<productid>', methods=['GET']) def get_inventory_item(productid): """Return an inventory item given the productid.""" for item in inventory: if item["productid"] == productid: return jsonify(item) return jsonify({"error": "Item not found"}), 404
Vous venez d'ajouter deux méthodes d'API pour créer votre application d'inventaire.
Exécuter l'application localement depuis votre IDE
Vous êtes prêt à déployer l'application localement à partir de VS Code. Pour déployer l'application, procédez comme suit:
Lancez votre IDE, si ce n'est pas déjà fait.
Dans la barre d'activité de votre IDE, cliquez sur spark Gemini Code Assist.
Dans le volet Gemini Code Assist, saisissez la requête suivante, puis cliquez sur Send (Envoyer) :
How do I run a Cloud Run app locally within Cloud Code? Is there an emulator?
Suivez les étapes de la réponse de Gemini pour exécuter l'application en local depuis VS Code. Vous pouvez également vous reporter à la section suivante pour déployer un exemple d'application Cloud Run localement depuis VS Code.
Étapes alternatives pour exécuter l'application localement depuis votre IDE
Si vous n'avez pas suivi les étapes indiquées dans la réponse de Gemini Dans la section précédente, vous pouvez suivre ces étapes pour déployer votre exemple d'application:
Lancez votre IDE.
Ouvrez la palette de commandes: appuyez sur Cmd+Maj+P (sous macOS). ou Ctrl+Maj+P (pour Windows et Linux).
Dans le champ de la palette de commandes, saisissez
Run on Cloud Run Emulator
. puis cliquez sur le résultat.Dans le fichier d'environnement
Build
, conservez les valeurs par défaut, puis cliquez sur Exécuter.Ce tutoriel utilise Docker comme option de compilation.
Dans le volet Output (Résultat) de votre IDE, vous pouvez suivre la progression de la compilation. Le processus de déploiement réel peut prendre un certain temps.
Starting to run the app using configuration 'Cloud Run: Run/Debug Locally' from .vscode/launch.json... To view more detailed logs, go to Output channel : "Cloud Run: Run/Debug Locally - Detailed" Dependency check started Dependency check succeeded Starting minikube, this may take a while...... ...
Pour afficher votre application en ligne, une fois le déploiement terminé, cliquez sur l'URL dans le
Volet Output (Sortie). Pour une copie locale de VS Code, si vous avez spécifié localhost 8080
,
votre exemple d'application est disponible à l'URL http://localhost:8080
.
Tester les deux méthodes d'API
Si votre application exemple est en ligne, vous pouvez également vérifier si les routes de vos deux applications fonctionnent.
Dans cet exemple, supposons que l'URL de l'application est http://localhost:8080
.
Pour afficher l'exemple de page de destination pour votre application, accédez à http://localhost:8080.
Pour obtenir la liste de tous les articles d'inventaire, accédez à http://localhost:8080/inventory.
Dans le fichier
app.py
, pour répertorier tous les articles d'inventaire, la fonction@app.route('/inventory', methods=['GET'])
est utilisé.Pour afficher un élément d'inventaire spécifique filtré par l'attribut
productid
, procédez comme suit : cliquez surhttp://localhost:8080/inventory/productid
.Par exemple, http://localhost:8080/inventory/1, où productid est égal à 1.
Dans le fichier
app.py
, pour afficher un élément d'inventaire spécifique en fonction de l'attributproductid
, la fonction@app.route('/inventory/<productid>', methods=['GET'])
est utilisé.
Déployer une application Cloud Run dans Google Cloud
Vous pouvez maintenant déployer l'application Cloud Run sur Google Cloud. Vous pouvez demander à Gemini de vous indiquer la procédure à suivre, ou vous pouvez procédez comme suit:
Ouvrez la palette de commandes: appuyez sur Cmd+Maj+P (sous macOS). ou Ctrl+Maj+P (pour Windows et Linux).
Dans le champ de la palette de commandes, saisissez
Cloud Code: Deploy to Cloud Run
. puis cliquez sur le résultat.Dans le volet des paramètres du service, définissez votre projet Google Cloud.
Acceptez les autres paramètres par défaut, puis cliquez sur Déployer.
Cloud Code crée votre image, la transfère dans le registre, puis déploie votre vers Cloud Run.
Pour afficher le service en cours d'exécution, ouvrez l'URL affichée dans dans la boîte de dialogue Deploy to Cloud Run (Déployer sur Cloud Run).
Vous pouvez également suivre la procédure décrite dans Testez les deux méthodes d'API pour afficher l'application exemple dans Google Cloud. Modifiez vos URL en conséquence.
Effectuer un nettoyage
Pour éviter que les ressources utilisées dans ce tutoriel soient facturées sur votre compte Google Cloud, vous pouvez supprimer le projet Google Cloud que vous avez créé pour ce tutoriel. Vous pouvez également supprimer des ressources individuelles.
- In the Google Cloud console, go to the Manage resources page.
- In the project list, select the project that you want to delete, and then click Delete.
- In the dialog, type the project ID, and then click Shut down to delete the project.
Étape suivante
Consultez la Présentation de Gemini pour Google Cloud.
En savoir plus Quotas et limites de Gemini
En savoir plus de localisation pour Gemini.