En esta sección se describe cómo usar las sesiones de Vertex AI Agent Engine para gestionar sesiones mediante la consola de Google Cloud o llamadas directas a la API. Puedes usar la consola o las llamadas directas a la API si no quieres usar un agente del ADK para gestionar las sesiones. Google Cloud
Para gestionar sesiones con el agente ADK, consulta Gestionar sesiones con Agent Development Kit.
Crear una instancia de Vertex AI Agent Engine
Para acceder a las sesiones de Vertex AI Agent Engine, primero debes usar una instancia de Vertex AI Agent Engine. No es necesario implementar ningún código para empezar a usar Sesiones. Si ya has usado Agent Engine, crear una instancia de Vertex AI Agent Engine solo te llevará unos segundos y no tendrás que desplegar código. Puede que tarde más si es la primera vez que usas Agent Engine.
Si no tienes una instancia de Vertex AI Agent Engine, crea una con el siguiente código:
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)
Haz los cambios siguientes:
- PROJECT_ID: tu ID de proyecto.
- LOCATION: tu región. Consulta las regiones admitidas para Sesiones.
Mostrar sesiones
Lista las sesiones asociadas a tu instancia de Vertex AI Agent Engine.
Google Cloud console
En el caso de los agentes desplegados, puedes usar la consola para enumerar las sesiones asociadas a tu agente: Google Cloud
- En la Google Cloud consola, ve a la página Vertex AI Agent Engine.
Las instancias de Agent Engine que forman parte del proyecto seleccionado aparecen en la lista. Puede usar el campo Filtrar para filtrar la lista por la columna que haya especificado.
Haz clic en el nombre de tu instancia de Agent Engine.
Haz clic en la pestaña Sesiones. Se muestra una lista de sesiones por ID.
SDK de Vertex AI para 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: elige tu propio ID de usuario (128 caracteres como máximo).
Por ejemplo,
user-123.
REST
Antes de usar los datos de la solicitud, haz las siguientes sustituciones:
- PROJECT_ID: tu ID de proyecto.
- LOCATION: la región en la que has creado tu instancia de Agent Engine.
- AGENT_ENGINE_ID: ID de recurso de tu instancia de Agent Engine.
Método HTTP y URL:
GET https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/reasoningEngines/AGENT_ENGINE_ID/sessions
Para enviar tu solicitud, elige una de estas opciones:
curl
Ejecuta el comando siguiente:
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
Ejecuta el comando siguiente:
$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
Debería aparecer una lista de sesiones.
Si quieres enumerar las sesiones de un usuario concreto, puedes añadir el parámetro de consulta ?filter=user_id=\"USER_ID\", donde USER_ID es el ID del usuario cuyas sesiones quieres consultar.
Crear una sesión
Crea una sesión asociada a un ID de usuario.
Google Cloud console
En el caso de los agentes implementados, puedes usar la consola Google Cloud para crear sesiones:
- En la Google Cloud consola, ve a la página Vertex AI Agent Engine.
Las instancias de Agent Engine que forman parte del proyecto seleccionado aparecen en la lista. Puede usar el campo Filtrar para filtrar la lista por la columna que haya especificado.
Haz clic en el nombre de tu instancia de Agent Engine.
Haz clic en la pestaña Playground.
Haz clic en Nueva sesión para crear una sesión.
SDK de Vertex AI para Python
session = client.agent_engines.sessions.create(
name=agent_engine.api_resource.name, # Required
user_id=USER_ID, # Required
)
donde USER_ID es el ID de usuario que has definido. Por ejemplo, user-123.
REST
Antes de usar los datos de la solicitud, haz las siguientes sustituciones:
- PROJECT_ID: tu ID de proyecto.
- LOCATION: la región en la que has creado tu instancia de Agent Engine.
- AGENT_ENGINE_ID: ID de recurso de tu instancia de Agent Engine.
- USER_ID: el ID de usuario que ha definido. Por ejemplo,
sessions-agent.
Método HTTP y URL:
POST https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/reasoningEngines/AGENT_ENGINE_ID/sessions
Cuerpo JSON de la solicitud:
{
"userId": USER_ID
}
Para enviar tu solicitud, elige una de estas opciones:
curl
Guarda el cuerpo de la solicitud en un archivo llamado request.json
y ejecuta el siguiente comando:
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
Guarda el cuerpo de la solicitud en un archivo llamado request.json
y ejecuta el siguiente comando:
$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
Deberías recibir una operación de larga duración que puedes consultar para comprobar el estado de creación de tu sesión.
Obtener una sesión
Obtiene una sesión específica asociada a tu instancia de Vertex AI Agent Engine.
Google Cloud console
En el caso de los agentes implementados, puedes usar la consola Google Cloud para crear sesiones:
- En la Google Cloud consola, ve a la página Vertex AI Agent Engine.
Las instancias de Agent Engine que forman parte del proyecto seleccionado aparecen en la lista. Puede usar el campo Filtrar para filtrar la lista por la columna que haya especificado.
Haz clic en el nombre de tu instancia de Agent Engine.
Haz clic en la pestaña Playground.
Haz clic en la pestaña Sesiones. Se muestra una lista de sesiones por ID.
Haz clic en la sesión que quieras ver con más detalle.
SDK de Vertex AI para 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
Antes de usar los datos de la solicitud, haz las siguientes sustituciones:
- PROJECT_ID: tu ID de proyecto.
- LOCATION: la región en la que has creado tu instancia de Agent Engine.
- AGENT_ENGINE_ID: ID de recurso de tu instancia de Agent Engine.
- SESSION_ID: el ID de recurso de la sesión que quieres recuperar. Puedes obtener el ID de sesión de la respuesta que recibiste cuando creaste la sesión.
Método HTTP y URL:
GET https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/reasoningEngines/AGENT_ENGINE_ID/sessions/SESSION_ID
Para enviar tu solicitud, elige una de estas opciones:
curl
Ejecuta el comando siguiente:
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
Ejecuta el comando siguiente:
$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
En la respuesta, deberías ver información sobre tu sesión.
Eliminar una sesión
Elimina una sesión asociada a tu instancia de Vertex AI Agent Engine.
Google Cloud console
En el caso de los agentes implementados, puedes usar la consola Google Cloud para eliminar las sesiones asociadas a tu agente:
- En la Google Cloud consola, ve a la página Vertex AI Agent Engine.
Las instancias de Agent Engine que forman parte del proyecto seleccionado aparecen en la lista. Puede usar el campo Filtrar para filtrar la lista por la columna que haya especificado.
Haz clic en el nombre de tu instancia de Agent Engine.
Haz clic en la pestaña Sesiones. Se muestra una lista de sesiones por ID.
Haz clic en el menú más acciones () de la sesión que quieras eliminar.
Haz clic en Eliminar.
Haz clic en Eliminar sesión.
SDK de Vertex AI para Python
client.agent_engines.sessions.delete(name=session.name)
REST
Antes de usar los datos de la solicitud, haz las siguientes sustituciones:
- PROJECT_ID: tu ID de proyecto.
- LOCATION: la región en la que quieres crear la instancia de Example Store.
- AGENT_ENGINE_ID: El ID de recurso de tu instancia de Agent Engine.
- SESSION_ID: el ID de recurso de la sesión que quieres recuperar.
Método HTTP y URL:
DELETE https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/reasoningEngines/AGENT_ENGINE_ID/sessions/SESSION_ID
Para enviar tu solicitud, elige una de estas opciones:
curl
Ejecuta el comando siguiente:
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
Ejecuta el comando siguiente:
$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
Deberías recibir un código de estado que indique que la operación se ha realizado correctamente (2xx) y una respuesta vacía.
Mostrar eventos de una sesión
Lista los eventos de una sesión asociada a tu instancia de Vertex AI Agent Engine.
Google Cloud console
En el caso de los agentes implementados, puedes usar la consola Google Cloud para crear sesiones:
- En la Google Cloud consola, ve a la página Vertex AI Agent Engine.
Las instancias de Agent Engine que forman parte del proyecto seleccionado aparecen en la lista. Puede usar el campo Filtrar para filtrar la lista por la columna que haya especificado.
Haz clic en el nombre de tu instancia de Agent Engine.
Haz clic en la pestaña Playground.
Haz clic en la pestaña Sesiones. Se muestra una lista de sesiones por ID.
Haz clic en la sesión que quieras ver con más detalle.
Haga clic en la pestaña Eventos para ver los eventos asociados a la sesión.
SDK de Vertex AI para Python
for session_event in client.agent_engines.list_session_events(
name=session.name,
):
print(session_event)
REST
Antes de usar los datos de la solicitud, haz las siguientes sustituciones:
- PROJECT_ID: tu ID de proyecto.
- LOCATION: la región en la que has creado tu instancia de Agent Engine.
- AGENT_ENGINE_ID: ID de recurso de tu instancia de Agent Engine.
- SESSION_ID: el ID de recurso de la sesión que quieres recuperar.
Método HTTP y URL:
GET https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/reasoningEngines/AGENT_ENGINE_ID/sessions/SESSION_ID/events
Para enviar tu solicitud, elige una de estas opciones:
curl
Ejecuta el comando siguiente:
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
Ejecuta el comando siguiente:
$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
En la respuesta, debería ver una lista de eventos asociados a su sesión.
Añadir un evento a una sesión
Añade un evento a una sesión asociada a una instancia de Vertex AI Agent Engine.
Google Cloud console
En el caso de los agentes implementados, puedes usar la Google Cloud consola para crear sesiones:
- En la Google Cloud consola, ve a la página Vertex AI Agent Engine.
Las instancias de Agent Engine que forman parte del proyecto seleccionado aparecen en la lista. Puede usar el campo Filtrar para filtrar la lista por la columna que haya especificado.
Haz clic en el nombre de tu instancia de Agent Engine.
Haz clic en la pestaña Playground.
Haz clic en la pestaña Sesiones. Se muestra una lista de sesiones por ID.
Haz clic en la sesión que quieras ver con más detalle.
Haga clic en la pestaña Eventos para ver los eventos asociados a la sesión.
Escribe un mensaje y pulsa Intro para añadir un evento a la sesión.
SDK de Vertex AI para 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
Antes de usar los datos de la solicitud, haz las siguientes sustituciones:
- PROJECT_ID: tu ID de proyecto.
- LOCATION: la región en la que has creado tu instancia de Agent Engine.
- AGENT_ENGINE_ID: El ID de recurso de tu instancia de Agent Engine.
- SESSION_ID: el ID de recurso de la sesión a la que quieres añadir eventos.
- AUTHOR: el autor del evento. Puede ser
'user'o el nombre de un agente. - INVOCATION_ID: identificador de una invocación.
- TIMESTAMP: marca de tiempo del evento.
Método HTTP y URL:
POST https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/reasoningEngines/AGENT_ENGINE_ID/sessions/SESSION_ID:appendEvent
Cuerpo JSON de la solicitud:
{
"author": AUTHOR,
"invocationId": INVOCATION_ID,
"timestamp": TIMESTAMP,
}
Para enviar tu solicitud, elige una de estas opciones:
curl
Guarda el cuerpo de la solicitud en un archivo llamado request.json
y ejecuta el siguiente comando:
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
Guarda el cuerpo de la solicitud en un archivo llamado request.json
y ejecuta el siguiente comando:
$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
Deberías recibir un código de estado que indique que la operación se ha realizado correctamente (2xx) y una respuesta vacía.
Limpieza
Para eliminar todos los recursos usados en este proyecto, puedes eliminar la instancia de Vertex AI Agent Engine junto con sus recursos secundarios:
agent_engine.delete(force=True)