1. Übersicht
In diesem Lab verwenden Sie generative KI-Produkte von Google, um mit Gemini Cloud Assist Infrastruktur in Google Cloud zu erstellen, BigQuery-Daten mit den Funktionen für natürliche Sprache zu SQL von Data Canvas abzufragen, mit Gemini Code Assist Code in Colab Enterprise Jupyter-Notebooks und in Eclipse Theia (Visual Studio Code) zu schreiben und KI-Such- und Chatfunktionen, die auf Cloud Storage- und BigQuery-Grundlagenquellen basieren, in Vertex AI Agent Builder zu integrieren.
Wir möchten eine Website für Rezepte und Kochen namens „AI Recipe Haven“ erstellen. Die Website wird in Python und Streamlit erstellt und enthält zwei Hauptseiten. Cooking Advice wird einen Chatbot hosten, den wir mit Gemini und einer fundierten Quelle von Vertex AI Agent Builder erstellen, die mit einer Gruppe von Kochbüchern verknüpft ist. Der Chatbot bietet Kochtipps und beantwortet Fragen zum Kochen. Die Rezeptsuche ist eine Suchmaschine, die von Gemini unterstützt wird und auf einer BigQuery-Rezeptdatenbank basiert.
Wenn Sie bei einem der Codes in dieser Übung nicht weiterkommen, finden Sie Lösungen für alle Codedateien im GitHub-Repository der Übung im Branch solution.
Ziele
Aufgaben in diesem Lab:
- Gemini Cloud Assist aktivieren und verwenden
- Suchanwendung in Vertex AI Agent Builder für den Chatbot für Kochtipps erstellen
- Daten in einem Colab Enterprise-Notebook mit Gemini Code Assist laden und bereinigen
- Suchanwendung in Vertex AI Agent Builder für den Rezeptgenerator erstellen
- Grundgerüst der Python- und Streamlit-Webanwendung erstellen – mit Unterstützung von Gemini
- Webanwendung in Cloud Run bereitstellen
- Verknüpfen Sie die Seite „Kochtipps“ mit unserer Agent Builder-App für die Suche in Kochbüchern.
- Optional: Rezeptsuche-Seite mit der Rezeptsuche-Agent Builder-App verbinden
- (Optional) Endgültige Anwendung ansehen
2. Vorbereitung
- Wenn Sie noch kein Google-Konto haben, müssen Sie ein Google-Konto erstellen.
- Verwenden Sie stattdessen ein privates Konto. Bei Arbeitskonten und Konten einer Bildungseinrichtung kann es Einschränkungen geben, die verhindern, dass Sie die für dieses Lab erforderlichen APIs aktivieren.
3. Projekt einrichten
- Melden Sie sich in der Google Cloud Console an.
- Abrechnung in der Cloud Console aktivieren
- Die Kosten für Cloud-Ressourcen für dieses Lab sollten weniger als 1 $ betragen.
- Sie können die Schritte am Ende dieses Labs ausführen, um Ressourcen zu löschen und so weitere Kosten zu vermeiden.
- Neue Nutzer haben Anspruch auf den kostenlosen Testzeitraum mit einem Guthaben von 300 $.
- Sie nehmen an einem virtuellen praxisorientierten Lab teil? Möglicherweise ist eine Gutschrift in Höhe von 5 $ verfügbar.
- Erstellen Sie ein neues Projekt oder verwenden Sie ein vorhandenes Projekt wieder.
- Prüfen Sie in der Cloud Billing unter Meine Projekte
- , ob die Abrechnung aktiviert ist.
- Wenn in Ihrem neuen Projekt in der Spalte
Billing accountder WertBilling is disabledangezeigt wird:- Klicken Sie in der Spalte
Actionsauf das Dreipunkt-Menü. - Klicken Sie auf Abrechnung ändern.
- Wählen Sie das gewünschte Rechnungskonto aus.
- Klicken Sie in der Spalte
- Wenn Sie an einer Live-Veranstaltung teilnehmen, heißt das Konto wahrscheinlich Google Cloud Platform-Testrechnungskonto.
- Wenn in Ihrem neuen Projekt in der Spalte
4. Gemini Cloud Assist aktivieren und verwenden
In dieser Aufgabe aktivieren und verwenden wir Gemini Cloud Assist. Wenn Sie in der Google Cloud Console arbeiten, kann Gemini Cloud Assist Sie beraten, Sie beim Erstellen, Konfigurieren und Überwachen Ihrer Google Cloud-Infrastruktur unterstützen und sogar gcloud-Befehle vorschlagen und Terraform-Scripts schreiben.
- Um Cloud Assist zu aktivieren, klicken Sie oben in der Cloud Console-Benutzeroberfläche in das Suchfeld und wählen Sie Gemini fragen oder Gemini nach Cloud Console fragen aus.
- Scrollen Sie zum Abschnitt „Erforderliche API“ der Seite und aktivieren Sie die Gemini for Google Cloud API.
- Wenn Sie nicht sofort eine Chatoberfläche sehen, klicken Sie auf Chat starten. Bitten Sie Gemini, einige der Vorteile der Verwendung des Cloud Shell-Editors zu erläutern. Nehmen Sie sich einige Minuten Zeit, um die generierte Antwort zu lesen.
- Fragen Sie als Nächstes nach den Vorteilen von Agent Builder und wie das Tool helfen kann, generative Antworten zu fundieren.
- Sehen wir uns zum Schluss noch einen Vergleich an. Stellen Sie im Gemini-Chatfenster der Google Cloud Console die folgende Frage:
What are the major steps to creating a search app grounded in a GCS data source using Vertex AI Agent builder?
5. Suchanwendung in Vertex AI Agent Builder für den Chatbot für Kochtipps erstellen
Die Website, die wir erstellen, wird eine Seite mit Kochtipps enthalten, auf der ein Chatbot Nutzern bei der Suche nach Antworten auf Fragen zum Kochen helfen soll. Die Funktion basiert auf Gemini und wird durch eine Quelle mit 70 Kochbüchern aus dem öffentlichen Bereich unterstützt. Die Kochbücher dienen als Grundlage für die Antworten von Gemini.
- Verwenden Sie das Suchfeld der Cloud Console, um zu Vertex AI zu gelangen. Klicken Sie im Dashboard auf Alle empfohlenen APIs aktivieren. Dies kann einige Minuten dauern. Wenn Sie ein Pop-up-Fenster erhalten, in dem Sie aufgefordert werden, die Vertex AI API zu aktivieren, klicken Sie auf Aktivieren. Sobald die APIs aktiviert sind, können Sie mit dem nächsten Schritt fortfahren.
- Suchen Sie nach Agent Builder und klicken Sie dann auf Fortfahren und API aktivieren.
- Wie Gemini in unserem vorherigen Ratschlag vorgeschlagen hat, beginnt das Erstellen einer Suchanwendung in Agent Builder mit dem Erstellen einer autoritativen Datenquelle. Wenn der Nutzer sucht, versteht Gemini die Frage und weiß, wie intelligente Antworten formuliert werden. Die Informationen für die Antwort werden jedoch aus der fundierten Quelle bezogen und nicht aus dem eigenen Wissen. Wählen Sie im linken Menü Datenspeicher und dann Datenspeicher erstellen aus.
- Die Kochbücher, die wir für unsere Seite mit Kochtipps verwenden, sind derzeit in einem Cloud Storage-Bucket in einem externen Projekt gespeichert. Wählen Sie den Cloud Storage-Quelltyp aus.
- Sehen Sie sich die Standardoptionen für die Art der Informationen an, die wir importieren, ändern Sie sie aber nicht. Lassen Sie den Importtyp auf Ordner eingestellt und verwenden Sie für den Bucket-Pfad
labs.roitraining.com/labs/old-cookbooks. Klicken Sie dann auf Weiter. - Geben Sie dem Datenspeicher den Namen
old-cookbooks. Klicken Sie auf BEARBEITEN und ändern Sie die ID inold-cookbooks-id. Klicken Sie dann auf Erstellen, um den Datenspeicher zu erstellen.
Vertex AI Agent Builder unterstützt verschiedene App-Typen und der Datenspeicher dient jeweils als Single Source of Truth. Such-Apps eignen sich gut für die allgemeine Nutzung und Suche. Chat-Apps sind für generative Abläufe in Dataflow-basierten Chatbot-/Voicebot-Anwendungen vorgesehen. Empfehlungs-Apps helfen dabei, bessere Empfehlungssysteme zu erstellen. Agent-Apps dienen zum Erstellen von auf generativer KI basierenden Agenten. Letztendlich wäre Agent wahrscheinlich die beste Lösung für unsere Anforderungen, aber da sich das Produkt derzeit in der Vorschauphase befindet, bleiben wir beim App-Typ „Suche“.
- Klicken Sie im Menü auf der linken Seite auf Apps und dann auf Create A New App (Neue App erstellen).
- Klicken Sie auf der Karte Suche auf Ihrer Website auf Erstellen. Geben Sie der App den Namen
cookbook-search. Klicken Sie auf Bearbeiten und legen Sie die App-ID aufcookbook-search-idfest. Legen Sie das Unternehmen aufGooglefest und klicken Sie auf Weiter. - Wählen Sie den Datenspeicher old-cookbooks aus, den Sie vor einigen Schritten erstellt haben, und klicken Sie auf Erstellen, um die Such-App zu erstellen.
Wenn Sie sich den Tab Aktivität ansehen, werden Sie wahrscheinlich feststellen, dass die Kochbücher noch importiert und indexiert werden. Es dauert mindestens 5 Minuten, bis Agent Builder die Tausenden von Seiten in den 70 Kochbüchern indexiert hat, die wir ihm zur Verfügung gestellt haben. Laden und bereinigen wir in der Zwischenzeit einige Daten aus der Rezeptdatenbank für unseren Rezeptgenerator.
6. Daten in einem Colab Enterprise-Notebook mit Gemini Code Assist laden und bereinigen
Google Cloud bietet mehrere Möglichkeiten, mit Jupyter-Notebooks zu arbeiten. Wir werden das neueste Angebot von Google nutzen: Colab Enterprise. Einige von Ihnen kennen vielleicht Colab von Google, das häufig von Einzelpersonen und Organisationen verwendet wird, die mit Jupyter-Notebooks in einer kostenlosen Umgebung experimentieren möchten. Colab Enterprise ist ein kommerzielles Google Cloud-Angebot, das vollständig in die anderen Cloud-Produkte von Google integriert ist und die Sicherheits- und Compliance-Funktionen der GCP-Umgebung voll ausschöpft.
Eine der Funktionen von Colab Enterprise ist die Integration mit Gemini Code Assist von Google. Code Assist kann in einer Reihe verschiedener Code-Editoren verwendet werden und bietet sowohl Ratschläge als auch nahtlose Inline-Vorschläge während der Programmierung. Wir werden diesen generativen Assistenten nutzen, um unsere Rezeptdaten zu bereinigen.
- Suchen Sie nach Colab Enterprise und klicken Sie auf Notebook erstellen. Wenn Sie ein Angebot zum Ausprobieren neuer Colab-Funktionen erhalten, lehnen Sie es ab. Klicken Sie rechts oben in Ihrem neuen Notebook auf Verbinden, um die Laufzeit, also die Rechenleistung hinter dem Notebook, zu starten.

- Klicken Sie auf Datei > Umbenennen, um das Notebook in
Data Wranglingumzubenennen.
- Klicken Sie auf + Text, um ein neues Textfeld zu erstellen, und verschieben Sie es mit dem Aufwärtspfeil an die erste Stelle auf der Seite.

- Bearbeiten Sie das Textfeld und geben Sie Folgendes ein:
# Data Wrangling Import the Pandas library - Beginnen Sie im Codeblock unter dem Textblock, den Sie gerade erstellt haben, mit der Eingabe von
imp. Gemini Code Assist sollte den Rest des Imports in Grau vorschlagen. Drücken Sie die Tabulatortaste, um den Vorschlag zu akzeptieren.import pandas as pd - Erstellen Sie unter dem Feld für den Importcode ein weiteres Textfeld und geben Sie Folgendes ein:
Create a Pandas DataFrame from: gs://labs.roitraining.com/labs/recipes/recipe_dataset.csv. View the first few records. - Erstellen und bearbeiten Sie einen weiteren Codeblock. Geben Sie noch einmal
df =ein und sehen Sie sich den von Gemini Code Assist generierten Code an. Wenn Sie eine Drop-down-Liste mit Python-Schlüsselwörtern über dem generierten Vorschlag sehen, drücken Sie die Esc-Taste, um den hellgrau vorgeschlagenen Code zu sehen. Drücken Sie noch einmal die Tabulatortaste, um den Vorschlag zu akzeptieren. Wenn Ihr Vorschlag denhead()-Funktionsaufruf nicht enthält, fügen Sie ihn hinzu.df = pd.read_csv('gs://labs.roitraining.com/labs/recipes/recipe_dataset.csv') df.head() - Klicken Sie in die erste Codezelle, in der Sie Pandas importiert haben, und verwenden Sie das Menü Befehle oder die Tastatur, um die ausgewählte Zelle auszuführen. Mit Umschalttaste + Eingabetaste wird die Zelle ausgeführt und der Fokus auf die nächste Zelle verschoben. Bei Bedarf wird eine neue Zelle erstellt. Warten Sie, bis die Zelle ausgeführt wurde, bevor Sie fortfahren.HINWEIS: Wenn eine Zelle noch nicht ausgeführt wurde, sehen Sie links davon [ ]. Während eine Zelle ausgeführt wird, sehen Sie eine sich drehende Animation. Wenn die Zelle fertig ist, wird eine Zahl wie [13] angezeigt.
- Führen Sie die Zelle aus, in der die CSV-Datei in den DataFrame geladen wird. Warten Sie, bis die Datei geladen ist, und sehen Sie sich die ersten fünf Datenzeilen an. Das sind die Rezeptdaten, die wir in BigQuery laden und die wir schließlich verwenden, um unseren Rezeptgenerator zu trainieren.
- Erstellen Sie einen neuen Codeblock und geben Sie den folgenden Kommentar ein. Nachdem Sie den Kommentar eingegeben haben, gehen Sie zur nächsten Codezeile. Dort sollte der Vorschlag
df.columnsangezeigt werden. Akzeptieren Sie die Meldung und führen Sie die Zelle aus. Wir haben gerade gezeigt, dass Sie in einem Jupyter-Notebook zwei Möglichkeiten haben, Hilfe von Gemini Code Assist zu erhalten: Textzellen über Codezellen oder Kommentare in der Codezelle selbst. Kommentare in Codezellen funktionieren gut in Jupyter-Notebooks, aber dieser Ansatz funktioniert auch in jeder anderen IDE, die Google Gemini Code Assist unterstützt.# List the current DataFrame column names - Wir bereinigen die Spalten. Benennen Sie die Spalte
Unnamed: 0inidundlinkinurium. Verwenden Sie den Prompt Ihrer Wahl > Codetechniken, um den Code zu erstellen. Führen Sie die Zelle dann aus, wenn Sie zufrieden sind.# Rename the column 'Unnamed: 0' to 'id' and 'link' to 'uri' df.rename(columns={'Unnamed: 0': 'id', 'link': 'uri'}, inplace=True) - Entfernen Sie die Spalten
sourceundNERund verwenden Siehead(), um sich die ersten Zeilen anzusehen. Lassen Sie sich wieder von Gemini helfen. Führen Sie die letzten beiden Zeilen aus und sehen Sie sich die Ergebnisse an.# Remove the source and NER columns df.drop(columns=['source', 'NER'], inplace=True) df.head() - Sehen wir uns an, wie viele Datensätze in unserem Dataset enthalten sind. Beginnen Sie wieder mit der von Ihnen gewählten Prompting-Technik und sehen Sie, ob Gemini Ihnen beim Generieren des Codes helfen kann.
# Count the records in the DataFrame df.shape # count() will also work - 2,23 Millionen Datensätze sind wahrscheinlich mehr Rezepte, als wir Zeit haben, auszuprobieren. Der Indexierungsprozess in Agent Builder würde für unsere heutige Übung wahrscheinlich zu lange dauern. Als Kompromiss können wir 150.000 Rezepte als Stichprobe nehmen und damit arbeiten. Verwenden Sie den Ansatz „Prompt > Code“, um die Stichprobe zu nehmen und in einem neuen DataFrame mit dem Namen
dfs(s für „small“) zu speichern.# Sample out 150,000 records into a DataFrame named dfs dfs = df.sample(n=150000) - Die Quelldaten für das Rezept können in BigQuery geladen werden. Bevor wir die Daten laden, erstellen wir in BigQuery ein Dataset für unsere Tabelle. Verwenden Sie in der Google Cloud Console das Suchfeld, um zu BigQuery zu gelangen. Klicken Sie mit der rechten Maustaste auf BigQuery und öffnen Sie es in einem neuen Browsertab.
- Wenn das Feld noch nicht sichtbar ist, öffnen Sie es über das Gemini-Logo oben rechts in der Cloud Console. Wenn Sie aufgefordert werden, die API noch einmal zu aktivieren, klicken Sie auf „Aktivieren“ oder aktualisieren Sie die Seite. Führen Sie den Prompt aus:
What is a dataset used for in BigQuery?Nachdem Sie die Antwort geprüft haben, fragen Sie:How can I create a dataset named recipe_data using the Cloud Console?Vergleiche die Ergebnisse mit den folgenden Schritten.
- Klicken Sie im Bereich „BigQuery Explorer“ neben Ihrer Projekt-ID auf das Dreipunkt-Menü Aktionen ansehen. Wählen Sie dann Dataset erstellen aus.

- Geben Sie das Dataset und die ID von
recipe_dataan. Lassen Sie den Standorttyp auf US eingestellt und klicken Sie auf Dataset erstellen. Wenn Sie eine Fehlermeldung erhalten, dass das Dataset bereits vorhanden ist, fahren Sie einfach fort.Nachdem das Dataset in BigQuery erstellt wurde, wechseln wir zurück zu unserem Notebook und führen den Einfügevorgang durch. - Wechseln Sie zurück zu Ihrem Data Wrangling-Notebook in Colab Enterprise. Erstellen Sie in einer neuen Codezelle eine Variable mit dem Namen
project_idund verwenden Sie sie, um Ihre aktuelle Projekt-ID zu speichern. Die aktuelle Projekt-ID finden Sie links oben in dieser Anleitung unter der Schaltfläche „Lab beenden“. Sie finden sie auch auf der Startseite der Cloud Console. Weisen Sie den Wert der Variablenproject_idzu und führen Sie die Zelle aus.# Create a variable to hold the current project_id project_id='YOUR_PROJECT_ID' - Verwenden Sie den Ansatz „Prompt > Code“, um einen Codeblock zu erstellen, mit dem der DataFrame
dfsin eine Tabelle mit dem Namenrecipesim gerade erstellten Datasetrecipe_dataeingefügt wird. Führen Sie die Zelle aus.dfs.to_gbq(destination_table='recipe_data.recipes', project_id=project_id, if_exists='replace')
7. Suchanwendung in Vertex AI Agent Builder für den Rezeptgenerator erstellen
Ausgezeichnet. Jetzt, da wir unsere Tabelle mit Rezeptdaten erstellt haben, können wir sie verwenden, um eine fundierte Datenquelle für unseren Rezeptgenerator zu erstellen. Die Vorgehensweise ähnelt der, die wir für unseren Koch-Chatbot verwendet haben. Wir verwenden Vertex AI Agent Builder, um einen Datenspeicher zu erstellen, der dann als Referenzquelle für eine Suchanwendung dient.
Sie können Gemini in der Google Cloud Console bitten, Sie an die Schritte zum Erstellen einer Agent Builder-Suchanwendung zu erinnern, oder Sie können die unten aufgeführten Schritte ausführen.
- Suchen Sie nach Agent Builder, um das Produkt aufzurufen. Öffnen Sie Datenspeicher und Datenspeicher erstellen. Wählen Sie dieses Mal den BigQuery-Datenspeichertyp Select (Auswählen) aus.
- Klicken Sie in der Zelle für die Tabellenauswahl auf Durchsuchen und suchen Sie nach
recipes. Klicken Sie auf das Optionsfeld neben der Tabelle. Wenn Sie Rezepte aus anderen qwiklabs-gcp-...-Projekten sehen, wählen Sie das aus, das zu Ihnen gehört.HINWEIS: Wenn Sie aufrecipesklicken, anstatt das Optionsfeld daneben auszuwählen, wird in Ihrem Browser ein neuer Tab geöffnet und Sie werden zur Tabellenübersichtsseite in BigQuery weitergeleitet. Schließen Sie einfach den Browser-Tab und wählen Sie die Option in Agent Builder aus. - Sehen Sie sich die restlichen Standardoptionen an, ändern Sie sie aber nicht, und klicken Sie dann auf Weiter.
- Sehen Sie sich auf der Seite zur Schemaüberprüfung die anfänglichen Standardkonfigurationen an, nehmen Sie aber keine Änderungen vor. Weiter
- Geben Sie dem Datenspeicher den Namen
recipe-data. Bearbeiten Sie die Datenspeicher-ID und legen Sie sie aufrecipe-data-idfest. Erstellen Sie den Datenspeicher. - Rufen Sie über das Navigationsmenü auf der linken Seite Apps auf und klicken Sie auf Create A New App (Neue App erstellen).
- Klicken Sie auf der Karte Suche auf Ihrer Website auf Erstellen. Geben Sie der App den Namen
recipe-searchund klicken Sie auf BEARBEITEN, um die ID aufrecipe-search-idfestzulegen. Legen Sie den Namen des Unternehmens aufGooglefest und klicken Sie auf Weiter. - Prüfen Sie diesmal die Datenquellen für recipe-data. Erstellen Sie die App.
Es dauert eine Weile, bis unsere Datenbanktabelle indexiert ist. Lassen Sie uns in der Zwischenzeit mit dem neuen Data Canvas von BigQuery experimentieren und sehen, ob wir ein oder zwei interessante Rezepte finden können.
- Geben Sie BigQuery in das Suchfeld ein, um die Seite aufzurufen. Klicken Sie oben in BigQuery Studio auf den Abwärtspfeil neben dem Tab ganz rechts und wählen Sie Data Canvas aus. Legen Sie die Region auf us-central1 fest.

- Klicken Sie auf Daten suchen. Suchen Sie im Suchfeld des Data Canvas nach
recipes, drücken SieEnter/Return, um die Suche zu starten, und klicken Sie neben dem Tabellennamen auf die Schaltfläche Dem Canvas hinzufügen. - Eine visuelle Darstellung Ihrer Rezepttabelle wird in den BigQuery Data Canvas geladen. Sie können sich das Tabellenschema ansehen, eine Vorschau der Daten in der Tabelle aufrufen und andere Details prüfen. Klicken Sie unter der Tabellendarstellung auf Abfrage.
- Im Canvas wird ein mehr oder weniger typischer BigQuery-Abfragedialog geladen. Es gibt jedoch eine zusätzliche Funktion: Über dem Abfragefenster befindet sich ein Textfeld, in dem Sie Gemini um Hilfe bitten können. Sehen wir uns an, ob wir in unserem Beispiel einige Kuchenrezepte finden. Führen Sie den folgenden Prompt aus (indem Sie den Text eingeben und
Enter/Returndrücken, um die SQL-Generierung auszulösen):Please select the title and ingredients for all the recipes with a title that contains the word cake. - Sehen Sie sich den generierten SQL-Code an. Wenn Sie zufrieden sind, führen Sie die Abfrage aus.
- Nicht schlecht! Sie können auch andere Prompts und Abfragen ausprobieren, bevor Sie fortfahren. Probieren Sie weniger spezifische Prompts aus, um herauszufinden, was funktioniert und was nicht. Beispiel für einen Prompt:
(Vergessen Sie nicht, die neue Anfrage auszuführen) hat eine Liste mit Chili-Rezepten zurückgegeben, aber die Zutaten weggelassen, bis ich sie so geändert habe:Do I have any chili recipes? (Ja, ich sage „bitte“, wenn ich einen Prompt eingebe. Meine Mama wäre so stolz auf mich.) Ich habe gesehen, dass ein Chili-Rezept Pilze enthielt. Wer will das schon in Chili? Ich habe Gemini gebeten, mir dabei zu helfen, diese Rezepte auszuschließen.Do I have any chili recipes? Please include their title and ingredients.Do I have any chili recipes? Please include their title and ingredients, and ignore any recipes with mushrooms as an ingredient.
8. Cloud Shell-Editor öffnen
- Cloud Shell-Editor aufrufen
- Wenn das Terminal nicht unten auf dem Bildschirm angezeigt wird, öffnen Sie es:
- Klicken Sie auf das Dreistrich-Menü
. - Klicken Sie auf Terminal.
- Klicken Sie auf Neues Terminal
.
- Klicken Sie auf das Dreistrich-Menü
- Legen Sie im Terminal Ihr Projekt mit diesem Befehl fest:
- Format:
gcloud config set project [PROJECT_ID] - Beispiel:
gcloud config set project lab-project-id-example - Wenn Sie sich nicht an Ihre Projekt-ID erinnern können,
- Sie können alle Ihre Projekt-IDs mit folgendem Befehl auflisten:
gcloud projects list | awk '/PROJECT_ID/{print $2}'

- Sie können alle Ihre Projekt-IDs mit folgendem Befehl auflisten:
- Format:
- Wenn Sie zur Autorisierung aufgefordert werden, klicken Sie auf Autorisieren, um fortzufahren.

- Es sollte folgende Meldung angezeigt werden:
Wenn Sie den FehlercodeUpdated property [core/project].
WARNINGsehen und gefragt werden, ob SieDo you want to continue (Y/N)?, haben Sie die Projekt-ID wahrscheinlich falsch eingegeben. Drücken SieN, dannEnterund versuchen Sie, den Befehlgcloud config set projectnoch einmal auszuführen.
9. APIs aktivieren
Aktivieren Sie die APIs im Terminal:
gcloud services enable \
compute.googleapis.com \
sqladmin.googleapis.com \
run.googleapis.com \
artifactregistry.googleapis.com \
cloudbuild.googleapis.com \
networkconnectivity.googleapis.com \
servicenetworking.googleapis.com \
cloudaicompanion.googleapis.com
Wenn Sie zur Autorisierung aufgefordert werden, klicken Sie auf Autorisieren, um fortzufahren. 
Das Ausführen dieses Befehls kann einige Minuten dauern. Wenn die Aktivierung erfolgreich war, erhalten Sie eine Meldung, die ungefähr so aussieht:
Operation "operations/acf.p2-73d90d00-47ee-447a-b600" finished successfully.
10. Grundgerüst der Python- und Streamlit-Webanwendung erstellen – mit Unterstützung von Gemini
Nachdem beide Datenspeicher von Vertex AI Agent Builder indexiert wurden und unsere Suchanwendungen fast einsatzbereit sind, können wir mit der Entwicklung unserer Webanwendung beginnen.
Wir werden Gemini Code Assist während unserer Arbeit nutzen. Weitere Informationen zur Verwendung von Gemini Code Assist in Visual Studio Code finden Sie in der Dokumentation.
- Führen Sie im Cloud Shell Editor-Terminal diesen Befehl aus, um das Repository der Rezept-App zu klonen.
git clone https://github.com/haggman/recipe-app - Mit diesem Befehl wird der Anwendungsordner im Cloud Shell-Editor geöffnet.
cloudshell open-workspace recipe-app/ - Bevor wir den geklonten Ordner untersuchen und mit der Arbeit an unserer Webanwendung beginnen, müssen wir das Cloud Code-Plug-in des Editors bei Google Cloud anmelden und Gemini aktivieren. Machen wir uns also daran, die Tabellen zu befüllen. Klicken Sie unten links im Editor auf Cloud Code – Anmelden. Wenn Sie den Link nicht sehen, warten Sie eine Minute und versuchen Sie es noch einmal.

- Im Terminalfenster wird eine lange URL angezeigt. Öffnen Sie die URL im Browser und führen Sie die Schritte aus, um Cloud Code Zugriff auf Ihre Google Cloud-Umgebung zu gewähren. Klicken Sie im letzten Dialogfeld auf Kopieren, um den Bestätigungscode zu kopieren, und fügen Sie ihn dann in das wartende Terminalfenster auf dem Browsertab des Cloud Shell-Editors ein.
- Nach einigen Augenblicken ändert sich der Cloud Code-Link unten links im Editor zu Cloud Code – kein Projekt. Klicken Sie auf den neuen Link, um ein Projekt auszuwählen. Die Befehlspalette sollte oben im Editor geöffnet werden. Klicken Sie auf Google Cloud-Projekt auswählen und wählen Sie Ihr Projekt aus. Nach einigen Augenblicken wird der Link unten links im Editor aktualisiert und zeigt Ihre Projekt-ID an. Das bedeutet, dass Cloud Code erfolgreich an Ihr Arbeitsprojekt angehängt wurde.
- Nachdem Cloud Code mit Ihrem Projekt verbunden ist, können Sie Gemini Code Assist aktivieren. Klicken Sie rechts unten in der Editoroberfläche auf das durchgestrichene Gemini-Logo. Der Gemini Chat-Bereich wird links neben dem Editor geöffnet. Klicken Sie auf Google Cloud-Projekt auswählen. Wählen Sie Ihr Projekt aus, wenn die Befehlspalette geöffnet wird. Wenn Sie die Schritte korrekt ausgeführt haben (und Google nichts geändert hat), sollte jetzt ein aktives Gemini-Chatfenster angezeigt werden.

- Sehr gut. Nachdem wir das Terminal, Gemini Chat und Cloud Code konfiguriert haben, öffnen Sie den Tab Explorer und sehen Sie sich die Dateien im aktuellen Projekt an.

- Öffnen Sie die Datei
requirements.txtim Explorer zur Bearbeitung. Wechseln Sie zum Chatbereich Gemini und fragen Sie:From the dependencies specified in the requirements.txt file, what type of application are we building? - Wir entwickeln also eine interaktive Webanwendung mit Python und Streamlit, die mit Vertex AI und Discovery Engine interagiert. Konzentrieren wir uns erst einmal auf die Komponenten der Webanwendung. Wie Gemini sagt, ist Streamlit ein Framework zum Erstellen datengesteuerter Webanwendungen in Python. Fragen Sie jetzt:
Hier hat Gemini oft Probleme. Gemini kann auf die Datei zugreifen, die Sie gerade im Editor geöffnet haben, aber nicht auf das gesamte Projekt. Fragen Sie zum Beispiel:Does the current project's folder structure seem appropriate for a Streamlit app? Bessere Antwort erhalten?Given the below, does the current project's file and folder structure seem appropriate for a Streamlit app? - build.sh - Home.py - requirements.txt - pages -- Cooking_Advice.py -- Recipe_Search.py - Hier finden Sie weitere Informationen zu Streamlit:
Gemini bietet uns eine gute Übersicht mit Vor- und Nachteilen.What can you tell me about Streamlit? - Wenn Sie die Nachteile untersuchen möchten, könnten Sie fragen:
Wir mussten nicht „von Streamlit“ sagen, da Gemini Chat dialogorientiert (Mehrfachdialog) ist. Gemini weiß, worüber wir gesprochen haben, weil wir uns in einer Chatsitzung befinden. Wenn Sie den Gemini Code Assist-Chatverlauf löschen möchten, klicken Sie oben im Gemini Code Assist-Chatfenster auf das Papierkorbsymbol.What are the major downsides or shortcomings?
11. Webanwendung in Cloud Run bereitstellen
Ausgezeichnet, wir haben unsere grundlegende Anwendungsstruktur eingerichtet. Funktioniert alles? Noch besser: Wo sollten wir sie in Google Cloud hosten?
- Fragen Sie im Gemini-Chatfenster:
If I containerize this application, what compute technologies in Google Cloud would be best for hosting it? - Wenn Sie nicht bereits in Ihrer IDE arbeiten, können Sie auch Google Cloud Assist fragen. Öffnen Sie die Google Cloud Console und dann Gemini Cloud Assist und stellen Sie folgende Frage:
Waren die beiden Ratschläge identisch? Stimmen Sie den Ratschlägen zu? Gemini ist ein Assistent auf Basis generativer KI. Wie bei einem menschlichen Assistenten sind Sie nicht immer mit allem einverstanden, was er sagt. Dennoch kann es sehr hilfreich sein, diesen Assistenten immer an Ihrer Seite zu haben, wenn Sie in Google Cloud und in Ihrem Code-Editor arbeiten.If I have a containerized web application, where would be the best place to run it in Google Cloud? - Für eine zustandslose, kurzlebige containerisierte Webanwendung ist Cloud Run eine gute Option. Probieren Sie im Gemini-Chatfenster Ihres Code-Editors den folgenden Prompt aus:
What steps would be required to run this application in Cloud Run? - Als Erstes müssen wir ein Dockerfile erstellen. Erstellen Sie mit dem Editor eine Datei mit dem Namen
Dockerfileim Stammverzeichnis Ihres Projektordners. Achten Sie darauf, dass Sie sie nicht versehentlich im Ordner pages platzieren. Öffnen Sie die Datei zur Bearbeitung. - Wir verwenden die Gemini-Seitenleiste, um unser Dockerfile zu erstellen. Verwenden Sie einen Prompt wie den folgenden. Wenn die Ergebnisse im Chat angezeigt werden, klicken Sie auf das Pluszeichen neben dem Kopiersymbol direkt über dem vorgeschlagenen Dockerfile, um den vorgeschlagenen Code in das Dockerfile einzufügen.
Gemini gibt nicht immer dieselbe Antwort auf denselben Prompt zurück. Als ich Gemini zum ersten Mal nach einem Dockerfile gefragt habe, habe ich genau die Datei erhalten, die ich dir empfehlen werde. Ich habe gerade den Vorschlag erhalten:Create a Dockerfile for the application in the current folder. The dependencies are defined in requirements.txt and I want you to use the Python 3 slim bookworm base image. Das ist ein ganz schön langes Dockerfile. Ich würde es etwas vereinfachen. Wir benötigen den Abschnitt „apt-get“ nicht, da alles, was für Python erforderlich ist, bereits in unserem Basis-Image enthalten ist. Außerdem ist die Verwendung einer virtuellen Umgebung in einem Python-Container eine Platzverschwendung. Daher würde ich sie entfernen. Der Befehl „expose“ ist nicht unbedingt erforderlich, aber in Ordnung. Außerdem wird versucht, „main.py“ zu starten, was ich nicht habe.# Base image FROM python:3-bookworm-slim # Set working directory WORKDIR /app # Install dependencies RUN apt-get update && apt-get install -y \ build-essential \ libpq-dev \ gcc \ python3-dev \ && rm -rf /var/lib/apt/lists/* # Install pip and virtualenv RUN pip install --upgrade pip virtualenv # Create virtual environment RUN python3 -m venv venv # Activate virtual environment WORKDIR /app/venv/bin RUN . activate # Install Streamlit and libraries from requirements.txt RUN pip install -r requirements.txt # Copy application files COPY . /app # Expose port 8501 for Streamlit EXPOSE 8501 # Start Streamlit app CMD ["streamlit", "run", "main.py"] - Erstellen Sie im Ordner
recipe-appeine Datei mit dem NamenDockerfileund fügen Sie den folgenden Inhalt ein:FROM python:3.11-slim-bookworm WORKDIR /app COPY requirements.txt . RUN pip install --no-cache-dir --upgrade pip && \ pip install --no-cache-dir -r requirements.txt COPY . . CMD ["streamlit", "run", "Home.py"] - Gemini kann über das Chatfenster oder direkt in Ihrer Codedatei über Kommentare verwendet werden, wie im Notebook „Data Wrangling“ (Datenbereinigung). Außerdem kann es mit Strg + I unter Windows oder mit Befehlstaste + I auf einem Mac aufgerufen werden. Klicken Sie auf eine Stelle in
Dockerfileund aktivieren Sie Gemini mit dem entsprechenden Befehl (Strg + I / Befehlstaste + I). - Geben Sie bei der Eingabeaufforderung Folgendes ein: Prüfen Sie die Änderung und klicken Sie auf Akzeptieren.
Das ist ja toll! Wie oft mussten Sie schon mit dem Code einer anderen Person arbeiten und dabei Zeit verschwenden, um sich ein grundlegendes Verständnis der kommentarlosen Arbeit zu verschaffen, bevor Sie überhaupt mit Ihren Änderungen beginnen konnten? Gemini eilt zu Hilfe!Please comment the current file. - Fragen Sie Gemini nun, wie Sie mit Cloud Run ein neues Image mit dem Namen
recipe-web-appaus dem Dockerfile im aktuellen Ordner erstellen und bereitstellen können.How could I use gcloud to build a new Cloud Run service named recipe-web-app from the current directory? - Jetzt erstellen und stellen wir unsere Anwendung bereit. Führen Sie im Terminalfenster den
gcloud run deploy-Befehl aus. Wenn Sie aufgefordert werden, ein Artifact Registry-Repository zu erstellen, drücken Siegcloud run deploy recipe-web-app \ --allow-unauthenticated \ --source=. \ --region=us-central1 \ --port=8501enter/return.Deploying from source requires an Artifact Registry Docker repository to store built containers. A repository named cloud-run-source-deploy in region us-central1 will be created. Do you want to continue (Y/n)?
- Wenn Sie den Build-Prozess beobachten, wird zuerst das Artifact Registry-Docker-Repository erstellt. Anschließend wird mit Cloud Build das Container-Image aus dem Dockerfile im lokalen Ordner erstellt. Schließlich wird das Docker-Image in einem neuen Cloud Run-Dienst bereitgestellt. Am Ende des Skripts erhalten Sie eine Cloud Run-Test-URL, die Sie verwenden können.
Öffnen Sie den zurückgegebenen Link in einem neuen Tab Ihres Browsers. Nehmen Sie sich einen Moment Zeit, um sich die Struktur und die Seiten der Anwendung anzusehen. Jetzt müssen wir unsere generative KI-Funktion einbinden.
12. Verknüpfen Sie die Seite „Kochtipps“ mit unserer Agent Builder-App für die Suche in Kochbüchern.
Das Framework für die Webanwendung wird ausgeführt, aber wir müssen die beiden Arbeitsseiten mit unseren beiden Vertex AI Agent Builder-Suchanwendungen verbinden. Beginnen wir mit Kochtipps.
- Lassen Sie den Tab des Cloud Shell-Editors geöffnet. Suchen Sie in der Google Cloud Console nach Chat in Vertex AI.
- Stellen Sie im rechten Bereich der Einstellungsseite das Modell auf gemini-1.5-flash-002 ein. Schieben Sie das Tokenlimit für die Ausgabe auf das Maximum, damit das Modell bei Bedarf längere Antworten zurückgeben kann. Öffnen Sie die Einstellungen für den Sicherheitsfilter. Stellen Sie für Hassrede, sexuell explizite Inhalte und Belästigung die Option Einige blockieren ein. Stellen Sie „Gefährliche Inhalte“ auf Wenige blockieren ein und klicken Sie auf Speichern. Wir setzen „Gefährliche Inhalte“ etwas niedriger an, da die Erwähnung von Messern und Schneiden von Gemini als Gewalt interpretiert werden kann.
- Schalten Sie den Ein/Aus-Button auf Fundierung und klicken Sie auf Anpassen. Legen Sie die Fundierungsquelle auf Vertex AI Search fest und verwenden Sie für den Datenspeicherpfad Folgendes. Ersetzen Sie YOUR_PROJECT_ID durch die Projekt-ID, die sich in dieser Anleitung in der Nähe der Schaltfläche „Lab beenden“ befindet, und speichern Sie dann die Grounding-Einstellungen.
HINWEIS: Wenn Sie eine Fehlermeldung erhalten, haben Sie entweder die Projekt-ID nicht in Ihre tatsächliche Projekt-ID geändert oder den Schritt ausgelassen, in dem Sie die ID des alten Cookbooks-Agent Builder-Datenspeichers geändert haben. Sehen Sie in Agent Builder > Datenspeicher > old-cookbooks nach der tatsächlichen Datenspeicher-ID.projects/YOUR_PROJECT_ID/locations/global/collections/default_collection/dataStores/old-cookbooks-id - Testen Sie ein paar Chatnachrichten. Vielleicht können Sie mit den folgenden Informationen beginnen. Sie können auch andere ausprobieren.
How can I tell if a tomato is ripe? - Das Modell funktioniert. Jetzt können wir mit dem Code experimentieren. Klicken Sie auf Unterhaltung löschen, damit unsere Unterhaltungen nicht Teil des Codes werden, und klicken Sie dann auf Code abrufen.

- Klicken Sie oben im Codefenster auf Notebook öffnen, damit wir den Code in Colab Enterprise testen und optimieren können, bevor wir ihn in unsere App einbinden.
- Nehmen Sie sich einige Minuten Zeit, um sich mit dem Code vertraut zu machen. Nehmen wir ein paar Änderungen vor, um es an unsere Bedürfnisse anzupassen. Führen Sie vor dem Start die erste Codezelle aus, um eine Verbindung zur Compute-Instanz herzustellen und das AI Platform SDK zu installieren. Nachdem der Block ausgeführt wurde, werden Sie aufgefordert, die Sitzung neu zu starten. Tun Sie das.
- Wechseln wir zum Code, den wir aus Vertex AI Studio abgerufen haben. Ändern Sie den Namen der Methode multiturn_generate_content in
start_chat_session. - Scrollen Sie zum Methodenaufruf
model = GenerativeModel(. Im vorhandenen Code werdengeneration_configundsafety_settingsdefiniert, aber nicht verwendet. Ändern Sie die Erstellung vonGenerativeModelso, dass sie folgendermaßen aussieht:model = GenerativeModel( "gemini-1.5-flash-002", tools=tools, generation_config=generation_config, safety_settings=safety_settings, ) - Fügen Sie schließlich eine letzte Zeile zur Methode hinzu, direkt unter
chat = model.start_chat(), damit die Funktion daschat-Objekt zurückgibt. Die fertige Funktion sollte so aussehen.HINWEIS: Kopieren Sie diesen Code NICHT in Ihr Notebook. Sie dient lediglich als Plausibilitätsprüfung.def start_chat_session(): vertexai.init(project="qwiklabs-gcp-02-9a7298ceaaec", location="us-central1") tools = [ Tool.from_retrieval( retrieval=grounding.Retrieval( source=grounding.VertexAISearch(datastore="projects/qwiklabs-gcp-02-9a7298ceaaec/locations/global/collections/default_collection/dataStores/old-cookbooks-id"), ) ), ] model = GenerativeModel( "gemini-1.5-flash-002", tools=tools, generation_config=generation_config, safety_settings=safety_settings, ) chat = model.start_chat() return chat - Scrollen Sie zum Ende der Codezelle und ändern Sie die letzte Zeile, in der die alte Funktion aufgerufen wird, sodass der neue Funktionsname aufgerufen und das zurückgegebene Objekt in einer Variablen
chatgespeichert wird. Wenn Sie mit den Änderungen zufrieden sind, führen Sie die Zelle aus.chat = start_chat_session() - Erstellen Sie eine neue Codezelle und fügen Sie den Kommentar
# Use chat to invoke Gemini and print out the responsehinzu. Gehen Sie zur nächsten Zeile und geben Sierespein. Gemini sollte den Block dann automatisch für Sie vervollständigen. Aktualisieren Sie den Prompt aufHow can I tell if a tomato is ripe?. Zelle ausführenresponse = chat.send_message("How can I tell if a tomato is ripe?") print(response) - Das ist die Antwort, aber wir möchten das verschachtelte Feld
text. Ändern Sie den Codeblock so, dass nur dieser Abschnitt ausgegeben wird, z. B.:response = chat.send_message("How can I tell if a tomato is ripe?") print(response.candidates[0].content.parts[0].text) - Gut. Jetzt, da wir funktionierenden Chatcode haben, können wir ihn in unsere Webanwendung einbinden. Kopieren Sie den gesamten Inhalt der Codezelle, in der die Funktion
start_chat_sessionerstellt wird. Die Testzelle wird nicht benötigt. Wenn Sie in die Zelle klicken, können Sie oben rechts auf das Dreipunkt-Menü klicken und den Inhalt von dort aus kopieren.
- Wechseln Sie zum Tab „Cloud Shell-Editor“ und öffnen Sie
pages\Cooking_Advice.pyzum Bearbeiten. - Suchen Sie den Kommentar:
# # Add the code you copied from your notebook below this message # - Fügen Sie den kopierten Code direkt unter dem Kommentar Add the code ein. Sehr gut. Jetzt haben wir den Abschnitt, der die Chat-Engine über einen fundierten Aufruf von Gemini steuert. Jetzt integrieren wir es in Streamlit.
- Suchen Sie den Abschnitt mit dem auskommentierten Code direkt unter dem Kommentar:
# # Here's the code to setup your session variables # Uncomment this block when instructed # - Entfernen Sie die Auskommentierung für diesen Codeabschnitt (bis zum nächsten Abschnitt
Setup done, let's build the page UI) und sehen Sie ihn sich an. Erstellt oder ruft die Chat- und Verlaufssitzungsvariablen ab. - Als Nächstes müssen wir die Verlaufs- und Chatfunktionen in die Benutzeroberfläche einbinden. Scrollen Sie im Code, bis Sie den folgenden Kommentar finden.
# # Here's the code to create the chat interface # Uncomment the below code when instructed # - Entfernen Sie die Auskommentierung des restlichen Codes unter dem Kommentar und sehen Sie sich den Code an. Wenn Sie möchten, können Sie den Code markieren und Gemini bitten, seine Funktionsweise zu erklären.
- Super, jetzt erstellen wir die Anwendung und stellen sie bereit. Wenn die URL wieder angezeigt wird, starten Sie die Anwendung und rufen Sie die Seite „Kochassistent“ auf. Vielleicht fragen Sie den Bot nach reifen Tomaten oder danach, wie man Rosenkohl am besten zubereitet.
gcloud run deploy recipe-web-app \ --allow-unauthenticated \ --source=. \ --region=us-central1 \ --port=8501
Das ist sehr hilfreich. Ihr persönlicher KI-Kochberater :-)
13. Optional: Rezeptsuche-Seite mit der Rezeptsuche-Agent Builder-App verbinden
Als wir die Seite mit Kochtipps mit der entsprechenden Fundierung verknüpft haben, haben wir die Gemini API direkt verwendet. Für die Rezeptsuche stellen wir eine direkte Verbindung zur Vertex AI Agent Builder-Suchanwendung her.
- Öffnen Sie im Cloud Shell-Editor die Seite
pages/Recipe_Search.pyzur Bearbeitung. Untersuchen Sie die Struktur der Seite. - Legen Sie oben in der Datei Ihre Projekt-ID fest.
- Sehen Sie sich die Funktion
search_samplean. Dieser Code stammt mehr oder weniger direkt aus der Discovery Engine-Dokumentation hier. Hier finden Sie eine Arbeitskopie dieses Notebooks.Die einzige Änderung, die ich vorgenommen habe, besteht darin, dassresponse.resultsanstelle der Ergebnisse zurückgegeben wird. Andernfalls ist der Rückgabetyp ein Objekt, das zum Paging durch die Ergebnisse dient. Das ist für unsere einfache Anwendung nicht erforderlich. - Scrollen Sie zum Ende der Datei und entfernen Sie die Kommentare aus dem gesamten Abschnitt unter
Here are the first 5 recipes I found. - Markieren Sie den gesamten Abschnitt, den Sie gerade auskommentiert haben, und öffnen Sie den Gemini Code-Chat. Frage
Explain the highlighted code. Wenn Sie nichts ausgewählt haben, kann Gemini die gesamte Datei erläutern. Wenn Sie einen Abschnitt markieren und Gemini bitten, ihn zu erklären, zu kommentieren oder zu verbessern, wird Gemini das tun.Nehmen Sie sich einen Moment Zeit, um die Erklärung zu lesen. Die Verwendung eines Colab Enterprise-Notebooks ist eine gute Möglichkeit, die Gemini APIs kennenzulernen, bevor Sie sie in Ihre Anwendung einbinden. Das ist besonders hilfreich, wenn Sie einige der neueren APIs ausprobieren möchten, die möglicherweise nicht so gut dokumentiert sind. - Führen Sie im Terminalfenster des Editors
build.shaus, um die endgültige Anwendung bereitzustellen. Warten Sie, bis die neue Version bereitgestellt wurde, bevor Sie mit dem nächsten Schritt fortfahren.
14. (Optional) Endgültige Anwendung ansehen
Nehmen Sie sich einige Minuten Zeit, um die fertige Anwendung kennenzulernen.
- Suchen Sie in der Google Cloud Console nach
Cloud Runund klicken Sie dann auf Ihre recipe-web-app. - Suchen Sie die Test-URL der Anwendung (oben) und öffnen Sie sie in einem neuen Browsertab.
- Die Startseite der Anwendung sollte angezeigt werden. Beachten Sie das grundlegende Layout und die Navigation von Streamlit. Die Python-Dateien aus dem Ordner
pageswerden als Navigationsoptionen angezeigt undHome.pywird als Startseite geladen. Rufen Sie die Seite Kochtipps auf. - Nach kurzer Zeit wird die Chatoberfläche angezeigt. Auch hier ist das von Streamlit bereitgestellte Core-Layout sehr praktisch.
- Stellen Sie ein paar Fragen zum Kochen und sehen Sie, wie der Bot funktioniert. Beispiel:
Do you have any advice for preparing broccoli? How about a classic chicken soup recipe? Tell me about meringue. - Suchen wir jetzt nach ein oder zwei Rezepten. Rufen Sie die Seite „Rezeptsuche“ auf und führen Sie einige Suchanfragen durch. Beispiel:
Chili con carne Chili, corn, rice Lemon Meringue Pie A dessert containing strawberries
15. Glückwunsch!
Sie haben eine Anwendung erstellt, die Vertex AI Agent Builder-Anwendungen nutzt. Dabei haben Sie Gemini Cloud Assist, Gemini Code Assist und die Funktionen für natürliche Sprache zu SQL von BigQuery Data Canvas kennengelernt. Fantastisch!
Bereinigen
Cloud SQL bietet kein kostenloses Kontingent. Wenn Sie den Dienst weiterhin nutzen, werden Ihnen Gebühren in Rechnung gestellt. Sie können Ihr Cloud-Projekt löschen, um zusätzliche Gebühren zu vermeiden.
Während für Cloud Run keine Kosten anfallen, wenn der Dienst nicht verwendet wird, wird Ihnen dennoch das Speichern des Container-Images in Artifact Registry möglicherweise in Rechnung gestellt. Durch das Löschen des Cloud-Projekts wird die Abrechnung für alle in diesem Projekt verwendeten Ressourcen beendet.
Wenn Sie möchten, können Sie das Projekt löschen:
gcloud projects delete $GOOGLE_CLOUD_PROJECT
Sie können auch unnötige Ressourcen von Ihrer Cloud Shell-Festplatte löschen. Sie haben folgende Möglichkeiten:
- Löschen Sie das Codelab-Projektverzeichnis:
rm -rf ~/task-app - Warnung! Diese Aktion kann nicht rückgängig gemacht werden. Wenn Sie alles in Ihrer Cloud Shell löschen möchten, um Speicherplatz freizugeben, können Sie Ihr gesamtes Basisverzeichnis löschen. Achten Sie darauf, dass alles, was Sie behalten möchten, an einem anderen Ort gespeichert ist.
sudo rm -rf $HOME