Cette section explique comment utiliser les sessions Vertex AI Agent Engine pour gérer les sessions à l'aide de la console Google Cloud ou d'appels d'API directs. Vous pouvez utiliser la console Google Cloud ou des appels d'API directs si vous ne souhaitez pas utiliser d'agent ADK pour gérer les sessions.
Pour gérer les sessions à l'aide de l'agent ADK, consultez Gérer les sessions avec Agent Development Kit.
Créer une instance Vertex AI Agent Engine
Pour accéder aux sessions Vertex AI Agent Engine, vous devez d'abord utiliser une instance Vertex AI Agent Engine. Vous n'avez pas besoin de déployer de code pour commencer à utiliser Sessions. Si vous avez déjà utilisé Agent Engine, la création d'une instance Vertex AI Agent Engine ne prend que quelques secondes, sans déploiement de code. Cela peut prendre plus de temps si vous utilisez Agent Engine pour la première fois.
Si vous ne disposez pas d'instance Vertex AI Agent Engine, créez-en une à l'aide du code suivant :
import vertexai
client = vertexai.Client(
project="PROJECT_ID",
location="LOCATION"
)
# If you don't have an Agent Engine instance already, create an instance.
agent_engine = client.agent_engines.create()
# Optionally, print out the Agent Engine resource name. You will need the
# resource name to interact with Sessions later on.
print(agent_engine.api_resource.name)
Remplacez les éléments suivants :
- PROJECT_ID : ID de votre projet
- LOCATION : votre région. Consultez les régions disponibles pour les sessions.
Répertorier les sessions
Lister les sessions associées à votre instance Vertex AI Agent Engine
Console Google Cloud
Pour les agents déployés, vous pouvez utiliser la console Google Cloud pour lister les sessions associées à votre agent :
- Dans la console Google Cloud , accédez à la page Vertex AI Agent Engine.
Les instances Agent Engine faisant partie du projet sélectionné apparaissent dans la liste. Vous pouvez utiliser le champ Filtrer pour filtrer la liste en fonction de la colonne spécifiée.
Cliquez sur le nom de votre instance Agent Engine.
Cliquez sur l'onglet Sessions. Une liste des sessions s'affiche par ID.
SDK Vertex AI pour Python
for session in client.agent_engines.sessions.list(
name=agent_engine.api_resource.name, # Required
):
print(session)
# To list sessions for a specific user:
for session in client.agent_engines.sessions.list(
name=agent_engine.api_resource.name, # Required
config={"filter": "user_id=USER_ID"},
):
print(session)
- USER_ID : choisissez votre propre ID utilisateur (128 caractères maximum).
Exemple :
user-123
REST
Avant d'utiliser les données de requête, effectuez les remplacements suivants :
- PROJECT_ID : ID de votre projet
- LOCATION : région dans laquelle vous avez créé votre instance Agent Engine.
- AGENT_ENGINE_ID : ID de ressource de votre instance Agent Engine.
Méthode HTTP et URL :
GET https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/reasoningEngines/AGENT_ENGINE_ID/sessions
Pour envoyer votre requête, choisissez l'une des options suivantes :
curl
Exécutez la commande suivante :
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/reasoningEngines/AGENT_ENGINE_ID/sessions"
PowerShell
Exécutez la commande suivante :
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/reasoningEngines/AGENT_ENGINE_ID/sessions" | Select-Object -Expand Content
Une liste de sessions devrait s'afficher.
Si vous le souhaitez, vous pouvez ajouter le paramètre de requête ?filter=user_id=\"USER_ID\" pour lister les sessions d'un utilisateur spécifique, où USER_ID correspond à l'ID de l'utilisateur pour lequel vous souhaitez interroger les sessions.
Créer une session
Créez une session associée à un ID utilisateur.
Console Google Cloud
Pour les agents déployés, vous pouvez utiliser la console Google Cloud pour créer des sessions :
- Dans la console Google Cloud , accédez à la page Vertex AI Agent Engine.
Les instances Agent Engine faisant partie du projet sélectionné apparaissent dans la liste. Vous pouvez utiliser le champ Filtrer pour filtrer la liste en fonction de la colonne spécifiée.
Cliquez sur le nom de votre instance Agent Engine.
Cliquez sur l'onglet Playground.
Cliquez sur Nouvelle session pour créer une session.
SDK Vertex AI pour Python
session = client.agent_engines.sessions.create(
name=agent_engine.api_resource.name, # Required
user_id=USER_ID, # Required
)
où USER_ID correspond à l'ID utilisateur que vous avez défini. Exemple : user-123.
REST
Avant d'utiliser les données de requête, effectuez les remplacements suivants :
- PROJECT_ID : ID de votre projet
- LOCATION : région dans laquelle vous avez créé votre instance Agent Engine.
- AGENT_ENGINE_ID : ID de ressource de votre instance Agent Engine.
- USER_ID : ID utilisateur que vous avez défini. Exemple :
sessions-agent.
Méthode HTTP et URL :
POST https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/reasoningEngines/AGENT_ENGINE_ID/sessions
Corps JSON de la requête :
{
"userId": USER_ID
}
Pour envoyer votre requête, choisissez l'une des options suivantes :
curl
Enregistrez le corps de la requête dans un fichier nommé request.json, puis exécutez la commande suivante :
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/reasoningEngines/AGENT_ENGINE_ID/sessions"
PowerShell
Enregistrez le corps de la requête dans un fichier nommé request.json, puis exécutez la commande suivante :
$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/reasoningEngines/AGENT_ENGINE_ID/sessions" | Select-Object -Expand Content
Vous devriez recevoir une opération de longue durée que vous pourrez interroger pour vérifier l'état de création de votre session.
Obtenir une session
Obtenez une session spécifique associée à votre instance Vertex AI Agent Engine.
Console Google Cloud
Pour les agents déployés, vous pouvez utiliser la console Google Cloud pour créer des sessions :
- Dans la console Google Cloud , accédez à la page Vertex AI Agent Engine.
Les instances Agent Engine faisant partie du projet sélectionné apparaissent dans la liste. Vous pouvez utiliser le champ Filtrer pour filtrer la liste en fonction de la colonne spécifiée.
Cliquez sur le nom de votre instance Agent Engine.
Cliquez sur l'onglet Playground.
Cliquez sur l'onglet Sessions. Une liste des sessions s'affiche par ID.
Cliquez sur la session que vous souhaitez afficher plus en détail.
SDK Vertex AI pour Python
session = client.agent_engines.sessions.get(
name='projects/PROJECT_ID/locations/LOCATION/reasoningEngines/AGENT_ENGINE_ID/sessions/SESSION_ID', # Required
user_id=USER_ID, # Required
)
# session.name will correspond to
# 'projects/PROJECT_ID/locations/LOCATION/reasoningEngines/AGENT_ENGINE_ID/sessions/SESSION_ID'
REST
Avant d'utiliser les données de requête, effectuez les remplacements suivants :
- PROJECT_ID : ID de votre projet
- LOCATION : région dans laquelle vous avez créé votre instance Agent Engine.
- AGENT_ENGINE_ID : ID de ressource de votre instance Agent Engine.
- SESSION_ID : ID de ressource de la session que vous souhaitez récupérer. Vous pouvez obtenir l'ID de session à partir de la réponse que vous avez reçue lorsque vous avez créé la session.
Méthode HTTP et URL :
GET https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/reasoningEngines/AGENT_ENGINE_ID/sessions/SESSION_ID
Pour envoyer votre requête, choisissez l'une des options suivantes :
curl
Exécutez la commande suivante :
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/reasoningEngines/AGENT_ENGINE_ID/sessions/SESSION_ID"
PowerShell
Exécutez la commande suivante :
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/reasoningEngines/AGENT_ENGINE_ID/sessions/SESSION_ID" | Select-Object -Expand Content
Dans la réponse, vous devriez obtenir des informations sur votre session.
Supprimer une session
Supprimez une session associée à votre instance Vertex AI Agent Engine.
Console Google Cloud
Pour les agents déployés, vous pouvez utiliser la console Google Cloud pour supprimer les sessions associées à votre agent :
- Dans la console Google Cloud , accédez à la page Vertex AI Agent Engine.
Les instances Agent Engine faisant partie du projet sélectionné apparaissent dans la liste. Vous pouvez utiliser le champ Filtrer pour filtrer la liste en fonction de la colonne spécifiée.
Cliquez sur le nom de votre instance Agent Engine.
Cliquez sur l'onglet Sessions. Une liste des sessions s'affiche par ID.
Cliquez sur le menu Plus d'actions () de la session que vous souhaitez supprimer.
Cliquez sur Supprimer.
Cliquez sur Supprimer la session.
SDK Vertex AI pour Python
client.agent_engines.sessions.delete(name=session.name)
REST
Avant d'utiliser les données de requête, effectuez les remplacements suivants :
- PROJECT_ID : ID de votre projet
- LOCATION : région dans laquelle vous souhaitez créer l'instance Example Store.
- AGENT_ENGINE_ID : ID de ressource de votre instance Agent Engine.
- SESSION_ID : ID de ressource de la session que vous souhaitez récupérer.
Méthode HTTP et URL :
DELETE https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/reasoningEngines/AGENT_ENGINE_ID/sessions/SESSION_ID
Pour envoyer votre requête, choisissez l'une des options suivantes :
curl
Exécutez la commande suivante :
curl -X DELETE \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/reasoningEngines/AGENT_ENGINE_ID/sessions/SESSION_ID"
PowerShell
Exécutez la commande suivante :
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method DELETE `
-Headers $headers `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/reasoningEngines/AGENT_ENGINE_ID/sessions/SESSION_ID" | Select-Object -Expand Content
Vous devriez recevoir un code d'état indiquant le succès de l'opération (2xx), ainsi qu'une réponse vide.
Lister les événements d'une session
Lister les événements d'une session associée à votre instance Vertex AI Agent Engine.
Console Google Cloud
Pour les agents déployés, vous pouvez utiliser la console Google Cloud pour créer des sessions :
- Dans la console Google Cloud , accédez à la page Vertex AI Agent Engine.
Les instances Agent Engine faisant partie du projet sélectionné apparaissent dans la liste. Vous pouvez utiliser le champ Filtrer pour filtrer la liste en fonction de la colonne spécifiée.
Cliquez sur le nom de votre instance Agent Engine.
Cliquez sur l'onglet Playground.
Cliquez sur l'onglet Sessions. Une liste des sessions s'affiche par ID.
Cliquez sur la session que vous souhaitez afficher plus en détail.
Cliquez sur l'onglet Événements pour afficher les événements associés à la session.
SDK Vertex AI pour Python
for session_event in client.agent_engines.list_session_events(
name=session.name,
):
print(session_event)
REST
Avant d'utiliser les données de requête, effectuez les remplacements suivants :
- PROJECT_ID : ID de votre projet
- LOCATION : région dans laquelle vous avez créé votre instance Agent Engine.
- AGENT_ENGINE_ID : ID de ressource de votre instance Agent Engine.
- SESSION_ID : ID de ressource de la session que vous souhaitez récupérer.
Méthode HTTP et URL :
GET https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/reasoningEngines/AGENT_ENGINE_ID/sessions/SESSION_ID/events
Pour envoyer votre requête, choisissez l'une des options suivantes :
curl
Exécutez la commande suivante :
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/reasoningEngines/AGENT_ENGINE_ID/sessions/SESSION_ID/events"
PowerShell
Exécutez la commande suivante :
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/reasoningEngines/AGENT_ENGINE_ID/sessions/SESSION_ID/events" | Select-Object -Expand Content
Dans la réponse, vous devriez voir une liste d'événements associés à votre session.
Ajouter un événement à une session
Ajoutez un événement à une session associée à une instance Vertex AI Agent Engine.
Console Google Cloud
Pour les agents déployés, vous pouvez utiliser la console Google Cloud pour créer des sessions :
- Dans la console Google Cloud , accédez à la page Vertex AI Agent Engine.
Les instances Agent Engine faisant partie du projet sélectionné apparaissent dans la liste. Vous pouvez utiliser le champ Filtrer pour filtrer la liste en fonction de la colonne spécifiée.
Cliquez sur le nom de votre instance Agent Engine.
Cliquez sur l'onglet Playground.
Cliquez sur l'onglet Sessions. Une liste des sessions s'affiche par ID.
Cliquez sur la session que vous souhaitez afficher plus en détail.
Cliquez sur l'onglet Événements pour afficher les événements associés à la session.
Rédigez un message et appuyez sur Entrée pour ajouter un événement à la session.
SDK Vertex AI pour Python
import datetime
client.agent_engines.sessions.events.append(
name=session.name,
author="user", # Required.
invocation_id="1", # Required.
timestamp=datetime.datetime.now(tz=datetime.timezone.utc), # Required.
config={
"content": {
"role": "user",
"parts": [{"text": "hello"}]
},
},
)
REST
Avant d'utiliser les données de requête, effectuez les remplacements suivants :
- PROJECT_ID : ID de votre projet
- LOCATION : région dans laquelle vous avez créé votre instance Agent Engine.
- AGENT_ENGINE_ID : ID de ressource de votre instance Agent Engine.
- SESSION_ID : ID de ressource de la session à laquelle vous souhaitez ajouter des événements.
- AUTHOR : auteur de l'événement. Il peut s'agir de
'user'ou du nom d'un agent. - INVOCATION_ID : identifiant d'une invocation.
- TIMESTAMP : code temporel de l'événement.
Méthode HTTP et URL :
POST https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/reasoningEngines/AGENT_ENGINE_ID/sessions/SESSION_ID:appendEvent
Corps JSON de la requête :
{
"author": AUTHOR,
"invocationId": INVOCATION_ID,
"timestamp": TIMESTAMP,
}
Pour envoyer votre requête, choisissez l'une des options suivantes :
curl
Enregistrez le corps de la requête dans un fichier nommé request.json, puis exécutez la commande suivante :
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/reasoningEngines/AGENT_ENGINE_ID/sessions/SESSION_ID:appendEvent"
PowerShell
Enregistrez le corps de la requête dans un fichier nommé request.json, puis exécutez la commande suivante :
$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/reasoningEngines/AGENT_ENGINE_ID/sessions/SESSION_ID:appendEvent" | Select-Object -Expand Content
Vous devriez recevoir un code d'état indiquant le succès de l'opération (2xx), ainsi qu'une réponse vide.
Effectuer un nettoyage
Pour nettoyer toutes les ressources utilisées dans ce projet, vous pouvez supprimer l'instance Vertex AI Agent Engine ainsi que ses ressources enfants :
agent_engine.delete(force=True)