Method: projects.locations.apps.sessions.streamRunSession

Lance une interaction unique avec l'agent CES. Utilise le streaming côté serveur pour fournir des résultats incrémentiels et des réponses partielles à mesure qu'ils sont générés.

Par défaut, les réponses complètes (par exemple, les messages provenant de rappels ou les réponses LLM complètes) sont envoyées au client dès qu'elles sont disponibles. Pour activer le streaming de blocs de texte individuels directement à partir du modèle, définissez enableTextStreaming sur "true".

Requête HTTP

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

L'URL utilise la syntaxe de transcodage gRPC.

Paramètres de chemin d'accès

Paramètres
config.session

string

Obligatoire. Identifiant unique de la session. Format: projects/{project}/locations/{location}/apps/{app}/sessions/{session}

Corps de la requête

Le corps de la requête contient des données présentant la structure suivante :

Représentation 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)
    }
  ]
}
Champs
config.inputAudioConfig

object (InputAudioConfig)

Facultatif. Configuration pour le traitement de l'entrée audio.

config.outputAudioConfig

object (OutputAudioConfig)

Facultatif. Configuration pour la génération de la sortie audio.

config.historicalContexts[]

object (Message)

Facultatif. Contexte historique de la session, y compris les entrées utilisateur, les réponses de l'agent et d'autres messages. En règle générale, l'agent CES gère automatiquement la session. Le client n'a donc pas besoin de renseigner explicitement ce champ. Toutefois, le client peut éventuellement remplacer les contextes historiques pour forcer le démarrage de la session à partir d'un certain état.

config.entryAgent

string

Facultatif. Agent d'entrée pour gérer la session. Si aucun agent n'est spécifié, la session est gérée par le root agent de l'application. Format : projects/{project}/locations/{location}/apps/{app}/agents/{agent}

config.deployment

string

Facultatif. Déploiement de l'application à utiliser pour la session. Format: projects/{project}/locations/{location}/apps/{app}/deployments/{deployment}

config.timeZone

string

Facultatif. Fuseau horaire de l'utilisateur. Si ce champ est fourni, l'agent utilise le fuseau horaire pour les variables liées à la date et à l'heure. Sinon, l'agent utilise le fuseau horaire spécifié dans App.time_zone_settings.

Le format correspond au fuseau horaire de la base de données des fuseaux horaires IANA, par exemple "America/Los_Angeles".

config.useToolFakes

boolean

Facultatif. Indique si des outils factices doivent être utilisés pour la session. Si ce champ est défini, l'agent tente d'utiliser des outils factices au lieu d'appeler les outils réels.

config.remoteDialogflowQueryParameters

object (SessionConfig.RemoteDialogflowQueryParameters)

Facultatif. QueryParameters à envoyer à l'agent Dialogflow distant lorsque le contrôle de la session est transféré à l'agent distant.

config.enableTextStreaming

boolean

Facultatif. Indique si le streaming des sorties de texte du modèle doit être activé. Par défaut, les sorties de texte du modèle sont collectées avant d'être envoyées au client. REMARQUE : Cette fonctionnalité n'est compatible qu'avec les sessions de texte (non vocales) via sessions.streamRunSession ou BidiRunSession.

config.excludeDiagnosticInfo

boolean

Facultatif. Indique si les informations de diagnostic doivent être exclues de la sortie de la session.

inputs[]

object (SessionInput)

Obligatoire. Entrées de la session.

Corps de la réponse

Si la requête aboutit, le corps de la réponse contient un flux d'instances RunSessionResponse.

Niveaux d'accès des autorisations

Nécessite l'un des niveaux d'accès OAuth suivants :

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/ces

Pour plus d'informations, consultez la page Authentication Overview.

Autorisations IAM

Nécessite l'autorisation IAM suivante sur la ressource session :

  • ces.sessions.runSession

Pour en savoir plus, consultez la documentation IAM.