In dieser Anleitung erfahren Sie, wie Sie Vertex AI SDK für Python-Code von der Verwendung der PaLM API zur Verwendung der Gemini API migrieren. Sie können mit Gemini Text, Unterhaltungen über mehrere Themen (Chat) und Code generieren. Prüfen Sie nach der Migration Ihre Antworten, da die Gemini-Ausgabe von der PaLM-Ausgabe abweichen kann. Weitere Informationen finden Sie in der Einführung in multimodale Klassen in Vertex AI SDK.
Unterschiede zwischen Gemini und PaLM
Im Folgenden sind einige Unterschiede zwischen Gemini- und PaLM-Modellen aufgeführt:
Die Antwortstrukturen sind unterschiedlich. Weitere Informationen zur Gemini-Antwortstruktur finden Sie im Antworttext der Gemini API-Modellreferenz.
Die Sicherheitskategorien sind unterschiedlich. Weitere Informationen zu den Unterschieden zwischen den Sicherheitseinstellungen von Gemini und PaLM finden Sie unter Wichtige Unterschiede zwischen Gemini und anderen Modellfamilien.
Gemini kann keine Codevervollständigung ausführen. Wenn Sie eine Anwendung zur Codevervollständigung erstellen müssen, verwenden Sie das
code-gecko
-Modell. Weitere Informationen finden Sie unter Codey-Codevervollständigungsmodell.Für die Codegenerierung hat Gemini eine höhere Rezitationsblockrate.
Der Konfidenzwert in Codey-Codegenerierungsmodellen, der angibt, wie hoch die Konfidenz des Modells in seine Antwort ist, wird in Gemini nicht angezeigt.
PaLM-Code für die Verwendung von Gemini-Modellen aktualisieren
Die Methoden in der GenerativeModel
-Klasse sind weitgehend die gleichen wie die Methoden in den PaLM-Klassen. Verwenden Sie beispielsweise GenerativeModel.start_chat
, um das PaLM-Äquivalent ChatModel.start_chat
zu ersetzen. Da Google Cloud Gemini jedoch immer verbessert und aktualisiert, kann es zu Unterschieden kommen. Weitere Informationen finden Sie in der Python SDK-Referenz.
Für die Migration von der PaLM API zur Gemini API sind die folgenden Codeänderungen erforderlich:
Für alle PaLM-Modellklassen verwenden Sie die Klasse
GenerativeModel
in Gemini.Führen Sie die folgende Importanweisung aus, um die Klasse
GenerativeModel
zu verwenden:from vertexai.generative_models import GenerativeModel
Verwenden Sie zum Laden eines Gemini-Modells den Konstruktor
GenerativeModel
, statt die Methodefrom_pretrained
zu verwenden. Verwenden Sie beispielsweiseGenerativeModel(gemini-1.0-pro)
, um das Gemini 1.0 Pro-Modell zu laden.Verwenden Sie zum Generieren von Text in Gemini die Methode
GenerativeModel.generate_content
anstelle der Methodepredict
, die in PaLM-Modellen verwendet wird. Beispiel:
model = GenerativeModel("gemini-1.0-pro-002") response = model.generate_content("Write a short poem about the moon")
Gemini- und PaLM-Klassenvergleich
Jede PaLM-Modellklasse wird in Gemini durch die Klasse GenerativeModel
ersetzt. Die folgende Tabelle zeigt die Klassen, die von den PaLM-Modellen verwendet werden, und ihre entsprechende Klasse in Gemini.
PaLM-Modell | PaLM-Modellklasse | Gemini-Modellklasse |
---|---|---|
text-bison |
TextGenerationModel |
GenerativeModel |
chat-bison |
ChatModel |
GenerativeModel |
code-bison |
CodeGenerationModel |
GenerativeModel |
codechat-bison |
CodeChatModel |
GenerativeModel |
Allgemeine Anleitungen zur Einrichtung
Sowohl für die PaLM API als auch für die Gemini API in Vertex AI ist die Einrichtung identisch. Weitere Informationen finden Sie unter Einführung in das Vertex AI SDK für Python. Im Folgenden finden Sie ein kurzes Codebeispiel, das das Vertex AI SDK für Python installiert.
pip install google-cloud-aiplatform import vertexai vertexai.init(project="PROJECT_ID", location="LOCATION")
Ersetzen Sie in diesem Beispielcode PROJECT_ID durch Ihre Google Cloud-Projekt-ID und LOCATION durch den Standort Ihres Google Cloud-Projekts (z. B. us-central1
).
Codebeispiele für Gemini und PaLM
Jedes der folgenden Paare von Codebeispielen enthält PaLM-Code und daneben Gemini-Code, der aus dem PaLM-Code migriert wurde.
Textgenerierung: Basis
Die folgenden Codebeispiele zeigen die Unterschiede zwischen der PaLM API und der Gemini API zum Erstellen eines Textgenerierungsmodells.
PaLM | Gemini |
---|---|
|
|
Textgenerierung mit Parametern
Die folgenden Codebeispiele zeigen die Unterschiede zwischen der PaLM API und Gemini APIs zum Erstellen eines Textgenerierungsmodells mit optionalen Parametern.
PaLM | Gemini |
---|---|
|
|
Chat
Die folgenden Codebeispiele zeigen die Unterschiede zwischen der PaLM API und der Gemini API zum Erstellen eines Chatmodells.
PaLM | Gemini |
---|---|
|
|
Codegenerierung
Die folgenden Codebeispiele zeigen die Unterschiede zwischen der PaLM API und Gemini APIs zum Generieren einer Funktion, die vorhersagt, ob ein Jahr ein Schaltjahr ist.
Codey | Gemini |
---|---|
|
|
Prompts zu Gemini-Modellen migrieren
Wenn Sie Prompts haben, die Sie zuvor mit PaLM 2-Modellen verwendet haben, können Sie sie mit dem Vertex AI Prompt Optimizer (Vorabversion) für die Verwendung mit Gemini-Modellen optimieren.
Nächste Schritte
- Weitere Informationen zu den neuesten Modellen und Funktionen finden Sie auf der Seite Google-Modelle.