Referenční informace k rozhraní API v reálném čase (Preview)
Poznámka:
Tato funkce je v současné době ve verzi Public Preview. Tato verze Preview je poskytována bez smlouvy o úrovni služeb a nedoporučujeme ji pro produkční úlohy. Některé funkce se nemusí podporovat nebo mohou mít omezené možnosti. Další informace najdete v dodatečných podmínkách použití pro verze Preview v Microsoft Azure.
Rozhraní API v reálném čase je rozhraní API založené na protokolu WebSocket, které umožňuje pracovat se službou Azure OpenAI v reálném čase.
Rozhraní API v reálném čase (prostřednictvím /realtime
) je založené na rozhraní API WebSockets, které usnadňuje plně asynchronní komunikaci streamování mezi koncovým uživatelem a modelem. Podrobnosti o zařízení, jako je zachytávání a vykreslování zvukových dat, jsou mimo rozsah rozhraní API v reálném čase. Měla by se používat v kontextu důvěryhodné zprostředkující služby, která spravuje připojení koncových uživatelů i připojení koncových bodů modelu. Nepoužívejte ho přímo z nedůvěryhodných zařízení koncových uživatelů.
Tip
Pokud chcete začít s rozhraním API v reálném čase, přečtěte si rychlý start a průvodce postupy.
Connection
Rozhraní API v reálném čase vyžaduje existující koncový bod prostředku Azure OpenAI v podporované oblasti. K rozhraní API se přistupuje přes zabezpečené připojení WebSocket ke koncovému /realtime
bodu vašeho prostředku Azure OpenAI.
Úplný identifikátor URI požadavku můžete vytvořit zřetězením:
- Zabezpečený protokol WebSocket (
wss://
) - Název hostitele koncového bodu prostředku Azure OpenAI, například
my-aoai-resource.openai.azure.com
- Cesta
openai/realtime
k rozhraní API - Parametr
api-version
řetězce dotazu pro podporovanou verzi rozhraní API, například2024-10-01-preview
-
deployment
Parametr řetězce dotazu s názvemgpt-4o-realtime-preview
nasazení modelu
Následující příklad je dobře vytvořený /realtime
identifikátor URI požadavku:
wss://my-eastus2-openai-resource.openai.azure.com/openai/realtime?api-version=2024-10-01-preview&deployment=gpt-4o-realtime-preview-1001
Ověřování
Ověření:
-
Microsoft Entra (doporučeno): Použijte ověřování založené na tokenech s rozhraním
/realtime
API pro prostředek služby Azure OpenAI s povolenou spravovanou identitou. Použijte načtený ověřovací token pomocí tokenu s hlavičkouBearer
Authorization
. -
Klíč rozhraní API: Je
api-key
možné zadat jedním ze dvou způsobů:- Použití hlavičky
api-key
připojení v předpřipravené připojení. Tato možnost není dostupná v prostředí prohlížeče. - Použití parametru
api-key
řetězce dotazu na identifikátoru URI požadavku. Parametry řetězce dotazu se šifrují při použití https/wss.
- Použití hlavičky
Události klienta
Existuje devět událostí klienta, které lze odeslat z klienta na server:
Událost | Popis |
---|---|
RealtimeClientEventConversationItemCreate | Událost klienta conversation.item.create se používá k přidání nové položky do kontextu konverzace, včetně zpráv, volání funkcí a odpovědí na volání funkce. |
RealtimeClientEventConversationItemDelete | Událost klienta conversation.item.delete slouží k odebrání položky z historie konverzací. |
RealtimeClientEventConversationItemTruncate | Událost klienta conversation.item.truncate slouží ke zkrácení zvuku předchozí zprávy asistenta. |
RealtimeClientEventInputAudioBufferAppend | Událost klienta input_audio_buffer.append se používá k připojení zvukových bajtů ke vstupní zvukové vyrovnávací paměti. |
RealtimeClientEventInputAudioBufferClear | Událost klienta input_audio_buffer.clear slouží k vymazání zvukových bajtů v vyrovnávací paměti. |
RealtimeClientEventInputAudioBufferCommit | Událost klienta input_audio_buffer.commit se používá k potvrzení zvukové vyrovnávací paměti vstupu uživatele. |
RealtimeClientEventResponseCancel | Událost klienta response.cancel se používá ke zrušení probíhající odpovědi. |
RealtimeClientEventResponseCreate | Událost klienta response.create slouží k pokynu serveru, aby vytvořil odpověď prostřednictvím odvozování modelu. |
RealtimeClientEventSessionUpdate | Událost klienta session.update slouží k aktualizaci výchozí konfigurace relace. |
RealtimeClientEventConversationItemCreate
Událost klienta conversation.item.create
se používá k přidání nové položky do kontextu konverzace, včetně zpráv, volání funkcí a odpovědí na volání funkce. Tuto událost můžete použít k naplnění historie konverzace a k přidání nových položek uprostřed datového proudu. V současné době tato událost nemůže naplnit zvukové zprávy asistenta.
V případě úspěchu server odpoví událostí conversation.item.created
, jinak error
se odešle událost.
Struktura událostí
{
"type": "conversation.item.create",
"previous_item_id": "<previous_item_id>"
}
Vlastnosti
Pole | Typ | Popis |
---|---|---|
type | string | Typ události musí být conversation.item.create . |
previous_item_id | string | ID předchozí položky, po které se nová položka vloží. Pokud není nastavená, připojí se nová položka na konec konverzace. Pokud je tato možnost nastavená, umožňuje vložení položky do střední konverzace. Pokud se ID nenašlo, vrátí se chyba a položka se nepřidá. |
položka | RealtimeConversationRequestItem | Položka, kterou chcete přidat do konverzace. |
RealtimeClientEventConversationItemDelete
Událost klienta conversation.item.delete
slouží k odebrání položky z historie konverzací.
Server odpoví událostí conversation.item.deleted
, pokud položka v historii konverzací neexistuje, v takovém případě server odpoví chybou.
Struktura událostí
{
"type": "conversation.item.delete",
"item_id": "<item_id>"
}
Vlastnosti
Pole | Typ | Popis |
---|---|---|
type | string | Typ události musí být conversation.item.delete . |
item_id | string | ID položky, kterou chcete odstranit. |
RealtimeClientEventConversationItemTruncate
Událost klienta conversation.item.truncate
slouží ke zkrácení zvuku předchozí zprávy asistenta. Server vytváří zvuk rychleji než v reálném čase, takže tato událost je užitečná, když uživatel přeruší zkrácení zvuku, který byl odeslán klientovi, ale ještě nepřehrával. Server rozumí zvuku při přehrávání klienta.
Zkrácením zvuku se odstraní přepis textu na straně serveru, aby se zajistilo, že v kontextu není text, o který uživatel neví.
Pokud je událost klienta úspěšná, server odpoví událostí conversation.item.truncated
.
Struktura událostí
{
"type": "conversation.item.truncate",
"item_id": "<item_id>",
"content_index": 0,
"audio_end_ms": 0
}
Vlastnosti
Pole | Typ | Popis |
---|---|---|
type | string | Typ události musí být conversation.item.truncate . |
item_id | string | ID položky zprávy asistenta, která se má zkrátit. Oříznou se jenom položky zpráv pomocníka. |
content_index | integer | Index části obsahu, která se má zkrátit. Nastavte tuto vlastnost na hodnotu 0. |
audio_end_ms | integer | Inkluzivní doba trvání až do zkrácení zvuku v milisekundách. Pokud je audio_end_ms větší než skutečná doba trvání zvuku, server odpoví chybou. |
RealtimeClientEventInputAudioBufferAppend
Událost klienta input_audio_buffer.append
se používá k připojení zvukových bajtů ke vstupní zvukové vyrovnávací paměti. Zvuková vyrovnávací paměť je dočasné úložiště, do které můžete zapisovat a později potvrdit.
V režimu Detekce hlasových aktivit serveru se k detekci řeči používá vyrovnávací paměť zvuku a server se rozhodne, kdy se má potvrdit. Když je server VAD zakázaný, klient může zvolit, kolik zvuku se má umístit do každé události až do maximálního počtu 15 MiB. Například streamování menších bloků dat z klienta může umožnit větší odezvu vad.
Na rozdíl od většiny ostatních událostí klienta server neodesílá potvrzovací odpověď na událost klienta input_audio_buffer.append
.
Struktura událostí
{
"type": "input_audio_buffer.append",
"audio": "<audio>"
}
Vlastnosti
Pole | Typ | Popis |
---|---|---|
type | string | Typ události musí být input_audio_buffer.append . |
audio | string | Bajty zvuku s kódováním Base64 Tato hodnota musí být ve formátu určeném input_audio_format polem v konfiguraci relace. |
RealtimeClientEventInputAudioBufferClear
Událost klienta input_audio_buffer.clear
slouží k vymazání zvukových bajtů v vyrovnávací paměti.
Server odpoví událostí input_audio_buffer.cleared
.
Struktura událostí
{
"type": "input_audio_buffer.clear"
}
Vlastnosti
Pole | Typ | Popis |
---|---|---|
type | string | Typ události musí být input_audio_buffer.clear . |
RealtimeClientEventInputAudioBufferCommit
Událost klienta input_audio_buffer.commit
se používá k potvrzení vyrovnávací paměti zvuku vstupu uživatele, která vytvoří novou položku zprávy uživatele v konverzaci. Pokud je pro relaci nakonfigurovaný zvuk, zvuk se přepíše input_audio_transcription
.
Když je v režimu VAD serveru, klient nemusí tuto událost odeslat, server potvrdí vyrovnávací paměť zvuku automaticky. Bez serveru VAD musí klient potvrdit vyrovnávací paměť zvuku k vytvoření položky zprávy uživatele. Tato událost klienta způsobí chybu, pokud je vstupní zvuková vyrovnávací paměť prázdná.
Potvrzení vstupní zvukové vyrovnávací paměti nevytvoří odpověď z modelu.
Server odpoví událostí input_audio_buffer.committed
.
Struktura událostí
{
"type": "input_audio_buffer.commit"
}
Vlastnosti
Pole | Typ | Popis |
---|---|---|
type | string | Typ události musí být input_audio_buffer.commit . |
RealtimeClientEventResponseCancel
Událost klienta response.cancel
se používá ke zrušení probíhající odpovědi.
Server odpoví událostí nebo chybou response.cancelled
, pokud neexistuje odpověď na zrušení.
Struktura událostí
{
"type": "response.cancel"
}
Vlastnosti
Pole | Typ | Popis |
---|---|---|
type | string | Typ události musí být response.cancel . |
RealtimeClientEventResponseCreate
Událost klienta response.create
slouží k pokynu serveru, aby vytvořil odpověď prostřednictvím odvozování modelu. Když je relace nakonfigurovaná v režimu vad serveru, server automaticky vytvoří odpovědi.
Odpověď obsahuje alespoň jednu item
a může mít dvě, v takovém případě druhé je volání funkce. Tyto položky se připojují k historii konverzací.
Server odpoví událostí, jednou nebo více událostmi response.created
obsahu (například conversation.item.created
a response.content_part.added
) a nakonec response.done
událostí, která indikuje, že odpověď je dokončená.
Poznámka:
Událost klienta response.create
zahrnuje konfiguraci odvozování, například instructions
a temperature
. Tato pole můžou přepsat konfiguraci relace pouze pro tuto odpověď.
Struktura událostí
{
"type": "response.create"
}
Vlastnosti
Pole | Typ | Popis |
---|---|---|
type | string | Typ události musí být response.create . |
odpověď | RealtimeResponseOptions | Možnosti odpovědi. |
RealtimeClientEventSessionUpdate
Událost klienta session.update
slouží k aktualizaci výchozí konfigurace relace. Klient může tuto událost kdykoli odeslat, aby aktualizoval konfiguraci relace, a jakékoli pole lze kdykoli aktualizovat, s výjimkou hlasu.
Aktualizují se jenom pole, která jsou k dispozici. Pokud chcete vymazat pole (například instructions
), předejte prázdný řetězec.
Server odpoví událostí session.updated
, která obsahuje úplnou efektivní konfiguraci.
Struktura událostí
{
"type": "session.update"
}
Vlastnosti
Pole | Typ | Popis |
---|---|---|
type | string | Typ události musí být session.update . |
session | RealtimeRequestSession | Konfigurace relace. |
Události serveru
Server může přijímat 28 událostí:
Událost | Popis |
---|---|
RealtimeServerEventConversationCreated | Událost serveru conversation.created se vrátí hned po vytvoření relace. Pro každou relaci se vytvoří jedna konverzace. |
RealtimeServerEventConversationItemCreated | Událost serveru conversation.item.created se vrátí při vytvoření položky konverzace. |
RealtimeServerEventConversationItemDeleted | Událost serveru conversation.item.deleted se vrátí, když klient odstranil položku v konverzaci s událostí conversation.item.delete . |
RealtimeServerEventConversationItemInputAudioTranscriptionCompleted | Událost serveru conversation.item.input_audio_transcription.completed je výsledkem přepisu zvuku pro řeč zapsanou do vyrovnávací paměti zvuku. |
RealtimeServerEventConversationItemInputAudioTranscriptionFailed | Událost serveru conversation.item.input_audio_transcription.failed se vrátí při konfiguraci vstupního přepisu zvuku a žádost o přepis pro zprávu uživatele se nezdařila. |
RealtimeServerEventConversationItemTruncated | Událost serveru conversation.item.truncated se vrátí, když klient zkrátí položku zvukové zprávy dřívějšího asistenta událostí conversation.item.truncate . |
RealtimeServerEventError | Událost serveru error se vrátí, když dojde k chybě, což může být problém klienta nebo problém se serverem. |
RealtimeServerEventInputAudioBufferCleared | Událost serveru input_audio_buffer.cleared se vrátí, když klient vymaže vstupní zvukovou vyrovnávací paměť s událostí input_audio_buffer.clear . |
RealtimeServerEventInputAudioBufferCommitted | Událost serveru input_audio_buffer.committed se vrátí, když je potvrzena vstupní zvuková vyrovnávací paměť klienta nebo automaticky v režimu VAD serveru. |
RealtimeServerEventInputAudioBufferSpeechStarted | Událost serveru input_audio_buffer.speech_started se vrátí v server_vad režimu, když se v vyrovnávací paměti zvuku zjistí řeč. |
RealtimeServerEventInputAudioBufferSpeechStopped | Událost serveru input_audio_buffer.speech_stopped se vrátí v server_vad režimu, když server zjistí konec řeči ve zvukové vyrovnávací paměti. |
RealtimeServerEventRateLimitsUpdated | Událost serveru rate_limits.updated se vygeneruje na začátku odpovědi, která indikuje aktualizované limity četnosti. |
RealtimeServerEventResponseAudioDelta | Událost serveru response.audio.delta se vrátí při aktualizaci zvuku generovaného modelem. |
RealtimeServerEventResponseAudioDone | Událost serveru response.audio.done se vrátí, když se dokončí zvuk vygenerovaný modelem. |
RealtimeServerEventResponseAudioTranscriptDelta | Událost serveru response.audio_transcript.delta se vrátí při aktualizaci přepisu zvukového výstupu generovaného modelem. |
RealtimeServerEventResponseAudioTranscriptDone | Událost serveru response.audio_transcript.done se vrátí, když se streamuje streamovaný přepis zvukového výstupu vygenerovaný modelem. |
RealtimeServerEventResponseContentPartAdded | Událost serveru response.content_part.added se vrátí, když se do položky zprávy pomocníka přidá nová část obsahu. |
RealtimeServerEventResponseContentPartDone | Událost serveru response.content_part.done se vrátí, když se dokončí streamování části obsahu. |
RealtimeServerEventResponseCreated | Událost serveru response.created se vrátí při vytvoření nové odpovědi. Toto je první událost vytvoření odpovědi, kde odpověď je v počátečním stavu in_progress . |
RealtimeServerEventResponseDone | Událost serveru response.done se vrátí, když se dokončí streamování odpovědi. |
RealtimeServerEventResponseFunctionCallArgumentsDelta | Událost serveru response.function_call_arguments.delta se vrátí při aktualizaci argumentů volání funkce generované modelem. |
RealtimeServerEventResponseFunctionCallArgumentsDone | Událost serveru response.function_call_arguments.done se vrátí, když se streamují argumenty volání funkce generované modelem. |
RealtimeServerEventResponseOutputItemAdded | Událost serveru response.output_item.added se vrátí, když se během generování odpovědi vytvoří nová položka. |
RealtimeServerEventResponseOutputItemDone | Událost serveru response.output_item.done se vrátí, když se položka dokončí streamování. |
RealtimeServerEventResponseTextDelta | Událost serveru response.text.delta se vrátí při aktualizaci textu generovaného modelem. |
RealtimeServerEventResponseTextDone | Událost serveru response.text.done se vrátí, když se streamuje text vygenerovaný modelem. |
RealtimeServerEventSessionCreated |
session.created Serverová událost je první událost serveru při navázání nového připojení k rozhraní API v reálném čase. Tato událost vytvoří a vrátí novou relaci s výchozí konfigurací relace. |
RealtimeServerEventSessionUpdated | Událost serveru session.updated se vrátí, když klient aktualizuje relaci. Pokud dojde k chybě, server místo toho odešle error událost. |
RealtimeServerEventConversationCreated
Událost serveru conversation.created
se vrátí hned po vytvoření relace. Pro každou relaci se vytvoří jedna konverzace.
Struktura událostí
{
"type": "conversation.created",
"conversation": {
"id": "<id>",
"object": "<object>"
}
}
Vlastnosti
Pole | Typ | Popis |
---|---|---|
type | string | Typ události musí být conversation.created . |
konverzace | objekt | Prostředek konverzace. |
Vlastnosti konverzace
Pole | Typ | Popis |
---|---|---|
ID | řetězec | Jedinečné ID konverzace. |
objekt | string | Typ objektu musí být realtime.conversation . |
RealtimeServerEventConversationItemCreated
Událost serveru conversation.item.created
se vrátí při vytvoření položky konverzace. Existuje několik scénářů, které vygenerují tuto událost:
- Server generuje odpověď, která v případě úspěšného vytvoření jedné nebo dvou položek, která je typu
message
(roleassistant
) nebo typufunction_call
. - Vstupní zvuková vyrovnávací paměť je potvrzena klientem nebo serverem (v
server_vad
režimu). Server vezme obsah vstupní zvukové vyrovnávací paměti a přidá ho do nové položky zprávy uživatele. - Klient odeslal
conversation.item.create
událost pro přidání nové položky do konverzace.
Struktura událostí
{
"type": "conversation.item.created",
"previous_item_id": "<previous_item_id>"
}
Vlastnosti
Pole | Typ | Popis |
---|---|---|
type | string | Typ události musí být conversation.item.created . |
previous_item_id | string | ID předchozí položky v kontextu konverzace umožňuje klientovi porozumět pořadí konverzace. |
položka | RealtimeConversationResponseItem | Položka, která byla vytvořena. |
RealtimeServerEventConversationItemDeleted
Událost serveru conversation.item.deleted
se vrátí, když klient odstranil položku v konverzaci s událostí conversation.item.delete
. Tato událost slouží k synchronizaci porozumění historii konverzací serveru se zobrazením klienta.
Struktura událostí
{
"type": "conversation.item.deleted",
"item_id": "<item_id>"
}
Vlastnosti
Pole | Typ | Popis |
---|---|---|
type | string | Typ události musí být conversation.item.deleted . |
item_id | string | ID odstraněné položky. |
RealtimeServerEventConversationItemInputAudioTranscriptionCompleted
Událost serveru conversation.item.input_audio_transcription.completed
je výsledkem přepisu zvuku pro řeč zapsanou do vyrovnávací paměti zvuku.
Přepis začíná, když je vstupní zvuková vyrovnávací paměť potvrzena klientem nebo serverem (v server_vad
režimu). Přepis se spouští asynchronně s vytvořením odpovědi, takže tato událost může pocházet před událostmi odpovědi nebo po této události.
Modely rozhraní API v reálném čase přijímají zvuk nativně, a proto přepis vstupu je samostatný proces spuštěný na samostatném modelu rozpoznávání řeči, aktuálně vždy whisper-1
. Přepis se tak může poněkud lišit od interpretace modelu a měl by být považován za hrubý vodítko.
Struktura událostí
{
"type": "conversation.item.input_audio_transcription.completed",
"item_id": "<item_id>",
"content_index": 0,
"transcript": "<transcript>"
}
Vlastnosti
Pole | Typ | Popis |
---|---|---|
type | string | Typ události musí být conversation.item.input_audio_transcription.completed . |
item_id | string | ID položky zprávy uživatele obsahující zvuk. |
content_index | integer | Index části obsahu obsahující zvuk. |
přepis | string | Přepisovaný text. |
RealtimeServerEventConversationItemInputAudioTranscriptionFailed
Událost serveru conversation.item.input_audio_transcription.failed
se vrátí při konfiguraci vstupního přepisu zvuku a žádost o přepis pro zprávu uživatele se nezdařila. Tato událost je oddělená od ostatních error
událostí, aby klient mohl identifikovat související položku.
Struktura událostí
{
"type": "conversation.item.input_audio_transcription.failed",
"item_id": "<item_id>",
"content_index": 0,
"error": {
"code": "<code>",
"message": "<message>",
"param": "<param>"
}
}
Vlastnosti
Pole | Typ | Popis |
---|---|---|
type | string | Typ události musí být conversation.item.input_audio_transcription.failed . |
item_id | string | ID položky zprávy uživatele. |
content_index | integer | Index části obsahu obsahující zvuk. |
chyba | objekt | Podrobnosti o chybě přepisu Zobrazení vnořených vlastností v další tabulce |
Vlastnosti chyby
Pole | Typ | Popis |
---|---|---|
type | string | Typ chyby. |
code | string | Kód chyby, pokud existuje. |
zpráva | string | Chybová zpráva čitelná člověkem. |
Param | string | Parametr související s chybou, pokud existuje. |
RealtimeServerEventConversationItemTruncated
Událost serveru conversation.item.truncated
se vrátí, když klient zkrátí položku zvukové zprávy dřívějšího asistenta událostí conversation.item.truncate
. Tato událost se používá k synchronizaci porozumění zvuku serveru s přehráváním klienta.
Tato událost zkrátí zvuk a odebere přepis textu na straně serveru, aby nedošlo k žádnému textu v kontextu, o který uživatel neví.
Struktura událostí
{
"type": "conversation.item.truncated",
"item_id": "<item_id>",
"content_index": 0,
"audio_end_ms": 0
}
Vlastnosti
Pole | Typ | Popis |
---|---|---|
type | string | Typ události musí být conversation.item.truncated . |
item_id | string | ID položky zprávy asistenta, která byla zkrácena. |
content_index | integer | Index části obsahu, která byla zkrácena. |
audio_end_ms | integer | Doba trvání zkrácení zvuku v milisekundách. |
RealtimeServerEventError
Událost serveru error
se vrátí, když dojde k chybě, což může být problém klienta nebo problém se serverem. Většina chyb je obnovitelná a relace zůstane otevřená.
Struktura událostí
{
"type": "error",
"error": {
"code": "<code>",
"message": "<message>",
"param": "<param>",
"event_id": "<event_id>"
}
}
Vlastnosti
Pole | Typ | Popis |
---|---|---|
type | string | Typ události musí být error . |
chyba | objekt | Podrobnosti o chybě Zobrazení vnořených vlastností v další tabulce |
Vlastnosti chyby
Pole | Typ | Popis |
---|---|---|
type | string | Typ chyby. Například "invalid_request_error" a "server_error" jsou typy chyb. |
code | string | Kód chyby, pokud existuje. |
zpráva | string | Chybová zpráva čitelná člověkem. |
Param | string | Parametr související s chybou, pokud existuje. |
event_id | string | ID události klienta, která způsobila chybu, pokud je k dispozici. |
RealtimeServerEventInputAudioBufferCleared
Událost serveru input_audio_buffer.cleared
se vrátí, když klient vymaže vstupní zvukovou vyrovnávací paměť s událostí input_audio_buffer.clear
.
Struktura událostí
{
"type": "input_audio_buffer.cleared"
}
Vlastnosti
Pole | Typ | Popis |
---|---|---|
type | string | Typ události musí být input_audio_buffer.cleared . |
RealtimeServerEventInputAudioBufferCommitted
Událost serveru input_audio_buffer.committed
se vrátí, když je potvrzena vstupní zvuková vyrovnávací paměť klienta nebo automaticky v režimu VAD serveru. Vlastnost item_id
je ID vytvořené položky zprávy uživatele.
conversation.item.created
Proto se klientovi odešle také událost.
Struktura událostí
{
"type": "input_audio_buffer.committed",
"previous_item_id": "<previous_item_id>",
"item_id": "<item_id>"
}
Vlastnosti
Pole | Typ | Popis |
---|---|---|
type | string | Typ události musí být input_audio_buffer.committed . |
previous_item_id | string | ID předchozí položky, po které se nová položka vloží. |
item_id | string | ID vytvořené položky zprávy uživatele. |
RealtimeServerEventInputAudioBufferSpeechStarted
Událost serveru input_audio_buffer.speech_started
se vrátí v server_vad
režimu, když se v vyrovnávací paměti zvuku zjistí řeč. K této události může dojít při každém přidání zvuku do vyrovnávací paměti (pokud už není zjištěna řeč).
Poznámka:
Klient může chtít tuto událost použít k přerušení přehrávání zvuku nebo poskytnutí vizuální zpětné vazby uživateli.
Klient by měl očekávat, že obdrží input_audio_buffer.speech_stopped
událost, když se řeč zastaví. Vlastnost item_id
je ID položky zprávy uživatele vytvořené při zastavení řeči. Tato item_id
položka je také zahrnuta v input_audio_buffer.speech_stopped
události, pokud klient při aktivaci VAD ručně nespíše vyrovnávací paměť zvuku.
Struktura událostí
{
"type": "input_audio_buffer.speech_started",
"audio_start_ms": 0,
"item_id": "<item_id>"
}
Vlastnosti
Pole | Typ | Popis |
---|---|---|
type | string | Typ události musí být input_audio_buffer.speech_started . |
audio_start_ms | integer | Milisekundy od začátku veškerého zvuku zapsaného do vyrovnávací paměti během relace při prvním zjištění řeči. Tato vlastnost odpovídá začátku zvuku odeslaného do modelu, a proto zahrnuje prefix_padding_ms nakonfigurovanou v relaci. |
item_id | string | ID položky zprávy uživatele vytvořené při zastavení řeči. |
RealtimeServerEventInputAudioBufferSpeechStopped
Událost serveru input_audio_buffer.speech_stopped
se vrátí v server_vad
režimu, když server zjistí konec řeči ve zvukové vyrovnávací paměti.
Server také odešle událost s položkou conversation.item.created
zprávy uživatele vytvořenou ze zvukové vyrovnávací paměti.
Struktura událostí
{
"type": "input_audio_buffer.speech_stopped",
"audio_end_ms": 0,
"item_id": "<item_id>"
}
Vlastnosti
Pole | Typ | Popis |
---|---|---|
type | string | Typ události musí být input_audio_buffer.speech_stopped . |
audio_end_ms | integer | Milisekundy od spuštění relace při zastavení řeči. Tato vlastnost odpovídá konci zvuku odeslaného do modelu, a proto zahrnuje min_silence_duration_ms nakonfigurované v relaci. |
item_id | string | ID vytvořené položky zprávy uživatele. |
RealtimeServerEventRateLimitsUpdated
Událost serveru rate_limits.updated
se vygeneruje na začátku odpovědi, která indikuje aktualizované limity četnosti.
Při vytvoření odpovědi jsou některé tokeny vyhrazené pro výstupní tokeny. Zde uvedené limity sazeb odrážejí tuto rezervaci, která se po dokončení odpovědi odpovídajícím způsobem upraví.
Struktura událostí
{
"type": "rate_limits.updated",
"rate_limits": [
{
"name": "<name>",
"limit": 0,
"remaining": 0,
"reset_seconds": 0
}
]
}
Vlastnosti
Pole | Typ | Popis |
---|---|---|
type | string | Typ události musí být rate_limits.updated . |
rate_limits | array of RealtimeServerEventRateLimitsUpdatedRateLimitsItem | Seznam informací o limitu četnosti |
RealtimeServerEventResponseAudioDelta
Událost serveru response.audio.delta
se vrátí při aktualizaci zvuku generovaného modelem.
Struktura událostí
{
"type": "response.audio.delta",
"response_id": "<response_id>",
"item_id": "<item_id>",
"output_index": 0,
"content_index": 0,
"delta": "<delta>"
}
Vlastnosti
Pole | Typ | Popis |
---|---|---|
type | string | Typ události musí být response.audio.delta . |
response_id | string | ID odpovědi. |
item_id | string | ID položky. |
output_index | integer | Index výstupní položky v odpovědi. |
content_index | integer | Index části obsahu v poli obsahu položky. |
Delta | string | Rozdílová zvuková data s kódováním Base64 |
RealtimeServerEventResponseAudioDone
Událost serveru response.audio.done
se vrátí, když se dokončí zvuk vygenerovaný modelem.
Tato událost se také vrátí, když se přeruší odpověď, nekompletní nebo zruší.
Struktura událostí
{
"type": "response.audio.done",
"response_id": "<response_id>",
"item_id": "<item_id>",
"output_index": 0,
"content_index": 0
}
Vlastnosti
Pole | Typ | Popis |
---|---|---|
type | string | Typ události musí být response.audio.done . |
response_id | string | ID odpovědi. |
item_id | string | ID položky. |
output_index | integer | Index výstupní položky v odpovědi. |
content_index | integer | Index části obsahu v poli obsahu položky. |
RealtimeServerEventResponseAudioTranscriptDelta
Událost serveru response.audio_transcript.delta
se vrátí při aktualizaci přepisu zvukového výstupu generovaného modelem.
Struktura událostí
{
"type": "response.audio_transcript.delta",
"response_id": "<response_id>",
"item_id": "<item_id>",
"output_index": 0,
"content_index": 0,
"delta": "<delta>"
}
Vlastnosti
Pole | Typ | Popis |
---|---|---|
type | string | Typ události musí být response.audio_transcript.delta . |
response_id | string | ID odpovědi. |
item_id | string | ID položky. |
output_index | integer | Index výstupní položky v odpovědi. |
content_index | integer | Index části obsahu v poli obsahu položky. |
Delta | string | Rozdíl přepisu. |
RealtimeServerEventResponseAudioTranscriptDone
Událost serveru response.audio_transcript.done
se vrátí, když se streamuje streamovaný přepis zvukového výstupu vygenerovaný modelem.
Tato událost se také vrátí, když se přeruší odpověď, nekompletní nebo zruší.
Struktura událostí
{
"type": "response.audio_transcript.done",
"response_id": "<response_id>",
"item_id": "<item_id>",
"output_index": 0,
"content_index": 0,
"transcript": "<transcript>"
}
Vlastnosti
Pole | Typ | Popis |
---|---|---|
type | string | Typ události musí být response.audio_transcript.done . |
response_id | string | ID odpovědi. |
item_id | string | ID položky. |
output_index | integer | Index výstupní položky v odpovědi. |
content_index | integer | Index části obsahu v poli obsahu položky. |
přepis | string | Poslední přepis zvuku. |
RealtimeServerEventResponseContentPartAdded
Událost serveru response.content_part.added
se vrátí, když se během generování odpovědi přidá nová část obsahu do položky zprávy asistenta.
Struktura událostí
{
"type": "response.content_part.added",
"response_id": "<response_id>",
"item_id": "<item_id>",
"output_index": 0,
"content_index": 0
}
Vlastnosti
Pole | Typ | Popis |
---|---|---|
type | string | Typ události musí být response.content_part.added . |
response_id | string | ID odpovědi. |
item_id | string | ID položky, do které byla část obsahu přidána. |
output_index | integer | Index výstupní položky v odpovědi. |
content_index | integer | Index části obsahu v poli obsahu položky. |
část | RealtimeContentPart | Část obsahu, která byla přidána. |
Vlastnosti části
Pole | Typ | Popis |
---|---|---|
type | RealtimeContentPartType |
RealtimeServerEventResponseContentPartDone
Událost serveru response.content_part.done
se vrátí, když se část obsahu dokončí streamováním v položce zprávy pomocníka.
Tato událost se také vrátí, když se přeruší odpověď, nekompletní nebo zruší.
Struktura událostí
{
"type": "response.content_part.done",
"response_id": "<response_id>",
"item_id": "<item_id>",
"output_index": 0,
"content_index": 0
}
Vlastnosti
Pole | Typ | Popis |
---|---|---|
type | string | Typ události musí být response.content_part.done . |
response_id | string | ID odpovědi. |
item_id | string | ID položky. |
output_index | integer | Index výstupní položky v odpovědi. |
content_index | integer | Index části obsahu v poli obsahu položky. |
část | RealtimeContentPart | Část obsahu, která je hotová. |
Vlastnosti části
Pole | Typ | Popis |
---|---|---|
type | RealtimeContentPartType |
RealtimeServerEventResponseCreated
Událost serveru response.created
se vrátí při vytvoření nové odpovědi. Toto je první událost vytvoření odpovědi, kde odpověď je v počátečním stavu in_progress
.
Struktura událostí
{
"type": "response.created"
}
Vlastnosti
Pole | Typ | Popis |
---|---|---|
type | string | Typ události musí být response.created . |
odpověď | RealtimeResponse | Objekt odpovědi. |
RealtimeServerEventResponseDone
Událost serveru response.done
se vrátí, když se dokončí streamování odpovědi. Tato událost se vždy vygeneruje bez ohledu na konečný stav. Objekt odpovědi zahrnutý v response.done
události zahrnuje všechny výstupní položky v odpovědi, ale vynechá nezpracovaná zvuková data.
Struktura událostí
{
"type": "response.done"
}
Vlastnosti
Pole | Typ | Popis |
---|---|---|
type | string | Typ události musí být response.done . |
odpověď | RealtimeResponse | Objekt odpovědi. |
RealtimeServerEventResponseFunctionCallArgumentsDelta
Událost serveru response.function_call_arguments.delta
se vrátí při aktualizaci argumentů volání funkce generované modelem.
Struktura událostí
{
"type": "response.function_call_arguments.delta",
"response_id": "<response_id>",
"item_id": "<item_id>",
"output_index": 0,
"call_id": "<call_id>",
"delta": "<delta>"
}
Vlastnosti
Pole | Typ | Popis |
---|---|---|
type | string | Typ události musí být response.function_call_arguments.delta . |
response_id | string | ID odpovědi. |
item_id | string | ID položky volání funkce. |
output_index | integer | Index výstupní položky v odpovědi. |
call_id | string | ID volání funkce. |
Delta | string | Argumenty delta jako řetězec JSON. |
RealtimeServerEventResponseFunctionCallArgumentsDone
Událost serveru response.function_call_arguments.done
se vrátí, když se streamují argumenty volání funkce generované modelem.
Tato událost se také vrátí, když se přeruší odpověď, nekompletní nebo zruší.
Struktura událostí
{
"type": "response.function_call_arguments.done",
"response_id": "<response_id>",
"item_id": "<item_id>",
"output_index": 0,
"call_id": "<call_id>",
"arguments": "<arguments>"
}
Vlastnosti
Pole | Typ | Popis |
---|---|---|
type | string | Typ události musí být response.function_call_arguments.done . |
response_id | string | ID odpovědi. |
item_id | string | ID položky volání funkce. |
output_index | integer | Index výstupní položky v odpovědi. |
call_id | string | ID volání funkce. |
argumenty | string | Poslední argumenty jako řetězec JSON. |
RealtimeServerEventResponseOutputItemAdded
Událost serveru response.output_item.added
se vrátí, když se během generování odpovědi vytvoří nová položka.
Struktura událostí
{
"type": "response.output_item.added",
"response_id": "<response_id>",
"output_index": 0
}
Vlastnosti
Pole | Typ | Popis |
---|---|---|
type | string | Typ události musí být response.output_item.added . |
response_id | string | ID odpovědi, do které položka patří. |
output_index | integer | Index výstupní položky v odpovědi. |
položka | RealtimeConversationResponseItem | Položka, která byla přidána. |
RealtimeServerEventResponseOutputItemDone
Událost serveru response.output_item.done
se vrátí, když se položka dokončí streamování.
Tato událost se také vrátí, když se přeruší odpověď, nekompletní nebo zruší.
Struktura událostí
{
"type": "response.output_item.done",
"response_id": "<response_id>",
"output_index": 0
}
Vlastnosti
Pole | Typ | Popis |
---|---|---|
type | string | Typ události musí být response.output_item.done . |
response_id | string | ID odpovědi, do které položka patří. |
output_index | integer | Index výstupní položky v odpovědi. |
položka | RealtimeConversationResponseItem | Položka, která se provádí streamování. |
RealtimeServerEventResponseTextDelta
Událost serveru response.text.delta
se vrátí při aktualizaci textu generovaného modelem. Text odpovídá text
části obsahu položky zprávy asistenta.
Struktura událostí
{
"type": "response.text.delta",
"response_id": "<response_id>",
"item_id": "<item_id>",
"output_index": 0,
"content_index": 0,
"delta": "<delta>"
}
Vlastnosti
Pole | Typ | Popis |
---|---|---|
type | string | Typ události musí být response.text.delta . |
response_id | string | ID odpovědi. |
item_id | string | ID položky. |
output_index | integer | Index výstupní položky v odpovědi. |
content_index | integer | Index části obsahu v poli obsahu položky. |
Delta | string | Rozdíl textu. |
RealtimeServerEventResponseTextDone
Událost serveru response.text.done
se vrátí, když se streamuje text vygenerovaný modelem. Text odpovídá text
části obsahu položky zprávy asistenta.
Tato událost se také vrátí, když se přeruší odpověď, nekompletní nebo zruší.
Struktura událostí
{
"type": "response.text.done",
"response_id": "<response_id>",
"item_id": "<item_id>",
"output_index": 0,
"content_index": 0,
"text": "<text>"
}
Vlastnosti
Pole | Typ | Popis |
---|---|---|
type | string | Typ události musí být response.text.done . |
response_id | string | ID odpovědi. |
item_id | string | ID položky. |
output_index | integer | Index výstupní položky v odpovědi. |
content_index | integer | Index části obsahu v poli obsahu položky. |
text | string | Konečný textový obsah. |
RealtimeServerEventSessionCreated
session.created
Serverová událost je první událost serveru při navázání nového připojení k rozhraní API v reálném čase. Tato událost vytvoří a vrátí novou relaci s výchozí konfigurací relace.
Struktura událostí
{
"type": "session.created"
}
Vlastnosti
Pole | Typ | Popis |
---|---|---|
type | string | Typ události musí být session.created . |
session | RealtimeResponseSession | Objekt relace. |
RealtimeServerEventSessionUpdated
Událost serveru session.updated
se vrátí, když klient aktualizuje relaci. Pokud dojde k chybě, server místo toho odešle error
událost.
Struktura událostí
{
"type": "session.updated"
}
Vlastnosti
Pole | Typ | Popis |
---|---|---|
type | string | Typ události musí být session.updated . |
session | RealtimeResponseSession | Objekt relace. |
Komponenty
RealtimeAudioFormat
Povolené hodnoty:
pcm16
g711_ulaw
g711_alaw
RealtimeAudioInputTranscriptionModel
Povolené hodnoty:
whisper-1
RealtimeAudioInputTranscriptionSettings
Pole | Typ | Popis |
---|---|---|
model | RealtimeAudioInputTranscriptionModel | Výchozí whisper-1 model je aktuálně jediným modelem podporovaným pro přepis zvukového vstupu. |
RealtimeClientEvent
Pole | Typ | Popis |
---|---|---|
type | RealtimeClientEventType | Typ události klienta. |
event_id | string | Jedinečné ID události. Klient může zadat ID, které pomáhá identifikovat událost. |
RealtimeClientEventType
Povolené hodnoty:
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
Pole | Typ | Popis |
---|---|---|
type | RealtimeContentPartType | Typ obsahu. Vlastnost objektu function .Povolené hodnoty: input_text , input_audio , item_reference text . |
text | string | Textový obsah. Tato vlastnost se vztahuje na input_text typy obsahu a text typy obsahu. |
ID | řetězec | ID předchozí položky konverzace, která se má odkazovat na položky vytvořené klientem i serverem. Tato vlastnost se vztahuje na item_reference typ obsahu v response.create událostech. |
audio | string | Bajty zvuku s kódováním base64. Tato vlastnost se vztahuje na input_audio typ obsahu. |
přepis | string | Přepis zvuku. Tato vlastnost se vztahuje na input_audio typ obsahu. |
RealtimeContentPartType
Povolené hodnoty:
input_text
input_audio
text
audio
RealtimeConversationItemBase
Položka, kterou chcete přidat do konverzace.
Tato tabulka popisuje všechny RealtimeConversationItem
vlastnosti. Vlastnosti, které se vztahují na událost, závisí na typu RealtimeItemType.
Pole | Typ | Popis |
---|---|---|
ID | řetězec | Jedinečné ID položky. Klient může zadat ID, které pomáhá spravovat kontext na straně serveru. Pokud klient nezadá ID, server ho vygeneruje. |
type | RealtimeItemType | Typ položky. Povolené hodnoty: message , function_call function_call_output |
objekt | string | Identifikátor vráceného objektu rozhraní API. Hodnota bude vždy realtime.item . |
stav | RealtimeItemStatus | Stav položky. Toto pole nemá vliv na konverzaci, ale akceptuje konzistenci s událostí conversation.item.created .Povolené hodnoty: completed , incomplete |
role | RealtimeMessageRole | Role odesílatele zprávy Tato vlastnost se vztahuje pouze na message položky. Povolené hodnoty: system , user assistant |
content | array of RealtimeContentPart | Obsah zprávy. Tato vlastnost se vztahuje pouze na message položky.– Položky zpráv role system podporují pouze input_text obsah.– Zprávy o podpoře input_text role user a input_audio obsahu.– Zprávy obsahu podpory text rolí assistant |
call_id | string | ID volání funkce (pro function_call a function_call_output položky). Pokud je položka předána function_call_output , server zkontroluje, jestli function_call v historii konverzací existuje položka se stejným ID. |
name | string | Název volané funkce (pro function_call položky). |
argumenty | string | Argumenty volání funkce (pro function_call položky). |
output | string | Výstup volání funkce (pro function_call_output položky). |
RealtimeConversationRequestItem
Objekt slouží RealtimeConversationRequestItem
k vytvoření nové položky v konverzaci prostřednictvím události conversation.item.create .
Pole | Typ | Popis |
---|---|---|
type | RealtimeItemType | Typ položky. |
ID | řetězec | Jedinečné ID položky. Klient může zadat ID, které pomáhá spravovat kontext na straně serveru. Pokud klient nezadá ID, server ho vygeneruje. |
RealtimeConversationResponseItem
Objekt RealtimeConversationResponseItem
představuje položku v konverzaci. Používá se v některých událostech serveru, například:
- conversation.item.created
- response.output_item.added
- response.output_item.done
-
response.created
(prostřednictvímresponse
typuRealtimeResponse
vlastnosti) -
response.done
(prostřednictvímresponse
typuRealtimeResponse
vlastnosti)
Pole | Typ | Popis |
---|---|---|
objekt | string | Identifikátor vráceného objektu rozhraní API. Povolené hodnoty: realtime.item |
type | RealtimeItemType | Typ položky. Povolené hodnoty: message , function_call function_call_output |
ID | řetězec | Jedinečné ID položky. Klient může zadat ID, které pomáhá spravovat kontext na straně serveru. Pokud klient nezadá ID, server ho vygeneruje. Tato vlastnost je nullable. |
RealtimeFunctionTool
Definice nástroje funkce, která se používá v koncovém bodu v reálném čase.
Pole | Typ | Popis |
---|---|---|
type | string | Typ nástroje. Povolené hodnoty: function |
name | string | Název funkce. |
description | string | Popis funkce, včetně pokynů k používání. Například "Použít tuto funkci k získání aktuálního času". |
parametry | objekt | Parametry funkce ve formě objektu JSON. |
RealtimeItemStatus
Povolené hodnoty:
in_progress
completed
incomplete
RealtimeItemType
Povolené hodnoty:
message
function_call
function_call_output
RealtimeMessageRole
Povolené hodnoty:
system
user
assistant
RealtimeRequestAssistantMessageItem
Pole | Typ | Popis |
---|---|---|
role | string | Role zprávy. Povolené hodnoty: assistant |
content | pole RealtimeRequestTextContentPart | Obsah zprávy. |
RealtimeRequestAudioContentPart
Pole | Typ | Popis |
---|---|---|
type | string | Typ části obsahu. Povolené hodnoty: input_audio |
přepis | string | Přepis zvuku. |
RealtimeRequestFunctionCallItem
Pole | Typ | Popis |
---|---|---|
type | string | Typ položky. Povolené hodnoty: function_call |
name | string | Název položky volání funkce. |
call_id | string | ID položky volání funkce. |
argumenty | string | Argumenty položky volání funkce. |
stav | RealtimeItemStatus | Stav položky. |
RealtimeRequestFunctionCallOutputItem
Pole | Typ | Popis |
---|---|---|
type | string | Typ položky. Povolené hodnoty: function_call_output |
call_id | string | ID položky volání funkce. |
output | string | Výstup položky volání funkce. |
RealtimeRequestMessageItem
Pole | Typ | Popis |
---|---|---|
type | string | Typ položky. Povolené hodnoty: message |
role | RealtimeMessageRole | Role zprávy. |
stav | RealtimeItemStatus | Stav položky. |
RealtimeRequestMessageReferenceItem
Pole | Typ | Popis |
---|---|---|
type | string | Typ položky. Povolené hodnoty: message |
ID | řetězec | ID položky zprávy. |
RealtimeRequestSession
Objekt použijete RealtimeRequestSession
, když chcete aktualizovat konfiguraci relace prostřednictvím události session.update .
Pole | Typ | Popis |
---|---|---|
modality | pole | Způsoby, které relace podporuje. Povolené hodnoty: text , audio Jedná se například "modalities": ["text", "audio"] o výchozí nastavení, které umožňuje režim textu i zvuku. Chcete-li povolit pouze text, nastavte "modalities": ["text"] . Nemůžete povolit jenom zvuk. |
pokyny | string | Pokyny (systémová zpráva) k vedení textu a zvukových odpovědí modelu. Tady je několik ukázkových pokynů, které vám pomůžou s obsahem a formátem textových a zvukových odpovědí: "instructions": "be succinct" "instructions": "act friendly" "instructions": "here are examples of good responses" Tady je několik ukázkových pokynů, které vám pomůžou vést chování zvuku: "instructions": "talk quickly" "instructions": "inject emotion into your voice" "instructions": "laugh frequently" I když model nemusí vždy postupovat podle těchto pokynů, poskytují pokyny k požadovanému chování. |
voice | RealtimeVoice | Hlas použitý pro odpověď modelu pro relaci. Jakmile se hlas použije v relaci pro zvukovou odpověď modelu, nedá se změnit. |
input_audio_format | RealtimeAudioFormat | Formát vstupního zvuku. |
output_audio_format | RealtimeAudioFormat | Formát výstupního zvuku. |
input_audio_transcription | RealtimeAudioInputTranscriptionSettings | Nastavení přepisu zvukového vstupu. Tato vlastnost je nullable. |
turn_detection | RealtimeTurnDetection | Nastavení detekce otáčení pro relaci. Tato vlastnost je nullable. |
tools | array of RealtimeTool | Nástroje dostupné pro model pro relaci. |
tool_choice | RealtimeToolChoice | Volba nástroje pro relaci. Povolené hodnoty: auto , none a required . V opačném případě můžete zadat název funkce, která se má použít. |
Teplota | Číslo | Teplota vzorkování pro model. Povolené hodnoty teploty jsou omezeny na [0,6, 1,2]. Výchozí hodnota je 0,8. |
max_response_output_tokens | integer nebo "inf" | Maximální počet výstupních tokenů na odpověď asistenta včetně volání nástrojů. Zadejte celé číslo mezi 1 a 4096 pro omezení výstupních tokenů. V opačném případě nastavte hodnotu na inf, aby se povolil maximální počet tokenů. Pokud chcete například omezit výstupní tokeny na 1000, nastavte "max_response_output_tokens": 1000 . Pokud chcete povolit maximální počet tokenů, nastavte "max_response_output_tokens": "inf" .Výchozí hodnota "inf" je . |
RealtimeRequestSystemMessageItem
Pole | Typ | Popis |
---|---|---|
role | string | Role zprávy. Povolené hodnoty: system |
content | pole RealtimeRequestTextContentPart | Obsah zprávy. |
RealtimeRequestTextContentPart
Pole | Typ | Popis |
---|---|---|
type | string | Typ části obsahu. Povolené hodnoty: input_text |
text | string | Textový obsah. |
RealtimeRequestUserMessageItem
Pole | Typ | Popis |
---|---|---|
role | string | Role zprávy. Povolené hodnoty: user |
content | pole RealtimeRequestTextContentPart nebo RealtimeRequestAudioContentPart | Obsah zprávy. |
RealtimeResponse
Pole | Typ | Popis |
---|---|---|
objekt | string | Objekt odpovědi. Povolené hodnoty: realtime.response |
ID | řetězec | Jedinečné ID odpovědi. |
stav | RealtimeResponseStatus | Stav odpovědi. Výchozí hodnota stavu je in_progress . |
status_details | RealtimeResponseStatusDetails | Podrobnosti o stavu odpovědi. Tato vlastnost je nullable. |
output | pole RealtimeConversationResponseItem | Výstupní položky odpovědi. |
využití | objekt | Statistika využití pro odpověď Každá relace rozhraní API v reálném čase udržuje kontext konverzace a připojuje k konverzaci nové položky. Výstup z předchozích otočení (textové a zvukové tokeny) je vstup pro pozdější otočení. Další zobrazení vnořených vlastností |
+total_tokens | integer | Celkový počet tokenů v odpovědi, včetně vstupních a výstupních textových a zvukových tokenů. Vlastnost objektu usage . |
+input_tokens | integer | Počet vstupních tokenů použitých v odpovědi, včetně textových a zvukových tokenů. Vlastnost objektu usage . |
+output_tokens | integer | Počet výstupních tokenů odeslaných v odpovědi, včetně textových a zvukových tokenů. Vlastnost objektu usage . |
+input_token_details | objekt | Podrobnosti o vstupních tokenech použitých v odpovědi Vlastnost objektu usage .Br> Další zobrazení vnořených vlastností |
+ cached_tokens | integer | Počet tokenů uložených v mezipaměti použitých v odpovědi. Vlastnost objektu input_token_details . |
+text_tokens | integer | Počet textových tokenů použitých v odpovědi Vlastnost objektu input_token_details . |
+ audio_tokens | integer | Počet zvukových tokenů použitých v odpovědi. Vlastnost objektu input_token_details . |
+output_token_details | objekt | Podrobnosti o výstupních tokenech použitých v odpovědi Vlastnost objektu usage .Další zobrazení vnořených vlastností |
+text_tokens | integer | Počet textových tokenů použitých v odpovědi Vlastnost objektu output_token_details . |
+ audio_tokens | integer | Počet zvukových tokenů použitých v odpovědi. Vlastnost objektu output_token_details . |
RealtimeResponseAudioContentPart
Pole | Typ | Popis |
---|---|---|
type | string | Typ části obsahu. Povolené hodnoty: audio |
přepis | string | Přepis zvuku. Tato vlastnost je nullable. |
RealtimeResponseBase
Prostředek odpovědi.
RealtimeResponseFunctionCallItem
Pole | Typ | Popis |
---|---|---|
type | string | Typ položky. Povolené hodnoty: function_call |
name | string | Název položky volání funkce. |
call_id | string | ID položky volání funkce. |
argumenty | string | Argumenty položky volání funkce. |
stav | RealtimeItemStatus | Stav položky. |
RealtimeResponseFunctionCallOutputItem
Pole | Typ | Popis |
---|---|---|
type | string | Typ položky. Povolené hodnoty: function_call_output |
call_id | string | ID položky volání funkce. |
output | string | Výstup položky volání funkce. |
RealtimeResponseMessageItem
Pole | Typ | Popis |
---|---|---|
type | string | Typ položky. Povolené hodnoty: message |
role | RealtimeMessageRole | Role zprávy. |
content | pole | Obsah zprávy. Položky pole: RealtimeResponseTextContentPart |
stav | RealtimeItemStatus | Stav položky. |
RealtimeResponseOptions
Pole | Typ | Popis |
---|---|---|
modality | pole | Způsoby, které relace podporuje. Povolené hodnoty: text , audio Jedná se například "modalities": ["text", "audio"] o výchozí nastavení, které umožňuje režim textu i zvuku. Chcete-li povolit pouze text, nastavte "modalities": ["text"] . Nemůžete povolit jenom zvuk. |
pokyny | string | Pokyny (systémová zpráva) k vedení textu a zvukových odpovědí modelu. Tady je několik ukázkových pokynů, které vám pomůžou s obsahem a formátem textových a zvukových odpovědí: "instructions": "be succinct" "instructions": "act friendly" "instructions": "here are examples of good responses" Tady je několik ukázkových pokynů, které vám pomůžou vést chování zvuku: "instructions": "talk quickly" "instructions": "inject emotion into your voice" "instructions": "laugh frequently" I když model nemusí vždy postupovat podle těchto pokynů, poskytují pokyny k požadovanému chování. |
voice | RealtimeVoice | Hlas použitý pro odpověď modelu pro relaci. Jakmile se hlas použije v relaci pro zvukovou odpověď modelu, nedá se změnit. |
output_audio_format | RealtimeAudioFormat | Formát výstupního zvuku. |
tools | array of RealtimeTool | Nástroje dostupné pro model pro relaci. |
tool_choice | RealtimeToolChoice | Volba nástroje pro relaci. |
Teplota | Číslo | Teplota vzorkování pro model. Povolené hodnoty teploty jsou omezeny na [0,6, 1,2]. Výchozí hodnota je 0,8. |
max__output_tokens | integer nebo "inf" | Maximální počet výstupních tokenů na odpověď asistenta včetně volání nástrojů. Zadejte celé číslo mezi 1 a 4096 pro omezení výstupních tokenů. V opačném případě nastavte hodnotu na inf, aby se povolil maximální počet tokenů. Pokud chcete například omezit výstupní tokeny na 1000, nastavte "max_response_output_tokens": 1000 . Pokud chcete povolit maximální počet tokenů, nastavte "max_response_output_tokens": "inf" .Výchozí hodnota "inf" je . |
konverzace | string | Určuje, do které konverzace se odpověď přidá. Podporované hodnoty jsou auto a none .Hodnota auto (nebo nenastavuje tuto vlastnost) zajišťuje, že se obsah odpovědi přidá do výchozí konverzace relace.Nastavte tuto vlastnost tak, aby none se vytvořila odpověď mimo pásmo, ve které se položky nepřidají do výchozí konverzace. Další informace najdete v průvodci postupy.Výchozí hodnota "auto" |
metadata | map | Nastavení až 16 párů klíč-hodnota, které lze připojit k objektu. To může být užitečné pro ukládání dalších informací o objektu ve strukturovaném formátu. Klíče můžou mít maximálně 64 znaků a hodnoty můžou mít maximálně 512 znaků. Příklad: metadata: { topic: "classification" } |
input | pole | Vstupní položky, které se mají zahrnout do výzvy pro model. Vytvoří nový kontext pro tuto odpověď bez zahrnutí výchozí konverzace. Může obsahovat odkazy na položky z výchozí konverzace. Položky pole: RealtimeConversationItemBase |
RealtimeResponseSession
Objekt RealtimeResponseSession
představuje relaci v rozhraní API v reálném čase. Používá se v některých událostech serveru, například:
Pole | Typ | Popis |
---|---|---|
objekt | string | Objekt relace. Povolené hodnoty: realtime.session |
ID | řetězec | Jedinečné ID relace. |
model | string | Model použitý pro relaci. |
modality | pole | Způsoby, které relace podporuje. Povolené hodnoty: text , audio Jedná se například "modalities": ["text", "audio"] o výchozí nastavení, které umožňuje režim textu i zvuku. Chcete-li povolit pouze text, nastavte "modalities": ["text"] . Nemůžete povolit jenom zvuk. |
pokyny | string | Pokyny (systémová zpráva) k vedení textu a zvukových odpovědí modelu. Tady je několik ukázkových pokynů, které vám pomůžou s obsahem a formátem textových a zvukových odpovědí: "instructions": "be succinct" "instructions": "act friendly" "instructions": "here are examples of good responses" Tady je několik ukázkových pokynů, které vám pomůžou vést chování zvuku: "instructions": "talk quickly" "instructions": "inject emotion into your voice" "instructions": "laugh frequently" I když model nemusí vždy postupovat podle těchto pokynů, poskytují pokyny k požadovanému chování. |
voice | RealtimeVoice | Hlas použitý pro odpověď modelu pro relaci. Jakmile se hlas použije v relaci pro zvukovou odpověď modelu, nedá se změnit. |
input_audio_format | RealtimeAudioFormat | Formát vstupního zvuku. |
output_audio_format | RealtimeAudioFormat | Formát výstupního zvuku. |
input_audio_transcription | RealtimeAudioInputTranscriptionSettings | Nastavení přepisu zvukového vstupu. Tato vlastnost je nullable. |
turn_detection | RealtimeTurnDetection | Nastavení detekce otáčení pro relaci. Tato vlastnost je nullable. |
tools | array of RealtimeTool | Nástroje dostupné pro model pro relaci. |
tool_choice | RealtimeToolChoice | Volba nástroje pro relaci. |
Teplota | Číslo | Teplota vzorkování pro model. Povolené hodnoty teploty jsou omezeny na [0,6, 1,2]. Výchozí hodnota je 0,8. |
max_response_output_tokens | integer nebo "inf" | Maximální počet výstupních tokenů na odpověď asistenta včetně volání nástrojů. Zadejte celé číslo mezi 1 a 4096 pro omezení výstupních tokenů. V opačném případě nastavte hodnotu na inf, aby se povolil maximální počet tokenů. Pokud chcete například omezit výstupní tokeny na 1000, nastavte "max_response_output_tokens": 1000 . Pokud chcete povolit maximální počet tokenů, nastavte "max_response_output_tokens": "inf" . |
RealtimeResponseStatus
Povolené hodnoty:
in_progress
completed
cancelled
incomplete
failed
RealtimeResponseStatusDetails
Pole | Typ | Popis |
---|---|---|
type | RealtimeResponseStatus | Stav odpovědi. |
RealtimeResponseTextContentPart
Pole | Typ | Popis |
---|---|---|
type | string | Typ části obsahu. Povolené hodnoty: text |
text | string | Textový obsah. |
RealtimeServerEvent
Pole | Typ | Popis |
---|---|---|
type | RealtimeServerEventType | Typ události serveru. |
event_id | string | Jedinečné ID události serveru. |
RealtimeServerEventRateLimitsUpdatedRateLimitsItem
Pole | Typ | Popis |
---|---|---|
name | string | Název vlastnosti omezení rychlosti, o které tato položka obsahuje informace. |
limit | integer | Maximální nakonfigurovaný limit pro tuto vlastnost omezení rychlosti. |
zbývající | integer | Zbývající kvóta je k dispozici pro nakonfigurovaný limit pro tuto vlastnost limitu rychlosti. |
reset_seconds | Číslo | Zbývající doba v sekundách, dokud se tato vlastnost limitu četnosti resetuje. |
RealtimeServerEventType
Povolené hodnoty:
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
Pole | Typ | Popis |
---|---|---|
type | string | Typ detekce otáčení. Povolené hodnoty: server_vad |
threshold | Číslo | Prahová hodnota aktivace detekce vad serveru. V hlučných prostředích možná budete muset zvýšit prahovou hodnotu, abyste se vyhnuli falešně pozitivním výsledkům. V tichých prostředích možná budete muset snížit prahovou hodnotu, abyste se vyhnuli falešně negativním výsledkům. Výchozí hodnota 0.5 je . Prahovou hodnotu můžete nastavit na hodnotu mezi 0.0 a 1.0 . |
prefix_padding_ms | string | Doba trvání zvuku řeči (v milisekundách), která se má zahrnout před zahájením rozpoznané řeči. Výchozí hodnota 300 je . |
silence_duration_ms | string | Doba ticha (v milisekundách) ke zjištění konce řeči. Chcete co nejdříve zjistit konec řeči, ale ne příliš brzy, abyste se vyhnuli odříznutí poslední části řeči. Model bude reagovat rychleji, pokud tuto hodnotu nastavíte na nižší číslo, ale může oříznout poslední část řeči. Pokud tuto hodnotu nastavíte na vyšší číslo, model počká déle, než zjistí konec řeči, ale reakce může trvat déle. |
RealtimeSessionBase
Konfigurace objektu relace v reálném čase.
RealtimeTool
Základní reprezentace definice nástroje v reálném čase.
Pole | Typ | Popis |
---|---|---|
type | RealtimeToolType | Typ nástroje. |
RealtimeToolChoice
Kombinovaná sada dostupných reprezentací pro parametr v reálném čase tool_choice
zahrnující možnosti řetězcového literálu, jako je auto a strukturované odkazy na definované nástroje.
RealtimeToolChoiceFunctionObject
Reprezentace nástroje pojmenované funkce v reálném čase tool_choice
.
Pole | Typ | Popis |
---|---|---|
type | string | Typ tool_choice .Povolené hodnoty: function |
function | objekt | Nástroj funkce, který chcete vybrat. Další zobrazení vnořených vlastností |
+name | string | Název nástroje funkce. Vlastnost objektu function . |
RealtimeToolChoiceLiteral
Dostupná sada možností řetězcového literálu tool_choice
na úrovni režimu pro koncový bod v reálném čase.
Povolené hodnoty:
auto
none
required
RealtimeToolChoiceObject
Základní reprezentace pro výběr pojmenovaného nástroje v reálném čase tool_choice
Pole | Typ | Popis |
---|---|---|
type | RealtimeToolType | Typ tool_choice . |
RealtimeToolType
Podporované typy nástrojů jsou pro nástroje v reálném čase diskriminující. V současné době se podporují jenom nástroje funkce.
Povolené hodnoty:
function
RealtimeTurnDetection
Pole | Typ | Popis |
---|---|---|
type | RealtimeTurnDetectionType | Typ detekce otáčení. Povolené hodnoty: server_vad |
threshold | Číslo | Prahová hodnota aktivace detekce vad serveru. V hlučných prostředích možná budete muset zvýšit prahovou hodnotu, abyste se vyhnuli falešně pozitivním výsledkům. V tichých prostředích možná budete muset snížit prahovou hodnotu, abyste se vyhnuli falešně negativním výsledkům. Výchozí hodnota 0.5 je . Prahovou hodnotu můžete nastavit na hodnotu mezi 0.0 a 1.0 . |
prefix_padding_ms | string | Doba trvání zvuku řeči (v milisekundách), která se má zahrnout před zahájením rozpoznané řeči. Výchozí hodnota 300 je milisekund. |
silence_duration_ms | string | Doba ticha (v milisekundách) ke zjištění konce řeči. Chcete co nejdříve zjistit konec řeči, ale ne příliš brzy, abyste se vyhnuli odříznutí poslední části řeči. Model bude reagovat rychleji, pokud tuto hodnotu nastavíte na nižší číslo, ale může oříznout poslední část řeči. Pokud tuto hodnotu nastavíte na vyšší číslo, model počká déle, než zjistí konec řeči, ale reakce může trvat déle. Výchozí hodnota 500 je milisekund. |
create_response | boolean | Určuje, jestli server automaticky vytvoří odpověď, když je povolená vada a zastaví se řeč. Výchozí hodnota true je . |
RealtimeTurnDetectionType
Povolené hodnoty:
server_vad
RealtimeVoice
Povolené hodnoty:
alloy
ash
ballad
coral
echo
sage
shimmer
verse
Související obsah
- Začínáme s rychlým zprovozněním rozhraní API v reálném čase
- Přečtěte si další informace o tom, jak používat rozhraní API v reálném čase.