Dela via


Referens för API för realtid (förhandsversion)

Kommentar

Den här funktionen är för närvarande i allmänt tillgänglig förhandsversion. Den här förhandsversionen tillhandahålls utan ett serviceavtal och vi rekommenderar det inte för produktionsarbetsbelastningar. Vissa funktioner kanske inte stöds eller kan vara begränsade. Mer information finns i Kompletterande villkor för användning av Microsoft Azure-förhandsversioner.

Realtids-API:et är ett WebSocket-baserat API som gör att du kan interagera med Azure OpenAI-tjänsten i realtid.

Realtids-API:et (via /realtime) bygger på WebSockets-API :et för att underlätta fullständigt asynkron direktuppspelningskommunikation mellan slutanvändaren och modellen. Enhetsinformation som att samla in och återge ljuddata ligger utanför omfånget för REALTIDS-API:et. Den bör användas i kontexten för en betrodd, mellanliggande tjänst som hanterar både anslutningar till slutanvändare och modellslutpunktsanslutningar. Använd den inte direkt från ej betrodda slutanvändarenheter.

Dricks

Information om hur du kommer igång med API:et för realtid finns i snabbstartsguiden och instruktioner.

Connection

Realtids-API:et kräver en befintlig Azure OpenAI-resursslutpunkt i en region som stöds. API:et nås via en säker WebSocket-anslutning till slutpunkten för /realtime din Azure OpenAI-resurs.

Du kan skapa en fullständig URI för begäran genom att sammanfoga:

  • Det säkra WebSocket-protokollet (wss://)
  • Ditt värdnamn för Azure OpenAI-resursslutpunkten, till exempel my-aoai-resource.openai.azure.com
  • API-sökvägen openai/realtime
  • En api-version frågesträngsparameter för en API-version som stöds, till exempel 2024-10-01-preview
  • En deployment frågesträngsparameter med namnet på modelldistributionen gpt-4o-realtime-preview

Följande exempel är en välkonstruerad /realtime URI för begäran:

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

Autentisering

Så här autentiserar du:

  • Microsoft Entra (rekommenderas): Använd tokenbaserad autentisering med API:et /realtime för en Azure OpenAI-tjänstresurs med hanterad identitet aktiverad. Använd en hämtad autentiseringstoken med en Bearer token med Authorization huvudet.
  • API-nyckel: En api-key kan tillhandahållas på något av två sätt:
    • Använda ett api-key anslutningshuvud på förhandshakeanslutningen. Det här alternativet är inte tillgängligt i en webbläsarmiljö.
    • Använda en api-key frågesträngsparameter på begärande-URI:n. Frågesträngsparametrar krypteras när du använder https/wss.

Klienthändelser

Det finns nio klienthändelser som kan skickas från klienten till servern:

Händelse beskrivning
RealtimeClientEventConversationItemCreate Klienthändelsen conversation.item.create används för att lägga till ett nytt objekt i konversationens kontext, inklusive meddelanden, funktionsanrop och funktionsanropssvar.
RealtimeClientEventConversationItemDelete Klienthändelsen conversation.item.delete används för att ta bort ett objekt från konversationshistoriken.
RealtimeClientEventConversationItemTruncate Klienthändelsen conversation.item.truncate används för att trunkera ett tidigare assistentmeddelandes ljud.
RealtimeClientEventInputAudioBufferAppend input_audio_buffer.append Klienthändelsen används för att lägga till ljudbyte till indataljudbufferten.
RealtimeClientEventInputAudioBufferClear Klienthändelsen input_audio_buffer.clear används för att rensa ljudbyte i bufferten.
RealtimeClientEventInputAudioBufferCommit Klienthändelsen input_audio_buffer.commit används för att checka in användarens indataljudbuffert.
RealtimeClientEventResponseCancel response.cancel Klienthändelsen används för att avbryta ett pågående svar.
RealtimeClientEventResponseSkapa Klienthändelsen response.create används för att instruera servern att skapa ett svar via modellinferens.
RealtimeClientEventSessionUpdate session.update Klienthändelsen används för att uppdatera sessionens standardkonfiguration.

RealtimeClientEventConversationItemCreate

Klienthändelsen conversation.item.create används för att lägga till ett nytt objekt i konversationens kontext, inklusive meddelanden, funktionsanrop och funktionsanropssvar. Den här händelsen kan användas för att fylla i en historik för konversationen och för att lägga till nya objekt mitt i strömmen. Den här händelsen kan för närvarande inte fylla i assistentens ljudmeddelanden.

Om det lyckas svarar servern med en conversation.item.created händelse, annars skickas en error händelse.

Händelsestruktur

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

Egenskaper

Fält Type Beskrivning
type sträng Händelsetypen måste vara conversation.item.create.
previous_item_id sträng ID:t för föregående objekt varefter det nya objektet infogas. Om det inte anges läggs det nya objektet till i slutet av konversationen. Om det anges kan ett objekt infogas mitt i konversationen. Om det inte går att hitta ID:t returneras ett fel och objektet läggs inte till.
sak RealtimeConversationRequestItem Objektet som ska läggas till i konversationen.

RealtimeClientEventConversationItemDelete

Klienthändelsen conversation.item.delete används för att ta bort ett objekt från konversationshistoriken.

Servern svarar med en conversation.item.deleted händelse, såvida inte objektet inte finns i konversationshistoriken, i vilket fall servern svarar med ett fel.

Händelsestruktur

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

Egenskaper

Fält Type Beskrivning
type sträng Händelsetypen måste vara conversation.item.delete.
item_id sträng ID:t för objektet som ska tas bort.

RealtimeClientEventConversationItemTruncate

Klienthändelsen conversation.item.truncate används för att trunkera ett tidigare assistentmeddelandes ljud. Servern genererar ljud snabbare än i realtid, så den här händelsen är användbar när användaren avbryter för att trunkera ljud som skickades till klienten men som ännu inte har spelats upp. Serverns förståelse av ljudet med klientens uppspelning synkroniseras.

Trunkering av ljud tar bort textavskriften på serversidan för att säkerställa att det inte finns text i kontexten som användaren inte känner till.

Om klienthändelsen lyckas svarar servern med en conversation.item.truncated händelse.

Händelsestruktur

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

Egenskaper

Fält Type Beskrivning
type sträng Händelsetypen måste vara conversation.item.truncate.
item_id sträng ID för det assistentmeddelandeobjekt som ska trunkeras. Endast assistentmeddelandeobjekt kan trunkeras.
content_index integer Indexet för innehållsdelen som ska trunkeras. Ställ in den här egenskapen på "0".
audio_end_ms integer Inkluderande varaktighet upp till vilken ljudet trunkeras, i millisekunder. Om audio_end_ms är större än den faktiska ljudvaraktigheten svarar servern med ett fel.

RealtimeClientEventInputAudioBufferAppend

input_audio_buffer.append Klienthändelsen används för att lägga till ljudbyte till indataljudbufferten. Ljudbufferten är tillfällig lagring som du kan skriva till och senare checka in.

I läget Server VAD (Röstaktivitetsidentifiering) används ljudbufferten för att identifiera tal och servern bestämmer när den ska checkas in. När server VAD är inaktiverat kan klienten välja hur mycket ljud som ska spelas in i varje händelse upp till högst 15 MiB. Om du till exempel strömmar mindre segment från klienten kan VAD vara mer dynamiskt.

Till skillnad från de flesta andra klienthändelser skickar servern inte ett bekräftelsesvar på klienthändelsen input_audio_buffer.append .

Händelsestruktur

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

Egenskaper

Fält Type Beskrivning
type sträng Händelsetypen måste vara input_audio_buffer.append.
ljud sträng Base64-kodade ljudbyte. Det här värdet måste vara i det format som anges av fältet input_audio_format i sessionskonfigurationen.

RealtimeClientEventInputAudioBufferClear

Klienthändelsen input_audio_buffer.clear används för att rensa ljudbyte i bufferten.

Servern svarar med en input_audio_buffer.cleared händelse.

Händelsestruktur

{
  "type": "input_audio_buffer.clear"
}

Egenskaper

Fält Type Beskrivning
type sträng Händelsetypen måste vara input_audio_buffer.clear.

RealtimeClientEventInputAudioBufferCommit

Klienthändelsen input_audio_buffer.commit används för att checka in användarens indataljudbuffert, vilket skapar ett nytt användarmeddelandeobjekt i konversationen. Ljud transkriberas om input_audio_transcription det är konfigurerat för sessionen.

När klienten är i server-VAD-läge behöver den inte skicka den här händelsen. Servern checkar in ljudbufferten automatiskt. Utan server VAD måste klienten checka in ljudbufferten för att skapa ett användarmeddelandeobjekt. Den här klienthändelsen genererar ett fel om indataljudbufferten är tom.

När indataljudbufferten checkas in skapas inget svar från modellen.

Servern svarar med en input_audio_buffer.committed händelse.

Händelsestruktur

{
  "type": "input_audio_buffer.commit"
}

Egenskaper

Fält Type Beskrivning
type sträng Händelsetypen måste vara input_audio_buffer.commit.

RealtimeClientEventResponseCancel

response.cancel Klienthändelsen används för att avbryta ett pågående svar.

Servern svarar med en response.cancelled händelse eller ett fel om det inte finns något svar att avbryta.

Händelsestruktur

{
  "type": "response.cancel"
}

Egenskaper

Fält Type Beskrivning
type sträng Händelsetypen måste vara response.cancel.

RealtimeClientEventResponseSkapa

Klienthändelsen response.create används för att instruera servern att skapa ett svar via modellinferens. När sessionen har konfigurerats i server VAD-läge skapar servern svar automatiskt.

Ett svar innehåller minst en item, och kan ha två, i vilket fall det andra är ett funktionsanrop. Dessa objekt läggs till i konversationshistoriken.

Servern svarar med en response.created händelse, en eller flera objekt- och innehållshändelser (till exempel conversation.item.created och response.content_part.added), och slutligen en response.done händelse som anger att svaret är slutfört.

Kommentar

Klienthändelsen response.create innehåller slutsatsdragningskonfiguration som instructions, och temperature. Dessa fält kan endast åsidosätta sessionens konfiguration för det här svaret.

Händelsestruktur

{
  "type": "response.create"
}

Egenskaper

Fält Type Beskrivning
type sträng Händelsetypen måste vara response.create.
svar RealtimeResponseOptions Svarsalternativen.

RealtimeClientEventSessionUpdate

session.update Klienthändelsen används för att uppdatera sessionens standardkonfiguration. Klienten kan när som helst skicka händelsen för att uppdatera sessionskonfigurationen och alla fält kan uppdateras när som helst, förutom röst.

Endast fält som finns uppdateras. Om du vill rensa ett fält (till exempel instructions) skickar du en tom sträng.

Servern svarar med en session.updated händelse som innehåller den fullständiga effektiva konfigurationen.

Händelsestruktur

{
  "type": "session.update"
}

Egenskaper

Fält Type Beskrivning
type sträng Händelsetypen måste vara session.update.
Session RealtimeRequestSession Sessionskonfigurationen.

Serverhändelser

Det finns 28 serverhändelser som kan tas emot från servern:

Händelse beskrivning
RealtimeServerEventConversationCreated Serverhändelsen conversation.created returneras direkt efter att sessionen har skapats. En konversation skapas per session.
RealtimeServerEventConversationItemCreated Serverhändelsen conversation.item.created returneras när ett konversationsobjekt skapas.
RealtimeServerEventConversationItemDeleted Serverhändelsen conversation.item.deleted returneras när klienten tog bort ett objekt i konversationen med en conversation.item.delete händelse.
RealtimeServerEventConversationItemInputAudioTranscriptionCompleted Serverhändelsen conversation.item.input_audio_transcription.completed är resultatet av ljudavskrift för tal som skrivits till ljudbufferten.
RealtimeServerEventConversationItemInputAudioTranscriptionFailed Serverhändelsen conversation.item.input_audio_transcription.failed returneras när inkommande ljudavskrift har konfigurerats och en transkriptionsbegäran för ett användarmeddelande misslyckades.
RealtimeServerEventConversationItemTruncated Serverhändelsen conversation.item.truncated returneras när klienten trunkerar ett tidigare ljudmeddelandeobjekt för assistenten med en conversation.item.truncate händelse.
RealtimeServerEventError Serverhändelsen error returneras när ett fel inträffar, vilket kan vara ett klientproblem eller ett serverproblem.
RealtimeServerEventInputAudioBufferCleared Serverhändelsen input_audio_buffer.cleared returneras när klienten rensar indataljudbufferten med en input_audio_buffer.clear händelse.
RealtimeServerEventInputAudioBufferCommitted Serverhändelsen input_audio_buffer.committed returneras när en indataljudbuffert checkas in, antingen av klienten eller automatiskt i server VAD-läge.
RealtimeServerEventInputAudioBufferSpeechStarted Serverhändelsen input_audio_buffer.speech_started returneras i server_vad läge när tal identifieras i ljudbufferten.
RealtimeServerEventInputAudioBufferSpeechS toppad Serverhändelsen input_audio_buffer.speech_stopped returneras i server_vad läge när servern identifierar slutet av talet i ljudbufferten.
RealtimeServerEventRateLimitsUpdated Serverhändelsen rate_limits.updated genereras i början av ett svar för att ange de uppdaterade hastighetsgränserna.
RealtimeServerEventResponseAudioDelta Serverhändelsen response.audio.delta returneras när det modellgenererade ljudet uppdateras.
RealtimeServerEventResponseAudioDone Serverhändelsen response.audio.done returneras när det modellgenererade ljudet är klart.
RealtimeServerEventResponseAudioTranscriptDelta Serverhändelsen response.audio_transcript.delta returneras när den modellgenererade transkriptionen av ljudutdata uppdateras.
RealtimeServerEventResponseAudioTranscriptDone Serverhändelsen response.audio_transcript.done returneras när den modellgenererade transkriptionen av ljudutdata har strömmats.
RealtimeServerEventResponseContentPartAdded Serverhändelsen response.content_part.added returneras när en ny innehållsdel läggs till i ett assistentmeddelandeobjekt.
RealtimeServerEventResponseContentPartDone Serverhändelsen response.content_part.done returneras när en innehållsdel har strömmats.
RealtimeServerEventResponseSkapad Serverhändelsen response.created returneras när ett nytt svar skapas. Det här är den första händelsen när svaret skapas, där svaret är i ett initialt tillstånd av in_progress.
RealtimeServerEventResponseDone Serverhändelsen response.done returneras när ett svar har strömmats.
RealtimeServerEventResponseFunctionCallArgumentsDelta Serverhändelsen response.function_call_arguments.delta returneras när de modellgenererade funktionsanropsargumenten uppdateras.
RealtimeServerEventResponseFunctionCallArgumentsDone Serverhändelsen response.function_call_arguments.done returneras när de modellgenererade funktionsanropsargumenten har strömmats.
RealtimeServerEventResponseOutputItemLägg till Serverhändelsen response.output_item.added returneras när ett nytt objekt skapas under svarsgenereringen.
RealtimeServerEventResponseOutputItemDone Serverhändelsen response.output_item.done returneras när ett objekt har strömmats.
RealtimeServerEventResponseTextDelta Serverhändelsen response.text.delta returneras när den modellgenererade texten uppdateras.
RealtimeServerEventResponseTextDone Serverhändelsen response.text.done returneras när den modellgenererade texten har strömmats.
RealtimeServerEventSessionSkapas Serverhändelsen session.created är den första serverhändelsen när du upprättar en ny anslutning till Realtids-API:et. Den här händelsen skapar och returnerar en ny session med standardkonfigurationen för sessionen.
RealtimeServerEventSessionUpdated Serverhändelsen session.updated returneras när en session uppdateras av klienten. Om det uppstår ett fel skickar servern en error händelse i stället.

RealtimeServerEventConversationCreated

Serverhändelsen conversation.created returneras direkt efter att sessionen har skapats. En konversation skapas per session.

Händelsestruktur

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

Egenskaper

Fält Type Beskrivning
type sträng Händelsetypen måste vara conversation.created.
konversation objekt Konversationsresursen.

Konversationsegenskaper

Fält Type Beskrivning
id sträng Konversationens unika ID.
objekt sträng Objekttypen måste vara realtime.conversation.

RealtimeServerEventConversationItemCreated

Serverhändelsen conversation.item.created returneras när ett konversationsobjekt skapas. Det finns flera scenarier som genererar den här händelsen:

  • Servern genererar ett svar, som om det lyckas genererar antingen ett eller två objekt, som är av typen message (roll assistant) eller typ function_call.
  • Indataljudbufferten checkas in, antingen av klienten eller servern (i server_vad läge). Servern tar innehållet i indataljudbufferten och lägger till det i ett nytt användarmeddelandeobjekt.
  • Klienten skickade en conversation.item.create händelse för att lägga till ett nytt objekt i konversationen.

Händelsestruktur

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

Egenskaper

Fält Type Beskrivning
type sträng Händelsetypen måste vara conversation.item.created.
previous_item_id sträng ID:t för föregående objekt i konversationskontexten gör att klienten kan förstå konversationens ordning.
sak RealtimeConversationResponseItem Objektet som skapades.

RealtimeServerEventConversationItemDeleted

Serverhändelsen conversation.item.deleted returneras när klienten tog bort ett objekt i konversationen med en conversation.item.delete händelse. Den här händelsen används för att synkronisera serverns förståelse av konversationshistoriken med klientens vy.

Händelsestruktur

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

Egenskaper

Fält Type Beskrivning
type sträng Händelsetypen måste vara conversation.item.deleted.
item_id sträng ID:t för objektet som togs bort.

RealtimeServerEventConversationItemInputAudioTranscriptionCompleted

Serverhändelsen conversation.item.input_audio_transcription.completed är resultatet av ljudavskrift för tal som skrivits till ljudbufferten.

Transkriptionen börjar när indataljudbufferten bekräftas av klienten eller servern (i server_vad läge). Transkription körs asynkront med skapande av svar, så den här händelsen kan komma före eller efter svarshändelserna.

Realtids-API-modeller accepterar ljud internt, och därför är indataranskription en separat processkörning på en separat taligenkänningsmodell, för närvarande alltid whisper-1. Därför kan avskriften avvika något från modellens tolkning och bör behandlas som en grov guide.

Händelsestruktur

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

Egenskaper

Fält Type Beskrivning
type sträng Händelsetypen måste vara conversation.item.input_audio_transcription.completed.
item_id sträng ID:t för användarmeddelandeobjektet som innehåller ljudet.
content_index integer Indexet för innehållsdelen som innehåller ljudet.
avskrift sträng Den transkriberade texten.

RealtimeServerEventConversationItemInputAudioTranscriptionFailed

Serverhändelsen conversation.item.input_audio_transcription.failed returneras när inkommande ljudavskrift har konfigurerats och en transkriptionsbegäran för ett användarmeddelande misslyckades. Den här händelsen är separat från andra error händelser så att klienten kan identifiera det relaterade objektet.

Händelsestruktur

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

Egenskaper

Fält Type Beskrivning
type sträng Händelsetypen måste vara conversation.item.input_audio_transcription.failed.
item_id sträng ID för användarmeddelandeobjektet.
content_index integer Indexet för innehållsdelen som innehåller ljudet.
fel objekt Information om transkriptionsfelet.

Se kapslade egenskaper i nästa tabell.

Felegenskaper

Fält Type Beskrivning
type sträng Typ av fel.
kod sträng Om det finns någon felkod.
meddelande sträng Ett felmeddelande som kan läsas av människor.
Param sträng Parameter som är relaterad till felet, om det finns.

RealtimeServerEventConversationItemTruncated

Serverhändelsen conversation.item.truncated returneras när klienten trunkerar ett tidigare ljudmeddelandeobjekt för assistenten med en conversation.item.truncate händelse. Den här händelsen används för att synkronisera serverns förståelse av ljudet med klientens uppspelning.

Den här händelsen trunkerar ljudet och tar bort textavskriften på serversidan för att säkerställa att det inte finns någon text i kontexten som användaren inte känner till.

Händelsestruktur

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

Egenskaper

Fält Type Beskrivning
type sträng Händelsetypen måste vara conversation.item.truncated.
item_id sträng ID:t för det assistentmeddelandeobjekt som trunkerades.
content_index integer Indexet för innehållsdelen som trunkerades.
audio_end_ms integer Varaktigheten upp till vilken ljudet trunkerades, i millisekunder.

RealtimeServerEventError

Serverhändelsen error returneras när ett fel inträffar, vilket kan vara ett klientproblem eller ett serverproblem. De flesta fel kan återställas och sessionen förblir öppen.

Händelsestruktur

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

Egenskaper

Fält Type Beskrivning
type sträng Händelsetypen måste vara error.
fel objekt Information om felet.

Se kapslade egenskaper i nästa tabell.

Felegenskaper

Fält Type Beskrivning
type sträng Typ av fel. Till exempel är "invalid_request_error" och "server_error" feltyper.
kod sträng Om det finns någon felkod.
meddelande sträng Ett felmeddelande som kan läsas av människor.
Param sträng Parameter som är relaterad till felet, om det finns.
event_id sträng ID för den klienthändelse som orsakade felet, om tillämpligt.

RealtimeServerEventInputAudioBufferCleared

Serverhändelsen input_audio_buffer.cleared returneras när klienten rensar indataljudbufferten med en input_audio_buffer.clear händelse.

Händelsestruktur

{
  "type": "input_audio_buffer.cleared"
}

Egenskaper

Fält Type Beskrivning
type sträng Händelsetypen måste vara input_audio_buffer.cleared.

RealtimeServerEventInputAudioBufferCommitted

Serverhändelsen input_audio_buffer.committed returneras när en indataljudbuffert checkas in, antingen av klienten eller automatiskt i server VAD-läge. Egenskapen item_id är ID:t för användarmeddelandeobjektet som skapats. Därför skickas även en conversation.item.created händelse till klienten.

Händelsestruktur

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

Egenskaper

Fält Type Beskrivning
type sträng Händelsetypen måste vara input_audio_buffer.committed.
previous_item_id sträng ID:t för föregående objekt varefter det nya objektet infogas.
item_id sträng ID:t för användarmeddelandeobjektet som skapats.

RealtimeServerEventInputAudioBufferSpeechStarted

Serverhändelsen input_audio_buffer.speech_started returneras i server_vad läge när tal identifieras i ljudbufferten. Den här händelsen kan inträffa när ljud läggs till i bufferten (såvida inte tal redan har identifierats).

Kommentar

Klienten kanske vill använda den här händelsen för att avbryta ljuduppspelningen eller ge visuell feedback till användaren.

Klienten bör förvänta sig att få en input_audio_buffer.speech_stopped händelse när talet stoppas. Egenskapen item_id är ID:t för användarmeddelandeobjektet som skapas när talet stoppas. item_id Ingår också i input_audio_buffer.speech_stopped händelsen om inte klienten manuellt checkar in ljudbufferten under VAD-aktiveringen.

Händelsestruktur

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

Egenskaper

Fält Type Beskrivning
type sträng Händelsetypen måste vara input_audio_buffer.speech_started.
audio_start_ms integer Millisekunder från början av allt ljud som skrivits till bufferten under sessionen när tal först identifierades. Den här egenskapen motsvarar början av ljud som skickas till modellen och inkluderar därför den prefix_padding_ms konfigurerade i sessionen.
item_id sträng ID:t för användarmeddelandeobjektet som skapas när talet stoppas.

RealtimeServerEventInputAudioBufferSpeechS toppad

Serverhändelsen input_audio_buffer.speech_stopped returneras i server_vad läge när servern identifierar slutet av talet i ljudbufferten.

Servern skickar också en conversation.item.created händelse med användarmeddelandeobjektet som skapats från ljudbufferten.

Händelsestruktur

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

Egenskaper

Fält Type Beskrivning
type sträng Händelsetypen måste vara input_audio_buffer.speech_stopped.
audio_end_ms integer Millisekunder sedan sessionen startade när talet stoppades. Den här egenskapen motsvarar slutet på det ljud som skickas till modellen och inkluderar därför den min_silence_duration_ms konfigurerade i sessionen.
item_id sträng ID:t för användarmeddelandeobjektet som skapats.

RealtimeServerEventRateLimitsUpdated

Serverhändelsen rate_limits.updated genereras i början av ett svar för att ange de uppdaterade hastighetsgränserna.

När ett svar skapas reserveras vissa token för utdatatoken. De hastighetsgränser som visas här återspeglar den reservationen, som sedan justeras i enlighet med detta när svaret har slutförts.

Händelsestruktur

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

Egenskaper

Fält Type Beskrivning
type sträng Händelsetypen måste vara rate_limits.updated.
rate_limits matris med RealtimeServerEventRateLimitsUpdatedRateLimitsItem Listan över information om hastighetsbegränsning.

RealtimeServerEventResponseAudioDelta

Serverhändelsen response.audio.delta returneras när det modellgenererade ljudet uppdateras.

Händelsestruktur

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

Egenskaper

Fält Type Beskrivning
type sträng Händelsetypen måste vara response.audio.delta.
response_id sträng ID för svaret.
item_id sträng Objektets ID.
output_index integer Indexet för utdataobjektet i svaret.
content_index integer Indexet för innehållsdelen i objektets innehållsmatris.
delta sträng Base64-kodad ljuddatadelta.

RealtimeServerEventResponseAudioDone

Serverhändelsen response.audio.done returneras när det modellgenererade ljudet är klart.

Den här händelsen returneras också när ett svar avbryts, är ofullständigt eller avbryts.

Händelsestruktur

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

Egenskaper

Fält Type Beskrivning
type sträng Händelsetypen måste vara response.audio.done.
response_id sträng ID för svaret.
item_id sträng Objektets ID.
output_index integer Indexet för utdataobjektet i svaret.
content_index integer Indexet för innehållsdelen i objektets innehållsmatris.

RealtimeServerEventResponseAudioTranscriptDelta

Serverhändelsen response.audio_transcript.delta returneras när den modellgenererade transkriptionen av ljudutdata uppdateras.

Händelsestruktur

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

Egenskaper

Fält Type Beskrivning
type sträng Händelsetypen måste vara response.audio_transcript.delta.
response_id sträng ID för svaret.
item_id sträng Objektets ID.
output_index integer Indexet för utdataobjektet i svaret.
content_index integer Indexet för innehållsdelen i objektets innehållsmatris.
delta sträng Avskriftsdeltat.

RealtimeServerEventResponseAudioTranscriptDone

Serverhändelsen response.audio_transcript.done returneras när den modellgenererade transkriptionen av ljudutdata har strömmats.

Den här händelsen returneras också när ett svar avbryts, är ofullständigt eller avbryts.

Händelsestruktur

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

Egenskaper

Fält Type Beskrivning
type sträng Händelsetypen måste vara response.audio_transcript.done.
response_id sträng ID för svaret.
item_id sträng Objektets ID.
output_index integer Indexet för utdataobjektet i svaret.
content_index integer Indexet för innehållsdelen i objektets innehållsmatris.
avskrift sträng Den sista avskriften av ljudet.

RealtimeServerEventResponseContentPartAdded

Serverhändelsen response.content_part.added returneras när en ny innehållsdel läggs till i ett assistentmeddelandeobjekt under genereringen av svar.

Händelsestruktur

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

Egenskaper

Fält Type Beskrivning
type sträng Händelsetypen måste vara response.content_part.added.
response_id sträng ID för svaret.
item_id sträng ID:t för det objekt som innehållsdelen lades till i.
output_index integer Indexet för utdataobjektet i svaret.
content_index integer Indexet för innehållsdelen i objektets innehållsmatris.
del RealtimeContentPart Innehållsdelen som lades till.

Delegenskaper

Fält Type Beskrivning
type RealtimeContentPartType

RealtimeServerEventResponseContentPartDone

Serverhändelsen response.content_part.done returneras när en innehållsdel har strömmats i ett assistentmeddelandeobjekt.

Den här händelsen returneras också när ett svar avbryts, är ofullständigt eller avbryts.

Händelsestruktur

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

Egenskaper

Fält Type Beskrivning
type sträng Händelsetypen måste vara response.content_part.done.
response_id sträng ID för svaret.
item_id sträng Objektets ID.
output_index integer Indexet för utdataobjektet i svaret.
content_index integer Indexet för innehållsdelen i objektets innehållsmatris.
del RealtimeContentPart Innehållsdelen som är klar.

Delegenskaper

Fält Type Beskrivning
type RealtimeContentPartType

RealtimeServerEventResponseSkapad

Serverhändelsen response.created returneras när ett nytt svar skapas. Det här är den första händelsen när svaret skapas, där svaret är i ett initialt tillstånd av in_progress.

Händelsestruktur

{
  "type": "response.created"
}

Egenskaper

Fält Type Beskrivning
type sträng Händelsetypen måste vara response.created.
svar RealtimeResponse Svarsobjektet.

RealtimeServerEventResponseDone

Serverhändelsen response.done returneras när ett svar har strömmats. Den här händelsen genereras alltid, oavsett det slutliga tillståndet. Svarsobjektet som ingår i response.done händelsen innehåller alla utdataobjekt i svaret, men utelämnar rådata.

Händelsestruktur

{
  "type": "response.done"
}

Egenskaper

Fält Type Beskrivning
type sträng Händelsetypen måste vara response.done.
svar RealtimeResponse Svarsobjektet.

RealtimeServerEventResponseFunctionCallArgumentsDelta

Serverhändelsen response.function_call_arguments.delta returneras när de modellgenererade funktionsanropsargumenten uppdateras.

Händelsestruktur

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

Egenskaper

Fält Type Beskrivning
type sträng Händelsetypen måste vara response.function_call_arguments.delta.
response_id sträng ID för svaret.
item_id sträng ID för funktionsanropsobjektet.
output_index integer Indexet för utdataobjektet i svaret.
call_id sträng ID för funktionsanropet.
delta sträng Argumenten deltar som en JSON-sträng.

RealtimeServerEventResponseFunctionCallArgumentsDone

Serverhändelsen response.function_call_arguments.done returneras när de modellgenererade funktionsanropsargumenten har strömmats.

Den här händelsen returneras också när ett svar avbryts, är ofullständigt eller avbryts.

Händelsestruktur

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

Egenskaper

Fält Type Beskrivning
type sträng Händelsetypen måste vara response.function_call_arguments.done.
response_id sträng ID för svaret.
item_id sträng ID för funktionsanropsobjektet.
output_index integer Indexet för utdataobjektet i svaret.
call_id sträng ID för funktionsanropet.
Argument sträng De sista argumenten som en JSON-sträng.

RealtimeServerEventResponseOutputItemLägg till

Serverhändelsen response.output_item.added returneras när ett nytt objekt skapas under svarsgenereringen.

Händelsestruktur

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

Egenskaper

Fält Type Beskrivning
type sträng Händelsetypen måste vara response.output_item.added.
response_id sträng ID för svaret som objektet tillhör.
output_index integer Indexet för utdataobjektet i svaret.
sak RealtimeConversationResponseItem Objektet som lades till.

RealtimeServerEventResponseOutputItemDone

Serverhändelsen response.output_item.done returneras när ett objekt har strömmats.

Den här händelsen returneras också när ett svar avbryts, är ofullständigt eller avbryts.

Händelsestruktur

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

Egenskaper

Fält Type Beskrivning
type sträng Händelsetypen måste vara response.output_item.done.
response_id sträng ID för svaret som objektet tillhör.
output_index integer Indexet för utdataobjektet i svaret.
sak RealtimeConversationResponseItem Objektet som har strömmats.

RealtimeServerEventResponseTextDelta

Serverhändelsen response.text.delta returneras när den modellgenererade texten uppdateras. Texten motsvarar text innehållsdelen i ett assistentmeddelandeobjekt.

Händelsestruktur

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

Egenskaper

Fält Type Beskrivning
type sträng Händelsetypen måste vara response.text.delta.
response_id sträng ID för svaret.
item_id sträng Objektets ID.
output_index integer Indexet för utdataobjektet i svaret.
content_index integer Indexet för innehållsdelen i objektets innehållsmatris.
delta sträng Textdeltat.

RealtimeServerEventResponseTextDone

Serverhändelsen response.text.done returneras när den modellgenererade texten har strömmats. Texten motsvarar text innehållsdelen i ett assistentmeddelandeobjekt.

Den här händelsen returneras också när ett svar avbryts, är ofullständigt eller avbryts.

Händelsestruktur

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

Egenskaper

Fält Type Beskrivning
type sträng Händelsetypen måste vara response.text.done.
response_id sträng ID för svaret.
item_id sträng Objektets ID.
output_index integer Indexet för utdataobjektet i svaret.
content_index integer Indexet för innehållsdelen i objektets innehållsmatris.
text sträng Det slutliga textinnehållet.

RealtimeServerEventSessionSkapas

Serverhändelsen session.created är den första serverhändelsen när du upprättar en ny anslutning till Realtids-API:et. Den här händelsen skapar och returnerar en ny session med standardkonfigurationen för sessionen.

Händelsestruktur

{
  "type": "session.created"
}

Egenskaper

Fält Type Beskrivning
type sträng Händelsetypen måste vara session.created.
Session RealtimeResponseSession Sessionsobjektet.

RealtimeServerEventSessionUpdated

Serverhändelsen session.updated returneras när en session uppdateras av klienten. Om det uppstår ett fel skickar servern en error händelse i stället.

Händelsestruktur

{
  "type": "session.updated"
}

Egenskaper

Fält Type Beskrivning
type sträng Händelsetypen måste vara session.updated.
Session RealtimeResponseSession Sessionsobjektet.

Komponenter

RealtimeAudioFormat

Tillåtna värden:

  • pcm16
  • g711_ulaw
  • g711_alaw

RealtimeAudioInputTranscriptionModel

Tillåtna värden:

  • whisper-1

RealtimeAudioInputTranscriptionSettings

Fält Type Beskrivning
modell RealtimeAudioInputTranscriptionModel whisper-1 Standardmodellen är för närvarande den enda modell som stöds för transkription av ljudindata.

RealtimeClientEvent

Fält Type Beskrivning
type RealtimeClientEventType Typen av klienthändelse.
event_id sträng Det unika ID:t för händelsen. Klienten kan ange ID:t för att identifiera händelsen.

RealtimeClientEventType

Tillåtna värden:

  • 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

Fält Type Beskrivning
type RealtimeContentPartType Innehållstypen.

En egenskap för function objektet.

Tillåtna värden: input_text, input_audio, item_reference, text.
text sträng Textinnehållet. Den här egenskapen gäller för innehållstyperna input_text och text .
id sträng ID för ett tidigare konversationsobjekt som ska refereras i både klient- och serverskapade objekt. Den här egenskapen gäller för item_reference innehållstypen i response.create händelser.
ljud sträng Base64-kodade ljudbyte. Den här egenskapen gäller för input_audio innehållstypen.
avskrift sträng Avskriften av ljudet. Den här egenskapen gäller för input_audio innehållstypen.

RealtimeContentPartType

Tillåtna värden:

  • input_text
  • input_audio
  • text
  • audio

RealtimeConversationItemBase

Objektet som ska läggas till i konversationen.

I den här tabellen beskrivs alla RealtimeConversationItem egenskaper. Vilka egenskaper som gäller per händelse beror på RealtimeItemType.

Fält Type Beskrivning
id sträng Objektets unika ID. Klienten kan ange ID:t för att hantera kontext på serversidan. Om klienten inte anger något ID genererar servern ett.
type RealtimeItemType Typ av objekt.

Tillåtna värden: message, function_call, function_call_output
objekt sträng Identifieraren för API-objektet som returneras. Värdet kommer alltid att vara realtime.item.
status RealtimeItemStatus Status för objektet. Det här fältet påverkar inte konversationen, men det accepteras för konsekvens med conversation.item.created händelsen.

Tillåtna värden: completed, incomplete
roll RealtimeMessageRole Rollen som meddelandesändare. Den här egenskapen gäller endast för message objekt.

Tillåtna värden: system, user, assistant
innehåll matris med RealtimeContentPart Innehållet i meddelandet. Den här egenskapen gäller endast för message objekt.

– Meddelandeobjekt i rollen system stöder endast input_text innehåll.
– Meddelandeobjekt för rollstöd user input_text och input_audio innehåll.
– Meddelandeobjekt med rollstödinnehåll assistant text .
call_id sträng ID för funktionsanropet (för function_call och function_call_output objekt). Om ett objekt skickas function_call_output kontrollerar servern att ett function_call objekt med samma ID finns i konversationshistoriken.
name sträng Namnet på funktionen som anropas (för function_call objekt).
Argument sträng Argumenten för funktionsanropet (för function_call objekt).
utdata sträng Utdata från funktionsanropet (för function_call_output objekt).

RealtimeConversationRequestItem

Du använder RealtimeConversationRequestItem objektet för att skapa ett nytt objekt i konversationen via händelsen conversation.item.create .

Fält Type Beskrivning
type RealtimeItemType Typ av objekt.
id sträng Objektets unika ID. Klienten kan ange ID:t för att hantera kontext på serversidan. Om klienten inte anger något ID genererar servern ett.

RealtimeConversationResponseItem

Objektet RealtimeConversationResponseItem representerar ett objekt i konversationen. Den används i några av serverhändelserna, till exempel:

Fält Type Beskrivning
objekt sträng Identifieraren för det returnerade API-objektet.

Tillåtna värden: realtime.item
type RealtimeItemType Typ av objekt.

Tillåtna värden: message, function_call, function_call_output
id sträng Objektets unika ID. Klienten kan ange ID:t för att hantera kontext på serversidan. Om klienten inte anger något ID genererar servern ett.

Den här egenskapen kan inte användas.

RealtimeFunctionTool

Definitionen av ett funktionsverktyg som används av realtidsslutpunkten.

Fält Type Beskrivning
type sträng Verktygets typ.

Tillåtna värden: function
name sträng Namnet på funktionen.
description sträng Beskrivningen av funktionen, inklusive användningsriktlinjer. Till exempel "Använd den här funktionen för att hämta den aktuella tiden."
parametrar objekt Parametrarna för funktionen i form av ett JSON-objekt.

RealtimeItemStatus

Tillåtna värden:

  • in_progress
  • completed
  • incomplete

RealtimeItemType

Tillåtna värden:

  • message
  • function_call
  • function_call_output

RealtimeMessageRole

Tillåtna värden:

  • system
  • user
  • assistant

RealtimeRequestAssistantMessageItem

Fält Type Beskrivning
roll sträng Meddelandets roll.

Tillåtna värden: assistant
innehåll matris för RealtimeRequestTextContentPart Innehållet i meddelandet.

RealtimeRequestAudioContentPart

Fält Type Beskrivning
type sträng Typ av innehållsdel.

Tillåtna värden: input_audio
avskrift sträng Avskriften av ljudet.

RealtimeRequestFunctionCallItem

Fält Type Beskrivning
type sträng Typ av objekt.

Tillåtna värden: function_call
name sträng Namnet på funktionsanropsobjektet.
call_id sträng ID för funktionsanropsobjektet.
Argument sträng Argumenten för funktionsanropsobjektet.
status RealtimeItemStatus Status för objektet.

RealtimeRequestFunctionCallOutputItem

Fält Type Beskrivning
type sträng Typ av objekt.

Tillåtna värden: function_call_output
call_id sträng ID för funktionsanropsobjektet.
utdata sträng Utdata för funktionsanropsobjektet.

RealtimeRequestMessageItem

Fält Type Beskrivning
type sträng Typ av objekt.

Tillåtna värden: message
roll RealtimeMessageRole Meddelandets roll.
status RealtimeItemStatus Status för objektet.

RealtimeRequestMessageReferenceItem

Fält Type Beskrivning
type sträng Typ av objekt.

Tillåtna värden: message
id sträng ID för meddelandeartikeln.

RealtimeRequestSession

Du använder objektet RealtimeRequestSession när du vill uppdatera sessionskonfigurationen via händelsen session.update .

Fält Type Beskrivning
modaliteter matris De metoder som sessionen stöder.

Tillåtna värden: text, audio

Är till exempel "modalities": ["text", "audio"] standardinställningen som möjliggör både text- och ljudmodaliteter. Om du bara vill aktivera text anger du "modalities": ["text"]. Du kan inte bara aktivera ljud.
instruktioner sträng Anvisningarna (systemmeddelandet) för att vägleda modellens text- och ljudsvar.

Här följer några exempelinstruktioner som hjälper dig att vägleda innehåll och format för text- och ljudsvar:
"instructions": "be succinct"
"instructions": "act friendly"
"instructions": "here are examples of good responses"

Här följer några exempelinstruktioner som hjälper dig att vägleda ljudbeteendet:
"instructions": "talk quickly"
"instructions": "inject emotion into your voice"
"instructions": "laugh frequently"

Även om modellen kanske inte alltid följer dessa instruktioner ger de vägledning om önskat beteende.
voice RealtimeVoice Rösten som används för modellsvaret för sessionen.

När rösten används i sessionen för modellens ljudsvar kan den inte ändras.
input_audio_format RealtimeAudioFormat Formatet för indataljudet.
output_audio_format RealtimeAudioFormat Formatet för utdataljudet.
input_audio_transcription RealtimeAudioInputTranscriptionSettings Inställningarna för transkription av ljudindata.

Den här egenskapen kan inte användas.
turn_detection RealtimeTurnDetection Inställningarna för turidentifiering för sessionen.

Den här egenskapen kan inte användas.
verktyg matris med RealtimeTool Verktygen som är tillgängliga för modellen för sessionen.
tool_choice RealtimeToolChoice Verktygsvalet för sessionen.

Tillåtna värden: auto, noneoch required. Annars kan du ange namnet på den funktion som ska användas.
temperatur Nummer Samplingstemperaturen för modellen. De tillåtna temperaturvärdena är begränsade till [0,6, 1,2]. Standardvärdet är 0,8.
max_response_output_tokens heltal eller "inf" Det maximala antalet utdatatoken per assistentsvar, inklusive verktygsanrop.

Ange ett heltal mellan 1 och 4096 för att begränsa utdatatoken. Annars anger du värdet till "inf" för att tillåta det maximala antalet token.

Om du till exempel vill begränsa utdatatoken till 1 000 anger du "max_response_output_tokens": 1000. Om du vill tillåta det maximala antalet token anger du "max_response_output_tokens": "inf".

Standardvärdet är "inf".

RealtimeRequestSystemMessageItem

Fält Type Beskrivning
roll sträng Meddelandets roll.

Tillåtna värden: system
innehåll matris för RealtimeRequestTextContentPart Innehållet i meddelandet.

RealtimeRequestTextContentPart

Fält Type Beskrivning
type sträng Typ av innehållsdel.

Tillåtna värden: input_text
text sträng Textinnehållet.

RealtimeRequestUserMessageItem

Fält Type Beskrivning
roll sträng Meddelandets roll.

Tillåtna värden: user
innehåll matris med RealtimeRequestTextContentPart eller RealtimeRequestAudioContentPart Innehållet i meddelandet.

RealtimeResponse

Fält Type Beskrivning
objekt sträng Svarsobjektet.

Tillåtna värden: realtime.response
id sträng Svarets unika ID.
status RealtimeResponseStatus Status för svaret.

Standardstatusvärdet är in_progress.
status_details RealtimeResponseStatusDetails Information om svarsstatus.

Den här egenskapen kan inte användas.
utdata matris med RealtimeConversationResponseItem Utdataobjekten i svaret.
användning objekt Användningsstatistik för svaret. Varje API-session i realtid har en konversationskontext och lägger till nya objekt i konversationen. Utdata från tidigare svängar (text- och ljudtoken) är indata för senare svängar.

Se kapslade egenskaper härnäst.
+ total_tokens integer Det totala antalet token i svaret, inklusive in- och utdatatext och ljudtoken.

En egenskap för usage objektet.
+ input_tokens integer Antalet indatatoken som används i svaret, inklusive text- och ljudtoken.

En egenskap för usage objektet.
+ output_tokens integer Antalet utdatatoken som skickas i svaret, inklusive text- och ljudtoken.

En egenskap för usage objektet.
+ input_token_details objekt Information om indatatoken som används i svaret.

En egenskap för usage objektet.
Br>
Se kapslade egenskaper härnäst.
+ cached_tokens integer Antalet cachelagrade token som används i svaret.

En egenskap för input_token_details objektet.
+ text_tokens integer Antalet texttoken som används i svaret.

En egenskap för input_token_details objektet.
+ audio_tokens integer Antalet ljudtoken som används i svaret.

En egenskap för input_token_details objektet.
+ output_token_details objekt Information om utdatatoken som används i svaret.

En egenskap för usage objektet.

Se kapslade egenskaper härnäst.
+ text_tokens integer Antalet texttoken som används i svaret.

En egenskap för output_token_details objektet.
+ audio_tokens integer Antalet ljudtoken som används i svaret.

En egenskap för output_token_details objektet.

RealtimeResponseAudioContentPart

Fält Type Beskrivning
type sträng Typ av innehållsdel.

Tillåtna värden: audio
avskrift sträng Avskriften av ljudet.

Den här egenskapen kan inte användas.

RealtimeResponseBase

Svarsresursen.

RealtimeResponseFunctionCallItem

Fält Type Beskrivning
type sträng Typ av objekt.

Tillåtna värden: function_call
name sträng Namnet på funktionsanropsobjektet.
call_id sträng ID för funktionsanropsobjektet.
Argument sträng Argumenten för funktionsanropsobjektet.
status RealtimeItemStatus Status för objektet.

RealtimeResponseFunctionCallOutputItem

Fält Type Beskrivning
type sträng Typ av objekt.

Tillåtna värden: function_call_output
call_id sträng ID för funktionsanropsobjektet.
utdata sträng Utdata för funktionsanropsobjektet.

RealtimeResponseMessageItem

Fält Type Beskrivning
type sträng Typ av objekt.

Tillåtna värden: message
roll RealtimeMessageRole Meddelandets roll.
innehåll matris Innehållet i meddelandet.

Matrisobjekt: RealtimeResponseTextContentPart
status RealtimeItemStatus Status för objektet.

RealtimeResponseOptions

Fält Type Beskrivning
modaliteter matris De metoder som sessionen stöder.

Tillåtna värden: text, audio

Är till exempel "modalities": ["text", "audio"] standardinställningen som möjliggör både text- och ljudmodaliteter. Om du bara vill aktivera text anger du "modalities": ["text"]. Du kan inte bara aktivera ljud.
instruktioner sträng Anvisningarna (systemmeddelandet) för att vägleda modellens text- och ljudsvar.

Här följer några exempelinstruktioner som hjälper dig att vägleda innehåll och format för text- och ljudsvar:
"instructions": "be succinct"
"instructions": "act friendly"
"instructions": "here are examples of good responses"

Här följer några exempelinstruktioner som hjälper dig att vägleda ljudbeteendet:
"instructions": "talk quickly"
"instructions": "inject emotion into your voice"
"instructions": "laugh frequently"

Även om modellen kanske inte alltid följer dessa instruktioner ger de vägledning om önskat beteende.
voice RealtimeVoice Rösten som används för modellsvaret för sessionen.

När rösten används i sessionen för modellens ljudsvar kan den inte ändras.
output_audio_format RealtimeAudioFormat Formatet för utdataljudet.
verktyg matris med RealtimeTool Verktygen som är tillgängliga för modellen för sessionen.
tool_choice RealtimeToolChoice Verktygsvalet för sessionen.
temperatur Nummer Samplingstemperaturen för modellen. De tillåtna temperaturvärdena är begränsade till [0,6, 1,2]. Standardvärdet är 0,8.
max__output_tokens heltal eller "inf" Det maximala antalet utdatatoken per assistentsvar, inklusive verktygsanrop.

Ange ett heltal mellan 1 och 4096 för att begränsa utdatatoken. Annars anger du värdet till "inf" för att tillåta det maximala antalet token.

Om du till exempel vill begränsa utdatatoken till 1 000 anger du "max_response_output_tokens": 1000. Om du vill tillåta det maximala antalet token anger du "max_response_output_tokens": "inf".

Standardvärdet är "inf".
konversation sträng Styr vilken konversation svaret läggs till i. De värden som stöds är auto och none.

Värdet auto (eller om du inte anger den här egenskapen) ser till att innehållet i svaret läggs till i sessionens standardkonversation.

Ange den här egenskapen till none för att skapa ett out-of-band-svar där objekt inte läggs till i standardkonversationen. Mer information finns i guiden instruktioner.

Standardvärdet är "auto"
metadata map Konfigurera upp till 16 nyckel/värde-par som kan kopplas till ett objekt. Detta kan vara användbart för att lagra ytterligare information om objektet i ett strukturerat format. Nycklar kan vara högst 64 tecken långa och värden kan vara högst 512 tecken långa.

Till exempel: metadata: { topic: "classification" }
indata matris Indataobjekt som ska inkluderas i prompten för modellen. Skapar en ny kontext för det här svaret, utan att inkludera standardkonversationen. Kan innehålla referenser till objekt från standardkonversationen.

Matrisobjekt: RealtimeConversationItemBase

RealtimeResponseSession

Objektet RealtimeResponseSession representerar en session i REALTIDS-API:et. Den används i några av serverhändelserna, till exempel:

Fält Type Beskrivning
objekt sträng Sessionsobjektet.

Tillåtna värden: realtime.session
id sträng Sessionens unika ID.
modell sträng Den modell som används för sessionen.
modaliteter matris De metoder som sessionen stöder.

Tillåtna värden: text, audio

Är till exempel "modalities": ["text", "audio"] standardinställningen som möjliggör både text- och ljudmodaliteter. Om du bara vill aktivera text anger du "modalities": ["text"]. Du kan inte bara aktivera ljud.
instruktioner sträng Anvisningarna (systemmeddelandet) för att vägleda modellens text- och ljudsvar.

Här följer några exempelinstruktioner som hjälper dig att vägleda innehåll och format för text- och ljudsvar:
"instructions": "be succinct"
"instructions": "act friendly"
"instructions": "here are examples of good responses"

Här följer några exempelinstruktioner som hjälper dig att vägleda ljudbeteendet:
"instructions": "talk quickly"
"instructions": "inject emotion into your voice"
"instructions": "laugh frequently"

Även om modellen kanske inte alltid följer dessa instruktioner ger de vägledning om önskat beteende.
voice RealtimeVoice Rösten som används för modellsvaret för sessionen.

När rösten används i sessionen för modellens ljudsvar kan den inte ändras.
input_audio_format RealtimeAudioFormat Formatet för indataljudet.
output_audio_format RealtimeAudioFormat Formatet för utdataljudet.
input_audio_transcription RealtimeAudioInputTranscriptionSettings Inställningarna för transkription av ljudindata.

Den här egenskapen kan inte användas.
turn_detection RealtimeTurnDetection Inställningarna för turidentifiering för sessionen.

Den här egenskapen kan inte användas.
verktyg matris med RealtimeTool Verktygen som är tillgängliga för modellen för sessionen.
tool_choice RealtimeToolChoice Verktygsvalet för sessionen.
temperatur Nummer Samplingstemperaturen för modellen. De tillåtna temperaturvärdena är begränsade till [0,6, 1,2]. Standardvärdet är 0,8.
max_response_output_tokens heltal eller "inf" Det maximala antalet utdatatoken per assistentsvar, inklusive verktygsanrop.

Ange ett heltal mellan 1 och 4096 för att begränsa utdatatoken. Annars anger du värdet till "inf" för att tillåta det maximala antalet token.

Om du till exempel vill begränsa utdatatoken till 1 000 anger du "max_response_output_tokens": 1000. Om du vill tillåta det maximala antalet token anger du "max_response_output_tokens": "inf".

RealtimeResponseStatus

Tillåtna värden:

  • in_progress
  • completed
  • cancelled
  • incomplete
  • failed

RealtimeResponseStatusDetails

Fält Type Beskrivning
type RealtimeResponseStatus Status för svaret.

RealtimeResponseTextContentPart

Fält Type Beskrivning
type sträng Typ av innehållsdel.

Tillåtna värden: text
text sträng Textinnehållet.

RealtimeServerEvent

Fält Type Beskrivning
type RealtimeServerEventType Typ av serverhändelse.
event_id sträng Det unika ID:t för serverhändelsen.

RealtimeServerEventRateLimitsUpdatedRateLimitsItem

Fält Type Beskrivning
name sträng Egenskapsnamnet för hastighetsbegränsning som det här objektet innehåller information om.
gräns integer Den maximala konfigurerade gränsen för den här egenskapen för hastighetsgräns.
återstår integer Den återstående tillgängliga kvoten mot den konfigurerade gränsen för den här egenskapen för hastighetsgräns.
reset_seconds Nummer Återstående tid, i sekunder, tills den här egenskapen för hastighetsbegränsning återställs.

RealtimeServerEventType

Tillåtna värden:

  • 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

Fält Type Beskrivning
type sträng Typ av turidentifiering.

Tillåtna värden: server_vad
tröskelvärde Nummer Aktiveringströskelvärdet för serverns VAD-turidentifiering. I bullriga miljöer kan du behöva öka tröskelvärdet för att undvika falska positiva identifieringar. I tysta miljöer kan du behöva minska tröskelvärdet för att undvika falska negativa identifieringar.

Standardvärdet är 0.5. Du kan ange tröskelvärdet till ett värde mellan 0.0 och 1.0.
prefix_padding_ms sträng Varaktigheten för talljud (i millisekunder) som ska inkluderas innan det identifierade talet börjar.

Standardvärdet är 300.
silence_duration_ms sträng Varaktigheten för tystnad (i millisekunder) för att identifiera slutet av talet. Du vill identifiera slutet av talet så snart som möjligt, men inte för tidigt för att undvika att skära av den sista delen av talet.

Modellen svarar snabbare om du anger det här värdet till ett lägre tal, men det kan avbryta den sista delen av talet. Om du anger det här värdet till ett högre tal väntar modellen längre för att identifiera slutet av talet, men det kan ta längre tid att svara.

RealtimeSessionBase

Konfiguration av sessionsobjekt i realtid.

RealtimeTool

Basrepresentationen av en definition av realtidsverktyget.

Fält Type Beskrivning
type RealtimeToolType Verktygets typ.

RealtimeToolChoice

Den kombinerade uppsättningen tillgängliga representationer för en realtidsparameter tool_choice , som omfattar både strängliterala alternativ som "auto" och strukturerade referenser till definierade verktyg.

RealtimeToolChoiceFunctionObject

Representationen av en realtidsmarkering tool_choice av ett namngivet funktionsverktyg.

Fält Type Beskrivning
type sträng Typen av tool_choice.

Tillåtna värden: function
function objekt Funktionsverktyget som ska väljas.

Se kapslade egenskaper härnäst.
+ namn sträng Namnet på funktionsverktyget.

En egenskap för function objektet.

RealtimeToolChoiceLiteral

Den tillgängliga uppsättningen med strängliterala tool_choice alternativ på lägesnivå för realtidsslutpunkten.

Tillåtna värden:

  • auto
  • none
  • required

RealtimeToolChoiceObject

En basrepresentation för en realtidsmarkering tool_choice av ett namngivet verktyg.

Fält Type Beskrivning
type RealtimeToolType Typen av tool_choice.

RealtimeToolType

Den verktygstyp som stöds är diskriminerande för realtidsverktyg. För närvarande stöds endast funktionsverktyg.

Tillåtna värden:

  • function

RealtimeTurnDetection

Fält Type Beskrivning
type RealtimeTurnDetectionType Typ av turidentifiering.

Tillåtna värden: server_vad
tröskelvärde Nummer Aktiveringströskelvärdet för serverns VAD-turidentifiering. I bullriga miljöer kan du behöva öka tröskelvärdet för att undvika falska positiva identifieringar. I tysta miljöer kan du behöva minska tröskelvärdet för att undvika falska negativa identifieringar.

Standardvärdet är 0.5. Du kan ange tröskelvärdet till ett värde mellan 0.0 och 1.0.
prefix_padding_ms sträng Varaktigheten för talljud (i millisekunder) som ska inkluderas innan det identifierade talet börjar.

Standardvärdet är 300 millisekunder.
silence_duration_ms sträng Varaktigheten för tystnad (i millisekunder) för att identifiera slutet av talet. Du vill identifiera slutet av talet så snart som möjligt, men inte för tidigt för att undvika att skära av den sista delen av talet.

Modellen svarar snabbare om du anger det här värdet till ett lägre tal, men det kan avbryta den sista delen av talet. Om du anger det här värdet till ett högre tal väntar modellen längre för att identifiera slutet av talet, men det kan ta längre tid att svara.

Standardvärdet är 500 millisekunder.
create_response boolean Anger om servern automatiskt skapar ett svar när VAD är aktiverat och tal stoppas.

Standardvärdet är true.

RealtimeTurnDetectionType

Tillåtna värden:

  • server_vad

RealtimeVoice

Tillåtna värden:

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