Per progettare un prompt efficace, prova diverse versioni e sperimenta i parametri per determinare quale genera la risposta ottimale. Puoi testare i prompt in modo programmatico con le API Codey e nella console Google Cloud con Vertex AI Studio.
Testare i prompt di completamento del codice
Per testare i prompt di completamento del codice, scegli uno dei seguenti metodi.
REST
Per testare un prompt di completamento del codice con l'API Vertex AI, invia una richiesta POST all'endpoint del modello del publisher.
Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:
- PROJECT_ID: il tuo ID progetto.
- PREFIX:
per i modelli di codice,
prefix
rappresenta l'inizio di un frammento di codice di programmazione significativo o un prompt in linguaggio naturale che descrive il codice da generare. Il modello tenta di compilare il codice traprefix
esuffix
. - SUFFIX:
per il completamento del codice,
suffix
rappresenta la fine di un frammento di codice di programmazione significativo. Il modello tenta di compilare il codice traprefix
esuffix
. - TEMPERATURE:
La temperatura viene utilizzata per il campionamento durante la generazione della risposta. La temperatura controlla il grado di
randomicità nella selezione dei token. Le temperature più basse sono ideali per prompt che richiedono risposte meno creative o aperte, mentre le temperature più alte possono portare a risultati più diversificati o creativi. Con una temperatura pari a
0
, vengono sempre selezionati i token con la probabilità più alta. In questo caso, le risposte per un determinato prompt sono per lo più deterministiche, ma è ancora possibile una piccola variazione. - MAX_OUTPUT_TOKENS:
numero massimo di token che possono essere generati nella risposta. Un token equivale a circa quattro caratteri. 100 token corrispondono a circa 60-80 parole.
Specifica un valore più basso per risposte più brevi e un valore più alto per risposte potenzialmente più lunghe.
- CANDIDATE_COUNT:
Il numero di varianti di risposta da restituire. Per ogni richiesta, ti vengono addebitati i
token di output di tutti i candidati, ma solo una volta per i token di input.
La specifica di più candidati è una funzionalità di anteprima che funziona con
generateContent
(streamGenerateContent
non è supportato). Sono supportati i seguenti modelli:- Gemini 1.5 Flash:
1
-8
, valore predefinito:1
- Gemini 1.5 Pro:
1
-8
, valore predefinito:1
- Gemini 1.0 Pro:
1
-8
, valore predefinito:1
int
deve essere compreso tra 1 e 4. - Gemini 1.5 Flash:
Metodo HTTP e URL:
POST https://us-central1-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/publishers/google/models/code-gecko:predict
Corpo JSON della richiesta:
{ "instances": [ { "prefix": "PREFIX", "suffix": "SUFFIX"} ], "parameters": { "temperature": TEMPERATURE, "maxOutputTokens": MAX_OUTPUT_TOKENS, "candidateCount": CANDIDATE_COUNT } }
Per inviare la richiesta, scegli una delle seguenti opzioni:
curl
Salva il corpo della richiesta in un file denominato request.json
,
quindi esegui il comando seguente:
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
Salva il corpo della richiesta in un file denominato request.json
,
quindi esegui il comando seguente:
$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
Dovresti ricevere una risposta JSON simile alla seguente.
Python
Per scoprire come installare o aggiornare l'SDK Vertex AI per Python, consulta Installare l'SDK Vertex AI per Python. Per saperne di più, consulta la documentazione di riferimento dell'API Python.
Node.js
Prima di provare questo esempio, segui le istruzioni di configurazione Node.js riportate nella guida rapida all'utilizzo delle librerie client di Vertex AI. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Node.js di Vertex AI.
Per autenticarti in Vertex AI, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Java
Prima di provare questo esempio, segui le istruzioni di configurazione Java riportate nella guida rapida all'utilizzo delle librerie client di Vertex AI. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Java di Vertex AI.
Per autenticarti in Vertex AI, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Console
Per testare una richiesta di completamento del codice utilizzando Vertex AI Studio nella console Google Cloud, segui questi passaggi :
- Nella sezione Vertex AI della console Google Cloud, vai a Vertex AI Studio.
- Fai clic su Inizia.
- Fai clic su Prompt di codice.
- In Modello, seleziona il modello il cui nome inizia con
code-gecko
. Un numero di tre cifre dopocode-gecko
indica il numero di versione del modello. Ad esempio,code-gecko@002
è il nome della seconda versione della versione stabile del modello di completamento del codice. - In Prompt, inserisci un prompt per il completamento del codice.
- Modifica Temperatura e Limite di token per sperimentare il loro impatto sulla risposta. Per ulteriori informazioni, consulta Parametri del modello di completamento del codice.
- Fai clic su Invia per generare una risposta.
- Fai clic su Salva se vuoi salvare un prompt.
- Fai clic su Visualizza codice per visualizzare il codice Python o un comando curl per il prompt.
Comando curl di esempio
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
}
}"
Per scoprire di più sulla progettazione dei prompt per il completamento del codice, consulta Creare prompt per il completamento del codice.
Risposta in streaming dal modello di codice
Per visualizzare richieste e risposte di codice campione che utilizzano l'API REST, consulta Esempi di utilizzo dell'API REST per lo streaming.
Per visualizzare richieste e risposte di codice campione che utilizzano l'SDK Vertex AI per Python, consulta Esempi di utilizzo dell'SDK Vertex AI per Python per lo streaming.
Passaggi successivi
- Scopri come creare prompt di completamento del codice.
- Scopri come creare prompt per la generazione di codice.
- Scopri le best practice per l'AI responsabile e i filtri di sicurezza di Vertex AI.