Method: projects.locations.apps.sessions.streamRunSession

Leitet eine Einzelinteraktion mit dem CES-Agenten ein. Verwendet serverseitiges Streaming, um inkrementelle Ergebnisse und Teilantworten zu liefern, sobald sie generiert werden.

Standardmäßig werden vollständige Antworten (z.B. Nachrichten aus Callbacks oder vollständige LLM-Antworten) an den Client gesendet, sobald sie verfügbar sind. Wenn Sie das Streaming einzelner Textblöcke direkt aus dem Modell aktivieren möchten, setzen Sie enableTextStreaming auf „true“.

HTTP-Anfrage

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

Die URL verwendet die Syntax der gRPC-Transcodierung.

Pfadparameter

Parameter
config.session

string

Erforderlich. Die eindeutige ID der Sitzung. Format: projects/{project}/locations/{location}/apps/{app}/sessions/{session}

Anfragetext

Der Anfragetext enthält Daten mit folgender Struktur:

JSON-Darstellung
{
  "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)
    }
  ]
}
Felder
config.inputAudioConfig

object (InputAudioConfig)

Optional. Konfiguration für die Verarbeitung der Audioeingabe.

config.outputAudioConfig

object (OutputAudioConfig)

Optional. Konfiguration für die Generierung der Audioausgabe.

config.historicalContexts[]

object (Message)

Optional. Der Verlaufskontext der Sitzung, einschließlich Nutzereingaben, Agentenantworten und anderer Nachrichten. In der Regel verwaltet der CES-Agent die Sitzung automatisch, sodass der Client dieses Feld nicht explizit ausfüllen muss. Der Client kann jedoch optional die Verlaufskontexte überschreiben, um den Sitzungsstart aus einem bestimmten Zustand zu erzwingen.

config.entryAgent

string

Optional. Der Einstiegsagent, der die Sitzung verarbeitet. Wenn nicht angegeben, wird die Sitzung vom root agent der App verarbeitet. Format: projects/{project}/locations/{location}/apps/{app}/agents/{agent}

config.deployment

string

Optional. Die Bereitstellung der App, die für die Sitzung verwendet werden soll. Format: projects/{project}/locations/{location}/apps/{app}/deployments/{deployment}

config.timeZone

string

Optional. Die Zeitzone des Nutzers. Wenn angegeben, verwendet der Agent die Zeitzone für Variablen im Zusammenhang mit Datum und Uhrzeit. Andernfalls verwendet der Agent die in App.time_zone_settings angegebene Zeitzone.

Das Format ist die Zeitzone aus der IANA-Zeitzonendatenbank, z.B. „America/Los_Angeles“.

config.useToolFakes

boolean

Optional. Gibt an, ob Tool-Fakes für die Sitzung verwendet werden sollen. Wenn dieses Feld festgelegt ist, versucht der Agent, Tool-Fakes zu verwenden, anstatt die echten Tools aufzurufen.

config.remoteDialogflowQueryParameters

object (SessionConfig.RemoteDialogflowQueryParameters)

Optional. QueryParameters, die an den Remote-Dialogflow-Agent gesendet werden sollen, wenn die Sitzungssteuerung an den Remote-Agent übertragen wird.

config.enableTextStreaming

boolean

Optional. Gibt an, ob das Streaming von Textausgaben aus dem Modell aktiviert werden soll. Standardmäßig werden Textausgaben aus dem Modell erfasst, bevor sie an den Client gesendet werden. HINWEIS: Dies wird nur für Textsitzungen (ohne Sprachausgabe) über sessions.streamRunSession oder BidiRunSession unterstützt.

config.excludeDiagnosticInfo

boolean

Optional. Gibt an, ob Diagnoseinformationen aus der Sitzungsausgabe ausgeschlossen werden sollen.

inputs[]

object (SessionInput)

Erforderlich. Eingaben für die Sitzung.

Antworttext

Bei Erfolg enthält der Antworttext einen Stream von RunSessionResponse-Instanzen.

Autorisierungsbereiche

Erfordert einen der folgenden OAuth-Bereiche:

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

Weitere Informationen finden Sie unter Authentication Overview.

IAM-Berechtigungen

Erfordert die folgende IAM-Berechtigung für die Ressource session:

  • ces.sessions.runSession

Weitere Informationen finden Sie in der IAM-Dokumentation.