La división del tráfico te permite dividir las conversaciones de los usuarios en diferentes versiones de tu aplicación de agente de CX Agent Studio dentro de un solo canal de implementación. Puedes usar la división del tráfico para realizar pruebas A/B o implementar actualizaciones de forma segura en etapas mediante el enrutamiento de un porcentaje especificado del tráfico a cada versión.
En esta guía, se describe cómo configurar la división del tráfico con la consola de CX Agent Studio o la API de REST de CX Agent Studio y analizar el rendimiento de la versión con los registros de BigQuery una vez que tu experimento reciba tráfico de clientes en vivo.
Descripción general del flujo de trabajo
- Crea versiones de la aplicación: Crea instantáneas inmutables (versiones) de tu aplicación de agente para compararlas.
- Configura la división del tráfico en un canal de implementación: Asigna porcentajes de tráfico en varias versiones de la aplicación con la consola o la API de REST.
- Analiza el rendimiento en BigQuery: Una vez que tu experimento esté en ejecución y haya procesado suficiente tráfico de clientes, consulta los registros de conversaciones exportados en BigQuery para evaluar las métricas en todas las versiones.
Configura la división del tráfico
Puedes configurar las asignaciones de tráfico en diferentes versiones de la aplicación con la consola o la API de REST. Cada asignación debe apuntar a una versión existente de la aplicación de agente , y la suma de todos los porcentajes de tráfico en la implementación debe ser igual a 100.
Usa la consola
Para configurar la división del tráfico en la consola del compilador de agentes, haz lo siguiente:
- Abre la consola de CX Agent Studio y selecciona tu aplicación de agente.
- Haz clic en la pestaña Implementar en la parte superior de la página.
- Selecciona un canal de implementación existente o haz clic en Canal nuevo para crear uno (por ejemplo, acceso a la API).
- En Versión del agente, haz clic en Agregar versión y selecciona las versiones de la aplicación de agente que deseas incluir en el experimento.
- Ingresa el Porcentaje de tráfico para cada versión (por ejemplo,
90% para la versión A y10% para la versión B). Asegúrate de que los porcentajes sumen 100%. - Haz clic en Crear canal para aplicar la configuración.
Usar la API de REST
Puedes configurar la división del tráfico de forma programática llamando al patch método en tu recurso de implementación y definiendo experimentConfig.versionRelease.trafficAllocations.
Antes de llamar a la API, asegúrate de tener los siguientes identificadores:
PROJECT_ID: Es el ID del Google Cloud proyecto de.LOCATION_ID: Es la región de tu aplicación de agente (por ejemplo,us-east1).APP_ID: Es el ID de tu aplicación de agente.DEPLOYMENT_ID: Es el ID del canal de implementación.VERSION_A_UUID/VERSION_B_UUID: Son los identificadores únicos de las versiones de tu aplicación.
Envía una solicitud PATCH para actualizar la configuración de la implementación:
curl -X PATCH \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
"https://ces.googleapis.com/v1beta/projects/PROJECT_ID/locations/LOCATION_ID/apps/APP_ID/deployments/DEPLOYMENT_ID?updateMask=experimentConfig" \
-d '{
"experimentConfig": {
"versionRelease": {
"trafficAllocations": [
{
"appVersion": "projects/PROJECT_ID/locations/LOCATION_ID/apps/APP_ID/versions/VERSION_A_UUID",
"trafficPercentage": 90
},
{
"appVersion": "projects/PROJECT_ID/locations/LOCATION_ID/apps/APP_ID/versions/VERSION_B_UUID",
"trafficPercentage": 10
}
]
}
}
}'
Verifica la configuración de la implementación
Para verificar que tus asignaciones de tráfico estén activas, haz lo siguiente:
Usa la consola
- Abre la página Implementar en la consola de CX Agent Studio.
- Ubica tu canal en la lista de implementaciones.
- Verifica que la columna Versión muestre la división configurada (por ejemplo,
Version A (90%), Version B (10%)).
Usar la API de REST
Envía una solicitud GET para recuperar los detalles del recurso de implementación:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://ces.googleapis.com/v1beta/projects/PROJECT_ID/locations/LOCATION_ID/apps/APP_ID/deployments/DEPLOYMENT_ID"
El JSON de respuesta incluye el experimentConfig activo, que confirma los porcentajes de tráfico asignados a cada versión y muestra "state": "RUNNING" dentro de versionRelease.
Analiza el rendimiento de la versión en BigQuery
Una vez que tu experimento de división del tráfico esté en ejecución y haya procesado suficiente volumen de conversaciones de clientes en vivo, puedes analizar el rendimiento de la versión con los registros de BigQuery.
Antes de analizar los registros, asegúrate de haber habilitado la exportación de BigQuery para tu aplicación. Para ello, navega en la consola de CX Agent Studio a Compilar > Configuración > Avanzado y activa Exportar registros a BigQuery. Cuando la exportación está habilitada, los registros de interacción, incluido el app_version_id específico que controla cada turno, se registran en tu conjunto de datos de BigQuery.
Puedes ejecutar consultas de SQL para evaluar y comparar las respuestas generadas por cada versión durante el período de división del tráfico.
- En la Google Cloud consola de, ve a BigQuery.
Ejecuta la consulta de ejemplo en la tabla de registros de interacción y sustituye los detalles de tu proyecto y el período de evaluación (
START_TIMEyEND_TIME):SELECT app_version_id, tool_call.name AS tool_name, tool_call.output AS tool_result_message, COUNT(1) AS count FROM `PROJECT_ID.conversational_agents_logs.v1beta_logs`, UNNEST(json_payload.query_result.generations) AS generation, UNNEST(generation.tool_calls) AS tool_call WHERE json_payload.resource = 'projects/PROJECT_ID/locations/LOCATION_ID/apps/APP_ID' AND timestamp >= TIMESTAMP('START_TIME_YYYY-MM-DD HH:MM:SS', 'TIMEZONE') AND timestamp <= TIMESTAMP('END_TIME_YYYY-MM-DD HH:MM:SS', 'TIMEZONE') GROUP BY app_version_id, tool_name, tool_result_message ORDER BY app_version_id, count DESCEvalúa las métricas:
- Identifica las versiones: Asigna las filas de salida a los UUID de tu versión específica o a las ejecuciones de herramientas (por ejemplo, compara las respuestas de la versión A con las de la versión B).
- Calcula la tasa de éxito: Compara la proporción de resultados con errores o respuestas obsoletas en las dos versiones para decidir si promover la versión candidata al 100% del tráfico.