Questa pagina introduce un insieme unificato di funzionalità per definire, salvare, recuperare e gestire i prompt all'interno del tuo progetto Google Cloud utilizzando il modulo di gestione dei prompt dell'SDK Vertex AI.
Panoramica
Vertex AI offre strumenti per gestire i modelli di prompt e i dati dei prompt. I modelli di prompt possono essere sottoposti al controllo delle versioni e utilizzati con i modelli generativi su Vertex AI. Ogni prompt può essere assemblato e sottoposto al controllo delle versioni in Vertex AI Studio o nell'SDK Vertex AI.
La gestione dei prompt nell'SDK Vertex AI include il supporto aziendale completo, incluso il supporto per le chiavi di crittografia gestite dal cliente (CMEK) e i Controlli di servizio VPC (VPCSC).
Funzionalità di gestione dei prompt
Per utilizzare una delle funzionalità di AI generativa dell'SDK Vertex AI, procedi nel seguente modo:
Installa l'ultima versione dell'SDK Vertex AI.
pip install --upgrade google-cloud-aiplatform
Crea un client di AI generativa utilizzando il seguente esempio di codice Python:
import vertexai from vertexai import types # Instantiate GenAI client from Vertex SDK # Replace with your project ID and location client = vertexai.Client(project='my-project', location='my-location')
Dopo aver creato un client di AI generativa, puoi utilizzare una delle seguenti funzionalità di gestione dei prompt nell'SDK Vertex AI:
- Crea un prompt locale.
- Salvare un prompt in un Google Cloud progetto.
- Ottenere un prompt salvato.
- Elenca prompt e versioni.
- Eliminare un prompt.
- Ripristinare una versione del prompt.
Creare un prompt locale
Questa sezione fornisce un esempio di come definire una variabile types.Prompt
da utilizzare in questa pagina.
La classe Prompt
viene utilizzata per definire, assemblare e utilizzare i prompt. L'attributo prompt_data
è definito per la classe Prompt
e include quanto segue:
Attributo | |
---|---|
|
Obbligatorio: il nome del modello. |
|
Obbligatorio: i contenuti della conversazione con il modello. Sono supportati solo i prompt a un solo turno. |
|
(Facoltativo) Configurazione della generazione |
|
(Facoltativo) Questa configurazione è condivisa per tutti gli strumenti forniti nella richiesta. |
|
(Facoltativo) Un elenco di |
|
(Facoltativo) Le impostazioni delle richieste per il blocco di contenuti non sicuri, che vengono applicate su |
|
(Facoltativo) Le istruzioni di sistema fornite dall'utente per il modello. |
|
(Facoltativo) Se il prompt contiene una variabile modello, fornisci i valori da utilizzare per quella variabile. Ad esempio, se i contenuti del testo del prompt sono "Ciao, {name}". L'elenco delle variabili deve includere un dizionario di tutti i valori possibili per la variabile "{name}". Esempio: "variables": [ {"name": {"text": "Alice"}}, {"name": {"text": "Bob"}}, ], |
Questo esempio di codice mostra come definire una variabile types.Prompt
.
import vertexai
from vertexai import types
from google.genai import types
prompt = types.Prompt(
prompt_data=types.PromptData(
contents=[genai_types.Content(parts=[genai_types.Part(text="Hello, {name}! How are you?")])],
variables=[
{"name": genai_types.Part(text="Alice")},
{"name": genai_types.Part(text="Bob")},
],
model="your-model",
),
)
Salvare un prompt in un progetto Google Cloud
Questa sezione presenta i parametri e un esempio di come salvare un prompt in un progetto Google Cloud .
Parametri
Questa tabella descrive i parametri utilizzati dal metodo create
:
Parametri | |
---|---|
|
I dati per un prompt specifico. |
|
(Facoltativo) Un oggetto |
Questa tabella descrive i parametri utilizzati dal metodo create_version
:
Parametri | |
---|---|
|
Obbligatorio: i dati per un prompt specifico. |
|
(Facoltativo) Un oggetto |
Il metodo create_version
restituisce un Prompt
.
Esempio
Per salvare un prompt in un progetto Google Cloud , utilizza i metodi client.prompts.create
e client.prompts.create_version
.
Il metodo client.prompts.create
crea una risorsa di prompt in un progettoGoogle Cloud . Il metodo client.prompts.create_version
crea una
versione del prompt all'interno della risorsa e puoi accedere alla risorsa nella
consoleGoogle Cloud .
Il metodo client.prompts.create
accetta un oggetto Prompt
come input e crea
un prompt nel progetto Google Cloud . Il metodo client.prompts.create_version
richiede anche il passaggio di prompt_id
, ovvero l'ID della risorsa
prompt in cui creare la versione. Viene restituito un nuovo oggetto Prompt
, che
è associato al progetto Google Cloud . Gli aggiornamenti apportati a un oggetto Prompt
sono locali fino a quando non viene chiamato create
o create_version
.
Il seguente esempio di codice mostra come salvare un prompt e una versione del prompt:
# Save `Prompt` to a Google Cloud project.
# Returns a new `Prompt` object associated with the saved prompt resource.
prompt_resource = client.prompts.create(prompt=prompt)
prompt_version_resource = client.prompts.create_version(prompt=prompt, prompt_id=prompt_resource.prompt_id)
Recuperare un prompt salvato
Questa sezione presenta i parametri e un esempio di come ottenere un prompt e una versione del prompt.
Esistono due metodi: client.prompts.get
e client.prompts.get_version
.
Parametri
Questa tabella descrive i parametri utilizzati dal metodo client.prompts.get
:
Parametri | |
---|---|
|
Obbligatorio: l'ID del prompt da recuperare. |
|
(Facoltativo) Un oggetto |
Questa tabella descrive i parametri utilizzati dal metodo client.prompts.get_version
:
Parametri | |
---|---|
|
Obbligatorio: l'ID del prompt da recuperare. |
|
Obbligatorio: l'ID della versione del prompt che vuoi recuperare. |
|
(Facoltativo) Un oggetto |
Un Prompt
viene restituito dai metodi get
e get_version
.
Esempi
Per ottenere (caricare) un prompt salvato nel progetto Google Cloud , utilizza il metodo client.prompts.get
. Questo metodo accetta l'ID prompt come input
e restituisce l'oggetto Prompt
corrispondente. Questo esempio di codice mostra come
caricare un prompt salvato:
# Get prompt
retrieved_prompt = client.prompts.get(prompt_id=prompt_resource.prompt_id)
Il seguente esempio di codice mostra come ottenere una versione di un prompt.
retrieved_prompt_version = client.prompts.get_version(prompt_id='your-prompt-id', version_id='your-prompt-version-id')
Il seguente codice mostra come trasformare il prompt per chiamare
generate_content
nell'SDK AI generativa.
from google import genai
from google.genai import types as genai_types
genai_client = genai.Client(vertexai=True, project="my-project", location="my-location")
response = genai_client.models.generate_content(
model=retrieved_prompt.prompt_data.model,
contents=retrieved_prompt.assemble_contents(),
)
Elenco di prompt e versioni
Questa sezione presenta i parametri e un esempio di come elencare i prompt e le versioni dei prompt.
Esistono due metodi: client.prompts.list
e client.prompts.list_versions
.
Parametri
Questa tabella descrive i parametri utilizzati dal metodo list
:
Parametri | |
---|---|
|
(Facoltativo) Un oggetto |
Questa tabella descrive i parametri utilizzati dal metodo list_versions
:
Parametri | |
---|---|
|
Obbligatorio: l'ID del prompt per cui elencare le versioni. |
|
(Facoltativo) Un oggetto |
I metodi list
e list_versions
restituiscono un Iterator
di oggetti types.PromptRef
. PromptRef
contiene un riferimento a un prompt.
Esempio
Per visualizzare l'ID prompt e il modello per tutti i prompt salvati nel tuo progetto Google Cloud , utilizza il metodo list
.
Il seguente esempio di codice mostra come recuperare un PromptRef
per tutti
i prompt salvati nel progetto corrente:
prompt_refs = list(client.prompts.list())
# Get a prompt from the list
prompt1 = client.prompts.get(prompt_id=prompt_refs[0].prompt_id)
Il seguente esempio di codice mostra come elencare gli ID prompt e versione per tutte le versioni del prompt salvate al suo interno:
prompt_versions_metadata = client.prompts.list_versions(prompt_id="123456789")
# Get a specific prompt version from the versions metadata list
prompt1 = client.prompts.get_version(
prompt_id=prompt_versions_metadata[0].prompt_id,
version_id=prompt_versions_metadata[0].version_id
)
Eliminare un prompt
Questa sezione presenta i parametri e un esempio di come eliminare un prompt.
Esistono due metodi: delete
e delete_version
.
Parametri
Questa tabella descrive i parametri utilizzati dal metodo delete
:
Parametri | |
---|---|
|
L'ID del prompt da eliminare. |
|
(Facoltativo) Un oggetto |
Questa tabella descrive i parametri utilizzati dal metodo delete_version
:
Parametri | |
---|---|
|
L'ID del prompt da cui eliminare una versione. |
|
La versione della richiesta di eliminazione. |
|
(Facoltativo) Un oggetto |
Esempi
Per eliminare un prompt e tutte le relative versioni, utilizza il metodo delete
.
client.prompts.delete(prompt_id=retrieved_prompt.prompt_id)
Per eliminare una versione specifica da una risorsa di prompt, utilizza il metodo delete_version
.
client.prompts.delete_version(prompt_id=retrieved_prompt.prompt_id, version_id='your-version-id')
Ripristinare una versione del prompt
Questa sezione presenta i parametri e un esempio di come ripristinare una versione del prompt.
Parametri
Questa tabella descrive i parametri utilizzati dal metodo restore_version
:
Parametri | |
---|---|
|
L'ID di un prompt specifico. |
|
La versione del prompt da ripristinare. |
|
La configurazione per il ripristino di una versione del prompt. |
Un oggetto Prompt
viene restituito dal metodo restore_version
.
Esempio
Una risorsa prompt contiene anche la cronologia delle versioni, che memorizza le versioni salvate
precedenti del prompt. Puoi utilizzare il metodo restore_version()
per ripristinare una versione precedente come ultima versione del prompt. Viene restituito
un oggetto Prompt
.
# Restore to prompt version id 1
restored_prompt = client.prompts.restore_version(prompt_id=retrieved_prompt.prompt_id, version_id='1')
Passaggi successivi
- Per scoprire di più sui prompt che supportano la chiamata di funzione, consulta la Guida introduttiva alla chiamata di funzione.