La suddivisione del traffico ti consente di dividere le conversazioni degli utenti tra diverse versioni dell'applicazione dell'agente CX Agent Studio all'interno di un singolo canale di deployment. Puoi utilizzare la suddivisione del traffico per eseguire test A/B o implementare in sicurezza gli aggiornamenti in fasi instradando una percentuale specificata di traffico a ogni versione.
Questa guida descrive come configurare la suddivisione del traffico utilizzando la console CX Agent Studio o l'API REST CX Agent Studio e come analizzare il rendimento della versione utilizzando i log di BigQuery una volta che l'esperimento riceve il traffico dei clienti live.
Panoramica del flusso di lavoro
- Crea versioni dell'applicazione: crea snapshot (versioni) immutabili dell'applicazione dell'agente da confrontare.
- Configura la suddivisione del traffico su un canale di deployment: assegna le percentuali di traffico a più versioni dell'applicazione utilizzando la console o l'API REST.
- Analizza il rendimento in BigQuery: una volta che l'esperimento è in esecuzione e ha elaborato un volume di traffico dei clienti sufficiente, esegui query sui log delle conversazioni esportati in BigQuery per valutare le metriche tra le versioni.
Configura la suddivisione del traffico
Puoi configurare le allocazioni del traffico tra diverse versioni dell'applicazione utilizzando la console o l'API REST. Ogni allocazione deve rimandare a una versione dell'applicazione dell'agente esistente e la somma di tutte le percentuali di traffico nel deployment deve essere pari a 100.
Utilizzo della console
Per configurare la suddivisione del traffico nella console del builder dell'agente:
- Apri la console CX Agent Studio e seleziona l'applicazione dell'agente.
- Fai clic sulla scheda Esegui il deployment nella parte superiore della pagina.
- Seleziona un canale di deployment esistente o fai clic su Nuovo canale per crearne uno (ad esempio, accesso all'API).
- In Versione dell'agente, fai clic su Aggiungi versione e seleziona le versioni dell'applicazione dell'agente che vuoi includere nell'esperimento.
- Inserisci la percentuale di traffico per ogni versione (ad esempio,
90% per la versione A e10% per la versione B). Assicurati che le percentuali totalizzino il 100%. - Fai clic su Crea canale per applicare la configurazione.
Utilizzo dell'API REST
Puoi configurare in modo programmatico la suddivisione del traffico chiamando il patch sulla risorsa di deployment e definendo experimentConfig.versionRelease.trafficAllocations.
Prima di chiamare l'API, assicurati di avere i seguenti identificatori:
PROJECT_ID: l' Google Cloud ID progetto.LOCATION_ID: la regione dell'applicazione dell'agente (ad esempio,us-east1).APP_ID: l'ID dell'applicazione dell'agente.DEPLOYMENT_ID: l'ID del canale di deployment.VERSION_A_UUID/VERSION_B_UUID: gli identificatori univoci delle versioni dell'applicazione.
Invia una richiesta PATCH per aggiornare la configurazione del deployment:
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 configurazione del deployment
Per verificare che le allocazioni del traffico siano attive:
Utilizzo della console
- Apri la pagina Esegui il deployment nella console CX Agent Studio.
- Individua il canale nell'elenco dei deployment.
- Verifica che la colonna Versione mostri la suddivisione configurata (ad esempio,
Version A (90%), Version B (10%)).
Utilizzo dell'API REST
Invia una richiesta GET per recuperare i dettagli della risorsa di deployment:
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"
Il JSON della risposta include experimentConfig che conferma le percentuali di traffico assegnate a ogni versione e mostra "state": "RUNNING" all'interno di versionRelease.
Analizza il rendimento della versione in BigQuery
Una volta che l'esperimento di suddivisione del traffico è in esecuzione e ha elaborato un volume di conversazioni dei clienti live sufficiente, puoi analizzare il rendimento della versione utilizzando i log di BigQuery.
Prima di analizzare i log, assicurati di aver attivato l'esportazione di BigQuery per la tua applicazione andando nella console CX Agent Studio in Crea > Impostazioni > Avanzate e attivando Esporta log in BigQuery. Quando l'esportazione è abilitata, i record di interazione, incluso l'elemento app_version_id specifico gestito da ogni turno, vengono registrati nel set di dati BigQuery.
Puoi eseguire query SQL per valutare e confrontare le risposte generate da ogni versione durante la finestra di suddivisione del traffico.
- Nella Google Cloud console, vai a BigQuery.
Esegui la query di esempio sulla tabella dei log di interazione, sostituendo i dettagli del progetto e la finestra di valutazione (
START_TIMEeEND_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 DESCValuta le metriche:
- Identifica le versioni: mappa le righe di output agli UUID delle versioni specifiche o alle esecuzioni degli strumenti (ad esempio, confrontando le risposte della versione A con quelle della versione B).
- Calcola il tasso di successo: confronta il rapporto tra risultati ed errori o risposte obsolete tra le due versioni per decidere se promuovere la versione candidata al 100% del traffico.