Method: projects.locations.apps.sessions.runSession

Lance une interaction à un seul tour avec l'agent CES au cours d'une session.

Requête HTTP

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

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,
    "includeLlmThoughtSummary": boolean,
    "excludeDiagnosticInfo": boolean,
    "includeProgressUpdate": boolean
  },
  "inputs": [
    {
      object (SessionInput)
    }
  ]
}
Champs
config.inputAudioConfig

object (InputAudioConfig)

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

config.outputAudioConfig

object (OutputAudioConfig)

Facultatif. Configuration pour générer l'audio de sortie.

config.historicalContexts[]

object (Message)

Facultatif. Le 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 aucune valeur n'est spécifiée, la session sera gérée par l'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. S'il est fourni, l'agent utilisera le fuseau horaire pour les variables liées à la date et à l'heure. Sinon, l'agent utilisera le fuseau horaire spécifié dans App.time_zone_settings.

Le format est le fuseau horaire de la base de données des fuseaux horaires de l'IANA, par exemple "America/Los_Angeles".

config.useToolFakes

boolean

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

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 la sortie textuelle du modèle doit être diffusée en streaming vers le client de manière incrémentielle au fur et à mesure de sa génération. La valeur par défaut est false.

  • Lorsqu'elle est désactivée, la sortie textuelle du modèle est mise en mémoire tampon, et chaque sortie textuelle envoyée au client est une phrase complète. Les clients peuvent afficher chaque sortie de texte sur une nouvelle ligne.
  • Lorsque cette option est activée, chaque sortie de texte peut ne contenir qu'une partie d'une phrase. Les clients doivent concaténer les sorties de texte consécutives pour afficher la réponse complète.

REMARQUE : Cette fonctionnalité n'est compatible qu'avec les sessions textuelles (non vocales) utilisant sessions.streamRunSession ou BidiRunSession.

config.includeLlmThoughtSummary

boolean

Facultatif. Indique si les résumés des pensées du LLM doivent être inclus dans les sorties de la session.

config.excludeDiagnosticInfo

boolean

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

config.includeProgressUpdate

boolean

Facultatif. Indique si la mise à jour du traitement intermédiaire doit être incluse pour le client. Si cette option est activée, la mise à jour sera renvoyée dans SessionOutput.progress.

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 une instance de 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.