Verwenden Sie generateContent
oder streamGenerateContent
, um Inhalte mit Gemini zu generieren.
Die Gemini-Modellfamilie umfasst Modelle, die mit multimodalen Prompt-Anfragen funktionieren. Der Begriff „multimodal“ bedeutet, dass Sie in einem Prompt mehr als eine Modalität oder Eingabeart verwenden können. Modelle, die nicht multimodal sind, akzeptieren nur Prompts mit Text. Modalitäten können Text, Audio, Video und mehr umfassen.
Google Cloud-Konto erstellen
Wenn Sie die Vertex AI API für Gemini verwenden möchten, erstellen Sie ein Google Cloud-Konto.
Nachdem Sie Ihr Konto erstellt haben, können Sie in diesem Dokument den Anfragetext, die Modellparameter, den Antworttext und einige Beispiele anfragen des Gemini-Modells überprüfen.
Wenn Sie bereit sind, lesen Sie in der Kurzanleitung zur Vertex AI API für Gemini nach, wie Sie eine Anfrage an die Vertex AI Gemini API mit einem SDK für Programmiersprachen oder der REST API senden.
Unterstützte Modelle
Modell | Version |
---|---|
Gemini 1.5 Flash | gemini-1.5-flash-001 gemini-1.5-flash-002 |
Gemini 1.5 Pro, | gemini-1.5-pro-001 gemini-1.5-pro-002 |
Gemini 1.0 Pro Vision | gemini-1.0-pro-001 gemini-1.0-pro-vision-001 |
Gemini 1.0 Pro | gemini-1.0-pro gemini-1.0-pro-001 gemini-1.0-pro-002 |
Beispielsyntax
Syntax zum Generieren einer Modellantwort.
Nicht-Streaming
curl
curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ https://${LOCATION}-aiplatform.googleapis.com/v1/projects/${PROJECT_ID}/locations/${LOCATION}/publishers/google/models/${MODEL_ID}:generateContent \ -d '{ "contents": [{ ... }], "generationConfig": { ... }, "safetySettings": { ... } ... }'
Python
gemini_model = GenerativeModel(MODEL_ID) generation_config = GenerationConfig(...) model_response = gemini_model.generate_content([...], generation_config, safety_settings={...})
Streaming
curl
curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ https://${LOCATION}-aiplatform.googleapis.com/v1/projects/${PROJECT_ID}/locations/${LOCATION}/publishers/google/models/${MODEL_ID}:streamGenerateContent \ -d '{ "contents": [{ ... }], "generationConfig": { ... }, "safetySettings": { ... } ... }'
Python
gemini_model = GenerativeModel(MODEL_ID) model_response = gemini_model.generate_content([...], generation_config, safety_settings={...}, stream=True)
Parameterliste
Einzelheiten zur Implementierung finden Sie in den Beispielen.
Anfragetext
{ "cachedContent": string, "contents": [ { "role": string, "parts": [ { // Union field data can be only one of the following: "text": string, "inlineData": { "mimeType": string, "data": string }, "fileData": { "mimeType": string, "fileUri": string }, // End of list of possible types for union field data. "videoMetadata": { "startOffset": { "seconds": integer, "nanos": integer }, "endOffset": { "seconds": integer, "nanos": integer } } } ] } ], "systemInstruction": { "role": string, "parts": [ { "text": string } ] }, "tools": [ { "functionDeclarations": [ { "name": string, "description": string, "parameters": { object (OpenAPI Object Schema) } } ] } ], "safetySettings": [ { "category": enum (HarmCategory), "threshold": enum (HarmBlockThreshold) } ], "generationConfig": { "temperature": number, "topP": number, "topK": number, "candidateCount": integer, "maxOutputTokens": integer, "presencePenalty": float, "frequencyPenalty": float, "stopSequences": [ string ], "responseMimeType": string, "responseSchema": schema, "seed": integer, "responseLogprobs": boolean, "logprobs": integer, "audioTimestamp": boolean }, "labels": { string: string } }
Der Anfragetext enthält Daten mit den folgenden Parametern:
Parameter | |
---|---|
| Optional:
Der Name der im Cache gespeicherten Inhalte, die als Kontext für die Bereitstellung der Vorhersage verwendet werden. Format:
|
|
Erforderlich: Der Inhalt der aktuellen Unterhaltung mit dem Modell. Bei Einzelabfragen ist dies eine einzelne Instanz. Bei Mehrfachabfragen ist dies ein wiederkehrendes Feld, das den Unterhaltungsverlauf und die letzte Anfrage enthält. |
|
Optional: Verfügbar für Anleitung für das Modell, um es zu einer besseren Leistung zu steuern. Beispiel: „Antworten Sie so kurz wie möglich“ oder „Verwenden Sie in Ihrer Antwort keine technischen Begriffe“. Die Das Feld |
|
Optional. Ein Code, der es dem System ermöglicht, mit externen Systemen zu interagieren, um eine Aktion oder eine Reihe von Aktionen außerhalb des Wissens und Umfangs des Modells auszuführen. Weitere Informationen finden Sie unter Funktionsaufruf. |
|
Optional. Weitere Informationen finden Sie unter Funktionsaufruf. |
|
Optional: Einstellungen für das Blockieren unsicherer Inhalte pro Anfrage Erzwungen am |
|
Optional: Konfigurationseinstellungen für die Generierung. |
|
Optional: Metadaten, die Sie dem API-Aufruf in Form von Schlüssel/Wert-Paaren hinzufügen können. |
contents
Der grundlegende strukturierte Datentyp, der mehrteilige Inhalte einer Nachricht enthält.
Diese Klasse besteht aus zwei Hauptattributen: role
und parts
. Das Attribut role
bezeichnet die Person, die den Inhalt erzeugt, während das Attribut parts
mehrere Elemente enthält, die jeweils ein Datensegment innerhalb einer Nachricht darstellen.
Parameter | |
---|---|
|
Optional: Die Identität der Entität, die die Nachricht erstellt. Folgende Werte werden unterstützt:
Der Wert Bei Unterhaltungen, die nicht mehrere Themen enthalten, kann dieses Feld leer bleiben oder nicht festgelegt werden. |
|
Eine Liste geordneter Teile einer einzelnen Nachricht. Verschiedene Teile haben möglicherweise unterschiedliche IANA-MIME-Typen. Limits für die Eingaben, z. B. die maximale Anzahl von Tokens oder die Anzahl der Bilder, finden Sie in den Modellspezifikationen auf der Seite Google-Modelle. Wie du die Anzahl der Tokens in deiner Anfrage berechnest, erfährst du unter Tokenanzahl abrufen. |
parts
Ein Datentyp mit Medien, die Teil einer mehrteiligen Content
-Nachricht sind.
Parameter | |
---|---|
|
Optional: Ein Text-Prompt oder ein Code-Snippet. |
|
Optional: Inline-Daten in Rohbyte. Für |
|
Optional: In einer Datei gespeicherte Daten. |
|
Optional: Es enthält einen String, der das Feld Weitere Informationen finden Sie unter Funktionsaufruf. |
|
Optional: Die Ergebnisausgabe einer Weitere Informationen finden Sie unter Funktionsaufruf. |
|
Optional: Bei der Videoeingabe: Start- und Endoffset des Videos im Format Dauer. Wenn Sie beispielsweise einen 10-Sekunden-Clip ab 1:00 Uhr angeben möchten, legen Sie Die Metadaten sollten nur angegeben werden, wenn die Videodaten in |
blob
Inhalts-Blob Senden Sie nach Möglichkeit Text und keine Rohbytes.
Parameter | |
---|---|
|
data oder fileUri angegeben wurde. Unter anderem sind folgende Werte zulässig:
Zum Maximieren von MIME-Typen klicken
Für Bei Gemini 1.5 Pro und Gemini 1.5 Flash beträgt die maximale Länge einer Audiodatei 8,4 Stunden und die maximale Länge einer Videodatei (ohne Audio) 1 Stunde. Weitere Informationen finden Sie unter Medienanforderungen für Gemini 1.5 Pro. Textdateien müssen UTF-8-codiert sein. Der Inhalt der Textdatei wird auf das Tokenlimit angerechnet. Bei der Bildauflösung gibt es keine Begrenzung. |
|
Die base64-Codierung des Bildes oder Videos, das inline in den Prompt aufgenommen werden soll. Wenn Sie Medien inline einschließen, müssen Sie auch den Medientyp ( Größenbeschränkung: 20 MB. |
FileData
URI- oder Web-URL-Daten
Parameter | |
---|---|
|
IANA-MIME-Typ der Daten. |
|
Der URI oder die URL der Datei, die in den Prompt aufgenommen werden soll. Zulässige Werte:
Wenn Sie einen |
functionCall
Ein vorhergesagter functionCall
, der vom Modell zurückgegeben wird und einen String enthält, der functionDeclaration.name
und ein strukturiertes JSON-Objekt enthält, das die Parameter und ihre Werte enthält.
Parameter | |
---|---|
|
Der Name der aufzurufenden Funktion. |
|
Die Funktionsparameter und ‑werte im JSON-Objektformat. Parameterdetails finden Sie unter Funktionsaufruf. |
functionResponse
Die Ausgabe einer FunctionCall
, die einen String enthält, der die FunctionDeclaration.name
darstellt. Enthält außerdem ein strukturiertes JSON-Objekt mit der Ausgabe der Funktion, das als Kontext für das Modell verwendet wird. Dieser sollte das Ergebnis einer FunctionCall
enthalten, die auf der Grundlage der Modellvorhersage erstellt wurde.
Parameter | |
---|---|
|
Der Name der aufzurufenden Funktion. |
|
Die Funktionsantwort im JSON-Objektformat. |
videoMetadata
Metadaten, die den Eingabevideocontent beschreiben.
Parameter | |
---|---|
|
Optional: Der Startversatz des Videos. |
|
Optional: Endversatz des Videos. |
safetySetting
Sicherheitseinstellungen.
Parameter | |
---|---|
|
Optional:
Die Sicherheitskategorie, für die ein Schwellenwert konfiguriert wird. Unter anderem sind folgende Werte zulässig:
Zum Maximieren von Sicherheitskategorien klicken
|
|
Optional: Der Schwellenwert für das Blockieren von Antworten, die basierend auf der Wahrscheinlichkeit zur angegebenen Sicherheitskategorie gehören könnten.
|
|
Optional: Geben Sie an, ob der Schwellenwert für den Wahrscheinlichkeits- oder den Schweregradwert verwendet werden soll. Wenn nicht angegeben, wird der Schwellenwert für den Wahrscheinlichkeitswert verwendet. |
harmCategory
Schädliche Kategorien, die Inhalte blockieren
Parameter | |
---|---|
|
Die Schadenskategorie ist nicht angegeben. |
|
Die Schadenskategorie ist Hassrede. |
|
Die Schadenskategorie ist gefährlicher Inhalt. |
|
Die Schadenskategorie ist Belästigung. |
|
Die Schadenskategorie umfasst sexuell explizite Inhalte. |
harmBlockThreshold
Wahrscheinlichkeitsgrenzwerte, mit denen eine Antwort blockiert wird.
Parameter | |
---|---|
|
Unbekannter Schwellenwert für Schadenssperre. |
|
Niedrigeren Schwellenwert und höher blockieren (d. h. mehr blockieren). |
|
Mittleren Grenzwert und höher blockieren. |
|
Nur einen hohen Schwellenwert blockieren (d. h. weniger blockieren). |
|
Keine blockieren. |
|
Deaktiviert die Sicherheit, wenn alle Kategorien deaktiviert sind |
harmBlockMethod
Ein Wahrscheinlichkeitsgrenzwert, der eine Antwort basierend auf einer Kombination aus Wahrscheinlichkeit und Schweregrad blockiert.
Parameter | |
---|---|
|
Die Methode der Schadenssperre ist nicht angegeben. |
|
Die Methode der Schadenssperre verwendet Punktzahlen sowohl für die Wahrscheinlichkeit als auch den Schweregrad. |
|
Die Methode der Schadenssperre verwendet den Wahrscheinlichkeitswert. |
generationConfig
Konfigurationseinstellungen, die beim Generieren des Prompts verwendet wurden.
Parameter | |
---|---|
|
Optional:
Die Temperatur wird für die Probenahme während der Antwortgenerierung verwendet. Dies passiert, wenn Wenn das Modell eine zu allgemeine oder zu kurze Antwort zurückgibt, oder wenn das Modell eine Fallback-Antwort ausgibt, versuchen Sie, die Temperatur zu erhöhen.
Weitere Informationen finden Sie unter Parameter für die Inhaltsgenerierung. |
|
Optional: Wenn angegeben, wird die Nukleusstichprobe verwendet. Der Wert Top-P ändert, wie das Modell Tokens für die Ausgabe auswählt. Die Tokens werden von den wahrscheinlichsten (siehe „Top-K“) bis zu den unwahrscheinlichsten Werten ausgewählt, bis die Summe ihrer Wahrscheinlichkeiten dem „Top-P“-Wert entspricht. Beispiel: Wenn die Tokens A, B und C eine Wahrscheinlichkeit von 0,3, 0,2 und 0,1 haben und der „Top-P“-Wert Geben Sie einen niedrigeren Wert für weniger zufällige Antworten und einen höheren Wert für zufälligere Antworten an.
|
|
Optional:
Der Wert Top-K ändert, wie das Modell Tokens für die Ausgabe auswählt. Ein „Top-K“ von Für jeden Tokenauswahlschritt werden die „Top-K“-Tokens mit den höchsten Wahrscheinlichkeiten abgetastet. Anschließend werden Tokens weiter auf der Grundlage von „Top-P“ gefiltert, wobei das endgültige Token mithilfe von Temperaturproben ausgewählt wird. Geben Sie einen niedrigeren Wert für weniger zufällige Antworten und einen höheren Wert für zufälligere Antworten an. Bereich: Nur von Standardeinstellung für |
|
Optional: Die Anzahl der zurückzugebenden Antwortvarianten. Für jede Anfrage werden Ihnen die Ausgabetokens aller Kandidaten in Rechnung gestellt, aber nur einmal für die Eingabetokens. Die Angabe mehrerer Kandidaten ist eine Funktion in der Vorabversion, die mit
|
|
Optional: int Maximale Anzahl an Tokens, die in der Antwort generiert werden können. Ein Token besteht aus etwa vier Zeichen. 100 Tokens entsprechen etwa 60–80 Wörtern. Geben Sie kürzere Werte für kürzere Antworten und höhere Werte für längere Antworten an. Weitere Informationen finden Sie unter Parameter für die Inhaltsgenerierung. |
|
Optional:
Gibt eine Liste an Strings an, die das Modell anweist, Text nicht mehr zu generieren, wenn einer der Strings in der Antwort gefunden wird. Kommt ein String mehrmals in der Antwort vor, so wird die Antwort an der Stelle abgeschnitten, an der er erfasst wurde.
Bei Strings wird zwischen Groß- und Kleinschreibung unterschieden.
Die Liste darf maximal fünf Elemente enthalten. Weitere Informationen finden Sie unter Parameter für die Inhaltsgenerierung. |
|
Optional: Positive Strafen. Positive Werte nehmen Abzüge bei Tokens vor, die wiederholt im generierten Text angezeigt werden, wodurch die Wahrscheinlichkeit wiederholter Inhalte verringert wird. Der Maximalwert für Unterstützt von |
|
Optional: Positive Werte nehmen Abzüge bei Tokens vor, die wiederholt im generierten Text angezeigt werden, wodurch die Wahrscheinlichkeit wiederholter Inhalte verringert wird. Dieser Maximalwert für Unterstützt von |
|
Optional: Verfügbar für die folgenden Modelle:
MIME-Typ der Ausgabeantwort des generierten Kandidatentextes. Die folgenden MIME-Typen werden unterstützt:
Geben Sie den entsprechenden Antworttyp an, um unerwünschtes Verhalten zu vermeiden. Wenn Sie beispielsweise eine Antwort im JSON-Format benötigen, geben Sie |
|
Optional: schema Das Schema, dem der generierte Kandidatentext entsprechen muss. Weitere Informationen finden Sie unter Ausgabe steuern. Sie müssen den Parameter Verfügbar für die folgenden Modelle:
|
|
Optional: Wenn die Seed-Daten auf einen bestimmten Wert festgelegt sind, versucht das Modell, für wiederholte Anfragen dieselbe Antwort bereitzustellen. Die deterministische Ausgabe wird nicht zwangsläufig erfüllt. Wenn Sie die Modell- oder Parametereinstellungen ändern, z. B. die Temperatur, kann dies außerdem zu Abweichungen in der Antwort führen, selbst wenn Sie denselben Seed-Wert verwenden. Standardmäßig wird ein zufälliger Startwert verwendet. Verfügbar für die folgenden Modelle:
Dies ist eine Funktion in der Vorabversion. |
|
Optional: Wenn „wahr“ ist, werden die Log-Wahrscheinlichkeiten der Tokens zurückgegeben, die in jedem Schritt vom Modell ausgewählt wurden. Standardmäßig ist dieser Parameter auf Verfügbar für die folgenden Modelle:
Dies ist eine Funktion in der Vorabversion. |
|
Optional:
Gibt die Log-Wahrscheinlichkeiten der Top-Kandidaten-Token bei jedem Generierungsschritt zurück. Das vom Modell ausgewählte Token ist möglicherweise nicht mit dem Top-Kandidaten-Token in jedem Schritt identisch. Geben Sie die Anzahl der Kandidaten an, die zurückgegeben werden sollen, indem Sie eine Ganzzahl im Bereich von Sie müssen Dies ist eine Funktion in der Vorabversion. |
|
Optional: Verfügbar für die folgenden Modelle:
Ermöglicht die Erkennung von Zeitstempeln für Dateien, die nur Audio enthalten. Dies ist eine Funktion in der Vorabversion. |
Antworttext
{ "candidates": [ { "content": { "parts": [ { "text": string } ] }, "finishReason": enum (FinishReason), "safetyRatings": [ { "category": enum (HarmCategory), "probability": enum (HarmProbability), "blocked": boolean } ], "citationMetadata": { "citations": [ { "startIndex": integer, "endIndex": integer, "uri": string, "title": string, "license": string, "publicationDate": { "year": integer, "month": integer, "day": integer } } ] }, "avgLogprobs": double, "logprobsResult": { "topCandidates": [ { "candidates": [ { "token": string, "logProbability": float } ] } ], "chosenCandidates": [ { "token": string, "logProbability": float } ] } } ], "usageMetadata": { "promptTokenCount": integer, "candidatesTokenCount": integer, "totalTokenCount": integer }, "modelVersion": string }
Antwortelement | Beschreibung |
---|---|
modelVersion |
Das Modell und die Version, die für die Generierung verwendet wurden. Beispiel:
gemini-1.5-flash-002 . |
text |
Der generierte Text. |
finishReason |
Der Grund, warum das Modell keine Tokens mehr generiert. Wenn leer, wird das Modell weiterhin die Tokens generieren. Da die Antwort die Eingabeaufforderung für Kontext verwendet, kann das Verhalten des Modells nicht mehr geändert werden, um Tokens zu generieren.
|
category |
Die Sicherheitskategorie, für die ein Schwellenwert konfiguriert wird. Unter anderem sind folgende Werte zulässig:
Zum Maximieren von Sicherheitskategorien klicken
|
probability |
Die Wahrscheinlichkeitsstufen für schädliche Inhalte
|
blocked |
Ein boolesches Flag, das mit einem Sicherheitsattribut verknüpft ist, das angibt, ob die Ein- oder Ausgabe des Modells blockiert wurde. |
startIndex |
Eine Ganzzahl, die angibt, wo eine Zitation im content beginnt. |
endIndex |
Eine Ganzzahl, die angibt, wo eine Zitation in content endet.
|
url |
Die URL einer Zitationsquelle. Beispiele für eine URL-Quelle sind beispielsweise eine Nachrichtenwebsite oder ein GitHub-Repository. |
title |
Der Titel einer Zitationsquelle. Beispiele für Quelltitel sind der eines Nachrichtenartikels oder eines Buches. |
license |
Die mit einer Zitation verknüpfte Lizenz. |
publicationDate |
Das Datum, an dem ein Zitat veröffentlicht wurde. Die gültigen Formate sind YYYY , YYYY-MM und YYYY-MM-DD .
|
avgLogprobs |
Durchschnittliche Log-Wahrscheinlichkeit des Kandidaten. |
logprobsResult |
Gibt die Top-Kandidaten-Token (topCandidates ) und die tatsächlich ausgewählten Tokens (chosenCandidates ) bei jedem Schritt zurück. |
token |
Modelle für generative KI zerlegen Textdaten zur Verarbeitung in Tokens, die Zeichen, Wörter oder Wortgruppen sein können. |
logProbability |
Ein Logaritmus der Wahrscheinlichkeit, der die Konfidenz des Modells für ein bestimmtes Token angibt. |
promptTokenCount |
Anzahl der Tokens in der Anfrage. |
candidatesTokenCount |
Anzahl der Tokens in den Antworten. |
totalTokenCount |
Anzahl der Tokens in der Anfrage und den Antworten. |
Beispiele
Nicht-Streaming-Textantwort
Generieren Sie eine nicht-streamingfähige Modellantwort aus einer Texteingabe.
REST
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
PROJECT_ID
: Ihre Projekt-ID.LOCATION
: Die Region, in der die Anfrage verarbeitet werden soll.MODEL_ID
: Die Modell-ID des Modells, das Sie verwenden möchten (z. B.gemini-1.5-flash-002
). Weitere Informationen finden Sie in der Liste der unterstützten Modelle.TEXT
: Die Textanleitung, die in den Prompt eingefügt werden soll.
HTTP-Methode und URL:
POST https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/MODEL_ID:generateContent
JSON-Text der Anfrage:
{ "contents": [{ "role": "user", "parts": [{ "text": "TEXT" }] }] }
Wenn Sie die Anfrage senden möchten, wählen Sie eine der folgenden Optionen aus:
curl
Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json
und führen Sie den folgenden Befehl aus:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/MODEL_ID:generateContent"
PowerShell
Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json
und führen Sie den folgenden Befehl aus:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/MODEL_ID:generateContent" | Select-Object -Expand Content
Python
NodeJS
Java
Go
C#
REST (OpenAI)
Sie können die Inference API mithilfe der OpenAI-Bibliothek aufrufen. Weitere Informationen finden Sie unter Vertex AI-Modelle mithilfe der OpenAI-Bibliothek aufrufen.
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
- PROJECT_ID: Ihre Projekt-ID.
- LOCATION: Die Region, in der die Anfrage verarbeitet werden soll.
- MODEL_ID: Der Name des Modells, das verwendet werden soll.
HTTP-Methode und URL:
POST https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/endpoints/openapi/chat/completions
JSON-Text der Anfrage:
{ "model": "google/MODEL_ID", "messages": [{ "role": "user", "content": "Write a story about a magic backpack." }] }
Wenn Sie die Anfrage senden möchten, wählen Sie eine der folgenden Optionen aus:
curl
Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json
und führen Sie den folgenden Befehl aus:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/endpoints/openapi/chat/completions"
PowerShell
Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json
und führen Sie den folgenden Befehl aus:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/endpoints/openapi/chat/completions" | Select-Object -Expand Content
Python (OpenAI)
Sie können die Inference API mithilfe der OpenAI-Bibliothek aufrufen. Weitere Informationen finden Sie unter Vertex AI-Modelle mithilfe der OpenAI-Bibliothek aufrufen.
Multimodale Nicht-Streaming-Antwort
Generieren Sie eine nicht streamende Modellantwort aus einer multimodalen Eingabe wie Text und einem Bild.
REST
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
PROJECT_ID
: Ihre Projekt-ID.LOCATION
: Die Region, in der die Anfrage verarbeitet werden soll.MODEL_ID
: Die Modell-ID des Modells, das Sie verwenden möchten (z. B.gemini-1.5-flash-002
). Weitere Informationen finden Sie in der Liste der unterstützten Modelle.TEXT
: Die Textanleitung, die in den Prompt eingefügt werden soll.FILE_URI
: Der Cloud Storage-URI der Datei, in der die Daten gespeichert werdenMIME_TYPE
: IANA-MIME-Typ der Daten.
HTTP-Methode und URL:
POST https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/MODEL_ID:generateContent
JSON-Text der Anfrage:
{ "contents": [{ "role": "user", "parts": [ { "text": "TEXT" }, { "fileData": { "fileUri": "FILE_URI", "mimeType": "MIME_TYPE" } } ] }] }
Wenn Sie die Anfrage senden möchten, wählen Sie eine der folgenden Optionen aus:
curl
Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json
und führen Sie den folgenden Befehl aus:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/MODEL_ID:generateContent"
PowerShell
Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json
und führen Sie den folgenden Befehl aus:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/MODEL_ID:generateContent" | Select-Object -Expand Content
Python
NodeJS
Java
Go
C#
REST (OpenAI)
Sie können die Inference API mithilfe der OpenAI-Bibliothek aufrufen. Weitere Informationen finden Sie unter Vertex AI-Modelle mithilfe der OpenAI-Bibliothek aufrufen.
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
- PROJECT_ID: Ihre Projekt-ID.
- LOCATION: Die Region, in der die Anfrage verarbeitet werden soll.
- MODEL_ID: Der Name des Modells, das verwendet werden soll.
HTTP-Methode und URL:
POST https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/endpoints/openapi/chat/completions
JSON-Text der Anfrage:
{ "model": "google/MODEL_ID", "messages": [{ "role": "user", "content": [ { "type": "text", "text": "Describe the following image:" }, { "type": "image_url", "image_url": { "url": "gs://generativeai-downloads/images/character.jpg" } } ] }] }
Wenn Sie die Anfrage senden möchten, wählen Sie eine der folgenden Optionen aus:
curl
Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json
und führen Sie den folgenden Befehl aus:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/endpoints/openapi/chat/completions"
PowerShell
Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json
und führen Sie den folgenden Befehl aus:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/endpoints/openapi/chat/completions" | Select-Object -Expand Content
Python (OpenAI)
Sie können die Inference API mithilfe der OpenAI-Bibliothek aufrufen. Weitere Informationen finden Sie unter Vertex AI-Modelle mithilfe der OpenAI-Bibliothek aufrufen.
Streaming-Textantwort
Eine Streaming-Modellantwort aus einer Texteingabe generieren
REST
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
PROJECT_ID
: Ihre Projekt-ID.LOCATION
: Die Region, in der die Anfrage verarbeitet werden soll.MODEL_ID
: Die Modell-ID des Modells, das Sie verwenden möchten (z. B.gemini-1.5-flash-002
). Weitere Informationen finden Sie in der Liste der unterstützten Modelle.TEXT
: Die Textanleitung, die in den Prompt eingefügt werden soll.
HTTP-Methode und URL:
POST https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/MODEL_ID:streamGenerateContent
JSON-Text der Anfrage:
{ "contents": [{ "role": "user", "parts": [{ "text": "TEXT" }] }] }
Wenn Sie die Anfrage senden möchten, wählen Sie eine der folgenden Optionen aus:
curl
Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json
und führen Sie den folgenden Befehl aus:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/MODEL_ID:streamGenerateContent"
PowerShell
Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json
und führen Sie den folgenden Befehl aus:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/MODEL_ID:streamGenerateContent" | Select-Object -Expand Content
Python
NodeJS
Java
Go
REST (OpenAI)
Sie können die Inference API mithilfe der OpenAI-Bibliothek aufrufen. Weitere Informationen finden Sie unter Vertex AI-Modelle mithilfe der OpenAI-Bibliothek aufrufen.
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
- PROJECT_ID: Ihre Projekt-ID.
- LOCATION: Die Region, in der die Anfrage verarbeitet werden soll.
- MODEL_ID: Der Name des Modells, das verwendet werden soll.
HTTP-Methode und URL:
POST https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/endpoints/openapi/chat/completions
JSON-Text der Anfrage:
{ "model": "google/MODEL_ID", "stream": true, "messages": [{ "role": "user", "content": "Write a story about a magic backpack." }] }
Wenn Sie die Anfrage senden möchten, wählen Sie eine der folgenden Optionen aus:
curl
Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json
und führen Sie den folgenden Befehl aus:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/endpoints/openapi/chat/completions"
PowerShell
Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json
und führen Sie den folgenden Befehl aus:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/endpoints/openapi/chat/completions" | Select-Object -Expand Content
Python (OpenAI)
Sie können die Inference API mithilfe der OpenAI-Bibliothek aufrufen. Weitere Informationen finden Sie unter Vertex AI-Modelle mithilfe der OpenAI-Bibliothek aufrufen.
Multimodale Streamingantwort
Eine Streaming-Modellantwort aus einer multimodalen Eingabe wie Text und einem Bild generieren
REST
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
PROJECT_ID
: Ihre Projekt-ID.LOCATION
: Die Region, in der die Anfrage verarbeitet werden soll.MODEL_ID
: Die Modell-ID des Modells, das Sie verwenden möchten (z. B.gemini-1.5-flash-002
). Weitere Informationen finden Sie in der Liste der unterstützten Modelle.TEXT
: Die Textanleitung, die in den Prompt eingefügt werden soll.FILE_URI1
: Der Cloud Storage-URI der Datei, in der die Daten gespeichert werdenMIME_TYPE1
: IANA-MIME-Typ der Daten.FILE_URI2
: Der Cloud Storage-URI der Datei, in der die Daten gespeichert werdenMIME_TYPE2
: IANA-MIME-Typ der Daten.
HTTP-Methode und URL:
POST https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/MODEL_ID:streamGenerateContent
JSON-Text der Anfrage:
{ "contents": [{ "role": "user", "parts": [ { "text": "TEXT" }, { "fileData": { "fileUri": "FILE_URI1", "mimeType": "MIME_TYPE1" } }, { "fileData": { "fileUri": "FILE_URI2", "mimeType": "MIME_TYPE2" } } ] }] }
Wenn Sie die Anfrage senden möchten, wählen Sie eine der folgenden Optionen aus:
curl
Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json
und führen Sie den folgenden Befehl aus:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/MODEL_ID:streamGenerateContent"
PowerShell
Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json
und führen Sie den folgenden Befehl aus:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/MODEL_ID:streamGenerateContent" | Select-Object -Expand Content
Python
NodeJS
Java
Go
REST (OpenAI)
Sie können die Inference API mithilfe der OpenAI-Bibliothek aufrufen. Weitere Informationen finden Sie unter Vertex AI-Modelle mithilfe der OpenAI-Bibliothek aufrufen.
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
- PROJECT_ID: Ihre Projekt-ID.
- LOCATION: Die Region, in der die Anfrage verarbeitet werden soll.
- MODEL_ID: Der Name des Modells, das verwendet werden soll.
HTTP-Methode und URL:
POST https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/endpoints/openapi/chat/completions
JSON-Text der Anfrage:
{ "model": "google/MODEL_ID", "stream": true, "messages": [{ "role": "user", "content": [ { "type": "text", "text": "Describe the following image:" }, { "type": "image_url", "image_url": { "url": "gs://generativeai-downloads/images/character.jpg" } } ] }] }
Wenn Sie die Anfrage senden möchten, wählen Sie eine der folgenden Optionen aus:
curl
Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json
und führen Sie den folgenden Befehl aus:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/endpoints/openapi/chat/completions"
PowerShell
Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json
und führen Sie den folgenden Befehl aus:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/endpoints/openapi/chat/completions" | Select-Object -Expand Content
Python (OpenAI)
Sie können die Inference API mithilfe der OpenAI-Bibliothek aufrufen. Weitere Informationen finden Sie unter Vertex AI-Modelle mithilfe der OpenAI-Bibliothek aufrufen.
Modellversionen
Wenn Sie die automatisch aktualisierte Version verwenden möchten, geben Sie den Modellnamen ohne die nachgestellte Versionsnummer an, z. B. gemini-1.5-flash
anstelle von gemini-1.5-flash-001
.
Weitere Informationen finden Sie unter Modellversionen und Lebenszyklus.
Nächste Schritte
- Weitere Informationen zur Gemini API
- Weitere Informationen zu Funktionsaufrufen
- Weitere Informationen zu Antworten für Gemini-Modelle fundieren