Method: projects.locations.apps.sessions.streamRunSession

Avvia un'interazione a un solo turno con l'agente CES. Utilizza lo streaming lato server per fornire risultati incrementali e risposte parziali man mano che vengono generate.

Per impostazione predefinita, le risposte complete (ad es. messaggi di callback o risposte LLM complete) vengono inviate al client non appena sono disponibili. Per attivare lo streaming di singoli blocchi di testo direttamente dal modello, imposta enableTextStreaming su true.

Richiesta HTTP

POST https://ces.googleapis.com/v1/{config.session=projects/*/locations/*/apps/*/sessions/*}:streamRunSession

L'URL utilizza la sintassi di transcodifica gRPC.

Parametri del percorso

Parametri
config.session

string

Obbligatorio. L'identificatore univoco della sessione. Formato: projects/{project}/locations/{location}/apps/{app}/sessions/{session}

Corpo della richiesta

Il corpo della richiesta contiene dati con la seguente struttura:

Rappresentazione JSON
{
  "config": {
    "session": string,
    "inputAudioConfig": {
      "audioEncoding": enum (AudioEncoding),
      "sampleRateHertz": integer,
      "noiseSuppressionLevel": string
    },
    "outputAudioConfig": {
      "audioEncoding": enum (AudioEncoding),
      "sampleRateHertz": integer
    },
    "historicalContexts": [
      {
        "role": string,
        "chunks": [
          {
            object (Chunk)
          }
        ],
        "eventTime": string
      }
    ],
    "entryAgent": string,
    "deployment": string,
    "timeZone": string,
    "useToolFakes": boolean,
    "remoteDialogflowQueryParameters": {
      "webhookHeaders": {
        string: string,
        ...
      },
      "payload": {
        object
      },
      "endUserMetadata": {
        object
      }
    },
    "enableTextStreaming": boolean,
    "excludeDiagnosticInfo": boolean
  },
  "inputs": [
    {
      object (SessionInput)
    }
  ]
}
Campi
config.inputAudioConfig

object (InputAudioConfig)

Facoltativo. Configurazione per l'elaborazione dell'audio di input.

config.outputAudioConfig

object (OutputAudioConfig)

Facoltativo. Configurazione per la generazione dell'audio di output.

config.historicalContexts[]

object (Message)

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

string

Facoltativo. L'agente di ingresso per gestire la sessione. Se non specificata, la sessione verrà gestita da root agent dell'app. Formato: projects/{project}/locations/{location}/apps/{app}/agents/{agent}

config.deployment

string

Facoltativo. Il deployment dell'app da utilizzare per la sessione. Formato: projects/{project}/locations/{location}/apps/{app}/deployments/{deployment}

config.timeZone

string

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 es. "America/Los_Angeles".

config.useToolFakes

boolean

Facoltativo. Indica se utilizzare strumenti simulati per la sessione. Se questo campo è impostato, l'agente tenterà di utilizzare i tool fake anziché chiamare i tool reali.

config.remoteDialogflowQueryParameters

object (SessionConfig.RemoteDialogflowQueryParameters)

Facoltativo. QueryParameters da inviare all'agente Dialogflow remoto quando il controllo della sessione viene trasferito all'agente remoto.

config.enableTextStreaming

boolean

Facoltativo. Indica se abilitare gli output di testo in streaming dal modello. Per impostazione predefinita, gli output di testo del modello vengono raccolti prima di essere inviati al client. NOTA: questa funzionalità è supportata solo per le sessioni di testo (non vocali) tramite sessions.streamRunSession o BidiRunSession.

config.excludeDiagnosticInfo

boolean

Facoltativo. Indica se escludere le informazioni diagnostiche dall'output della sessione.

inputs[]

object (SessionInput)

Obbligatorio. Input per la sessione.

Corpo della risposta

In caso di esito positivo, il corpo della risposta contiene un flusso di istanze RunSessionResponse.

Ambiti di autorizzazione

Richiede uno dei seguenti ambiti OAuth:

  • https://www.googleapis.com/auth/cloud-platform
  • https://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.