In dieser Anleitung stellen Sie das offene Modell Gemma 2 2B mithilfe von Model Garden auf einem TPU-gestützten Gemini Enterprise Agent Platform-Endpunkt bereit. Sie müssen ein Modell auf einem Endpunkt bereitstellen, bevor es für Onlinevorhersagen verwendet werden kann. Durch die Bereitstellung eines Modells werden dem Modell physische Ressourcen zugeordnet, sodass es Onlinevorhersagen mit niedriger Latenz bereitstellen kann.
Nachdem Sie das Gemma 2 2B-Modell bereitgestellt haben, können Sie das trainierte Modell mit dem PredictionServiceClient verwenden, um Onlinevorhersagen zu erhalten. Onlinevorhersagen sind synchrone Anfragen an ein Modell, das auf einem Endpunkt bereitgestellt wird.
Ziele
In dieser Anleitung werden die folgenden Aufgaben erläutert:
- Offenes Modell Gemma 2 2B mithilfe von Model Garden auf einem TPU-gestützten Endpunkt bereitstellen
PredictionServiceClientverwenden, um Onlinevorhersagen abzurufen
Kosten
In diesem Dokument verwenden Sie die folgenden kostenpflichtigen Komponenten von Google Cloud:
-
A
ct5lp-hightpu-1tmachine type with one TPU_V5 accelerator - Gemini Enterprise Agent Platform prediction and explanation
Mit dem Preisrechner können Sie eine Kostenschätzung für Ihre voraussichtliche Nutzung vornehmen.
Nach Abschluss der in diesem Dokument beschriebenen Aufgaben können Sie weitere Kosten vermeiden, indem Sie die erstellten Ressourcen löschen. Weitere Informationen finden Sie unter Bereinigen.
Hinweis
Für diese Anleitung müssen Sie Folgendes tun:
- Google Cloud -Projekt einrichten und die Agent Platform API aktivieren
- Auf Ihrem lokalen Computer:
- Google Cloud CLI installieren, initialisieren und authentifizieren
- SDK für Ihre Sprache installieren
Google Cloud -Projekt einrichten
Richten Sie Ihr Google Cloud -Projekt ein und aktivieren Sie die Agent Platform API.
- Melden Sie sich in Ihrem Google Cloud -Konto an. Wenn Sie mit Google Cloudnoch nicht vertraut sind, erstellen Sie einfach ein Konto, um die Leistungsfähigkeit unserer Produkte in der Praxis sehen und bewerten zu können. Neukunden erhalten außerdem ein Guthaben von 300 $, um Arbeitslasten auszuführen, zu testen und bereitzustellen.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Agent Platform API, if it is not already enabled.
Roles required to enable APIs
To enable APIs, you need the
serviceusage.services.enablepermission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Agent Platform API, if it is not already enabled.
Roles required to enable APIs
To enable APIs, you need the
serviceusage.services.enablepermission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.
Google Cloud CLI einrichten
Richten Sie die Google Cloud CLI auf Ihrem lokalen Computer ein.
-
Installieren und initialisieren Sie Google Cloud CLI.
-
Wenn Sie die gcloud CLI bereits installiert haben, prüfen Sie, ob Ihre
gcloud-Komponenten aktualisiert sind. Führen Sie dazu diesen Befehl aus.gcloud components update
-
Wenn Sie sich mit der gcloud CLI authentifizieren möchten, generieren Sie mit diesem Befehl eine lokale Datei mit Standardanmeldedaten für Anwendungen. Der durch den Befehl gestartete Webablauf wird verwendet, um Ihre Nutzeranmeldedaten bereitzustellen.
gcloud auth application-default login
Weitere Informationen finden Sie unter Authentifizierungskonfiguration der gcloud CLI und ADC-Konfiguration.
SDK für Ihre Programmiersprache einrichten
Um die in dieser Anleitung verwendete Umgebung einzurichten, installieren Sie das Gemini Enterprise Agent Platform SDK für Ihre Sprache und die Protokollzwischenspeicher-Bibliothek. In den Codebeispielen werden Funktionen aus der Protocol Buffers-Bibliothek verwendet, um das Eingabewörterbuch in das von der API erwartete JSON-Format zu konvertieren.
Klicken Sie auf Ihrem lokalen Computer auf einen der folgenden Tabs, um das SDK für Ihre Programmiersprache zu installieren.
Python
Klicken Sie auf Ihrem lokalen Computer auf einen der folgenden Tabs, um das SDK für Ihre Programmiersprache zu installieren.
Installieren und aktualisieren Sie das Agent Platform SDK für Python, indem Sie diesen Befehl ausführen.
pip3 install --upgrade "google-cloud-aiplatform>=1.64"
Installieren Sie die Protocol Buffers-Bibliothek für Python, indem Sie diesen Befehl ausführen.
pip3 install --upgrade "protobuf>=5.28"
Node.js
Installieren oder aktualisieren Sie das aiplatform SDK für Node.js, indem Sie den folgenden Befehl ausführen.
npm install @google-cloud/aiplatform
Java
Wenn Sie google-cloud-aiplatform als Abhängigkeit hinzufügen möchten, fügen Sie den entsprechenden Code für Ihre Umgebung hinzu.
Maven mit BOM
Fügen Sie den folgenden HTML-Code in Ihre pom.xml ein:
<dependencyManagement> <dependencies> <dependency> <artifactId>libraries-bom</artifactId> <groupId>com.google.cloud</groupId> <scope>import</scope> <type>pom</type> <version>26.34.0</version> </dependency> </dependencies> </dependencyManagement> <dependencies> <dependency> <groupId>com.google.cloud</groupId> <artifactId>google-cloud-aiplatform</artifactId> </dependency> <dependency> <groupId>com.google.protobuf</groupId> <artifactId>protobuf-java-util</artifactId> </dependency> <dependency> <groupId>com.google.code.gson</groupId> <artifactId>gson</artifactId> </dependency> </dependencies>
Maven ohne BOM
Fügen Sie der pom.xml Folgendes hinzu:
<dependency> <groupId>com.google.cloud</groupId> <artifactId>google-cloud-aiplatform</artifactId> <version>1.1.0</version> </dependency> <dependency> <groupId>com.google.protobuf</groupId> <artifactId>protobuf-java-util</artifactId> <version>5.28</version> </dependency> <dependency> <groupId>com.google.code.gson</groupId> <artifactId>gson</artifactId> <version>2.11.0</version> </dependency>
Gradle ohne BOM
Fügen Sie zum build.gradle Folgendes hinzu:
implementation 'com.google.cloud:google-cloud-aiplatform:1.1.0'Go
Installieren Sie diese Go-Pakete mit den folgenden Befehlen.
- Die
aiplatform-Go-Clientbibliothek - Go-Unterstützung für Protokollzwischenspeicher
- Google API-Erweiterungen für Go (gax-go)
go get cloud.google.com/go/aiplatform go get google.golang.org/protobuf go get github.com/googleapis/gax-go/v2
Gemma mit Model Garden bereitstellen
Sie stellen das Gemma 2 2B-Modell auf einem Compute Engine-Maschinentyp ct5lp-hightpu-1t bereit, der für Training in kleinem bis mittlerem Umfang optimiert ist. Diese Maschine hat einen TPU v5e-Beschleuniger. Weitere Informationen zum Trainieren von Modellen mit TPUs finden Sie unter Cloud TPU v5e-Training.
In dieser Anleitung stellen Sie das auf Anweisungen abgestimmte offene Modell Gemma 2 2B mithilfe der Modellkarte in Model Garden bereit. Die spezifische Modellversion ist gemma2-2b-it (-it steht für auf Anweisungen abgestimmt).
Das Gemma 2 2B-Modell hat eine geringere Parametergröße, was einen geringeren Ressourcenbedarf und mehr Flexibilität bei der Bereitstellung bedeutet.
Rufen Sie in der Google Cloud Console die Seite Model Garden auf.
Klicken Sie auf die Modellkarte Gemma 2.
Klicken Sie auf Bereitstellen, um den Bereich Modell bereitstellen zu öffnen.
Geben Sie im Bereich Modell bereitstellen die folgenden Details an.
Klicken Sie unter Bereitstellungsumgebung auf Agent Platform.
Im Abschnitt Modell bereitstellen:
Wählen Sie für Ressourcen-ID den Wert
gemma-2b-itaus.Übernehmen Sie für Modellname und Endpunktname die Standardwerte. Beispiel:
- Modellname:
gemma2-2b-it-1234567891234 - Endpunktname:
gemma2-2b-it-mg-one-click-deploy
Notieren Sie sich den Endpunktnamen. Sie benötigen sie, um die in den Codebeispielen verwendete Endpunkt-ID zu finden.
- Modellname:
Im Abschnitt Bereitstellungseinstellungen:
Übernehmen Sie die Standardoption für die Grundeinstellungen.
Übernehmen Sie für Region den Standardwert oder wählen Sie eine Region aus der Liste aus. Notieren Sie sich die Region. Sie benötigen ihn für die Codebeispiele.
Wählen Sie unter Maschinenspezifikation die TPU-gestützte Instanz aus:
ct5lp-hightpu-1t (1 TPU_V5_LITEPOD; ct5lp-hightpu-1t).
Klicken Sie auf Bereitstellen. Nach Abschluss des Deployments erhalten Sie eine E-Mail mit Details zu Ihrem neuen Endpunkt. Sie können die Endpunktdetails auch aufrufen, indem Sie auf Onlinevorhersage > Endpunkte klicken und Ihre Region auswählen.
Inferenz von Gemma 2 2B mit dem PredictionServiceClient
Nachdem Sie Gemma 2 2B bereitgestellt haben, verwenden Sie den PredictionServiceClient, um Onlinevorhersagen für den Prompt „Warum ist der Himmel blau?“ zu erhalten.
Codeparameter
In den PredictionServiceClient-Codebeispielen müssen Sie Folgendes aktualisieren.
PROJECT_ID: Folgen Sie dieser Anleitung, um Ihre Projekt-ID zu finden.Rufen Sie in der Google Cloud Console die Seite Willkommen auf.
Wählen Sie oben auf der Seite in der Projektauswahl Ihr Projekt aus.
Der Projektname, die Projektnummer und die Projekt-ID werden nach der Überschrift Willkommen angezeigt.
ENDPOINT_REGION: Dies ist die Region, in der Sie den Endpunkt bereitgestellt haben.ENDPOINT_ID: Sie finden Ihre Endpunkt-ID in der Console oder können sie mit dem Befehlgcloud ai endpoints listabrufen. Sie benötigen den Endpunktnamen und die Region aus dem Bereich Modell bereitstellen.Console
Sie können die Endpunktdetails aufrufen, indem Sie auf Onlinevorhersage > Endpunkte klicken und Ihre Region auswählen. Notieren Sie sich die Zahl, die in der Spalte
IDangezeigt wird.gcloud
Sie können die Endpunktdetails mit dem Befehl
gcloud ai endpoints listaufrufen.gcloud ai endpoints list \ --region=ENDPOINT_REGION \ --filter=display_name=ENDPOINT_NAMEDie Ausgabe sieht so aus:
Using endpoint [https://us-central1-aiplatform.googleapis.com/] ENDPOINT_ID: 1234567891234567891 DISPLAY_NAME: gemma2-2b-it-mg-one-click-deploy
Beispielcode
Aktualisieren Sie im Beispielcode für Ihre Sprache die Werte für PROJECT_ID, ENDPOINT_REGION und ENDPOINT_ID. Führen Sie dann den Code aus.
Python
Informationen zur Installation des Vertex AI SDK for Python finden Sie unter Vertex AI SDK for Python installieren. Weitere Informationen finden Sie in der API-Referenzdokumentation zu Python.
Node.js
Bevor Sie dieses Beispiel ausprobieren, folgen Sie der Einrichtungsanleitung für Node.js in der Kurzanleitung zur Verwendung von Clientbibliotheken für die Agent Platform.
Richten Sie zur Authentifizierung bei der Agent Platform Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.
Java
Bevor Sie dieses Beispiel ausprobieren, folgen Sie der Einrichtungsanleitung für Java in der Kurzanleitung zur Verwendung von Clientbibliotheken für die Agent Platform.
Richten Sie zur Authentifizierung bei der Agent Platform Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.
Go
Bevor Sie dieses Beispiel ausprobieren, folgen Sie der Einrichtungsanleitung für Go in der Kurzanleitung zur Verwendung von Clientbibliotheken für die Agent Platform.
Richten Sie zur Authentifizierung bei der Agent Platform Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.
Bereinigen
Damit Ihrem Google Cloud-Konto die in dieser Anleitung verwendeten Ressourcen nicht in Rechnung gestellt werden, löschen Sie entweder das Projekt, das die Ressourcen enthält, oder Sie behalten das Projekt und löschen die einzelnen Ressourcen.
Projekt löschen
- Wechseln Sie in der Google Cloud -Console zur Seite Ressourcen verwalten.
- Wählen Sie in der Projektliste das Projekt aus, das Sie löschen möchten, und klicken Sie dann auf Löschen.
- Geben Sie im Dialogfeld die Projekt-ID ein und klicken Sie auf Shut down (Beenden), um das Projekt zu löschen.
Einzelne Ressourcen löschen
Wenn Sie Ihr Projekt behalten möchten, löschen Sie die in dieser Anleitung verwendeten Ressourcen:
- Bereitstellung des Modells aufheben und Endpunkt löschen
- Modell aus Model Registry löschen
Bereitstellung des Modells aufheben und Endpunkt löschen
Verwenden Sie eine der folgenden Methoden, um die Bereitstellung eines Modells aufzuheben und den Endpunkt zu löschen:
Console
Klicken Sie in der Google Cloud Console auf Onlinevorhersage und dann auf Endpunkte.
Wählen Sie in der Drop-down-Liste Region die Region aus, in der Sie den Endpunkt bereitgestellt haben.
Klicken Sie auf den Namen des Endpunkts, um die Detailseite zu öffnen. Beispiel:
gemma2-2b-it-mg-one-click-deploy.Klicken Sie in der Zeile für das Modell
Gemma 2 (Version 1)auf Aktionen und dann auf Bereitstellung des Modells am Endpunkt aufheben.Klicken Sie im Dialogfeld Bereitstellung des Endpunkts aufheben auf Bereitstellung aufheben.
Klicken Sie auf den Button Zurück, um zur Seite Endpunkte zurückzukehren.
Klicken Sie am Ende der Zeile
gemma2-2b-it-mg-one-click-deployauf Aktionen und wählen Sie dann Endpunkt löschen aus.Klicken Sie in der Bestätigungsaufforderung auf Bestätigen.
gcloud
So heben Sie die Bereitstellung des Modells auf und löschen den Endpunkt mithilfe der Google Cloud CLI:
Ersetzen Sie in diesen Befehlen Folgendes:
- PROJECT_ID durch Ihren Projektnamen
- LOCATION_ID durch die Region, in der Sie das Modell und den Endpunkt bereitgestellt haben
- ENDPOINT_ID durch die Endpunkt-ID
- DEPLOYED_MODEL_NAME durch den Anzeigenamen des Modells
- DEPLOYED_MODEL_ID durch die Modell-ID
Rufen Sie die Endpunkt-ID mit dem Befehl
gcloud ai endpoints listab. Mit diesem Befehl werden die Endpunkt-IDs für alle Endpunkte in Ihrem Projekt aufgelistet. Notieren Sie sich die ID des Endpunkts, der in dieser Anleitung verwendet wird.gcloud ai endpoints list \ --project=PROJECT_ID \ --region=LOCATION_IDDie Ausgabe sieht so aus: In der Ausgabe wird die ID als
ENDPOINT_IDbezeichnet.Using endpoint [https://us-central1-aiplatform.googleapis.com/] ENDPOINT_ID: 1234567891234567891 DISPLAY_NAME: gemma2-2b-it-mg-one-click-deployRufen Sie die Modell-ID mit dem Befehl
gcloud ai models describeab. Notieren Sie sich die ID des Modells, das Sie in dieser Anleitung bereitgestellt haben.gcloud ai models describe DEPLOYED_MODEL_NAME \ --project=PROJECT_ID \ --region=LOCATION_IDDie gekürzte Ausgabe sieht so aus: In der Ausgabe wird die ID als
deployedModelIdbezeichnet.Using endpoint [https://us-central1-aiplatform.googleapis.com/] artifactUri: [URI removed] baseModelSource: modelGardenSource: publicModelName: publishers/google/models/gemma2 ... deployedModels: - deployedModelId: '1234567891234567891' endpoint: projects/12345678912/locations/us-central1/endpoints/12345678912345 displayName: gemma2-2b-it-12345678912345 etag: [ETag removed] modelSourceInfo: sourceType: MODEL_GARDEN name: projects/123456789123/locations/us-central1/models/gemma2-2b-it-12345678912345 ...Heben Sie die Bereitstellung des Modells am Endpunkt auf. Sie benötigen die Endpunkt-ID und die Modell-ID aus den vorherigen Befehlen.
gcloud ai endpoints undeploy-model ENDPOINT_ID \ --project=PROJECT_ID \ --region=LOCATION_ID \ --deployed-model-id=DEPLOYED_MODEL_IDDieser Befehl erzeugt keine Ausgabe.
Führen Sie den Befehl
gcloud ai endpoints deleteaus, um den Endpunkt zu löschen.gcloud ai endpoints delete ENDPOINT_ID \ --project=PROJECT_ID \ --region=LOCATION_IDGeben Sie bei Aufforderung
yzur Bestätigung ein. Dieser Befehl erzeugt keine Ausgabe.
Modell löschen
Console
Rufen Sie in der Google Cloud Console im Bereich „Agent Platform“ die Seite Model Registry auf.
Wählen Sie in der Drop-down-Liste Region die Region aus, in der Sie Ihr Modell bereitgestellt haben.
Klicken Sie am Ende der Zeile
gemma2-2b-it-1234567891234auf Aktionen.Wählen Sie Modell löschen aus.
Wenn Sie das Modell löschen, werden alle zugehörigen Modellversionen und ‑bewertungen aus Ihrem Google Cloud -Projekt gelöscht.
Klicken Sie in der Bestätigungsaufforderung auf Löschen.
gcloud
Wenn Sie das Modell mit der Google Cloud CLI löschen möchten, geben Sie den Anzeigenamen und die Region des Modells im Befehl gcloud ai models delete an.
gcloud ai models delete DEPLOYED_MODEL_NAME \
--project=PROJECT_ID \
--region=LOCATION_ID
Ersetzen Sie DEPLOYED_MODEL_NAME durch den Anzeigenamen des Modells. Ersetzen Sie PROJECT_ID durch Ihren Projektnamen. Ersetzen Sie LOCATION_ID durch die Region, in der Sie das Modell bereitgestellt haben.
Nächste Schritte
- Weitere Informationen zu offenen Gemma-Modellen
- Gemma-Nutzungsbedingungen lesen
- Weitere Informationen zu offenen Modellen
- Informationen zum Bereitstellen eines abgestimmten Modells
- Gemma 2 mit HuggingFace Textgen Inference (TGI) in der Google Kubernetes Engine bereitstellen
- Weitere Informationen zum
PredictionServiceClientin Ihrer bevorzugten Sprache: Python, Node.js, Java oder Go