Cette page présente un ensemble unifié de fonctionnalités permettant de définir, d'enregistrer, de récupérer et de gérer des requêtes dans votre projet Google Cloud à l'aide du module de gestion des requêtes du SDK Vertex AI.
Présentation
Vertex AI propose des outils pour gérer les modèles et les données de prompt. Les modèles de prompt peuvent être gérés par version et utilisés avec des modèles génératifs sur Vertex AI. Chaque requête peut être assemblée et gérée par version dans Vertex AI Studio ou le SDK Vertex AI.
La gestion des requêtes dans le SDK Vertex AI inclut une assistance complète pour les entreprises, y compris la prise en charge des clés de chiffrement gérées par le client (CMEK) et de VPC Service Controls (VPCSC).
Fonctionnalités de gestion des requêtes
Pour utiliser l'une des fonctionnalités d'IA générative du SDK Vertex AI, procédez comme suit :
Installez la dernière version du SDK Vertex AI.
pip install --upgrade google-cloud-aiplatform
Créez un client d'IA générative à l'aide de l'exemple de code Python suivant :
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')
Une fois que vous avez créé un client d'IA générative, vous pouvez utiliser l'une des fonctionnalités de gestion des requêtes suivantes dans le SDK Vertex AI :
- Créez une invite locale.
- Enregistrez une requête dans un projet Google Cloud .
- Obtenez un prompt enregistré.
- Lister les versions des prompts
- Supprimer une requête
- Restaurer une version d'un prompt
Créer un prompt local
Cette section fournit un exemple de définition d'une variable types.Prompt
à utiliser sur cette page.
La classe Prompt
permet de définir, d'assembler et d'utiliser des requêtes. L'attribut prompt_data
est défini pour la classe Prompt
et inclut les éléments suivants :
Attribut | |
---|---|
|
Obligatoire : nom du modèle. |
|
Obligatoire : contenu de la conversation avec le modèle. Seules les requêtes ponctuelles sont acceptées. |
|
Facultatif : Configuration de la génération |
|
Facultatif : Cette configuration est partagée pour tous les outils fournis dans la requête. |
|
Facultatif : liste de |
|
Facultatif : Paramètres de requête pour bloquer le contenu non sécurisé, appliqués sur |
|
Facultatif : Instructions système fournies par l'utilisateur pour le modèle. |
|
Facultatif : Si votre requête contient une variable de modèle, indiquez les valeurs à utiliser pour cette variable. Par exemple, si le contenu de votre texte d'invite est "Bonjour, {name}". Votre liste de variables doit inclure un dictionnaire de toutes les valeurs possibles pour la variable "{name}". Exemple : "variables": [ {"name": {"text": "Alice"}}, {"name": {"text": "Bob"}}, ], |
Cet exemple de code montre comment définir une variable 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",
),
)
Enregistrer une requête dans un projet Google Cloud
Cette section présente les paramètres et un exemple de la façon d'enregistrer un prompt dans un projet Google Cloud .
Paramètres
Ce tableau décrit les paramètres utilisés par la méthode create
:
Paramètres | |
---|---|
|
Données pour une requête spécifique. |
|
Facultatif : Objet |
Ce tableau décrit les paramètres utilisés par la méthode create_version
:
Paramètres | |
---|---|
|
Obligatoire : données pour une requête spécifique. |
|
Facultatif : Un objet |
Un Prompt
est renvoyé par la méthode create_version
.
Exemple
Pour enregistrer un prompt dans un projet Google Cloud , utilisez les méthodes client.prompts.create
et client.prompts.create_version
.
La méthode client.prompts.create
crée une ressource d'invite dans un projetGoogle Cloud . La méthode client.prompts.create_version
crée une version du prompt dans cette ressource, à laquelle vous pouvez accéder dans la consoleGoogle Cloud .
La méthode client.prompts.create
prend un objet Prompt
comme entrée et crée un prompt dans le projet Google Cloud . La méthode client.prompts.create_version
nécessite également de transmettre prompt_id
, qui correspond à l'ID de la ressource d'invite sous laquelle créer la version. Un nouvel objet Prompt
est renvoyé et associé au projet Google Cloud . Toutes les modifications apportées à un objet Prompt
sont locales jusqu'à l'appel de create
ou create_version
.
L'exemple de code suivant montre comment enregistrer un prompt et une version de 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)
Obtenir un prompt enregistré
Cette section présente les paramètres et un exemple pour obtenir un prompt et une version de prompt.
Il existe deux méthodes : client.prompts.get
et client.prompts.get_version
.
Paramètres
Ce tableau décrit les paramètres utilisés par la méthode client.prompts.get
:
Paramètres | |
---|---|
|
Obligatoire : ID de la requête à récupérer. |
|
Facultatif : Objet |
Ce tableau décrit les paramètres utilisés par la méthode client.prompts.get_version
:
Paramètres | |
---|---|
|
Obligatoire : ID de la requête à récupérer. |
|
Obligatoire : ID de la version d'invite que vous souhaitez récupérer. |
|
Facultatif : Objet |
Un Prompt
est renvoyé par les méthodes get
et get_version
.
Exemples
Pour obtenir (charger) un prompt enregistré dans le projet Google Cloud , utilisez la méthode client.prompts.get
. Cette méthode utilise l'ID du prompt en entrée et renvoie l'objet Prompt
correspondant. Cet exemple de code montre comment charger un prompt enregistré :
# Get prompt
retrieved_prompt = client.prompts.get(prompt_id=prompt_resource.prompt_id)
L'exemple de code suivant vous montre comment obtenir une version d'un prompt.
retrieved_prompt_version = client.prompts.get_version(prompt_id='your-prompt-id', version_id='your-prompt-version-id')
Le code suivant montre comment transformer votre requête pour appeler generate_content
dans le SDK d'IA générative.
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(),
)
Lister les prompts et les versions
Cette section présente les paramètres et un exemple pour lister les requêtes et les versions de requêtes.
Il existe deux méthodes : client.prompts.list
et client.prompts.list_versions
.
Paramètres
Ce tableau décrit les paramètres utilisés par la méthode list
:
Paramètres | |
---|---|
|
Facultatif : Objet |
Ce tableau décrit les paramètres utilisés par la méthode list_versions
:
Paramètres | |
---|---|
|
Obligatoire : ID de l'invite pour laquelle lister les versions. |
|
Facultatif : Objet |
Les méthodes list
et list_versions
renvoient un Iterator
d'objets types.PromptRef
. L'PromptRef
contient une référence à une invite.
Exemple
Pour afficher l'ID et le modèle de tous les prompts enregistrés dans votre projet Google Cloud , utilisez la méthode list
.
L'exemple de code suivant montre comment récupérer un PromptRef
pour tous les prompts enregistrés dans le projet actuel :
prompt_refs = list(client.prompts.list())
# Get a prompt from the list
prompt1 = client.prompts.get(prompt_id=prompt_refs[0].prompt_id)
L'exemple de code suivant montre comment lister les ID de prompt et de version pour toutes les versions de prompt enregistrées dans le prompt :
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
)
Supprimer un prompt
Cette section présente les paramètres et un exemple de suppression d'un prompt.
Il existe deux méthodes : delete
et delete_version
.
Paramètres
Ce tableau décrit les paramètres utilisés par la méthode delete
:
Paramètres | |
---|---|
|
ID de la requête à supprimer. |
|
Facultatif : Objet |
Ce tableau décrit les paramètres utilisés par la méthode delete_version
:
Paramètres | |
---|---|
|
ID de l'invite à partir de laquelle supprimer une version. |
|
Version de l'invite à supprimer. |
|
Facultatif : Objet |
Exemples
Pour supprimer un prompt et toutes ses versions, utilisez la méthode delete
.
client.prompts.delete(prompt_id=retrieved_prompt.prompt_id)
Pour supprimer une version spécifique d'une ressource de prompt, utilisez la méthode delete_version
.
client.prompts.delete_version(prompt_id=retrieved_prompt.prompt_id, version_id='your-version-id')
Restaurer une version du prompt
Cette section présente les paramètres et un exemple de restauration d'une version de requête.
Paramètres
Ce tableau décrit les paramètres utilisés par la méthode restore_version
:
Paramètres | |
---|---|
|
ID d'une requête spécifique. |
|
Version du prompt à restaurer. |
|
Configuration pour restaurer une version de requête. |
Un objet Prompt
est renvoyé par la méthode restore_version
.
Exemple
Une ressource de prompt contient également un historique des versions qui stocke les versions précédentes enregistrées du prompt. Vous pouvez utiliser la méthode restore_version()
pour restaurer une ancienne version en tant que dernière version du prompt. Cela renvoie un objet Prompt
.
# Restore to prompt version id 1
restored_prompt = client.prompts.restore_version(prompt_id=retrieved_prompt.prompt_id, version_id='1')
Étapes suivantes
- Pour en savoir plus sur les requêtes compatibles avec l'appel de fonction, consultez Présentation de l'appel de fonction.