- Richiesta HTTP
- Parametri del percorso
- Corpo della richiesta
- Corpo della risposta
- Ambiti di autorizzazione
- Autorizzazioni IAM
- SessionConfig
- InputAudioConfig
- AudioEncoding
- OutputAudioConfig
- SessionConfig.RemoteDialogflowQueryParameters
- SessionInput
- ToolResponses
- Evento
- SessionOutput
- ToolCalls
- Citazioni
- Citations.CitedChunk
- GoogleSearchSuggestions
- WebSearchQuery
- EndSession
- SessionOutput.DiagnosticInfo
Avvia un'interazione di un solo turno con l'agente CES all'interno di una sessione.
Richiesta HTTP
POST https://ces.googleapis.com/v1/{config.session=projects/*/locations/*/apps/*/sessions/*}:runSession
L'URL utilizza la sintassi di transcodifica gRPC.
Parametri del percorso
| Parametri | |
|---|---|
config.session |
Obbligatorio. L'identificatore univoco della sessione. Formato: |
Corpo della richiesta
Il corpo della richiesta contiene dati con la seguente struttura:
| Rappresentazione JSON |
|---|
{ "config": { "session": string, "inputAudioConfig": { "audioEncoding": enum ( |
| Campi | |
|---|---|
config.inputAudioConfig |
Facoltativo. Configurazione per l'elaborazione dell'audio di input. |
config.outputAudioConfig |
Facoltativo. Configurazione per la generazione dell'audio di output. |
config.historicalContexts[] |
Facoltativo. Il contesto storico della sessione, inclusi gli input dell'utente, le risposte dell'agente e altri messaggi. In genere, l'agente CES gestisce automaticamente la sessione, quindi il cliente non deve compilare esplicitamente questo campo. Tuttavia, il client può facoltativamente ignorare i contesti storici per forzare l'avvio della sessione da un determinato stato. |
config.entryAgent |
Facoltativo. L'agente di ingresso per gestire la sessione. Se non specificata, la sessione verrà gestita da |
config.deployment |
Facoltativo. Il deployment dell'app da utilizzare per la sessione. Formato: |
config.timeZone |
Facoltativo. Il fuso orario dell'utente. Se fornito, l'agente utilizzerà il fuso orario per le variabili relative a data e ora. In caso contrario, l'agente utilizzerà il fuso orario specificato in App.time_zone_settings. Il formato è il fuso orario del database dei fusi orari IANA, ad esempio "America/Los_Angeles". |
config.remoteDialogflowQueryParameters |
Facoltativo. QueryParameters da inviare all'agente Dialogflow remoto quando il controllo della sessione viene trasferito all'agente remoto. |
inputs[] |
Obbligatorio. Input per la sessione. |
Corpo della risposta
Messaggio di risposta per SessionService.RunSession.
In caso di esito positivo, il corpo della risposta contiene dati con la seguente struttura:
| Rappresentazione JSON |
|---|
{
"outputs": [
{
object ( |
| Campi | |
|---|---|
outputs[] |
Output della sessione. |
Ambiti di autorizzazione
Richiede uno dei seguenti ambiti OAuth:
https://www.googleapis.com/auth/cloud-platformhttps://www.googleapis.com/auth/ces
Per saperne di più, consulta la Authentication Overview.
Autorizzazioni IAM
Richiede la seguente autorizzazione IAM per la risorsa session:
ces.sessions.runSession
Per saperne di più, consulta la documentazione di IAM.
SessionConfig
La configurazione della sessione.
| Rappresentazione JSON |
|---|
{ "session": string, "inputAudioConfig": { object ( |
| Campi | |
|---|---|
session |
Obbligatorio. L'identificatore univoco della sessione. Formato: |
inputAudioConfig |
Facoltativo. Configurazione per l'elaborazione dell'audio di input. |
outputAudioConfig |
Facoltativo. Configurazione per la generazione dell'audio di output. |
historicalContexts[] |
Facoltativo. Il contesto storico della sessione, inclusi gli input dell'utente, le risposte dell'agente e altri messaggi. In genere, l'agente CES gestisce automaticamente la sessione, quindi il cliente non deve compilare esplicitamente questo campo. Tuttavia, il client può facoltativamente ignorare i contesti storici per forzare l'avvio della sessione da un determinato stato. |
entryAgent |
Facoltativo. L'agente di ingresso per gestire la sessione. Se non specificata, la sessione verrà gestita da |
deployment |
Facoltativo. Il deployment dell'app da utilizzare per la sessione. Formato: |
timeZone |
Facoltativo. Il fuso orario dell'utente. Se fornito, l'agente utilizzerà il fuso orario per le variabili relative a data e ora. In caso contrario, l'agente utilizzerà il fuso orario specificato in App.time_zone_settings. Il formato è il fuso orario del database dei fusi orari IANA, ad esempio "America/Los_Angeles". |
remoteDialogflowQueryParameters |
Facoltativo. QueryParameters da inviare all'agente Dialogflow remoto quando il controllo della sessione viene trasferito all'agente remoto. |
InputAudioConfig
InputAudioConfig configura la modalità di interpretazione dei dati audio in arrivo da parte dell'agente CES.
| Rappresentazione JSON |
|---|
{
"audioEncoding": enum ( |
| Campi | |
|---|---|
audioEncoding |
Obbligatorio. La codifica dei dati audio di input. |
sampleRateHertz |
Obbligatorio. La frequenza di campionamento (in hertz) dei dati audio di input. |
noiseSuppressionLevel |
Facoltativo. Indica se attivare la soppressione del rumore nell'audio di input. I valori disponibili sono "low", "moderate", "high", "very_high". |
AudioEncoding
AudioEncoding specifica il formato di codifica per i dati audio.
| Enum | |
|---|---|
AUDIO_ENCODING_UNSPECIFIED |
Codifica audio non specificata. |
LINEAR16 |
Codifica audio PCM lineare a 16 bit. |
MULAW |
Campioni a 8 bit che comprimono campioni audio a 14 bit utilizzando G.711 PCMU/mu-law. |
ALAW |
Campioni a 8 bit che comprimono campioni audio a 14 bit utilizzando G.711 PCMU/A-law. |
OutputAudioConfig
OutputAudioConfig configura il modo in cui l'agente CES deve sintetizzare le risposte audio in uscita.
| Rappresentazione JSON |
|---|
{
"audioEncoding": enum ( |
| Campi | |
|---|---|
audioEncoding |
Obbligatorio. La codifica dei dati audio di output. |
sampleRateHertz |
Obbligatorio. La frequenza di campionamento (in hertz) dei dati audio di output. |
SessionConfig.RemoteDialogflowQueryParameters
QueryParameters da inviare all'agente Dialogflow remoto quando il controllo della sessione viene trasferito all'agente remoto.
| Rappresentazione JSON |
|---|
{ "webhookHeaders": { string: string, ... }, "payload": { object }, "endUserMetadata": { object } } |
| Campi | |
|---|---|
webhookHeaders |
Facoltativo. Le intestazioni HTTP da inviare come webhookHeaders in QueryParameters. Un oggetto contenente un elenco di coppie |
payload |
Facoltativo. Il payload da inviare in QueryParameters. |
endUserMetadata |
Facoltativo. I metadati dell'utente finale da inviare in QueryParameters. |
SessionInput
Input per la sessione.
| Rappresentazione JSON |
|---|
{ "willContinue": boolean, // Union field |
| Campi | |
|---|---|
willContinue |
Facoltativo. Un flag che indica se il messaggio corrente è un frammento di un input più grande nella sessione di streaming bidirezionale. Se impostato su NOTA: questo campo non si applica agli input audio e DTMF, in quanto vengono sempre elaborati automaticamente in base al segnale di fine. |
Campo unione input_type. Il tipo di input. input_type può essere solo uno dei seguenti tipi: |
|
text |
Facoltativo. Dati di testo dell'utente finale. |
dtmf |
Facoltativo. Cifre DTMF dell'utente finale. |
audio |
Facoltativo. Dati audio dell'utente finale. Una stringa con codifica in base64. |
toolResponses |
Facoltativo. Risultati dell'esecuzione per le chiamate di strumenti dal client. |
image |
Facoltativo. Dati delle immagini dell'utente finale. |
blob |
Facoltativo. Dati blob dell'utente finale. |
variables |
Facoltativo. Variabili contestuali per la sessione, identificate per nome. L'agente CES utilizzerà solo le variabili dichiarate nell'app. Le variabili non riconosciute verranno comunque inviate all'[agente Dialogflow][Agent.RemoteDialogflowAgent] come parametri di sessione aggiuntivi. |
event |
Facoltativo. Input evento. |
ToolResponses
Risultati dell'esecuzione per le chiamate agli strumenti richieste dal client.
| Rappresentazione JSON |
|---|
{
"toolResponses": [
{
object ( |
| Campi | |
|---|---|
toolResponses[] |
Facoltativo. L'elenco dei risultati dell'esecuzione dello strumento. |
Evento
Input evento.
| Rappresentazione JSON |
|---|
{ "event": string } |
| Campi | |
|---|---|
event |
Obbligatorio. Il nome dell'evento. |
SessionOutput
Output della sessione.
| Rappresentazione JSON |
|---|
{ "turnIndex": integer, "turnCompleted": boolean, "diagnosticInfo": { object ( |
| Campi | |
|---|---|
turnIndex |
Indica l'ordine sequenziale del turno di conversazione a cui appartiene questo output, a partire da 1. |
turnCompleted |
Se il valore è true, l'agente CES ha rilevato la fine del turno di conversazione corrente e non fornirà ulteriori output per questo turno. |
diagnosticInfo |
Facoltativo. Le informazioni diagnostiche contengono i dettagli di esecuzione durante l'elaborazione dell'input. Viene compilato solo nell'ultimo SessionOutput (con |
Campo unione output_type. Il tipo di output. output_type può essere solo uno dei seguenti tipi: |
|
text |
Testo di output dell'agente CES. |
audio |
Output audio dell'agente CES. Una stringa con codifica in base64. |
toolCalls |
Richiedi al cliente di eseguire gli strumenti. |
citations |
Citazioni che forniscono le informazioni sulla fonte del testo generato dall'agente. |
googleSearchSuggestions |
I suggerimenti restituiti dalla Ricerca Google in seguito all'invocazione di |
endSession |
Indica che la sessione è terminata. |
payload |
Payload personalizzato con output strutturato dell'agente CES. |
ToolCalls
Richiesta al client di eseguire gli strumenti e restituire i risultati dell'esecuzione prima di continuare la sessione.
| Rappresentazione JSON |
|---|
{
"toolCalls": [
{
object ( |
| Campi | |
|---|---|
toolCalls[] |
Facoltativo. L'elenco delle chiamate di strumenti da eseguire. |
Citazioni
Citazioni associate alla risposta dell'agente.
| Rappresentazione JSON |
|---|
{
"citedChunks": [
{
object ( |
| Campi | |
|---|---|
citedChunks[] |
Elenco delle informazioni citate. |
Citations.CitedChunk
Informazione citata.
| Rappresentazione JSON |
|---|
{ "uri": string, "title": string, "text": string } |
| Campi | |
|---|---|
uri |
URI utilizzato per la citazione. |
title |
Il titolo del documento citato. |
text |
Testo utilizzato per la citazione. |
GoogleSearchSuggestions
Suggerimenti di ricerca da Google Search Tool.
| Rappresentazione JSON |
|---|
{
"htmls": [
string
],
"webSearchQueries": [
{
object ( |
| Campi | |
|---|---|
htmls[] |
Stili HTML e CSS conformi per i suggerimenti di ricerca. I codici HTML e CSS forniti si adattano automaticamente alle impostazioni del dispositivo, visualizzando la modalità Luce o Buio indicata da |
webSearchQueries[] |
Elenco delle query utilizzate per eseguire la ricerca Google insieme agli URI dei risultati di ricerca che formano i suggerimenti di ricerca. |
WebSearchQuery
Rappresenta una singola query di ricerca web e il relativo URI di ricerca.
| Rappresentazione JSON |
|---|
{ "query": string, "uri": string } |
| Campi | |
|---|---|
query |
Il testo della query di ricerca. |
uri |
L'URI alla pagina dei risultati di ricerca di Google per la query. |
EndSession
Indica che la sessione è terminata, a causa del completamento riuscito (ad es. l'utente dice "Arrivederci") ) o un riassegnazione a un agente.
L'agente non elaborerà ulteriori input dopo la chiusura della sessione e il client deve chiudere a metà e disconnettersi dopo aver ricevuto tutte le risposte rimanenti dall'agente.
| Rappresentazione JSON |
|---|
{ "metadata": { object } } |
| Campi | |
|---|---|
metadata |
Facoltativo. Fornisce ulteriori informazioni sull'indicatore di fine sessione, ad esempio il motivo della fine della sessione. |
SessionOutput.DiagnosticInfo
Contiene i dettagli di esecuzione durante l'elaborazione.
| Rappresentazione JSON |
|---|
{ "messages": [ { object ( |
| Campi | |
|---|---|
messages[] |
Elenco dei messaggi che si sono verificati durante l'elaborazione. |
rootSpan |
Una traccia dell'intera elaborazione della richiesta, rappresentata come uno span radice. Questo intervallo può contenere intervalli secondari nidificati per operazioni specifiche. |