Teilen über


Referenz zur Realtime-API (Vorschau)

Hinweis

Dieses Feature ist zurzeit als öffentliche Preview verfügbar. Diese Vorschauversion wird ohne Vereinbarung zum Servicelevel bereitgestellt und sollte nicht für Produktionsworkloads verwendet werden. Manche Features werden möglicherweise nicht unterstützt oder sind nur eingeschränkt verwendbar. Weitere Informationen finden Sie unter Zusätzliche Nutzungsbestimmungen für Microsoft Azure-Vorschauen.

Die Echtzeit-API ist eine WebSocket-basierte API, mit der Sie in Echtzeit mit Azure OpenAI Service interagieren können.

Die Realtime-API (über /realtime) basiert auf der WebSockets-API, um die vollständig asynchrone Streamingkommunikation zwischen Endbenutzer und Modell zu erleichtern. Gerätedetails wie das Aufzeichnen und Rendern von Audiodaten liegen außerhalb des Umfangs der Realtime-API. Sie sollte im Kontext eines vertrauenswürdigen Zwischendiensts verwendet werden, der sowohl Verbindungen mit Endbenutzern als auch Modellendpunktverbindungen verwaltet. Verwenden Sie sie nicht direkt auf nicht vertrauenswürdigen Endbenutzergeräten.

Tipp

Informationen zu den ersten Schritten mit der Realtime-API finden Sie in der Schnellstartanleitung und der Schrittanleitung.

Verbindung

Die Realtime-API erfordert einen vorhandenen Azure OpenAI-Ressourcenendpunkt in einer unterstützten Region. Auf die API wird über eine sichere WebSocket-Verbindung mit dem /realtime-Endpunkt Ihrer Azure OpenAI-Ressource zugegriffen.

Sie können einen vollständigen Anforderungs-URI erstellen, indem Sie Folgendes verketten:

  • Das sichere WebSocket-Protokoll (wss://).
  • Den Hostnamen Ihres Azure OpenAI-Ressourcenendpunkts, z. B. my-aoai-resource.openai.azure.com
  • Den openai/realtime-API-Pfad.
  • Einen api-version-Abfragezeichenfolge-Parameter für eine unterstützte API-Version, z. B. 2024-12-17
  • Einen deployment-Abfragezeichenfolge-Parameter mit dem Namen Ihrer gpt-4o-realtime-preview- oder gpt-4o-mini-realtime-preview-Modellimplementierung.

Das folgende Beispiel ist ein korrekt konstruierter /realtime-Anforderungs-URI:

wss://my-eastus2-openai-resource.openai.azure.com/openai/realtime?api-version=2024-12-17&deployment=gpt-4o-realtime-preview

Authentifizierung

Zum Authentifizieren:

  • Microsoft Entra (empfohlen): Verwenden Sie die tokenbasierte Authentifizierung mit der /realtime-API für eine Azure OpenAI Service-Ressource mit aktivierter verwalteter Identität. Wenden Sie ein abgerufenes Authentifizierungstoken mithilfe eines Bearer-Tokens mit dem Authorization-Header an.
  • API-Schlüssel: api-key kann auf eine von zwei Arten bereitgestellt werden:
    • Verwenden eines api-key-Verbindungsheaders für die Prehandshake-Verbindung. Diese Option ist in einer Browserumgebung nicht verfügbar.
    • Verwenden eines api-key-Abfragezeichenfolge-Parameters für den Anforderungs-URI. Abfragezeichenfolge-Parameter werden bei Verwendung von https/wss verschlüsselt.

Clientereignisse

Es gibt neun Clientereignisse, die vom Client an den Server gesendet werden können:

Ereignis Beschreibung
RealtimeClientEventConversationItemCreate Das Clientereignis conversation.item.create wird verwendet, um dem Kontext der Unterhaltung neue Elemente hinzuzufügen, einschließlich Nachrichten, Funktionsaufrufe und Funktionsaufrufantworte.
RealtimeClientEventConversationItemDelete Das Clientereignis conversation.item.delete wird verwendet, um ein Element aus dem Unterhaltungsverlauf zu entfernen.
RealtimeClientEventConversationItemTruncate Das Clientereignis conversation.item.truncate wird verwendet, um die Audiodaten einer vorherigen Assistentennachricht abzuschneiden.
RealtimeClientEventInputAudioBufferAppend Das Clientereignis input_audio_buffer.append wird verwendet, um Audiobytes an den Eingabeaudiopuffer anzufügen.
RealtimeClientEventInputAudioBufferClear Das Clientereignis input_audio_buffer.clear wird verwendet, um die Audiobytes im Puffer zu löschen.
RealtimeClientEventInputAudioBufferCommit Das Clientereignis input_audio_buffer.commit wird verwendet, um den Audiopuffer der Benutzereingabe zu übernehmen.
RealtimeClientEventResponseCancel Das Clientereignis response.cancel wird verwendet, um eine laufende Antwort abzubrechen.
RealtimeClientEventResponseCreate Das Clientereignis response.create wird verwendet, um den Server anzuweisen, per Modellinferenz eine Antwort zu erstellen.
RealtimeClientEventSessionUpdate Das Clientereignis session.update wird verwendet, um die Standardkonfiguration der Sitzung zu aktualisieren.

RealtimeClientEventConversationItemCreate

Das Clientereignis conversation.item.create wird verwendet, um dem Kontext der Unterhaltung neue Elemente hinzuzufügen, einschließlich Nachrichten, Funktionsaufrufe und Funktionsaufrufantworte. Dieses Ereignis kann verwendet werden, um einen Verlauf der Unterhaltung aufzufüllen und neue Elemente in der Mitte des Datenstroms hinzuzufügen. Derzeit kann dieses Ereignis keine Audionachrichten des Assistenten auffüllen.

Wenn dies erfolgreich ist, antwortet der Server mit einem conversation.item.created-Ereignis, andernfalls wird ein error-Ereignis gesendet.

Ereignisstruktur

{
  "type": "conversation.item.create",
  "previous_item_id": "<previous_item_id>"
}

Eigenschaften

Feld type Beschreibung
type Zeichenfolge Der Ereignistyp muss conversation.item.create sein.
previous_item_id Zeichenfolge Die ID des vorherigen Elements, nach dem das neue Element eingefügt wird. Wenn dies nicht festgelegt ist, wird das neue Element am Ende der Unterhaltung angefügt. Wenn dies festgelegt ist, kann ein Element in der Mitte der Unterhaltung eingefügt werden. Wenn die ID nicht gefunden werden kann, wird ein Fehler zurückgegeben, und das Element wird nicht hinzugefügt.
item RealtimeConversationRequestItem Das Element, das der Unterhaltung hinzugefügt werden soll.

RealtimeClientEventConversationItemDelete

Das Clientereignis conversation.item.delete wird verwendet, um ein Element aus dem Unterhaltungsverlauf zu entfernen.

Der Server antwortet mit einem conversation.item.deleted-Ereignis, es sei denn, das Element ist im Unterhaltungsverlauf nicht vorhanden. In diesem Fall antwortet der Server mit einem Fehler.

Ereignisstruktur

{
  "type": "conversation.item.delete",
  "item_id": "<item_id>"
}

Eigenschaften

Feld type Beschreibung
type Zeichenfolge Der Ereignistyp muss conversation.item.delete sein.
item_id Zeichenfolge Die ID des zu löschenden Elements.

RealtimeClientEventConversationItemTruncate

Das Clientereignis conversation.item.truncate wird verwendet, um die Audiodaten einer vorherigen Assistentennachricht abzuschneiden. Der Server erzeugt Audio schneller als in Echtzeit, daher ist dieses Ereignis bei Unterbrechungen durch den Benutzer nützlich, um Audio abzuschneiden, das an den Client gesendet, aber noch nicht wiedergegeben wurde. Das Verständnis des Audiosignals mit der Wiedergabe des Clients auf dem Server wird synchronisiert.

Durch das Abschneiden von Audiodaten wird die serverseitige Texttranskription gelöscht, um sicherzustellen, dass kein Text im Kontext vorhanden ist, den der Benutzer nicht kennt.

Wenn das Clientereignis erfolgreich ist, antwortet der Server mit einem conversation.item.truncated-Ereignis.

Ereignisstruktur

{
  "type": "conversation.item.truncate",
  "item_id": "<item_id>",
  "content_index": 0,
  "audio_end_ms": 0
}

Eigenschaften

Feld type Beschreibung
type Zeichenfolge Der Ereignistyp muss conversation.item.truncate sein.
item_id Zeichenfolge Die ID des Nachrichtenelements des Assistenten, das abgeschnitten werden soll. Nur Nachrichtenelemente des Assistenten können abgeschnitten werden.
content_index integer Der Index des Inhaltsteils, der abgeschnitten werden soll. Legen Sie diese Eigenschaft auf „0“ fest.
audio_end_ms integer Inklusive Dauer bis zum Abschneiden von Audiodaten in Millisekunden. Wenn „audio_end_ms“ größer als die tatsächliche Audiodauer ist, antwortet der Server mit einem Fehler.

RealtimeClientEventInputAudioBufferAppend

Das Clientereignis input_audio_buffer.append wird verwendet, um Audiobytes an den Eingabeaudiopuffer anzufügen. Der Audiopuffer ist temporärer Speicher, in den Sie Daten schreiben und später committen können.

Im Server-VAD-Modus (Voice Activity Detection, Sprechaktivitätserkennung) wird der Audiopuffer verwendet, um die Sprache zu erkennen, und der Server entscheidet, wann ein Commit ausgeführt werden soll. Wenn die Server-VAD deaktiviert ist, kann der Client auswählen, wie viele Audiodaten in jedem Ereignis platziert werden sollen (maximal 15 MiB). Beispielsweise könnte die VAD durch das Streaming kleinerer Blöcke vom Client reaktionsfähiger sein.

Im Gegensatz zu den meisten Clientereignissen sendet der Server keine Bestätigungsantwort auf das Clientereignis input_audio_buffer.append.

Ereignisstruktur

{
  "type": "input_audio_buffer.append",
  "audio": "<audio>"
}

Eigenschaften

Feld type Beschreibung
type Zeichenfolge Der Ereignistyp muss input_audio_buffer.append sein.
audio Zeichenfolge Base64-codierte Audiobytes. Dieser Wert muss in dem Format vorliegen, das durch das Feld input_audio_format in der Sitzungskonfiguration angegeben wird.

RealtimeClientEventInputAudioBufferClear

Das Clientereignis input_audio_buffer.clear wird verwendet, um die Audiobytes im Puffer zu löschen.

Der Server antwortet mit einem input_audio_buffer.cleared-Ereignis.

Ereignisstruktur

{
  "type": "input_audio_buffer.clear"
}

Eigenschaften

Feld type Beschreibung
type Zeichenfolge Der Ereignistyp muss input_audio_buffer.clear sein.

RealtimeClientEventInputAudioBufferCommit

Das Clientereignis input_audio_buffer.commit wird verwendet, um den Benutzereingabeaudiopuffer zu committen. Dadurch wird ein neues Benutzernachrichtenelement in der Unterhaltung erstellt. Die Audioinhalte werden transkribiert, wenn für die Sitzung input_audio_transcription konfiguriert wurde.

Im Server-VAD-Modus muss der Client dieses Ereignis nicht senden, da der Server den Audiopuffer automatisch committet. Ohne Server-VAD muss der Client den Audiopuffer committen, um ein Benutzernachrichtenelement zu erstellen. Dieses Clientereignis generiert einen Fehler, wenn der Eingabeaudiopuffer leer ist.

Beim Committen des Eingabeaudiopuffers wird vom Modell keine Antwort erstellt.

Der Server antwortet mit einem input_audio_buffer.committed-Ereignis.

Ereignisstruktur

{
  "type": "input_audio_buffer.commit"
}

Eigenschaften

Feld type Beschreibung
type Zeichenfolge Der Ereignistyp muss input_audio_buffer.commit sein.

RealtimeClientEventResponseCancel

Das Clientereignis response.cancel wird verwendet, um eine laufende Antwort abzubrechen.

Der Server antwortet mit einem response.cancelled-Ereignis oder einem Fehler, wenn keine Antwort zum Abbrechen vorhanden ist.

Ereignisstruktur

{
  "type": "response.cancel"
}

Eigenschaften

Feld type Beschreibung
type Zeichenfolge Der Ereignistyp muss response.cancel sein.

RealtimeClientEventResponseCreate

Das Clientereignis response.create wird verwendet, um den Server anzuweisen, per Modellinferenz eine Antwort zu erstellen. Wenn die Sitzung im Server-VAD-Modus konfiguriert ist, erstellt der Server automatisch Antworten.

Eine Antwort enthält mindestens ein item. Sie kann zwei enthalten – in diesem Fall ist das zweite Element ein Funktionsaufruf. Diese Elemente werden an den Unterhaltungsverlauf angefügt.

Der Server antwortet mit einem response.created-Ereignis, mindestens einem Element und Inhaltsereignissen (z. B. conversation.item.created und response.content_part.added) und zuletzt einem response.done-Ereignis, um anzugeben, dass die Antwort abgeschlossen ist.

Hinweis

Das Clientereignis response.create enthält eine Rückschlusskonfiguration wie instructions oder temperature. Diese Felder können die Konfiguration der Sitzung nur für diese Antwort außer Kraft setzen.

Ereignisstruktur

{
  "type": "response.create"
}

Eigenschaften

Feld type Beschreibung
type Zeichenfolge Der Ereignistyp muss response.create sein.
automatisieren RealtimeResponseOptions Die Benachrichtigungsoptionen

RealtimeClientEventSessionUpdate

Das Clientereignis session.update wird verwendet, um die Standardkonfiguration der Sitzung zu aktualisieren. Der Client kann dieses Ereignis jederzeit senden, um die Sitzungskonfiguration zu aktualisieren, und jedes Feld kann jederzeit aktualisiert werden, mit Ausnahme von Sprache.

Es werden nur vorhandene Felder aktualisiert. Um ein Feld (z. B. instructions) zu löschen, übergeben Sie eine leere Zeichenfolge.

Der Server antwortet mit einem session.updated-Ereignis, das die vollständige effektive Konfiguration enthält.

Ereignisstruktur

{
  "type": "session.update"
}

Eigenschaften

Feld type Beschreibung
type Zeichenfolge Der Ereignistyp muss session.update sein.
session RealtimeRequestSession Die Sitzungskonfiguration

Serverereignisse

Es gibt 28 Serverereignisse, die vom Server empfangen werden können:

Ereignis Beschreibung
RealtimeServerEventConversationCreated Das Serverereignis conversation.created wird direkt nach der Sitzungserstellung zurückgegeben. Pro Sitzung wird eine Unterhaltung erstellt.
RealtimeServerEventConversationItemCreated Das Serverereignis conversation.item.created wird zurückgegeben, wenn ein Unterhaltungselement erstellt wird.
RealtimeServerEventConversationItemDeleted Das Serverereignis conversation.item.deleted wird zurückgegeben, wenn der Client ein Element in der Unterhaltung mit einem conversation.item.delete-Ereignis gelöscht hat.
RealtimeServerEventConversationItemInputAudioTranscriptionCompleted Das Serverereignis conversation.item.input_audio_transcription.completed ist das Ergebnis der Audiotranskription für die in den Audiopuffer geschriebene Sprache.
RealtimeServerEventConversationItemInputAudioTranscriptionFailed Das Serverereignis conversation.item.input_audio_transcription.failed wird zurückgegeben, wenn die Audiotranskription konfiguriert ist und ein Fehler bei einer Transkriptionsanforderung für eine Benutzernachricht auftrat.
RealtimeServerEventConversationItemTruncated Das Serverereignis conversation.item.truncated wird zurückgegeben, wenn der Client ein früheres Audionachrichtenelement des Assistenten mit einem conversation.item.truncate-Ereignis abschneidet.
RealtimeServerEventError Das Serverereignis error wird zurückgegeben, wenn ein Fehler auftritt. Dabei kann es sich um ein Client- oder ein Serverproblem handeln.
RealtimeServerEventInputAudioBufferCleared Das Serverereignis input_audio_buffer.cleared wird zurückgegeben, wenn der Client den Eingabeaudiopuffer mit einem input_audio_buffer.clear-Ereignis löscht.
RealtimeServerEventInputAudioBufferCommitted Das Serverereignis input_audio_buffer.committed wird zurückgegeben, wenn ein Eingabeaudiopuffer vom Client oder automatisch im Server-VAD-Modus committet wird.
RealtimeServerEventInputAudioBufferSpeechStarted Das Serverereignis input_audio_buffer.speech_started wird im server_vad-Modus zurückgegeben, wenn im Audiopuffer Sprache erkannt wird.
RealtimeServerEventInputAudioBufferSpeechStopped Das Serverereignis input_audio_buffer.speech_stopped wird im server_vad-Modus zurückgegeben, wenn der Server das Ende der Sprache im Audiopuffer erkennt.
RealtimeServerEventRateLimitsUpdated Das Serverereignis rate_limits.updated wird am Anfang einer Antwort ausgegeben, um die aktualisierten Ratengrenzwerte anzugeben.
RealtimeServerEventResponseAudioDelta Das Serverereignis response.audio.delta wird zurückgegeben, wenn die vom Modell generierten Audioinhalte aktualisiert werden.
RealtimeServerEventResponseAudioDone Das Serverereignis response.audio.done wird zurückgegeben, wenn die vom Modell generierten Audioinhalte fertig sind.
RealtimeServerEventResponseAudioTranscriptDelta Das Serverereignis response.audio_transcript.delta wird zurückgegeben, wenn die vom Modell generierte Transkription der Audioausgabe aktualisiert wird.
RealtimeServerEventResponseAudioTranscriptDone Das Serverereignis response.audio_transcript.done wird zurückgegeben, wenn das Streaming der vom Modell generierten Transkription der Audioausgabe abgeschlossen ist.
RealtimeServerEventResponseContentPartAdded Das Serverereignis response.content_part.added wird zurückgegeben, wenn ein neues Inhaltsteil einem Nachrichtenelement des Assistenten hinzugefügt wird.
RealtimeServerEventResponseContentPartDone Das Serverereignis response.content_part.done wird zurückgegeben, wenn das Streamen eines Inhaltsteils abgeschlossen ist.
RealtimeServerEventResponseCreated Das Serverereignis response.created wird zurückgegeben, wenn eine neue Antwort erstellt wird. Dies ist das erste Ereignis der Antworterstellung, wobei sich die Antwort im Anfangszustand in_progress befindet.
RealtimeServerEventResponseDone Das Serverereignis response.done wird zurückgegeben, wenn das Streamen einer Antwort abgeschlossen ist.
RealtimeServerEventResponseFunctionCallArgumentsDelta Das Serverereignis response.function_call_arguments.delta wird zurückgegeben, wenn die vom Modell generierten Funktionsaufrufargumente aktualisiert werden.
RealtimeServerEventResponseFunctionCallArgumentsDone Das Serverereignis response.function_call_arguments.done wird zurückgegeben, wenn das Streaming der vom Modell generierten Funktionsaufrufargumente abgeschlossen ist.
RealtimeServerEventResponseOutputItemAdded Das Serverereignis response.output_item.added wird zurückgegeben, wenn während der Antwortgenerierung ein neues Element erstellt wird.
RealtimeServerEventResponseOutputItemDone Das Serverereignis response.output_item.done wird zurückgegeben, wenn das Streamen eines Elements abgeschlossen ist.
RealtimeServerEventResponseTextDelta Das Serverereignis response.text.delta wird zurückgegeben, wenn der vom Modell generierte Text aktualisiert wird.
RealtimeServerEventResponseTextDone Das Serverereignis response.text.done wird zurückgegeben, wenn das Streamen des vom Modell generierten Texts abgeschlossen ist.
RealtimeServerEventSessionCreated Das Serverereignis session.created ist das erste Serverereignis, wenn Sie eine neue Verbindung mit der Realtime-API herstellen. Dieses Ereignis erstellt eine neue Sitzung mit der Standardsitzungskonfiguration und gibt sie zurück.
RealtimeServerEventSessionUpdated Das Serverereignis session.updated wird zurückgegeben, wenn eine Sitzung vom Client aktualisiert wird. Wenn ein Fehler auftritt, sendet der Server stattdessen ein error-Ereignis.

RealtimeServerEventConversationCreated

Das Serverereignis conversation.created wird direkt nach der Sitzungserstellung zurückgegeben. Pro Sitzung wird eine Unterhaltung erstellt.

Ereignisstruktur

{
  "type": "conversation.created",
  "conversation": {
    "id": "<id>",
    "object": "<object>"
  }
}

Eigenschaften

Feld type Beschreibung
type Zeichenfolge Der Ereignistyp muss conversation.created sein.
Konversation (conversation) Objekt Die Unterhaltungsressource.

Unterhaltungseigenschaften

Feld type Beschreibung
id Zeichenfolge Die eindeutige ID der Unterhaltung.
Objekt Zeichenfolge Der Objekttyp muss realtime.conversation sein.

RealtimeServerEventConversationItemCreated

Das Serverereignis conversation.item.created wird zurückgegeben, wenn ein Unterhaltungselement erstellt wird. Es gibt mehrere Szenarien, die dieses Ereignis erzeugen:

  • Der Server generiert eine Antwort, die bei Erfolg entweder ein oder zwei Elemente erzeugt, die vom Typ message (Rolle assistant) oder function_call sind.
  • Der Eingabeaudiopuffer wird entweder vom Client oder vom Server (im server_vad-Modus) committet. Der Server übernimmt den Inhalt des Eingabeaudiopuffers und fügt ihn einem neuen Benutzernachrichtenelement hinzu.
  • Der Client hat ein conversation.item.create-Ereignis gesendet, um der Unterhaltung ein neues Element hinzuzufügen.

Ereignisstruktur

{
  "type": "conversation.item.created",
  "previous_item_id": "<previous_item_id>"
}

Eigenschaften

Feld type Beschreibung
type Zeichenfolge Der Ereignistyp muss conversation.item.created sein.
previous_item_id Zeichenfolge Die ID des vorherigen Elements im Unterhaltungskontext. Dies ermöglicht es dem Client, die Reihenfolge der Unterhaltung zu verstehen.
item RealtimeConversationResponseItem Das Element, das erstellt wurde

RealtimeServerEventConversationItemDeleted

Das Serverereignis conversation.item.deleted wird zurückgegeben, wenn der Client ein Element in der Unterhaltung mit einem conversation.item.delete-Ereignis gelöscht hat. Dieses Ereignis wird verwendet, um das Verständnis des Unterhaltungsverlaufs durch den Server mit der Ansicht des Clients zu synchronisieren.

Ereignisstruktur

{
  "type": "conversation.item.deleted",
  "item_id": "<item_id>"
}

Eigenschaften

Feld type Beschreibung
type Zeichenfolge Der Ereignistyp muss conversation.item.deleted sein.
item_id Zeichenfolge Die ID des Elements, das gelöscht wurde.

RealtimeServerEventConversationItemInputAudioTranscriptionCompleted

Das Serverereignis conversation.item.input_audio_transcription.completed ist das Ergebnis der Audiotranskription für die in den Audiopuffer geschriebene Sprache.

Die Transkription beginnt, wenn der Eingabeaudiopuffer vom Client oder vom Server (im server_vad-Modus) committet wird. Die Transkription wird asynchron mit der Antworterstellung ausgeführt, sodass dieses Ereignis vor oder nach den Antwortereignissen auftreten kann.

Realtime-API-Modelle akzeptieren Audio nativ. Die Eingabetranskription ist daher ein separater Prozess, der in einem eigenen Spracherkennungsmodell ausgeführt wird (derzeit immer whisper-1). So kann das Transkript etwas von der Interpretation des Modells abweichen und sollte als grobe Anleitung behandelt werden.

Ereignisstruktur

{
  "type": "conversation.item.input_audio_transcription.completed",
  "item_id": "<item_id>",
  "content_index": 0,
  "transcript": "<transcript>"
}

Eigenschaften

Feld type Beschreibung
type Zeichenfolge Der Ereignistyp muss conversation.item.input_audio_transcription.completed sein.
item_id Zeichenfolge Die ID des Benutzernachrichtenelements, das das Audio enthält.
content_index integer Der Index des Inhaltsteils, der die Audiodaten enthält.
Transkript Zeichenfolge Der transkribierte Text.

RealtimeServerEventConversationItemInputAudioTranscriptionFailed

Das Serverereignis conversation.item.input_audio_transcription.failed wird zurückgegeben, wenn die Audiotranskription konfiguriert ist und ein Fehler bei einer Transkriptionsanforderung für eine Benutzernachricht auftrat. Dieses Ereignis ist von anderen error-Ereignissen getrennt, sodass der Client das zugehörige Element identifizieren kann.

Ereignisstruktur

{
  "type": "conversation.item.input_audio_transcription.failed",
  "item_id": "<item_id>",
  "content_index": 0,
  "error": {
    "code": "<code>",
    "message": "<message>",
    "param": "<param>"
  }
}

Eigenschaften

Feld type Beschreibung
type Zeichenfolge Der Ereignistyp muss conversation.item.input_audio_transcription.failed sein.
item_id Zeichenfolge Die ID des Benutzernachrichtenelements.
content_index integer Der Index des Inhaltsteils, der die Audiodaten enthält.
error Objekt Details des Transkriptionsfehlers.

Weitere Informationen finden Sie unter den geschachtelten Eigenschaften in der nächsten Tabelle.

Fehlereigenschaften

Feld type Beschreibung
type Zeichenfolge Der Typ des Fehlers.
Code Zeichenfolge Fehlercode, falls vorhanden.
message Zeichenfolge Eine für Menschen lesbare Fehlermeldung.
param Zeichenfolge Parameter im Zusammenhang mit dem Fehler, falls vorhanden.

RealtimeServerEventConversationItemTruncated

Das Serverereignis conversation.item.truncated wird zurückgegeben, wenn der Client ein früheres Audionachrichtenelement des Assistenten mit einem conversation.item.truncate-Ereignis abschneidet. Dieses Ereignis wird verwendet, um das Verständnis des Audios durch den Server mit der Wiedergabe des Clients zu synchronisieren.

Durch dieses Ereignis werden die Audioinhalte abgeschnitten und die serverseitige Texttranskription gelöscht, um sicherzustellen, dass kein Text im Kontext vorhanden ist, den Benutzende nicht kennen.

Ereignisstruktur

{
  "type": "conversation.item.truncated",
  "item_id": "<item_id>",
  "content_index": 0,
  "audio_end_ms": 0
}

Eigenschaften

Feld type Beschreibung
type Zeichenfolge Der Ereignistyp muss conversation.item.truncated sein.
item_id Zeichenfolge Die ID des Nachrichtenelements des Assistenten, das abgeschnitten wurde.
content_index integer Der Index des Inhaltsteils, der abgeschnitten wurde.
audio_end_ms integer Die Dauer bis zum Abschneiden von Audiodaten in Millisekunden.

RealtimeServerEventError

Das Serverereignis error wird zurückgegeben, wenn ein Fehler auftritt. Dabei kann es sich um ein Client- oder ein Serverproblem handeln. Die meisten Fehler können behoben werden, und die Sitzung bleibt geöffnet.

Ereignisstruktur

{
  "type": "error",
  "error": {
    "code": "<code>",
    "message": "<message>",
    "param": "<param>",
    "event_id": "<event_id>"
  }
}

Eigenschaften

Feld type Beschreibung
type Zeichenfolge Der Ereignistyp muss error sein.
error Objekt Details des Fehlers.

Weitere Informationen finden Sie unter den geschachtelten Eigenschaften in der nächsten Tabelle.

Fehlereigenschaften

Feld type Beschreibung
type Zeichenfolge Der Typ des Fehlers. Beispiele für Fehlertypen sind „invalid_request_error“ und „server_error“.
Code Zeichenfolge Fehlercode, falls vorhanden.
message Zeichenfolge Eine für Menschen lesbare Fehlermeldung.
param Zeichenfolge Parameter im Zusammenhang mit dem Fehler, falls vorhanden.
event_id Zeichenfolge Die ID des Clientereignisses, das den Fehler verursacht hat, falls zutreffend.

RealtimeServerEventInputAudioBufferCleared

Das Serverereignis input_audio_buffer.cleared wird zurückgegeben, wenn der Client den Eingabeaudiopuffer mit einem input_audio_buffer.clear-Ereignis löscht.

Ereignisstruktur

{
  "type": "input_audio_buffer.cleared"
}

Eigenschaften

Feld type Beschreibung
type Zeichenfolge Der Ereignistyp muss input_audio_buffer.cleared sein.

RealtimeServerEventInputAudioBufferCommitted

Das Serverereignis input_audio_buffer.committed wird zurückgegeben, wenn ein Eingabeaudiopuffer vom Client oder automatisch im Server-VAD-Modus committet wird. Die item_id-Eigenschaft ist die ID des erstellten Benutzernachrichtenelements. Daher wird auch ein conversation.item.created-Ereignis an den Client gesendet.

Ereignisstruktur

{
  "type": "input_audio_buffer.committed",
  "previous_item_id": "<previous_item_id>",
  "item_id": "<item_id>"
}

Eigenschaften

Feld type Beschreibung
type Zeichenfolge Der Ereignistyp muss input_audio_buffer.committed sein.
previous_item_id Zeichenfolge Die ID des vorherigen Elements, nach dem das neue Element eingefügt wird.
item_id Zeichenfolge Die ID des erstellten Benutzernachrichtenelements.

RealtimeServerEventInputAudioBufferSpeechStarted

Das Serverereignis input_audio_buffer.speech_started wird im server_vad-Modus zurückgegeben, wenn im Audiopuffer Sprache erkannt wird. Dieses Ereignis kann jederzeit auftreten, wenn dem Puffer Audio hinzugefügt wird (es sei denn, es wurde bereits Sprache erkannt).

Hinweis

Der Client kann dieses Ereignis verwenden, um die Audiowiedergabe zu unterbrechen oder den Benutzenden visuelles Feedback zu geben.

Der Client sollte erwarten, dass ein input_audio_buffer.speech_stopped-Ereignis empfangen wird, wenn die Sprachausgabe beendet wird. Die item_id-Eigenschaft ist die ID des Benutzernachrichtenelements, das beim Beenden der Sprache erstellt wird. Die item_id ist auch im input_audio_buffer.speech_stopped-Ereignis enthalten, es sei denn, der Client committet den Audiopuffer während der VAD-Aktivierung manuell.

Ereignisstruktur

{
  "type": "input_audio_buffer.speech_started",
  "audio_start_ms": 0,
  "item_id": "<item_id>"
}

Eigenschaften

Feld type Beschreibung
type Zeichenfolge Der Ereignistyp muss input_audio_buffer.speech_started sein.
audio_start_ms integer Millisekunden vom Anfang aller Audiodaten, die während der Sitzung in den Puffer geschrieben wurden, wenn zum ersten Mal Sprache erkannt wurde. Diese Eigenschaft entspricht dem Anfang der an das Modell gesendeten Audiodaten und enthält somit den in der Sitzung konfigurierten prefix_padding_ms-Wert.
item_id Zeichenfolge Die ID des Benutzernachrichtenelements, das beim Beenden der Sprache erstellt wird.

RealtimeServerEventInputAudioBufferSpeechStopped

Das Serverereignis input_audio_buffer.speech_stopped wird im server_vad-Modus zurückgegeben, wenn der Server das Ende der Sprache im Audiopuffer erkennt.

Der Server sendet außerdem ein conversation.item.created-Ereignis mit dem Benutzernachrichtenelement, das aus dem Audiopuffer erstellt wurde.

Ereignisstruktur

{
  "type": "input_audio_buffer.speech_stopped",
  "audio_end_ms": 0,
  "item_id": "<item_id>"
}

Eigenschaften

Feld type Beschreibung
type Zeichenfolge Der Ereignistyp muss input_audio_buffer.speech_stopped sein.
audio_end_ms integer Millisekunden seit Beginn der Sitzung, als die Sprachausgabe beendet wurde. Diese Eigenschaft entspricht dem Ende der an das Modell gesendeten Audiodaten und enthält somit den in der Sitzung konfigurierten min_silence_duration_ms-Wert.
item_id Zeichenfolge Die ID des erstellten Benutzernachrichtenelements.

RealtimeServerEventRateLimitsUpdated

Das Serverereignis rate_limits.updated wird am Anfang einer Antwort ausgegeben, um die aktualisierten Ratengrenzwerte anzugeben.

Wenn eine Antwort erstellt wird, sind einige Token für die Ausgabetoken reserviert. Die hier gezeigten Ratengrenzwerte spiegeln diese Reservierung wider, die dann nach Abschluss der Antwort entsprechend angepasst wird.

Ereignisstruktur

{
  "type": "rate_limits.updated",
  "rate_limits": [
    {
      "name": "<name>",
      "limit": 0,
      "remaining": 0,
      "reset_seconds": 0
    }
  ]
}

Eigenschaften

Feld type Beschreibung
type Zeichenfolge Der Ereignistyp muss rate_limits.updated sein.
rate_limits Array von RealtimeServerEventRateLimitsUpdatedRateLimitsItem Liste der Informationen zu Ratengrenzwerten

RealtimeServerEventResponseAudioDelta

Das Serverereignis response.audio.delta wird zurückgegeben, wenn die vom Modell generierten Audioinhalte aktualisiert werden.

Ereignisstruktur

{
  "type": "response.audio.delta",
  "response_id": "<response_id>",
  "item_id": "<item_id>",
  "output_index": 0,
  "content_index": 0,
  "delta": "<delta>"
}

Eigenschaften

Feld type Beschreibung
type Zeichenfolge Der Ereignistyp muss response.audio.delta sein.
response_id Zeichenfolge Die ID der Antwort.
item_id Zeichenfolge Die ID des Elements.
output_index integer Der Index des Ausgabeelements in der Antwort.
content_index integer Der Index des Inhaltsteils im Inhaltsarray des Elements.
delta Zeichenfolge Base64-codiertes Audiodatendelta.

RealtimeServerEventResponseAudioDone

Das Serverereignis response.audio.done wird zurückgegeben, wenn die vom Modell generierten Audioinhalte fertig sind.

Dieses Ereignis wird auch zurückgegeben, wenn eine Antwort unterbrochen wird, unvollständig ist oder abgebrochen wird.

Ereignisstruktur

{
  "type": "response.audio.done",
  "response_id": "<response_id>",
  "item_id": "<item_id>",
  "output_index": 0,
  "content_index": 0
}

Eigenschaften

Feld type Beschreibung
type Zeichenfolge Der Ereignistyp muss response.audio.done sein.
response_id Zeichenfolge Die ID der Antwort.
item_id Zeichenfolge Die ID des Elements.
output_index integer Der Index des Ausgabeelements in der Antwort.
content_index integer Der Index des Inhaltsteils im Inhaltsarray des Elements.

RealtimeServerEventResponseAudioTranscriptDelta

Das Serverereignis response.audio_transcript.delta wird zurückgegeben, wenn die vom Modell generierte Transkription der Audioausgabe aktualisiert wird.

Ereignisstruktur

{
  "type": "response.audio_transcript.delta",
  "response_id": "<response_id>",
  "item_id": "<item_id>",
  "output_index": 0,
  "content_index": 0,
  "delta": "<delta>"
}

Eigenschaften

Feld type Beschreibung
type Zeichenfolge Der Ereignistyp muss response.audio_transcript.delta sein.
response_id Zeichenfolge Die ID der Antwort.
item_id Zeichenfolge Die ID des Elements.
output_index integer Der Index des Ausgabeelements in der Antwort.
content_index integer Der Index des Inhaltsteils im Inhaltsarray des Elements.
delta Zeichenfolge Das Transkriptdelta.

RealtimeServerEventResponseAudioTranscriptDone

Das Serverereignis response.audio_transcript.done wird zurückgegeben, wenn das Streaming der vom Modell generierten Transkription der Audioausgabe abgeschlossen ist.

Dieses Ereignis wird auch zurückgegeben, wenn eine Antwort unterbrochen wird, unvollständig ist oder abgebrochen wird.

Ereignisstruktur

{
  "type": "response.audio_transcript.done",
  "response_id": "<response_id>",
  "item_id": "<item_id>",
  "output_index": 0,
  "content_index": 0,
  "transcript": "<transcript>"
}

Eigenschaften

Feld type Beschreibung
type Zeichenfolge Der Ereignistyp muss response.audio_transcript.done sein.
response_id Zeichenfolge Die ID der Antwort.
item_id Zeichenfolge Die ID des Elements.
output_index integer Der Index des Ausgabeelements in der Antwort.
content_index integer Der Index des Inhaltsteils im Inhaltsarray des Elements.
Transkript Zeichenfolge Die endgültige Transkription der Audiodaten.

RealtimeServerEventResponseContentPartAdded

Das Serverereignis response.content_part.added wird zurückgegeben, wenn während der Antwortgenerierung ein neues Inhaltsteil einem Nachrichtenelement des Assistenten hinzugefügt wird.

Ereignisstruktur

{
  "type": "response.content_part.added",
  "response_id": "<response_id>",
  "item_id": "<item_id>",
  "output_index": 0,
  "content_index": 0
}

Eigenschaften

Feld type Beschreibung
type Zeichenfolge Der Ereignistyp muss response.content_part.added sein.
response_id Zeichenfolge Die ID der Antwort.
item_id Zeichenfolge Die ID des Elements, dem der Inhaltsteil hinzugefügt wurde.
output_index integer Der Index des Ausgabeelements in der Antwort.
content_index integer Der Index des Inhaltsteils im Inhaltsarray des Elements.
part RealtimeContentPart Der hinzugefügte Inhaltsteil.

Teileigenschaften

Feld type Beschreibung
type RealtimeContentPartType

RealtimeServerEventResponseContentPartDone

Das Serverereignis response.content_part.done wird zurückgegeben, wenn das Streamen eines Inhaltsteils in einem Nachrichtenelement des Assistenten abgeschlossen ist.

Dieses Ereignis wird auch zurückgegeben, wenn eine Antwort unterbrochen wird, unvollständig ist oder abgebrochen wird.

Ereignisstruktur

{
  "type": "response.content_part.done",
  "response_id": "<response_id>",
  "item_id": "<item_id>",
  "output_index": 0,
  "content_index": 0
}

Eigenschaften

Feld type Beschreibung
type Zeichenfolge Der Ereignistyp muss response.content_part.done sein.
response_id Zeichenfolge Die ID der Antwort.
item_id Zeichenfolge Die ID des Elements.
output_index integer Der Index des Ausgabeelements in der Antwort.
content_index integer Der Index des Inhaltsteils im Inhaltsarray des Elements.
part RealtimeContentPart Der fertige Inhaltsteil.

Teileigenschaften

Feld type Beschreibung
type RealtimeContentPartType

RealtimeServerEventResponseCreated

Das Serverereignis response.created wird zurückgegeben, wenn eine neue Antwort erstellt wird. Dies ist das erste Ereignis der Antworterstellung, wobei sich die Antwort im Anfangszustand in_progress befindet.

Ereignisstruktur

{
  "type": "response.created"
}

Eigenschaften

Feld type Beschreibung
type Zeichenfolge Der Ereignistyp muss response.created sein.
automatisieren RealtimeResponse Das Antwortobjekt

RealtimeServerEventResponseDone

Das Serverereignis response.done wird zurückgegeben, wenn das Streamen einer Antwort abgeschlossen ist. Dieses Ereignis wird immer ausgegeben, unabhängig vom Endzustand. Das Antwortobjekt im response.done-Ereignis enthält alle Ausgabeelemente in der Antwort, aber nicht die unformatierten Audiodaten.

Ereignisstruktur

{
  "type": "response.done"
}

Eigenschaften

Feld type Beschreibung
type Zeichenfolge Der Ereignistyp muss response.done sein.
automatisieren RealtimeResponse Das Antwortobjekt

RealtimeServerEventResponseFunctionCallArgumentsDelta

Das Serverereignis response.function_call_arguments.delta wird zurückgegeben, wenn die vom Modell generierten Funktionsaufrufargumente aktualisiert werden.

Ereignisstruktur

{
  "type": "response.function_call_arguments.delta",
  "response_id": "<response_id>",
  "item_id": "<item_id>",
  "output_index": 0,
  "call_id": "<call_id>",
  "delta": "<delta>"
}

Eigenschaften

Feld type Beschreibung
type Zeichenfolge Der Ereignistyp muss response.function_call_arguments.delta sein.
response_id Zeichenfolge Die ID der Antwort.
item_id Zeichenfolge Die ID des Funktionsaufrufelements.
output_index integer Der Index des Ausgabeelements in der Antwort.
call_id Zeichenfolge Die ID des Funktionsaufrufs.
delta Zeichenfolge Das Argumentdelta als JSON-Zeichenfolge.

RealtimeServerEventResponseFunctionCallArgumentsDone

Das Serverereignis response.function_call_arguments.done wird zurückgegeben, wenn das Streaming der vom Modell generierten Funktionsaufrufargumente abgeschlossen ist.

Dieses Ereignis wird auch zurückgegeben, wenn eine Antwort unterbrochen wird, unvollständig ist oder abgebrochen wird.

Ereignisstruktur

{
  "type": "response.function_call_arguments.done",
  "response_id": "<response_id>",
  "item_id": "<item_id>",
  "output_index": 0,
  "call_id": "<call_id>",
  "arguments": "<arguments>"
}

Eigenschaften

Feld type Beschreibung
type Zeichenfolge Der Ereignistyp muss response.function_call_arguments.done sein.
response_id Zeichenfolge Die ID der Antwort.
item_id Zeichenfolge Die ID des Funktionsaufrufelements.
output_index integer Der Index des Ausgabeelements in der Antwort.
call_id Zeichenfolge Die ID des Funktionsaufrufs.
arguments Zeichenfolge Die letzten Argumente als JSON-Zeichenfolge.

RealtimeServerEventResponseOutputItemAdded

Das Serverereignis response.output_item.added wird zurückgegeben, wenn während der Antwortgenerierung ein neues Element erstellt wird.

Ereignisstruktur

{
  "type": "response.output_item.added",
  "response_id": "<response_id>",
  "output_index": 0
}

Eigenschaften

Feld type Beschreibung
type Zeichenfolge Der Ereignistyp muss response.output_item.added sein.
response_id Zeichenfolge Die ID der Antwort, zu der das Element gehört.
output_index integer Der Index des Ausgabeelements in der Antwort.
item RealtimeConversationResponseItem Das hinzugefügte Element

RealtimeServerEventResponseOutputItemDone

Das Serverereignis response.output_item.done wird zurückgegeben, wenn das Streamen eines Elements abgeschlossen ist.

Dieses Ereignis wird auch zurückgegeben, wenn eine Antwort unterbrochen wird, unvollständig ist oder abgebrochen wird.

Ereignisstruktur

{
  "type": "response.output_item.done",
  "response_id": "<response_id>",
  "output_index": 0
}

Eigenschaften

Feld type Beschreibung
type Zeichenfolge Der Ereignistyp muss response.output_item.done sein.
response_id Zeichenfolge Die ID der Antwort, zu der das Element gehört.
output_index integer Der Index des Ausgabeelements in der Antwort.
item RealtimeConversationResponseItem Das fertig gestreamte Element

RealtimeServerEventResponseTextDelta

Das Serverereignis response.text.delta wird zurückgegeben, wenn der vom Modell generierte Text aktualisiert wird. Der Text entspricht dem Inhaltsteil text eines Nachrichtenelements des Assistenten.

Ereignisstruktur

{
  "type": "response.text.delta",
  "response_id": "<response_id>",
  "item_id": "<item_id>",
  "output_index": 0,
  "content_index": 0,
  "delta": "<delta>"
}

Eigenschaften

Feld type Beschreibung
type Zeichenfolge Der Ereignistyp muss response.text.delta sein.
response_id Zeichenfolge Die ID der Antwort.
item_id Zeichenfolge Die ID des Elements.
output_index integer Der Index des Ausgabeelements in der Antwort.
content_index integer Der Index des Inhaltsteils im Inhaltsarray des Elements.
delta Zeichenfolge Das Textdelta.

RealtimeServerEventResponseTextDone

Das Serverereignis response.text.done wird zurückgegeben, wenn das Streamen des vom Modell generierten Texts abgeschlossen ist. Der Text entspricht dem Inhaltsteil text eines Nachrichtenelements des Assistenten.

Dieses Ereignis wird auch zurückgegeben, wenn eine Antwort unterbrochen wird, unvollständig ist oder abgebrochen wird.

Ereignisstruktur

{
  "type": "response.text.done",
  "response_id": "<response_id>",
  "item_id": "<item_id>",
  "output_index": 0,
  "content_index": 0,
  "text": "<text>"
}

Eigenschaften

Feld type Beschreibung
type Zeichenfolge Der Ereignistyp muss response.text.done sein.
response_id Zeichenfolge Die ID der Antwort.
item_id Zeichenfolge Die ID des Elements.
output_index integer Der Index des Ausgabeelements in der Antwort.
content_index integer Der Index des Inhaltsteils im Inhaltsarray des Elements.
Text Zeichenfolge Der endgültige Textinhalt.

RealtimeServerEventSessionCreated

Das Serverereignis session.created ist das erste Serverereignis, wenn Sie eine neue Verbindung mit der Realtime-API herstellen. Dieses Ereignis erstellt eine neue Sitzung mit der Standardsitzungskonfiguration und gibt sie zurück.

Ereignisstruktur

{
  "type": "session.created"
}

Eigenschaften

Feld type Beschreibung
type Zeichenfolge Der Ereignistyp muss session.created sein.
session RealtimeResponseSession Das Sitzungsobjekt

RealtimeServerEventSessionUpdated

Das Serverereignis session.updated wird zurückgegeben, wenn eine Sitzung vom Client aktualisiert wird. Wenn ein Fehler auftritt, sendet der Server stattdessen ein error-Ereignis.

Ereignisstruktur

{
  "type": "session.updated"
}

Eigenschaften

Feld type Beschreibung
type Zeichenfolge Der Ereignistyp muss session.updated sein.
session RealtimeResponseSession Das Sitzungsobjekt

Komponenten

RealtimeAudioFormat

Zulässige Werte:

  • pcm16
  • g711_ulaw
  • g711_alaw

RealtimeAudioInputTranscriptionModel

Zulässige Werte:

  • whisper-1

RealtimeAudioInputTranscriptionSettings

Feld type Beschreibung
model RealtimeAudioInputTranscriptionModel Das Standardmodell whisper-1 ist derzeit das einzige Modell, das für die Transkription von Audioeingaben unterstützt wird.

RealtimeClientEvent

Feld type Beschreibung
type RealtimeClientEventType Der Typ des Clientereignisses
event_id Zeichenfolge Die eindeutige ID des Ereignisses Der Client kann die ID angeben, damit das Ereignis identifiziert werden kann.

RealtimeClientEventType

Zulässige Werte:

  • session.update
  • input_audio_buffer.append
  • input_audio_buffer.commit
  • input_audio_buffer.clear
  • conversation.item.create
  • conversation.item.delete
  • conversation.item.truncate
  • response.create
  • response.cancel

RealtimeContentPart

Feld type Beschreibung
type RealtimeContentPartType In dieser Spalte wird der Inhaltstyp angezeigt.

Eine Eigenschaft des function-Objekts.

Zulässige Werte: input_text, input_audio, item_reference, text.
Text Zeichenfolge Der Textinhalt. Diese Eigenschaft gilt für die Inhaltstypen input_text und text.
id Zeichenfolge ID eines vorherigen Unterhaltungselements, auf das in auf dem Client und auf dem Server erstellten Elementen verwiesen werden soll. Diese Eigenschaft gilt für den Inhaltstyp item_reference in response.create-Ereignissen.
audio Zeichenfolge Die Base64-codierten Audiobytes. Diese Eigenschaft gilt für den Inhaltstyp input_audio.
Transkript Zeichenfolge Die Transkription der Audioinhalte Diese Eigenschaft gilt für den Inhaltstyp input_audio.

RealtimeContentPartType

Zulässige Werte:

  • input_text
  • input_audio
  • text
  • audio

RealtimeConversationItemBase

Das Element, das der Unterhaltung hinzugefügt werden soll.

In dieser Tabelle werden alle RealtimeConversationItem-Eigenschaften beschrieben. Die Eigenschaften, die pro Ereignis anwendbar sind, hängen von RealtimeItemType ab.

Feld type Beschreibung
id Zeichenfolge Die eindeutige ID des Elements Der Client kann die ID angeben, um den serverseitigen Kontext zu verwalten. Wenn der Client keine ID bereitstellt, generiert der Server eine.
type RealtimeItemType Der Typ des Elements

Zulässige Werte: message, function_call, function_call_output
Objekt Zeichenfolge Der Bezeichner für das zurückgegebene API-Objekt. Der Wert ist immer realtime.item.
Status RealtimeItemStatus Der Status des Elements. Dieses Feld wirkt sich nicht auf die Unterhaltung aus, wird jedoch für die Konsistenz mit dem conversation.item.created-Ereignis akzeptiert.

Zulässige Werte: completed, incomplete.
role RealtimeMessageRole Die Rolle des Absenders oder der Absenderin der Nachricht. Diese Eigenschaft ist nur für message-Elemente anwendbar.

Zulässige Werte: system, user, assistant
content Array von RealtimeContentPart Der Inhalt der Nachricht. Diese Eigenschaft ist nur für message-Elemente anwendbar.

– Nachrichtenelemente der Rolle system unterstützen nur input_text-Inhalte.
– Nachrichtenelemente der Rolle user unterstützen input_text- und input_audio-Inhalte.
– Nachrichtenelemente der Rolle assistant unterstützen text-Inhalte.
call_id Zeichenfolge Die ID des Funktionsaufrufs (für function_call- und function_call_output-Elemente). Wenn ein function_call_output-Element übergeben wird, überprüft der Server, ob ein function_call-Element mit derselben ID im Unterhaltungsverlauf vorhanden ist.
Name Zeichenfolge Der Name der aufgerufenen Funktion (für function_call-Elemente).
arguments Zeichenfolge Die Argumente des Funktionsaufrufs (für function_call-Elemente).
output Zeichenfolge Die Ausgabe des Funktionsaufrufs (für function_call_output-Elemente).

RealtimeConversationRequestItem

Sie verwenden das Objekt RealtimeConversationRequestItem, um über das Element conversation.item.create ein neues Element in der Unterhaltung zu erstellen.

Feld type Beschreibung
type RealtimeItemType Der Typ des Elements
id Zeichenfolge Die eindeutige ID des Elements Der Client kann die ID angeben, um den serverseitigen Kontext zu verwalten. Wenn der Client keine ID bereitstellt, generiert der Server eine.

RealtimeConversationResponseItem

Das Objekt RealtimeConversationResponseItem stellt ein Element in der Unterhaltung dar. Es wird in einigen der Serverereignisse verwendet, z. B.:

Feld type Beschreibung
Objekt Zeichenfolge Der Bezeichner für das zurückgegebene API-Objekt.

Zulässige Werte: realtime.item
type RealtimeItemType Der Typ des Elements

Zulässige Werte: message, function_call, function_call_output
id Zeichenfolge Die eindeutige ID des Elements Der Client kann die ID angeben, um den serverseitigen Kontext zu verwalten. Wenn der Client keine ID bereitstellt, generiert der Server eine.

Diese Eigenschaft lässt Nullwerte zu.

RealtimeFunctionTool

Die Definition eines Funktionstools, wie es vom Echtzeitendpunkt verwendet wird.

Feld type Beschreibung
type Zeichenfolge Der Typ des Tools.

Zulässige Werte: function
Name Zeichenfolge Der Name der Funktion.
Beschreibung Zeichenfolge Die Beschreibung der Funktion, einschließlich Verwendungsrichtlinien. Beispiel: „Mit dieser Funktion rufen Sie die aktuelle Zeit ab.“
parameters Objekt Die Parameter der Funktion in Form eines JSON-Objekts.

RealtimeItemStatus

Zulässige Werte:

  • in_progress
  • completed
  • incomplete

RealtimeItemType

Zulässige Werte:

  • message
  • function_call
  • function_call_output

RealtimeMessageRole

Zulässige Werte:

  • system
  • user
  • assistant

RealtimeRequestAssistantMessageItem

Feld type Beschreibung
role Zeichenfolge Die Rolle der Nachricht

Zulässige Werte: assistant
content Array von RealtimeRequestTextContentPart Der Inhalt der Nachricht.

RealtimeRequestAudioContentPart

Feld type Beschreibung
type Zeichenfolge Der Typ des Inhaltsteils

Zulässige Werte: input_audio
Transkript Zeichenfolge Die Transkription der Audioinhalte

RealtimeRequestFunctionCallItem

Feld type Beschreibung
type Zeichenfolge Der Typ des Elements

Zulässige Werte: function_call
Name Zeichenfolge Der Name des Funktionsaufrufelements
call_id Zeichenfolge Die ID des Funktionsaufrufelements.
arguments Zeichenfolge Die Argumente des Funktionsaufrufelements
Status RealtimeItemStatus Der Status des Elements.

RealtimeRequestFunctionCallOutputItem

Feld type Beschreibung
type Zeichenfolge Der Typ des Elements

Zulässige Werte: function_call_output
call_id Zeichenfolge Die ID des Funktionsaufrufelements.
output Zeichenfolge Die Ausgabe des Funktionsaufrufelements

RealtimeRequestMessageItem

Feld type Beschreibung
type Zeichenfolge Der Typ des Elements

Zulässige Werte: message
role RealtimeMessageRole Die Rolle der Nachricht
Status RealtimeItemStatus Der Status des Elements.

RealtimeRequestMessageReferenceItem

Feld type Beschreibung
type Zeichenfolge Der Typ des Elements

Zulässige Werte: message
id Zeichenfolge Die Kennung des Nachrichtenelements.

RealtimeRequestSession

Sie verwenden das Objekt RealtimeRequestSession, wenn Sie die Sitzungskonfiguration über das Ereignis session.update aktualisieren möchten.

Feld type Beschreibung
modalities array Die von der Sitzung unterstützten Modi.

Zulässige Werte: text, audio.

Die Standardeinstellung "modalities": ["text", "audio"] aktiviert sowohl Text- als auch Audiomodi. Legen Sie "modalities": ["text"] fest, um nur Text zu aktivieren. Nur Audio kann nicht aktiviert werden.
Setup Zeichenfolge Die Anweisungen (die Systemmeldung) für die Text- und Audioantworten des Modells.

Im Folgenden finden Sie einige Beispielanweisungen, mit denen Sie den Inhalt und das Format von Text- und Audioantworten festlegen können:
"instructions": "be succinct"
"instructions": "act friendly"
"instructions": "here are examples of good responses"

Im Folgenden finden Sie einige Beispielanweisungen zur Steuerung des Audioverhaltens:
"instructions": "talk quickly"
"instructions": "inject emotion into your voice"
"instructions": "laugh frequently"

Auch wenn das Modell diese Anweisungen möglicherweise nicht immer befolgt, stellen sie Leitfäden für das gewünschte Verhalten dar.
voice RealtimeVoice Die für die Modellantwort in dieser Sitzung verwendete Stimme.

Nachdem die Stimme in der Sitzung für eine Audioantwort des Modells verwendet wurde, kann sie nicht mehr geändert werden.
input_audio_format RealtimeAudioFormat Das Format für die Eingabeaudioinhalte
output_audio_format RealtimeAudioFormat Das Format für die Ausgabeaudioinhalte
input_audio_transcription RealtimeAudioInputTranscriptionSettings Die Einstellungen für die Audioeingabetranskription

Diese Eigenschaft lässt Nullwerte zu.
turn_detection RealtimeTurnDetection Die Einstellungen zur Erkennung von Sprecherwechseln für die Sitzung

Diese Eigenschaft lässt Nullwerte zu.
tools Array von RealtimeTool Die in der Sitzung für das Modell verfügbaren Tools
Toolauswahl RealtimeToolChoice Die Toolauswahl für die Sitzung

Zulässige Werte: auto, none und required. Andernfalls können Sie den Namen der zu verwendenden Funktion angeben.
Temperatur Zahl Die Temperatur für die Stichprobenentnahme für das Modell. Die zulässigen Temperaturwerte sind auf [0,6, 1,2] beschränkt. Der Standardwert ist 0,8.
max_response_output_tokens Integer oder „inf“ Die maximale Anzahl von Ausgabetoken pro Assistentenantwort, einschließlich Toolaufrufen.

Geben Sie eine ganze Zahl zwischen 1 und 4.096 an, um die Anzahl Ausgabetoken einzuschränken. Legen Sie andernfalls den Wert auf „inf“ fest, um die maximale Anzahl Token zuzulassen.

Legen Sie beispielsweise "max_response_output_tokens": 1000 fest, um die Anzahl Ausgabetoken auf 1.000 zu beschränken. Legen Sie "max_response_output_tokens": "inf" fest, um die maximale Anzahl Token zuzulassen.

Wird standardmäßig auf "inf" festgelegt.

RealtimeRequestSystemMessageItem

Feld type Beschreibung
role Zeichenfolge Die Rolle der Nachricht

Zulässige Werte: system
content Array von RealtimeRequestTextContentPart Der Inhalt der Nachricht.

RealtimeRequestTextContentPart

Feld type Beschreibung
type Zeichenfolge Der Typ des Inhaltsteils

Zulässige Werte: input_text
Text Zeichenfolge Der Textinhalt.

RealtimeRequestUserMessageItem

Feld type Beschreibung
role Zeichenfolge Die Rolle der Nachricht

Zulässige Werte: user
content Array von RealtimeRequestTextContentPart oder RealtimeRequestAudioContentPart Der Inhalt der Nachricht.

RealtimeResponse

Feld type Beschreibung
Objekt Zeichenfolge Das Antwortobjekt

Zulässige Werte: realtime.response
id Zeichenfolge Die eindeutige ID der Antwort
Status RealtimeResponseStatus Der Status der Antwort.

Der Standardstatus ist in_progress.
status_details RealtimeResponseStatusDetails Die Details des Antwortstatus

Diese Eigenschaft lässt Nullwerte zu.
output Array von RealtimeConversationResponseItem Die Ausgabeelemente der Antwort
Nutzung Objekt Nutzungsstatistiken für die Antwort Jede Realtime-API-Sitzung verwaltet einen Unterhaltungskontext und fügt neue Elemente an die Unterhaltung an. Die Ausgabe vorheriger Sprecherwechsel (Text- und Audiotoken) ist eine Eingabe für spätere Turns.

Siehe geschachtelte Eigenschaften.
+ total_tokens integer Die Gesamtanzahl der Token in der Antwort, einschließlich Ein- und Ausgabetext und Audiotoken

Eine Eigenschaft des usage-Objekts.
+ input_tokens integer Die Anzahl der in der Antwort verwendeten Eingabetoken, einschließlich Text- und Audiotoken

Eine Eigenschaft des usage-Objekts.
+ output_tokens integer Die Anzahl der in der Antwort gesendeten Ausgabetoken, einschließlich Text- und Audiotoken

Eine Eigenschaft des usage-Objekts.
+ input_token_details Objekt Details zu den in der Antwort verwendeten Eingabetoken

Eine Eigenschaft des usage-Objekts.
br>
Siehe geschachtelte Eigenschaften.
+ cached_tokens integer Die Anzahl der in der Antwort verwendeten zwischengespeicherten Token

Eine Eigenschaft des input_token_details-Objekts.
+ text_tokens integer Die Anzahl der in der Antwort verwendeten Texttoken

Eine Eigenschaft des input_token_details-Objekts.
+ audio_tokens integer Die Anzahl der in der Antwort verwendeten Audiotoken

Eine Eigenschaft des input_token_details-Objekts.
+ output_token_details Objekt Details zu den in der Antwort verwendeten Ausgabetoken

Eine Eigenschaft des usage-Objekts.

Siehe geschachtelte Eigenschaften.
+ text_tokens integer Die Anzahl der in der Antwort verwendeten Texttoken

Eine Eigenschaft des output_token_details-Objekts.
+ audio_tokens integer Die Anzahl der in der Antwort verwendeten Audiotoken

Eine Eigenschaft des output_token_details-Objekts.

RealtimeResponseAudioContentPart

Feld type Beschreibung
type Zeichenfolge Der Typ des Inhaltsteils

Zulässige Werte: audio
Transkript Zeichenfolge Die Transkription der Audioinhalte

Diese Eigenschaft lässt Nullwerte zu.

RealtimeResponseBase

Die Antwortressource.

RealtimeResponseFunctionCallItem

Feld type Beschreibung
type Zeichenfolge Der Typ des Elements

Zulässige Werte: function_call
Name Zeichenfolge Der Name des Funktionsaufrufelements
call_id Zeichenfolge Die ID des Funktionsaufrufelements.
arguments Zeichenfolge Die Argumente des Funktionsaufrufelements
Status RealtimeItemStatus Der Status des Elements.

RealtimeResponseFunctionCallOutputItem

Feld type Beschreibung
type Zeichenfolge Der Typ des Elements

Zulässige Werte: function_call_output
call_id Zeichenfolge Die ID des Funktionsaufrufelements.
output Zeichenfolge Die Ausgabe des Funktionsaufrufelements

RealtimeResponseMessageItem

Feld type Beschreibung
type Zeichenfolge Der Typ des Elements

Zulässige Werte: message
role RealtimeMessageRole Die Rolle der Nachricht
content array Der Inhalt der Nachricht.

Arrayelemente: RealtimeResponseTextContentPart
Status RealtimeItemStatus Der Status des Elements.

RealtimeResponseOptions

Feld type Beschreibung
modalities array Die von der Sitzung unterstützten Modi.

Zulässige Werte: text, audio.

Die Standardeinstellung "modalities": ["text", "audio"] aktiviert sowohl Text- als auch Audiomodi. Legen Sie "modalities": ["text"] fest, um nur Text zu aktivieren. Nur Audio kann nicht aktiviert werden.
Setup Zeichenfolge Die Anweisungen (die Systemmeldung) für die Text- und Audioantworten des Modells.

Im Folgenden finden Sie einige Beispielanweisungen, mit denen Sie den Inhalt und das Format von Text- und Audioantworten festlegen können:
"instructions": "be succinct"
"instructions": "act friendly"
"instructions": "here are examples of good responses"

Im Folgenden finden Sie einige Beispielanweisungen zur Steuerung des Audioverhaltens:
"instructions": "talk quickly"
"instructions": "inject emotion into your voice"
"instructions": "laugh frequently"

Auch wenn das Modell diese Anweisungen möglicherweise nicht immer befolgt, stellen sie Leitfäden für das gewünschte Verhalten dar.
voice RealtimeVoice Die für die Modellantwort in dieser Sitzung verwendete Stimme.

Nachdem die Stimme in der Sitzung für eine Audioantwort des Modells verwendet wurde, kann sie nicht mehr geändert werden.
output_audio_format RealtimeAudioFormat Das Format für die Ausgabeaudioinhalte
tools Array von RealtimeTool Die in der Sitzung für das Modell verfügbaren Tools
Toolauswahl RealtimeToolChoice Die Toolauswahl für die Sitzung
Temperatur Zahl Die Temperatur für die Stichprobenentnahme für das Modell. Die zulässigen Temperaturwerte sind auf [0,6, 1,2] beschränkt. Der Standardwert ist 0,8.
max__output_tokens Integer oder „inf“ Die maximale Anzahl von Ausgabetoken pro Assistentenantwort, einschließlich Toolaufrufen.

Geben Sie eine ganze Zahl zwischen 1 und 4.096 an, um die Anzahl Ausgabetoken einzuschränken. Legen Sie andernfalls den Wert auf „inf“ fest, um die maximale Anzahl Token zuzulassen.

Legen Sie beispielsweise "max_response_output_tokens": 1000 fest, um die Anzahl Ausgabetoken auf 1.000 zu beschränken. Legen Sie "max_response_output_tokens": "inf" fest, um die maximale Anzahl Token zuzulassen.

Wird standardmäßig auf "inf" festgelegt.
Konversation (conversation) Zeichenfolge Steuert, zu welcher Unterhaltung die Antwort hinzugefügt wird. Unterstützte Werte sind auto und none.

Der Wert auto (oder wenn diese Eigenschaft nicht festgelegt wird) stellt sicher, dass der Inhalt der Antwort zur Standardunterhaltung der Sitzung hinzugefügt wird.

Legen Sie diese Eigenschaft auf none fest, um eine Out-of-Band-Antwort zu erstellen, deren Elemente nicht zur Standardunterhaltung hinzugefügt werden. Weitere Informationen finden Sie in der Schrittanleitung.

Der Standardwert lautet "auto".
metadata Karte Bis zu 16 Schlüssel-Wert-Paare, die an ein Objekt angefügt werden können. Dies kann hilfreich sein, um zusätzliche Informationen zum Objekt in einem strukturierten Format zu speichern. Schlüssel dürfen maximal 64 Zeichen und Werte dürfen höchstens 512 Zeichen lang sein.

Beispiel: metadata: { topic: "classification" }
input array Geben Sie Elemente ein, die in den Prompt für das Modell aufgenommen werden sollen. Erstellt einen neuen Kontext für diese Antwort, ohne die Standardunterhaltung einzubeziehen. Kann Verweise auf Elemente aus der Standardunterhaltung enthalten.

Arrayelemente: RealtimeConversationItemBase

RealtimeResponseSession

Das Objekt RealtimeResponseSession stellt eine Sitzung in der Echtzeit-API dar. Es wird in einigen der Serverereignisse verwendet, z. B.:

Feld type Beschreibung
Objekt Zeichenfolge Das Sitzungsobjekt

Zulässige Werte: realtime.session
id Zeichenfolge Die eindeutige ID der Sitzung
model Zeichenfolge Das für die Sitzung verwendete Modell
modalities array Die von der Sitzung unterstützten Modi.

Zulässige Werte: text, audio.

Die Standardeinstellung "modalities": ["text", "audio"] aktiviert sowohl Text- als auch Audiomodi. Legen Sie "modalities": ["text"] fest, um nur Text zu aktivieren. Nur Audio kann nicht aktiviert werden.
Setup Zeichenfolge Die Anweisungen (die Systemmeldung) für die Text- und Audioantworten des Modells.

Im Folgenden finden Sie einige Beispielanweisungen, mit denen Sie den Inhalt und das Format von Text- und Audioantworten festlegen können:
"instructions": "be succinct"
"instructions": "act friendly"
"instructions": "here are examples of good responses"

Im Folgenden finden Sie einige Beispielanweisungen zur Steuerung des Audioverhaltens:
"instructions": "talk quickly"
"instructions": "inject emotion into your voice"
"instructions": "laugh frequently"

Auch wenn das Modell diese Anweisungen möglicherweise nicht immer befolgt, stellen sie Leitfäden für das gewünschte Verhalten dar.
voice RealtimeVoice Die für die Modellantwort in dieser Sitzung verwendete Stimme.

Nachdem die Stimme in der Sitzung für eine Audioantwort des Modells verwendet wurde, kann sie nicht mehr geändert werden.
input_audio_format RealtimeAudioFormat Das Format für die Eingabeaudioinhalte
output_audio_format RealtimeAudioFormat Das Format für die Ausgabeaudioinhalte
input_audio_transcription RealtimeAudioInputTranscriptionSettings Die Einstellungen für die Audioeingabetranskription

Diese Eigenschaft lässt Nullwerte zu.
turn_detection RealtimeTurnDetection Die Einstellungen zur Erkennung von Sprecherwechseln für die Sitzung

Diese Eigenschaft lässt Nullwerte zu.
tools Array von RealtimeTool Die in der Sitzung für das Modell verfügbaren Tools
Toolauswahl RealtimeToolChoice Die Toolauswahl für die Sitzung
Temperatur Zahl Die Temperatur für die Stichprobenentnahme für das Modell. Die zulässigen Temperaturwerte sind auf [0,6, 1,2] beschränkt. Der Standardwert ist 0,8.
max_response_output_tokens Integer oder „inf“ Die maximale Anzahl von Ausgabetoken pro Assistentenantwort, einschließlich Toolaufrufen.

Geben Sie eine ganze Zahl zwischen 1 und 4.096 an, um die Anzahl Ausgabetoken einzuschränken. Legen Sie andernfalls den Wert auf „inf“ fest, um die maximale Anzahl Token zuzulassen.

Legen Sie beispielsweise "max_response_output_tokens": 1000 fest, um die Anzahl Ausgabetoken auf 1.000 zu beschränken. Legen Sie "max_response_output_tokens": "inf" fest, um die maximale Anzahl Token zuzulassen.

RealtimeResponseStatus

Zulässige Werte:

  • in_progress
  • completed
  • cancelled
  • incomplete
  • failed

RealtimeResponseStatusDetails

Feld type Beschreibung
type RealtimeResponseStatus Der Status der Antwort.

RealtimeResponseTextContentPart

Feld type Beschreibung
type Zeichenfolge Der Typ des Inhaltsteils

Zulässige Werte: text
Text Zeichenfolge Der Textinhalt.

RealtimeServerEvent

Feld type Beschreibung
type RealtimeServerEventType Der Typ des Serverereignisses
event_id Zeichenfolge Die eindeutige ID des Serverereignisses.

RealtimeServerEventRateLimitsUpdatedRateLimitsItem

Feld type BESCHREIBUNG
name Zeichenfolge Der Name der Ratenlimiteigenschaft, zu der dieses Element Informationen enthält.
limit integer Der maximale konfigurierte Grenzwert für diese Ratenlimiteigenschaft.
verbleibend integer Das verbleibende Kontingent im Bezug auf das konfigurierte Limit für diese Ratenlimiteigenschaft.
reset_seconds Zahl Die verbleibende Zeit in Sekunden, bis diese Ratenlimiteigenschaft zurückgesetzt wird.

RealtimeServerEventType

Zulässige Werte:

  • session.created
  • session.updated
  • conversation.created
  • conversation.item.created
  • conversation.item.deleted
  • conversation.item.truncated
  • response.created
  • response.done
  • rate_limits.updated
  • response.output_item.added
  • response.output_item.done
  • response.content_part.added
  • response.content_part.done
  • response.audio.delta
  • response.audio.done
  • response.audio_transcript.delta
  • response.audio_transcript.done
  • response.text.delta
  • response.text.done
  • response.function_call_arguments.delta
  • response.function_call_arguments.done
  • input_audio_buffer.speech_started
  • input_audio_buffer.speech_stopped
  • conversation.item.input_audio_transcription.completed
  • conversation.item.input_audio_transcription.failed
  • input_audio_buffer.committed
  • input_audio_buffer.cleared
  • error

RealtimeServerVadTurnDetection

Feld type Beschreibung
type Zeichenfolge Der Typ der Sprecherwechselerkennung

Zulässige Werte: server_vad
threshold Zahl Der Aktivierungsschwellenwert für die Server-VAD-Erkennung von Sprecherwechseln In lauten Umgebungen müssen Sie möglicherweise den Schwellenwert erhöhen, um falsch positive Ergebnisse zu vermeiden. In ruhigen Umgebungen müssen Sie möglicherweise den Schwellenwert verringern, um falsch negative Ergebnisse zu vermeiden.

Wird standardmäßig auf 0.5 festgelegt. Sie können den Schwellenwert auf einen Wert zwischen 0.0 und 1.0 festlegen.
prefix_padding_ms Zeichenfolge Die Dauer von Sprachaudioinhalten (in Millisekunden), die vor dem Start der erkannten Sprache eingeschlossen werden soll

Wird standardmäßig auf 300 festgelegt.
silence_duration_ms Zeichenfolge Die Dauer der Stille (in Millisekunden), um das Ende von Sprache zu erkennen. Sie sollten das Ende der Sprache so schnell wie möglich erkennen, aber nicht zu früh, da andernfalls der letzte Teil der Sprache abgeschnitten wird.

Das Modell reagiert schneller, wenn Sie diesen Wert auf eine niedrigere Zahl festlegen, eventuell wird dann aber der letzte Teil der Sprache abgeschnitten. Wenn Sie diesen Wert auf eine höhere Zahl festlegen, wartet das Modell länger, bevor das Ende der Sprach erkannt wird. Dies verlängert aber auch die Zeit bis zu einer Antwort.

RealtimeSessionBase

Objektkonfiguration der Echtzeitsitzung.

RealtimeTool

Die Basisdarstellung einer Echtzeittooldefinition.

Feld type Beschreibung
type RealtimeToolType Der Typ des Tools.

RealtimeToolChoice

Der kombinierte Satz verfügbarer Darstellungen für einen tool_choice-Echtzeitparameter. Dies schließt sowohl Optionen für Zeichenfolgenliterale wie „auto“ als auch strukturierte Verweise auf definierte Tools ein.

RealtimeToolChoiceFunctionObject

Eine Darstellung von Echtzeit-tool_choice zur Auswahl eines benannten Funktionstool.

Feld type Beschreibung
type Zeichenfolge Der Typ des tool_choice.

Zulässige Werte: function
Funktion Objekt Das auszuwählende Funktionstool

Siehe geschachtelte Eigenschaften.
+ name Zeichenfolge Der Name des Funktionstools

Eine Eigenschaft des function-Objekts.

RealtimeToolChoiceLiteral

Der verfügbare Satz von tool_choice-Optionen für Zeichenfolgenliterale auf Modusebene für den Echtzeitendpunkt.

Zulässige Werte:

  • auto
  • none
  • required

RealtimeToolChoiceObject

Eine Basisdarstellung für Echtzeit-tool_choice zur Auswahl eines benannten Funktionstools.

Feld type Beschreibung
type RealtimeToolType Der Typ des tool_choice.

RealtimeToolType

Die unterstützten Tooltypdiskriminatoren für Echtzeittools. Zurzeit werden nur „function“-Tools unterstützt.

Zulässige Werte:

  • function

RealtimeTurnDetection

Feld type Beschreibung
type RealtimeTurnDetectionType Der Typ der Sprecherwechselerkennung

Zulässige Werte: server_vad
threshold Zahl Der Aktivierungsschwellenwert für die Server-VAD-Erkennung von Sprecherwechseln In lauten Umgebungen müssen Sie möglicherweise den Schwellenwert erhöhen, um falsch positive Ergebnisse zu vermeiden. In ruhigen Umgebungen müssen Sie möglicherweise den Schwellenwert verringern, um falsch negative Ergebnisse zu vermeiden.

Wird standardmäßig auf 0.5 festgelegt. Sie können den Schwellenwert auf einen Wert zwischen 0.0 und 1.0 festlegen.
prefix_padding_ms Zeichenfolge Die Dauer von Sprachaudioinhalten (in Millisekunden), die vor dem Start der erkannten Sprache eingeschlossen werden soll

Der Standardwert ist 300 Millisekunden.
silence_duration_ms Zeichenfolge Die Dauer der Stille (in Millisekunden), um das Ende von Sprache zu erkennen. Sie sollten das Ende der Sprache so schnell wie möglich erkennen, aber nicht zu früh, da andernfalls der letzte Teil der Sprache abgeschnitten wird.

Das Modell reagiert schneller, wenn Sie diesen Wert auf eine niedrigere Zahl festlegen, eventuell wird dann aber der letzte Teil der Sprache abgeschnitten. Wenn Sie diesen Wert auf eine höhere Zahl festlegen, wartet das Modell länger, bevor das Ende der Sprach erkannt wird. Dies verlängert aber auch die Zeit bis zu einer Antwort.

Der Standardwert ist 500 Millisekunden.
create_response boolean Gibt an, ob der Server automatisch eine Antwort erstellt, wenn VAD aktiviert ist und das Sprechen endet.

Wird standardmäßig auf true festgelegt.

RealtimeTurnDetectionType

Zulässige Werte:

  • server_vad

RealtimeVoice

Zulässige Werte:

  • alloy
  • ash
  • ballad
  • coral
  • echo
  • sage
  • shimmer
  • verse