Um einen gut funktionierenden Prompt zu entwerfen, testen Sie verschiedene Versionen des Prompts und experimentieren mit Prompt-Parametern, um zu bestimmen, welche Ergebnisse eine optimale Antwort bedingen. Sie können Prompts programmatisch mit den Codey APIs und in der Google Cloud Console mit Vertex AI Studio testen.
Prompts zum Codeabschluss testen
Wählen Sie eine der folgenden Methoden aus, um Prompts zum Codevervollständigen zu testen.
REST
Senden Sie zum Testen eines Prompts zur Vervollständigung von Code mit der Vertex AI API eine POST-Anfrage an den Endpunkt des Publisher-Modells.
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
- PROJECT_ID: Ihre Projekt-ID.
- PREFIX: Bei Codemodellen stellt
prefix
den Anfang eines sinnvollen Programmiercodes oder eines Prompts in natürlicher Sprache dar, der den zu generierenden Code beschreibt. Das Modell versucht, den Code zwischenprefix
undsuffix
auszufüllen. - SUFFIX: Bei der Codevervollständigung stellt
suffix
das Ende eines sinnvollen Programmiercodes dar. Das Modell versucht, den Code zwischenprefix
undsuffix
auszufüllen. - TEMPERATURE: Die Temperatur wird für die Probenahme während der Antwortgenerierung verwendet. Die Temperatur bestimmt den Grad der Zufälligkeit bei der Tokenauswahl. Niedrigere Temperaturen eignen sich gut für Prompts, die eine weniger offene oder kreative Antwort erfordern, während höhere Temperaturen zu vielfältigeren oder kreativeren Ergebnissen führen können. Eine Temperatur von
0
bedeutet, dass immer die Tokens mit der höchsten Wahrscheinlichkeit ausgewählt werden. In diesem Fall sind die Antworten auf eine bestimmte Aufforderung größtenteils deterministisch, aber eine gewisse Abweichung ist dennoch möglich. - MAX_OUTPUT_TOKENS: 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.
- CANDIDATE_COUNT:
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
generateContent
funktioniert (streamGenerateContent
wird nicht unterstützt). Die folgenden Modelle werden unterstützt:- Gemini 1.5 Flash:
1
–8
, Standardeinstellung:1
- Gemini 1.5 Pro:
1
–8
, Standardeinstellung:1
- Gemini 1.0 Pro:
1
–8
, Standardeinstellung:1
int
zwischen 1 und 4. - Gemini 1.5 Flash:
HTTP-Methode und URL:
POST https://us-central1-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/publishers/google/models/code-gecko:predict
JSON-Text der Anfrage:
{ "instances": [ { "prefix": "PREFIX", "suffix": "SUFFIX"} ], "parameters": { "temperature": TEMPERATURE, "maxOutputTokens": MAX_OUTPUT_TOKENS, "candidateCount": CANDIDATE_COUNT } }
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://us-central1-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/publishers/google/models/code-gecko:predict"
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://us-central1-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/publishers/google/models/code-gecko:predict" | Select-Object -Expand Content
Sie sollten eine JSON-Antwort ähnlich wie diese erhalten:
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 Referenzdokumentation zur Python API.
Node.js
Bevor Sie dieses Beispiel anwenden, folgen Sie den Node.js-Einrichtungsschritten in der Vertex AI-Kurzanleitung zur Verwendung von Clientbibliotheken. Weitere Informationen finden Sie in der Referenzdokumentation zur Vertex AI Node.js API.
Richten Sie zur Authentifizierung bei Vertex AI Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.
Java
Bevor Sie dieses Beispiel anwenden, folgen Sie den Java-Einrichtungsschritten in der Vertex AI-Kurzanleitung zur Verwendung von Clientbibliotheken. Weitere Informationen finden Sie in der Referenzdokumentation zur Vertex AI Java API.
Richten Sie zur Authentifizierung bei Vertex AI Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.
Console
So testen Sie die Eingabeaufforderung für den Codeabschluss in Vertex AI Studio in der Google Cloud Console:
- Rufen Sie im Bereich „Vertex AI“ der Google Cloud Console Vertex AI Studio auf.
- Klicken Sie auf Jetzt starten.
- Klicken Sie auf Code-Prompt.
- Wählen Sie unter Modell das Modell mit dem Namen aus, der mit
code-gecko
beginnt. Eine dreistellige Zahl nachcode-gecko
gibt die Versionsnummer des Modells an. Beispiel:code-gecko@002
ist der Name von Version 2 der stabilen Version des Codevervollständigungsmodells. - Geben Sie in das Feld Prompt einen Prompt zur Codevervollständigung ein.
- Passen Sie Temperaturen und Tokenlimits an, um zu experimentieren, wie sich diese Elemente auf die Antwort auswirken. Weitere Informationen finden Sie unter Parameter für das Codevervollständigungsmodell.
- Klicken Sie auf Senden, um eine Antwort zu generieren.
- Klicken Sie auf Speichern, wenn Sie einen Prompt speichern möchten.
- Klicken Sie auf Code anzeigen, um den Python-Code oder einen curl-Befehl für Ihren Prompt anzuzeigen.
Beispiel eines cURL-Befehls
MODEL_ID="code-gecko"
PROJECT_ID=PROJECT_ID
curl \
-X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
https://us-central1-aiplatform.googleapis.com/v1/projects/${PROJECT_ID}/locations/us-central1/publishers/google/models/${MODEL_ID}:predict -d \
$"{
'instances': [
{ 'prefix': 'def reverse_string(s):',
'suffix': ''
}
],
'parameters': {
'temperature': 0.2,
'maxOutputTokens': 64,
'candidateCount': 1
}
}"
Weitere Informationen zum Eingabeaufforderungsdesign für die Codevervollständigung finden Sie unter Aufforderungen zur Codevervollständigung erstellen.
Streamantwort aus Codemodell
Beispiele für die Verwendung von REST API-Beispielanfragen und -Antworten finden Sie unter Beispiele, die die Streaming-REST-API verwenden.
Um Beispielcodeanfragen und -antworten mit dem Vertex AI SDK für Python anzuzeigen, lesen Sie Beispiele, die Vertex AI SDK für Python zum Streaming verwenden.
Nächste Schritte
- Prompts zur Codevervollständigungen erstellen
- Prompts zur Codegenerierung erstellen
- Best Practices für verantwortungsbewusste KI und die Sicherheitsfilter von Vertex AI