Gerçek zamanlı API (Önizleme) başvurusu
Not
Bu özellik şu anda genel önizlemededir. Bu önizleme, hizmet düzeyi sözleşmesi olmadan sağlanır ve üretim iş yükleri için önerilmez. Bazı özellikler desteklenmiyor olabileceği gibi özellikleri sınırlandırılmış da olabilir. Daha fazla bilgi için bkz. Microsoft Azure Önizlemeleri Ek Kullanım Koşulları.
Gerçek Zamanlı API, Azure OpenAI hizmetiyle gerçek zamanlı olarak etkileşim kurmanızı sağlayan WebSocket tabanlı bir API'dir.
Gerçek Zamanlı API (aracılığıyla/realtime
), son kullanıcı ve model arasında tam zaman uyumsuz akış iletişimini kolaylaştırmak için WebSockets API'sinde oluşturulur. Ses verilerini yakalama ve işleme gibi cihaz ayrıntıları Realtime API'sinin kapsamı dışındadır. Hem son kullanıcılara yönelik bağlantıları hem de model uç noktası bağlantılarını yöneten güvenilir, ara hizmet bağlamında kullanılmalıdır. Bunu doğrudan güvenilmeyen son kullanıcı cihazlarından kullanmayın.
İpucu
Realtime API'sini kullanmaya başlamak için hızlı başlangıç ve nasıl yapılır kılavuzuna bakın.
Connection
Realtime API'sinin desteklenen bir bölgede mevcut bir Azure OpenAI kaynak uç noktası olması gerekir. API'ye /realtime
Azure OpenAI kaynağınızın uç noktasına güvenli bir WebSocket bağlantısı üzerinden erişilir.
Birleşerek tam istek URI'si oluşturabilirsiniz:
- Güvenli WebSocket (
wss://
) protokolü. - Azure OpenAI kaynak uç noktası ana bilgisayar adınız, örneğin,
my-aoai-resource.openai.azure.com
-
openai/realtime
API yolu. -
api-version
Desteklenen bir API sürümü için sorgu dizesi parametresi2024-12-17
-
deployment
Veyagpt-4o-mini-realtime-preview
model dağıtımınızıngpt-4o-realtime-preview
adını içeren bir sorgu dizesi parametresi.
Aşağıdaki örnek, iyi oluşturulan /realtime
bir istek URI'sidir:
wss://my-eastus2-openai-resource.openai.azure.com/openai/realtime?api-version=2024-12-17&deployment=gpt-4o-realtime-preview
Kimlik Doğrulaması
Kimlik doğrulaması yapmak için:
-
Microsoft Entra (önerilen): Yönetilen kimliğin etkinleştirildiği bir Azure OpenAI Hizmeti kaynağı için API ile belirteç tabanlı kimlik doğrulamasını
/realtime
kullanın. Üst bilgi içeren bir belirteç kullanarak alınan kimlikBearer
doğrulama belirteciniAuthorization
uygulayın. -
API anahtarı: İki
api-key
yoldan biriyle sağlanabilir:- Önceden el ile bağlantıda bağlantı
api-key
üst bilgisi kullanma. Bu seçenek tarayıcı ortamında kullanılamaz. - İstek URI'sinde bir
api-key
sorgu dizesi parametresi kullanma. Sorgu dizesi parametreleri https/wss kullanılırken şifrelenir.
- Önceden el ile bağlantıda bağlantı
İstemci olayları
İstemciden sunucuya gönderilebilen dokuz istemci olayı vardır:
Olay | Açıklama |
---|---|
RealtimeClientEventConversationItemCreate | İstemci conversation.item.create olayı, konuşmanın bağlamı için iletiler, işlev çağrıları ve işlev çağrısı yanıtları gibi yeni bir öğe eklemek için kullanılır. |
RealtimeClientEventConversationItemDelete | İstemci conversation.item.delete olayı, konuşma geçmişinden bir öğeyi kaldırmak için kullanılır. |
RealtimeClientEventConversationItemTruncate | İstemci conversation.item.truncate olayı, önceki bir yardımcı iletisinin sesini kesmek için kullanılır. |
RealtimeClientEventInputAudioBufferAppend | İstemci input_audio_buffer.append olayı, ses baytlarını giriş ses arabelleğine eklemek için kullanılır. |
RealtimeClientEventInputAudioBufferClear | İstemci input_audio_buffer.clear olayı, arabellekteki ses baytlarını temizlemek için kullanılır. |
RealtimeClientEventInputAudioBufferCommit | İstemci input_audio_buffer.commit olayı, kullanıcı girişi ses arabelleği işlemek için kullanılır. |
RealtimeClientEventResponseCancel | İstemci response.cancel olayı devam eden bir yanıtı iptal etmek için kullanılır. |
RealtimeClientEventResponseCreate | İstemci response.create olayı, sunucuya model çıkarım yoluyla yanıt oluşturmasını bildirmek için kullanılır. |
RealtimeClientEventSessionUpdate | İstemci session.update olayı, oturumun varsayılan yapılandırmasını güncelleştirmek için kullanılır. |
RealtimeClientEventConversationItemCreate
İstemci conversation.item.create
olayı, konuşmanın bağlamı için iletiler, işlev çağrıları ve işlev çağrısı yanıtları gibi yeni bir öğe eklemek için kullanılır. Bu olay konuşma geçmişini doldurmak ve akışın ortasına yeni öğeler eklemek için kullanılabilir. Şu anda bu olay yardımcı sesli iletilerini dolduramıyor.
Başarılı olursa, sunucu bir conversation.item.created
olayla yanıt verir, aksi takdirde bir error
olay gönderilir.
Olay yapısı
{
"type": "conversation.item.create",
"previous_item_id": "<previous_item_id>"
}
Properties
Alan | Tür | Açıklama |
---|---|---|
Tür | Dize | Olay türü olmalıdır conversation.item.create . |
previous_item_id | Dize | Yeni öğenin eklendiği önceki öğenin kimliği. Ayarlanmamışsa, yeni öğe konuşmanın sonuna eklenir. Ayarlanırsa, bir öğenin konuşmanın ortasına eklenmesine izin verir. Kimlik bulunamazsa bir hata döndürülür ve öğe eklenmez. |
öğe | RealtimeConversationRequestItem | Konuşmaya eklenecek öğe. |
RealtimeClientEventConversationItemDelete
İstemci conversation.item.delete
olayı, konuşma geçmişinden bir öğeyi kaldırmak için kullanılır.
Öğe konuşma geçmişinde mevcut olmadığı sürece sunucu bir conversation.item.deleted
olayla yanıt verir ve bu durumda sunucu bir hatayla yanıt verir.
Olay yapısı
{
"type": "conversation.item.delete",
"item_id": "<item_id>"
}
Properties
Alan | Tür | Açıklama |
---|---|---|
Tür | Dize | Olay türü olmalıdır conversation.item.delete . |
item_id | Dize | Silinecek öğenin kimliği. |
RealtimeClientEventConversationItemTruncate
İstemci conversation.item.truncate
olayı, önceki bir yardımcı iletisinin sesini kesmek için kullanılır. Sunucu gerçek zamanlıdan daha hızlı ses üretir, bu nedenle kullanıcı istemciye gönderilen ancak henüz çalınmayan sesi kesmeyi kestiğinde bu olay yararlıdır. Sunucunun istemcinin kayıttan yürütmesiyle ses anlayışı eşitlenir.
Sesin kesilmesi, kullanıcının bilmediği bağlamda metin olmadığından emin olmak için sunucu tarafı metin dökümünü siler.
İstemci olayı başarılı olursa, sunucu bir conversation.item.truncated
olayla yanıt verir.
Olay yapısı
{
"type": "conversation.item.truncate",
"item_id": "<item_id>",
"content_index": 0,
"audio_end_ms": 0
}
Properties
Alan | Tür | Açıklama |
---|---|---|
Tür | Dize | Olay türü olmalıdır conversation.item.truncate . |
item_id | Dize | Kesecek yardımcı ileti öğesinin kimliği. Yalnızca yardımcı ileti öğeleri kesilebilir. |
content_index | integer | Kesecek içerik bölümünün dizini. Bu özelliği "0" olarak ayarlayın. |
audio_end_ms | integer | Sesin kesildiği kapsayıcı süre (milisaniye cinsinden). audio_end_ms gerçek ses süresinden büyükse, sunucu bir hatayla yanıt verir. |
RealtimeClientEventInputAudioBufferAppend
İstemci input_audio_buffer.append
olayı, ses baytlarını giriş ses arabelleğine eklemek için kullanılır. Ses arabelleği, yazabileceğiniz ve daha sonra işleyebileceğiniz geçici depolama alanıdır.
Sunucu VAD (Ses Etkinliği Algılama) modunda, konuşma algılamak için ses arabelleği kullanılır ve sunucu ne zaman işlemeye karar verir. Sunucu VAD devre dışı bırakıldığında, istemci her olaya en fazla 15 MiB'a kadar ne kadar ses yerleştirileceğini seçebilir. Örneğin, istemciden daha küçük öbeklerin akışının yapılması VAD'nin daha hızlı yanıt vermesine izin verebilir.
Diğer istemci olaylarının çoğundan farklı olarak, sunucu istemci input_audio_buffer.append
olayına onay yanıtı göndermez.
Olay yapısı
{
"type": "input_audio_buffer.append",
"audio": "<audio>"
}
Properties
Alan | Tür | Açıklama |
---|---|---|
Tür | Dize | Olay türü olmalıdır input_audio_buffer.append . |
ses | Dize | Base64 ile kodlanmış ses baytları. Bu değer, oturum yapılandırmasında alan tarafından input_audio_format belirtilen biçimde olmalıdır. |
RealtimeClientEventInputAudioBufferClear
İstemci input_audio_buffer.clear
olayı, arabellekteki ses baytlarını temizlemek için kullanılır.
Sunucu bir input_audio_buffer.cleared
olayla yanıt verir.
Olay yapısı
{
"type": "input_audio_buffer.clear"
}
Properties
Alan | Tür | Açıklama |
---|---|---|
Tür | Dize | Olay türü olmalıdır input_audio_buffer.clear . |
RealtimeClientEventInputAudioBufferCommit
İstemci input_audio_buffer.commit
olayı, konuşmada yeni bir kullanıcı ileti öğesi oluşturan kullanıcı girişi ses arabelleği işlemek için kullanılır. Oturum için yapılandırılmışsa input_audio_transcription
ses dökümü alınır.
Sunucu VAD modundayken istemcinin bu olayı göndermesi gerekmez, sunucu ses arabelleği otomatik olarak işler. Sunucu VAD olmadan, istemcinin bir kullanıcı ileti öğesi oluşturmak için ses arabelleği işlemesi gerekir. Giriş ses arabelleği boşsa bu istemci olayı bir hata oluşturur.
Giriş ses arabelleğinin işlenmesi modelden yanıt oluşturmaz.
Sunucu bir input_audio_buffer.committed
olayla yanıt verir.
Olay yapısı
{
"type": "input_audio_buffer.commit"
}
Properties
Alan | Tür | Açıklama |
---|---|---|
Tür | Dize | Olay türü olmalıdır input_audio_buffer.commit . |
RealtimeClientEventResponseCancel
İstemci response.cancel
olayı devam eden bir yanıtı iptal etmek için kullanılır.
İptal yanıtı yoksa sunucu bir response.cancelled
olay veya hatayla yanıt verir.
Olay yapısı
{
"type": "response.cancel"
}
Properties
Alan | Tür | Açıklama |
---|---|---|
Tür | Dize | Olay türü olmalıdır response.cancel . |
RealtimeClientEventResponseCreate
İstemci response.create
olayı, sunucuya model çıkarım yoluyla yanıt oluşturmasını bildirmek için kullanılır. Oturum, sunucu VAD modunda yapılandırıldığında, sunucu yanıtları otomatik olarak oluşturur.
Yanıt en az bir item
içerir ve iki yanıt içerebilir; bu durumda ikinci bir işlev çağrısıdır. Bu öğeler konuşma geçmişine eklenir.
Sunucu bir olay, bir response.created
veya daha fazla öğe ve içerik olayıyla (ve gibi) ve son olarak conversation.item.created
response.content_part.added
yanıtın tamam olduğunu belirten bir response.done
olayla yanıt verir.
Not
İstemci response.create
olayı, ve temperature
gibi instructions
çıkarım yapılandırmasını içerir. Bu alanlar yalnızca bu yanıt için oturumun yapılandırmasını geçersiz kılabilir.
Olay yapısı
{
"type": "response.create"
}
Properties
Alan | Tür | Açıklama |
---|---|---|
Tür | Dize | Olay türü olmalıdır response.create . |
yanıt | RealtimeResponseOptions | Yanıt seçenekleri. |
RealtimeClientEventSessionUpdate
İstemci session.update
olayı, oturumun varsayılan yapılandırmasını güncelleştirmek için kullanılır. İstemci, oturum yapılandırmasını güncelleştirmek için bu olayı istediği zaman gönderebilir ve ses dışında herhangi bir alan istediğiniz zaman güncelleştirilebilir.
Yalnızca mevcut alanlar güncelleştirilir. Bir alanı (gibi) temizlemek için instructions
boş bir dize geçirin.
Sunucu, tam etkin yapılandırmayı içeren bir session.updated
olayla yanıt verir.
Olay yapısı
{
"type": "session.update"
}
Properties
Alan | Tür | Açıklama |
---|---|---|
Tür | Dize | Olay türü olmalıdır session.update . |
session | RealtimeRequestSession | Oturum yapılandırması. |
Sunucu olayları
Sunucudan alınabilecek 28 sunucu olayı vardır:
Olay | Açıklama |
---|---|
RealtimeServerEventConversationCreated | Sunucu conversation.created olayı oturum oluşturulduktan hemen sonra döndürülür. Oturum başına bir konuşma oluşturulur. |
RealtimeServerEventConversationItemCreated | Bir konuşma öğesi oluşturulduğunda sunucu conversation.item.created olayı döndürülür. |
RealtimeServerEventConversationItemDeleted | İstemci bir olayla conversation.item.delete konuşmadaki bir öğeyi sildiğinde sunucu conversation.item.deleted olayı döndürülür. |
RealtimeServerEventConversationItemInputAudioTranscriptionCompleted | Sunucu conversation.item.input_audio_transcription.completed olayı, ses arabelleğine yazılan konuşma için ses transkripsiyonu sonucudur. |
RealtimeServerEventConversationItemInputAudioTranscriptionFailed | Giriş ses transkripsiyonu yapılandırıldığında ve kullanıcı iletisi için transkripsiyon isteği başarısız olduğunda sunucu conversation.item.input_audio_transcription.failed olayı döndürülür. |
RealtimeServerEventConversationItemTruncated | İstemci bir olayla conversation.item.truncate önceki bir yardımcı sesli ileti öğesini kestiğinde sunucu conversation.item.truncated olayı döndürülür. |
RealtimeServerEventError | Sunucu error olayı, istemci sorunu veya sunucu sorunu olabilecek bir hata oluştuğunda döndürülür. |
RealtimeServerEventInputAudioBufferCleared | İstemci giriş ses arabelleği bir input_audio_buffer.clear olayla temizlediğinde sunucu input_audio_buffer.cleared olayı döndürülür. |
RealtimeServerEventInputAudioBufferCommitted | İstemci tarafından veya sunucu input_audio_buffer.committed VAD modunda otomatik olarak bir giriş ses arabelleği işlendiğinde sunucu olayı döndürülür. |
RealtimeServerEventInputAudioBufferSpeechStarted | Ses arabelleğinde server_vad konuşma algılandığında sunucu input_audio_buffer.speech_started olayı modda döndürülür. |
RealtimeServerEventInputAudioBufferSpeechStopped | Sunucu input_audio_buffer.speech_stopped ses arabelleğindeki server_vad konuşma sonunu algıladığında sunucu olayı modda döndürülür. |
RealtimeServerEventRateLimitsUpdated | Sunucu rate_limits.updated olayı, güncelleştirilmiş hız sınırlarını belirtmek için yanıtın başında yayılır. |
RealtimeServerEventResponseAudioDelta | Model tarafından oluşturulan ses güncelleştirildiğinde sunucu response.audio.delta olayı döndürülür. |
RealtimeServerEventResponseAudioDone | Model tarafından oluşturulan ses tamamlandığında sunucu response.audio.done olayı döndürülür. |
RealtimeServerEventResponseAudioTranscriptDelta | Ses çıkışının model tarafından oluşturulan transkripsiyonu güncelleştirildiğinde sunucu response.audio_transcript.delta olayı döndürülür. |
RealtimeServerEventResponseAudioTranscriptDone | Ses çıkışının model tarafından oluşturulan transkripsiyonu akışı tamamlandığında sunucu response.audio_transcript.done olayı döndürülür. |
RealtimeServerEventResponseContentPartAdded | Sunucu response.content_part.added olayı, yardımcı ileti öğesine yeni bir içerik bölümü eklendiğinde döndürülür. |
RealtimeServerEventResponseContentPartDone | İçerik bölümü akışı tamamlandığında sunucu response.content_part.done olayı döndürülür. |
RealtimeServerEventResponseCreated | Yeni bir yanıt oluşturulduğunda sunucu response.created olayı döndürülür. Bu, yanıtın ilk durumunda in_progress olduğu ilk yanıt oluşturma olayıdır. |
RealtimeServerEventResponseDone | Bir yanıt akışı tamamlandığında sunucu response.done olayı döndürülür. |
RealtimeServerEventResponseFunctionCallArgumentsDelta | Model tarafından oluşturulan işlev çağrısı bağımsız değişkenleri güncelleştirildiğinde sunucu response.function_call_arguments.delta olayı döndürülür. |
RealtimeServerEventResponseFunctionCallArgumentsDone | Model tarafından oluşturulan işlev çağrısı bağımsız değişkenleri akış tamamlandığında sunucu response.function_call_arguments.done olayı döndürülür. |
RealtimeServerEventResponseOutputItemAdded | Yanıt oluşturma sırasında yeni bir öğe oluşturulduğunda sunucu response.output_item.added olayı döndürülür. |
RealtimeServerEventResponseOutputItemDone | Bir öğe akışı tamamlandığında sunucu response.output_item.done olayı döndürülür. |
RealtimeServerEventResponseTextDelta | Model tarafından oluşturulan metin güncelleştirildiğinde sunucu response.text.delta olayı döndürülür. |
RealtimeServerEventResponseTextDone | Model tarafından oluşturulan metin akışı tamamlandığında sunucu response.text.done olayı döndürülür. |
RealtimeServerEventSessionCreated | Sunucu session.created olayı, Realtime API'sine yeni bir bağlantı kurduğunuzda ilk sunucu olayıdır. Bu olay, varsayılan oturum yapılandırmasıyla yeni bir oturum oluşturur ve döndürür. |
RealtimeServerEventSessionUpdated | İstemci tarafından bir oturum güncelleştirildiğinde sunucu session.updated olayı döndürülür. Hata varsa sunucu bunun yerine bir error olay gönderir. |
RealtimeServerEventConversationCreated
Sunucu conversation.created
olayı oturum oluşturulduktan hemen sonra döndürülür. Oturum başına bir konuşma oluşturulur.
Olay yapısı
{
"type": "conversation.created",
"conversation": {
"id": "<id>",
"object": "<object>"
}
}
Properties
Alan | Tür | Açıklama |
---|---|---|
Tür | Dize | Olay türü olmalıdır conversation.created . |
konuşma | nesne | Konuşma kaynağı. |
Konuşma özellikleri
Alan | Tür | Açıklama |
---|---|---|
id | dize | Konuşmanın benzersiz kimliği. |
nesne | Dize | Nesne türü olmalıdır realtime.conversation . |
RealtimeServerEventConversationItemCreated
Bir konuşma öğesi oluşturulduğunda sunucu conversation.item.created
olayı döndürülür. Bu olayı oluşturan birkaç senaryo vardır:
- Sunucu, başarılı olursa türünde (rol
assistant
) veya türündemessage
function_call
bir veya iki öğe üreten bir yanıt oluşturuyor. - Giriş ses arabelleği, istemci veya sunucu (modda
server_vad
) tarafından işlenir. Sunucu, giriş ses arabelleğinin içeriğini alır ve yeni bir kullanıcı ileti öğesine ekler. - İstemci konuşmaya yeni bir öğe eklemek için bir
conversation.item.create
olay gönderdi.
Olay yapısı
{
"type": "conversation.item.created",
"previous_item_id": "<previous_item_id>"
}
Properties
Alan | Tür | Açıklama |
---|---|---|
Tür | Dize | Olay türü olmalıdır conversation.item.created . |
previous_item_id | Dize | Konuşma bağlamında önceki öğenin kimliği, istemcinin konuşmanın sırasını anlamasına olanak tanır. |
öğe | RealtimeConversationResponseItem | Oluşturulan öğe. |
RealtimeServerEventConversationItemDeleted
İstemci bir olayla conversation.item.delete
konuşmadaki bir öğeyi sildiğinde sunucu conversation.item.deleted
olayı döndürülür. Bu olay, sunucunun konuşma geçmişini anlamayı istemcinin görünümüyle eşitlemek için kullanılır.
Olay yapısı
{
"type": "conversation.item.deleted",
"item_id": "<item_id>"
}
Properties
Alan | Tür | Açıklama |
---|---|---|
Tür | Dize | Olay türü olmalıdır conversation.item.deleted . |
item_id | Dize | Silinen öğenin kimliği. |
RealtimeServerEventConversationItemInputAudioTranscriptionCompleted
Sunucu conversation.item.input_audio_transcription.completed
olayı, ses arabelleğine yazılan konuşma için ses transkripsiyonu sonucudur.
Transkripsiyon, giriş ses arabelleği istemci veya sunucu (modda server_vad
) tarafından işlendiğinde başlar. Transkripsiyon, yanıt oluşturma işlemiyle zaman uyumsuz olarak çalıştırıldığından, bu olay yanıt olaylarının önüne veya arkasına gelebilir.
Gerçek zamanlı API modelleri sesi yerel olarak kabul etmekte ve bu nedenle giriş transkripsiyonu, şu anda her zaman whisper-1
olmak üzere ayrı bir konuşma tanıma modelinde çalıştırılacak ayrı bir işlemdir. Bu nedenle transkript modelin yorumundan biraz farklı olabilir ve kaba bir kılavuz olarak ele alınmalıdır.
Olay yapısı
{
"type": "conversation.item.input_audio_transcription.completed",
"item_id": "<item_id>",
"content_index": 0,
"transcript": "<transcript>"
}
Properties
Alan | Tür | Açıklama |
---|---|---|
Tür | Dize | Olay türü olmalıdır conversation.item.input_audio_transcription.completed . |
item_id | Dize | Sesi içeren kullanıcı ileti öğesinin kimliği. |
content_index | integer | Sesi içeren içerik bölümünün dizini. |
Transkript | Dize | Dökümü alınmış metin. |
RealtimeServerEventConversationItemInputAudioTranscriptionFailed
Giriş ses transkripsiyonu yapılandırıldığında ve kullanıcı iletisi için transkripsiyon isteği başarısız olduğunda sunucu conversation.item.input_audio_transcription.failed
olayı döndürülür. Bu olay, istemcinin ilgili öğeyi tanımlayabilmesi için diğer error
olaylardan ayrıdır.
Olay yapısı
{
"type": "conversation.item.input_audio_transcription.failed",
"item_id": "<item_id>",
"content_index": 0,
"error": {
"code": "<code>",
"message": "<message>",
"param": "<param>"
}
}
Properties
Alan | Tür | Açıklama |
---|---|---|
Tür | Dize | Olay türü olmalıdır conversation.item.input_audio_transcription.failed . |
item_id | Dize | Kullanıcı ileti öğesinin kimliği. |
content_index | integer | Sesi içeren içerik bölümünün dizini. |
hata | nesne | Transkripsiyon hatasının ayrıntıları. Sonraki tabloda iç içe özelliklere bakın. |
Hata özellikleri
Alan | Tür | Açıklama |
---|---|---|
Tür | Dize | Hatanın türü. |
kod | Dize | Varsa hata kodu. |
ileti | Dize | İnsan tarafından okunabilir bir hata iletisi. |
param | Dize | Varsa hatayla ilgili parametre. |
RealtimeServerEventConversationItemTruncated
İstemci bir olayla conversation.item.truncate
önceki bir yardımcı sesli ileti öğesini kestiğinde sunucu conversation.item.truncated
olayı döndürülür. Bu olay, sunucunun ses anlayışını istemcinin kayıttan yürütmesiyle eşitlemek için kullanılır.
Bu olay, kullanıcının bilmediği bağlamda metin olmadığından emin olmak için sesi kesir ve sunucu tarafı metin dökümünü kaldırır.
Olay yapısı
{
"type": "conversation.item.truncated",
"item_id": "<item_id>",
"content_index": 0,
"audio_end_ms": 0
}
Properties
Alan | Tür | Açıklama |
---|---|---|
Tür | Dize | Olay türü olmalıdır conversation.item.truncated . |
item_id | Dize | Kesilmiş yardımcı ileti öğesinin kimliği. |
content_index | integer | Kesilen içerik bölümünün dizini. |
audio_end_ms | integer | Sesin kesildiği süre (milisaniye cinsinden). |
RealtimeServerEventError
Sunucu error
olayı, istemci sorunu veya sunucu sorunu olabilecek bir hata oluştuğunda döndürülür. Hataların çoğu kurtarılabilir ve oturum açık kalır.
Olay yapısı
{
"type": "error",
"error": {
"code": "<code>",
"message": "<message>",
"param": "<param>",
"event_id": "<event_id>"
}
}
Properties
Alan | Tür | Açıklama |
---|---|---|
Tür | Dize | Olay türü olmalıdır error . |
hata | nesne | Hatanın ayrıntıları. Sonraki tabloda iç içe özelliklere bakın. |
Hata özellikleri
Alan | Tür | Açıklama |
---|---|---|
Tür | Dize | Hatanın türü. Örneğin, "invalid_request_error" ve "server_error" hata türleridir. |
kod | Dize | Varsa hata kodu. |
ileti | Dize | İnsan tarafından okunabilir bir hata iletisi. |
param | Dize | Varsa hatayla ilgili parametre. |
event_id | Dize | Hataya neden olan istemci olayının kimliği (varsa). |
RealtimeServerEventInputAudioBufferCleared
İstemci giriş ses arabelleği bir input_audio_buffer.clear
olayla temizlediğinde sunucu input_audio_buffer.cleared
olayı döndürülür.
Olay yapısı
{
"type": "input_audio_buffer.cleared"
}
Properties
Alan | Tür | Açıklama |
---|---|---|
Tür | Dize | Olay türü olmalıdır input_audio_buffer.cleared . |
RealtimeServerEventInputAudioBufferCommitted
İstemci tarafından veya sunucu input_audio_buffer.committed
VAD modunda otomatik olarak bir giriş ses arabelleği işlendiğinde sunucu olayı döndürülür.
item_id
özelliği, oluşturulan kullanıcı iletisi öğesinin kimliğidir. Bu nedenle istemciye bir conversation.item.created
olay da gönderilir.
Olay yapısı
{
"type": "input_audio_buffer.committed",
"previous_item_id": "<previous_item_id>",
"item_id": "<item_id>"
}
Properties
Alan | Tür | Açıklama |
---|---|---|
Tür | Dize | Olay türü olmalıdır input_audio_buffer.committed . |
previous_item_id | Dize | Yeni öğenin eklendiği önceki öğenin kimliği. |
item_id | Dize | Oluşturulan kullanıcı iletisi öğesinin kimliği. |
RealtimeServerEventInputAudioBufferSpeechStarted
Ses arabelleğinde server_vad
konuşma algılandığında sunucu input_audio_buffer.speech_started
olayı modda döndürülür. Bu olay, arabelleğe ses eklendiğinde gerçekleşebilir (konuşma zaten algılanmadığı sürece).
Not
İstemci, ses kayıttan yürütmeyi kesmek veya kullanıcıya görsel geri bildirim sağlamak için bu olayı kullanmak isteyebilir.
İstemci konuşma durduğunda bir input_audio_buffer.speech_stopped
olay almayı beklemelidir.
item_id
özelliği, konuşma durduğunda oluşturulan kullanıcı ileti öğesinin kimliğidir.
item_id
ayrıca, istemci VAD etkinleştirmesi sırasında ses arabelleği el ile işlemediği sürece olayına dahil input_audio_buffer.speech_stopped
edilir.
Olay yapısı
{
"type": "input_audio_buffer.speech_started",
"audio_start_ms": 0,
"item_id": "<item_id>"
}
Properties
Alan | Tür | Açıklama |
---|---|---|
Tür | Dize | Olay türü olmalıdır input_audio_buffer.speech_started . |
audio_start_ms | integer | Konuşmanın ilk algılandığı oturum sırasında arabelleğe yazılan tüm seslerin başlangıcından milisaniye. Bu özellik modele gönderilen sesin başlangıcına karşılık gelir ve bu nedenle oturumda yapılandırılan öğesini prefix_padding_ms içerir. |
item_id | Dize | Konuşma durduğunda oluşturulan kullanıcı ileti öğesinin kimliği. |
RealtimeServerEventInputAudioBufferSpeechStopped
Sunucu input_audio_buffer.speech_stopped
ses arabelleğindeki server_vad
konuşma sonunu algıladığında sunucu olayı modda döndürülür.
Sunucu ayrıca ses arabelleğinden oluşturulan kullanıcı ileti öğesini içeren bir conversation.item.created
olay gönderir.
Olay yapısı
{
"type": "input_audio_buffer.speech_stopped",
"audio_end_ms": 0,
"item_id": "<item_id>"
}
Properties
Alan | Tür | Açıklama |
---|---|---|
Tür | Dize | Olay türü olmalıdır input_audio_buffer.speech_stopped . |
audio_end_ms | integer | Konuşma durduğunda oturum başladığından bu yana milisaniye. Bu özellik, modele gönderilen sesin sonuna karşılık gelir ve bu nedenle oturumda yapılandırılan öğesini min_silence_duration_ms içerir. |
item_id | Dize | Oluşturulan kullanıcı iletisi öğesinin kimliği. |
RealtimeServerEventRateLimitsUpdated
Sunucu rate_limits.updated
olayı, güncelleştirilmiş hız sınırlarını belirtmek için yanıtın başında yayılır.
Bir yanıt oluşturulduğunda, bazı belirteçler çıkış belirteçleri için ayrılır. Burada gösterilen oran sınırları rezervasyonu yansıtır ve yanıt tamamlandıktan sonra buna göre ayarlanır.
Olay yapısı
{
"type": "rate_limits.updated",
"rate_limits": [
{
"name": "<name>",
"limit": 0,
"remaining": 0,
"reset_seconds": 0
}
]
}
Properties
Alan | Tür | Açıklama |
---|---|---|
Tür | Dize | Olay türü olmalıdır rate_limits.updated . |
rate_limits | RealtimeServerEventRateLimitsUpdatedRateLimitsItem dizisi | Hız sınırı bilgilerinin listesi. |
RealtimeServerEventResponseAudioDelta
Model tarafından oluşturulan ses güncelleştirildiğinde sunucu response.audio.delta
olayı döndürülür.
Olay yapısı
{
"type": "response.audio.delta",
"response_id": "<response_id>",
"item_id": "<item_id>",
"output_index": 0,
"content_index": 0,
"delta": "<delta>"
}
Properties
Alan | Tür | Açıklama |
---|---|---|
Tür | Dize | Olay türü olmalıdır response.audio.delta . |
response_id | Dize | Yanıtın kimliği. |
item_id | Dize | Öğenin kimliği. |
output_index | integer | Yanıttaki çıkış öğesinin dizini. |
content_index | integer | Öğenin içerik dizisindeki içerik bölümünün dizini. |
delta | Dize | Base64 ile kodlanmış ses verileri deltası. |
RealtimeServerEventResponseAudioDone
Model tarafından oluşturulan ses tamamlandığında sunucu response.audio.done
olayı döndürülür.
Bu olay, bir yanıt kesildiğinde, tamamlanamadıysa veya iptal edildiğinde de döndürülür.
Olay yapısı
{
"type": "response.audio.done",
"response_id": "<response_id>",
"item_id": "<item_id>",
"output_index": 0,
"content_index": 0
}
Properties
Alan | Tür | Açıklama |
---|---|---|
Tür | Dize | Olay türü olmalıdır response.audio.done . |
response_id | Dize | Yanıtın kimliği. |
item_id | Dize | Öğenin kimliği. |
output_index | integer | Yanıttaki çıkış öğesinin dizini. |
content_index | integer | Öğenin içerik dizisindeki içerik bölümünün dizini. |
RealtimeServerEventResponseAudioTranscriptDelta
Ses çıkışının model tarafından oluşturulan transkripsiyonu güncelleştirildiğinde sunucu response.audio_transcript.delta
olayı döndürülür.
Olay yapısı
{
"type": "response.audio_transcript.delta",
"response_id": "<response_id>",
"item_id": "<item_id>",
"output_index": 0,
"content_index": 0,
"delta": "<delta>"
}
Properties
Alan | Tür | Açıklama |
---|---|---|
Tür | Dize | Olay türü olmalıdır response.audio_transcript.delta . |
response_id | Dize | Yanıtın kimliği. |
item_id | Dize | Öğenin kimliği. |
output_index | integer | Yanıttaki çıkış öğesinin dizini. |
content_index | integer | Öğenin içerik dizisindeki içerik bölümünün dizini. |
delta | Dize | Transkript deltası. |
RealtimeServerEventResponseAudioTranscriptDone
Ses çıkışının model tarafından oluşturulan transkripsiyonu akışı tamamlandığında sunucu response.audio_transcript.done
olayı döndürülür.
Bu olay, bir yanıt kesildiğinde, tamamlanamadıysa veya iptal edildiğinde de döndürülür.
Olay yapısı
{
"type": "response.audio_transcript.done",
"response_id": "<response_id>",
"item_id": "<item_id>",
"output_index": 0,
"content_index": 0,
"transcript": "<transcript>"
}
Properties
Alan | Tür | Açıklama |
---|---|---|
Tür | Dize | Olay türü olmalıdır response.audio_transcript.done . |
response_id | Dize | Yanıtın kimliği. |
item_id | Dize | Öğenin kimliği. |
output_index | integer | Yanıttaki çıkış öğesinin dizini. |
content_index | integer | Öğenin içerik dizisindeki içerik bölümünün dizini. |
Transkript | Dize | Sesin son dökümü. |
RealtimeServerEventResponseContentPartAdded
Yanıt oluşturma sırasında yardımcı ileti öğesine yeni bir içerik parçası eklendiğinde sunucu response.content_part.added
olayı döndürülür.
Olay yapısı
{
"type": "response.content_part.added",
"response_id": "<response_id>",
"item_id": "<item_id>",
"output_index": 0,
"content_index": 0
}
Properties
Alan | Tür | Açıklama |
---|---|---|
Tür | Dize | Olay türü olmalıdır response.content_part.added . |
response_id | Dize | Yanıtın kimliği. |
item_id | Dize | İçerik bölümünün eklendiği öğenin kimliği. |
output_index | integer | Yanıttaki çıkış öğesinin dizini. |
content_index | integer | Öğenin içerik dizisindeki içerik bölümünün dizini. |
bölümü | RealtimeContentPart | Eklenen içerik bölümü. |
Parça özellikleri
Alan | Tür | Açıklama |
---|---|---|
Tür | RealtimeContentPartType |
RealtimeServerEventResponseContentPartDone
Bir içerik bölümü bir yardımcı ileti öğesinde akışı tamamlandığında sunucu response.content_part.done
olayı döndürülür.
Bu olay, bir yanıt kesildiğinde, tamamlanamadıysa veya iptal edildiğinde de döndürülür.
Olay yapısı
{
"type": "response.content_part.done",
"response_id": "<response_id>",
"item_id": "<item_id>",
"output_index": 0,
"content_index": 0
}
Properties
Alan | Tür | Açıklama |
---|---|---|
Tür | Dize | Olay türü olmalıdır response.content_part.done . |
response_id | Dize | Yanıtın kimliği. |
item_id | Dize | Öğenin kimliği. |
output_index | integer | Yanıttaki çıkış öğesinin dizini. |
content_index | integer | Öğenin içerik dizisindeki içerik bölümünün dizini. |
bölümü | RealtimeContentPart | Yapılan içerik bölümü. |
Parça özellikleri
Alan | Tür | Açıklama |
---|---|---|
Tür | RealtimeContentPartType |
RealtimeServerEventResponseCreated
Yeni bir yanıt oluşturulduğunda sunucu response.created
olayı döndürülür. Bu, yanıtın ilk durumunda in_progress
olduğu ilk yanıt oluşturma olayıdır.
Olay yapısı
{
"type": "response.created"
}
Properties
Alan | Tür | Açıklama |
---|---|---|
Tür | Dize | Olay türü olmalıdır response.created . |
yanıt | RealtimeResponse | Yanıt nesnesi. |
RealtimeServerEventResponseDone
Bir yanıt akışı tamamlandığında sunucu response.done
olayı döndürülür. Son durum ne olursa olsun, bu olay her zaman yayılır. Olaya dahil edilen response.done
yanıt nesnesi yanıttaki tüm çıkış öğelerini içerir, ancak ham ses verilerini atlar.
Olay yapısı
{
"type": "response.done"
}
Properties
Alan | Tür | Açıklama |
---|---|---|
Tür | Dize | Olay türü olmalıdır response.done . |
yanıt | RealtimeResponse | Yanıt nesnesi. |
RealtimeServerEventResponseFunctionCallArgumentsDelta
Model tarafından oluşturulan işlev çağrısı bağımsız değişkenleri güncelleştirildiğinde sunucu response.function_call_arguments.delta
olayı döndürülür.
Olay yapısı
{
"type": "response.function_call_arguments.delta",
"response_id": "<response_id>",
"item_id": "<item_id>",
"output_index": 0,
"call_id": "<call_id>",
"delta": "<delta>"
}
Properties
Alan | Tür | Açıklama |
---|---|---|
Tür | Dize | Olay türü olmalıdır response.function_call_arguments.delta . |
response_id | Dize | Yanıtın kimliği. |
item_id | Dize | İşlev çağrı öğesinin kimliği. |
output_index | integer | Yanıttaki çıkış öğesinin dizini. |
call_id | Dize | İşlev çağrısının kimliği. |
delta | Dize | Bağımsız değişkenler, bir JSON dizesi olarak değişiklik gösterir. |
RealtimeServerEventResponseFunctionCallArgumentsDone
Model tarafından oluşturulan işlev çağrısı bağımsız değişkenleri akış tamamlandığında sunucu response.function_call_arguments.done
olayı döndürülür.
Bu olay, bir yanıt kesildiğinde, tamamlanamadıysa veya iptal edildiğinde de döndürülür.
Olay yapısı
{
"type": "response.function_call_arguments.done",
"response_id": "<response_id>",
"item_id": "<item_id>",
"output_index": 0,
"call_id": "<call_id>",
"arguments": "<arguments>"
}
Properties
Alan | Tür | Açıklama |
---|---|---|
Tür | Dize | Olay türü olmalıdır response.function_call_arguments.done . |
response_id | Dize | Yanıtın kimliği. |
item_id | Dize | İşlev çağrı öğesinin kimliği. |
output_index | integer | Yanıttaki çıkış öğesinin dizini. |
call_id | Dize | İşlev çağrısının kimliği. |
Bağımsız değişken | Dize | JSON dizesi olarak son bağımsız değişkenler. |
RealtimeServerEventResponseOutputItemAdded
Yanıt oluşturma sırasında yeni bir öğe oluşturulduğunda sunucu response.output_item.added
olayı döndürülür.
Olay yapısı
{
"type": "response.output_item.added",
"response_id": "<response_id>",
"output_index": 0
}
Properties
Alan | Tür | Açıklama |
---|---|---|
Tür | Dize | Olay türü olmalıdır response.output_item.added . |
response_id | Dize | Öğenin ait olduğu yanıtın kimliği. |
output_index | integer | Yanıttaki çıkış öğesinin dizini. |
öğe | RealtimeConversationResponseItem | Eklenen öğe. |
RealtimeServerEventResponseOutputItemDone
Bir öğe akışı tamamlandığında sunucu response.output_item.done
olayı döndürülür.
Bu olay, bir yanıt kesildiğinde, tamamlanamadıysa veya iptal edildiğinde de döndürülür.
Olay yapısı
{
"type": "response.output_item.done",
"response_id": "<response_id>",
"output_index": 0
}
Properties
Alan | Tür | Açıklama |
---|---|---|
Tür | Dize | Olay türü olmalıdır response.output_item.done . |
response_id | Dize | Öğenin ait olduğu yanıtın kimliği. |
output_index | integer | Yanıttaki çıkış öğesinin dizini. |
öğe | RealtimeConversationResponseItem | Akışı yapılan öğe. |
RealtimeServerEventResponseTextDelta
Model tarafından oluşturulan metin güncelleştirildiğinde sunucu response.text.delta
olayı döndürülür. Metin, yardımcı ileti öğesinin text
içerik bölümüne karşılık gelir.
Olay yapısı
{
"type": "response.text.delta",
"response_id": "<response_id>",
"item_id": "<item_id>",
"output_index": 0,
"content_index": 0,
"delta": "<delta>"
}
Properties
Alan | Tür | Açıklama |
---|---|---|
Tür | Dize | Olay türü olmalıdır response.text.delta . |
response_id | Dize | Yanıtın kimliği. |
item_id | Dize | Öğenin kimliği. |
output_index | integer | Yanıttaki çıkış öğesinin dizini. |
content_index | integer | Öğenin içerik dizisindeki içerik bölümünün dizini. |
delta | Dize | Metin deltası. |
RealtimeServerEventResponseTextDone
Model tarafından oluşturulan metin akışı tamamlandığında sunucu response.text.done
olayı döndürülür. Metin, yardımcı ileti öğesinin text
içerik bölümüne karşılık gelir.
Bu olay, bir yanıt kesildiğinde, tamamlanamadıysa veya iptal edildiğinde de döndürülür.
Olay yapısı
{
"type": "response.text.done",
"response_id": "<response_id>",
"item_id": "<item_id>",
"output_index": 0,
"content_index": 0,
"text": "<text>"
}
Properties
Alan | Tür | Açıklama |
---|---|---|
Tür | Dize | Olay türü olmalıdır response.text.done . |
response_id | Dize | Yanıtın kimliği. |
item_id | Dize | Öğenin kimliği. |
output_index | integer | Yanıttaki çıkış öğesinin dizini. |
content_index | integer | Öğenin içerik dizisindeki içerik bölümünün dizini. |
text | Dize | Son metin içeriği. |
RealtimeServerEventSessionCreated
Sunucu session.created
olayı, Realtime API'sine yeni bir bağlantı kurduğunuzda ilk sunucu olayıdır. Bu olay, varsayılan oturum yapılandırmasıyla yeni bir oturum oluşturur ve döndürür.
Olay yapısı
{
"type": "session.created"
}
Properties
Alan | Tür | Açıklama |
---|---|---|
Tür | Dize | Olay türü olmalıdır session.created . |
session | RealtimeResponseSession | Oturum nesnesi. |
RealtimeServerEventSessionUpdated
İstemci tarafından bir oturum güncelleştirildiğinde sunucu session.updated
olayı döndürülür. Hata varsa sunucu bunun yerine bir error
olay gönderir.
Olay yapısı
{
"type": "session.updated"
}
Properties
Alan | Tür | Açıklama |
---|---|---|
Tür | Dize | Olay türü olmalıdır session.updated . |
session | RealtimeResponseSession | Oturum nesnesi. |
Bileşenler
RealtimeAudioFormat
İzin Verilen Değerler:
pcm16
g711_ulaw
g711_alaw
RealtimeAudioInputTranscriptionModel
İzin Verilen Değerler:
whisper-1
RealtimeAudioInputTranscriptionSettings
Alan | Tür | Açıklama |
---|---|---|
model | RealtimeAudioInputTranscriptionModel | Varsayılan whisper-1 model şu anda ses girişi transkripsiyonu için desteklenen tek modeldir. |
RealtimeClientEvent
Alan | Tür | Açıklama |
---|---|---|
Tür | RealtimeClientEventType | İstemci olayının türü. |
event_id | Dize | Olayın benzersiz kimliği. İstemci, olayı tanımlamaya yardımcı olacak kimliği belirtebilir. |
RealtimeClientEventType
İzin Verilen Değerler:
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
Alan | Tür | Açıklama |
---|---|---|
Tür | RealtimeContentPartType | İçerik türü. Nesnesinin function özelliği.İzin verilen değerler: input_text , input_audio , item_reference , text . |
text | Dize | Metin içeriği. Bu özellik ve text içerik türleri için input_text geçerlidir. |
id | dize | hem istemci hem de sunucu tarafından oluşturulan öğelerde başvurulacak önceki bir konuşma öğesinin kimliği. Bu özellik, olaylardaki item_reference response.create içerik türü için geçerlidir. |
ses | Dize | Base64 ile kodlanmış ses baytları. Bu özellik içerik türü için input_audio geçerlidir. |
Transkript | Dize | Sesin dökümü. Bu özellik içerik türü için input_audio geçerlidir. |
RealtimeContentPartType
İzin Verilen Değerler:
input_text
input_audio
text
audio
RealtimeConversationItemBase
Konuşmaya eklenecek öğe.
Bu tabloda tüm RealtimeConversationItem
özellikler açıklanmaktadır. Olay başına geçerli olan özellikler RealtimeItemType'a bağlıdır.
Alan | Tür | Açıklama |
---|---|---|
id | dize | Öğenin benzersiz kimliği. İstemci, sunucu tarafı bağlamını yönetmeye yardımcı olacak kimliği belirtebilir. İstemci bir kimlik sağlamazsa, sunucu bir kimlik oluşturur. |
Tür | RealtimeItemType | Öğenin türü. İzin verilen değerler: message , function_call , function_call_output |
nesne | Dize | Döndürülen API nesnesinin tanımlayıcısı. Değer her zaman olacaktır realtime.item . |
durum | RealtimeItemStatus | Öğenin durumu. Bu alan konuşmayı etkilemez, ancak olayla conversation.item.created tutarlılık için kabul edilir.İzin verilen değerler: completed , incomplete |
rol | RealtimeMessageRole | İletiyi gönderenin rolü. Bu özellik yalnızca öğeler için message geçerlidir. İzin verilen değerler: system , user , assistant |
content | RealtimeContentPart dizisi | İletinin içeriği. Bu özellik yalnızca öğeler için message geçerlidir.- Rol öğelerinin system ileti öğeleri yalnızca input_text içeriği destekler.- Rol user desteğinin input_text ve input_audio içeriğin ileti öğeleri.- Rol assistant destek text içeriğinin ileti öğeleri. |
call_id | Dize | İşlev çağrısının kimliği (ve function_call_output öğeleri içinfunction_call ). Bir function_call_output öğeye geçirilirse, sunucu konuşma geçmişinde aynı kimlikle bir function_call öğenin mevcut olup olmadığını denetler. |
Adı | Dize | Çağrılan işlevin adı (öğeler için function_call ). |
Bağımsız değişken | Dize | İşlev çağrısının bağımsız değişkenleri (öğeler için function_call ). |
çıkış | Dize | İşlev çağrısının çıkışı (öğeler için function_call_output ). |
RealtimeConversationRequestItem
konuşmada RealtimeConversationRequestItem
conversation.item.create olayı aracılığıyla yeni bir öğe oluşturmak için nesnesini kullanırsınız.
Alan | Tür | Açıklama |
---|---|---|
Tür | RealtimeItemType | Öğenin türü. |
id | dize | Öğenin benzersiz kimliği. İstemci, sunucu tarafı bağlamını yönetmeye yardımcı olacak kimliği belirtebilir. İstemci bir kimlik sağlamazsa, sunucu bir kimlik oluşturur. |
RealtimeConversationResponseItem
RealtimeConversationResponseItem
nesnesi konuşmadaki bir öğeyi temsil eder. Aşağıdakiler gibi bazı sunucu olaylarında kullanılır:
- conversation.item.created
- response.output_item.added
- response.output_item.done
-
response.created
(özellik türüRealtimeResponse
aracılığıylaresponse
) -
response.done
(özellik türüRealtimeResponse
aracılığıylaresponse
)
Alan | Tür | Açıklama |
---|---|---|
nesne | Dize | Döndürülen API nesnesinin tanımlayıcısı. İzin verilen değerler: realtime.item |
Tür | RealtimeItemType | Öğenin türü. İzin verilen değerler: message , function_call , function_call_output |
id | dize | Öğenin benzersiz kimliği. İstemci, sunucu tarafı bağlamını yönetmeye yardımcı olacak kimliği belirtebilir. İstemci bir kimlik sağlamazsa, sunucu bir kimlik oluşturur. Bu özellik null atanabilir. |
RealtimeFunctionTool
Gerçek zamanlı uç nokta tarafından kullanılan işlev aracının tanımı.
Alan | Tür | Açıklama |
---|---|---|
Tür | Dize | Aracın türü. İzin verilen değerler: function |
Adı | Dize | İşlevin adı. |
açıklama | Dize | Kullanım yönergeleri de dahil olmak üzere işlevin açıklaması. Örneğin, "Geçerli saati almak için bu işlevi kullanın." |
parametreler | nesne | İşlevin JSON nesnesi biçimindeki parametreleri. |
RealtimeItemStatus
İzin Verilen Değerler:
in_progress
completed
incomplete
RealtimeItemType
İzin Verilen Değerler:
message
function_call
function_call_output
RealtimeMessageRole
İzin Verilen Değerler:
system
user
assistant
RealtimeRequestAssistantMessageItem
Alan | Tür | Açıklama |
---|---|---|
rol | Dize | İletinin rolü. İzin verilen değerler: assistant |
content | RealtimeRequestTextContentPart dizisi | İletinin içeriği. |
RealtimeRequestAudioContentPart
Alan | Tür | Açıklama |
---|---|---|
Tür | Dize | İçerik bölümünün türü. İzin verilen değerler: input_audio |
Transkript | Dize | Sesin dökümü. |
RealtimeRequestFunctionCallItem
Alan | Tür | Açıklama |
---|---|---|
Tür | Dize | Öğenin türü. İzin verilen değerler: function_call |
Adı | Dize | İşlev çağrı öğesinin adı. |
call_id | Dize | İşlev çağrı öğesinin kimliği. |
Bağımsız değişken | Dize | İşlev çağrısı öğesinin bağımsız değişkenleri. |
durum | RealtimeItemStatus | Öğenin durumu. |
RealtimeRequestFunctionCallOutputItem
Alan | Tür | Açıklama |
---|---|---|
Tür | Dize | Öğenin türü. İzin verilen değerler: function_call_output |
call_id | Dize | İşlev çağrı öğesinin kimliği. |
çıkış | Dize | İşlev çağrısı öğesinin çıkışı. |
RealtimeRequestMessageItem
Alan | Tür | Açıklama |
---|---|---|
Tür | Dize | Öğenin türü. İzin verilen değerler: message |
rol | RealtimeMessageRole | İletinin rolü. |
durum | RealtimeItemStatus | Öğenin durumu. |
RealtimeRequestMessageReferenceItem
Alan | Tür | Açıklama |
---|---|---|
Tür | Dize | Öğenin türü. İzin verilen değerler: message |
id | dize | Mesaj öğesinin kimlik kodu. |
RealtimeRequestSession
session.update olayı aracılığıyla oturum yapılandırmasını güncelleştirmek istediğinizde nesnesini kullanırsınızRealtimeRequestSession
.
Alan | Tür | Açıklama |
---|---|---|
kalıcılıklar | dizi | Oturumun desteklediği modaliteler. İzin verilen değerler: text , audio Örneğin, "modalities": ["text", "audio"] hem metin hem de ses modalitelerini etkinleştiren varsayılan ayardır. Yalnızca metni etkinleştirmek için ayarını belirleyin "modalities": ["text"] . Yalnızca sesi etkinleştiremezsiniz. |
yönergeler | Dize | Modelin metin ve ses yanıtlarına yol gösteren yönergeler (sistem iletisi). Metin ve ses yanıtlarının içeriğine ve biçimine kılavuzluk etmeye yardımcı olacak bazı örnek yönergeler aşağıda verilmiştir: "instructions": "be succinct" "instructions": "act friendly" "instructions": "here are examples of good responses" Ses davranışına kılavuzluk etmeye yardımcı olacak bazı örnek yönergeler aşağıda verilmiştir: "instructions": "talk quickly" "instructions": "inject emotion into your voice" "instructions": "laugh frequently" Model her zaman bu yönergeleri izlemese de, istenen davranışla ilgili yönergeler sağlar. |
voice | RealtimeVoice | Oturum için model yanıtı için kullanılan ses. Modelin ses yanıtı için oturumda ses kullanıldıktan sonra değiştirilemez. |
input_audio_format | RealtimeAudioFormat | Giriş sesinin biçimi. |
output_audio_format | RealtimeAudioFormat | Çıkış sesinin biçimi. |
input_audio_transcription | RealtimeAudioInputTranscriptionSettings | Ses girişi transkripsiyonu ayarları. Bu özellik null atanabilir. |
turn_detection | RealtimeTurnDetection | Oturumun dönüş algılama ayarları. Bu özellik null atanabilir. |
araçlar | RealtimeTool dizisi | Oturum için modelde kullanılabilen araçlar. |
tool_choice | RealtimeToolChoice | Oturum için araç seçimi. İzin verilen değerler: auto , none ve required . Aksi takdirde, kullanılacak işlevin adını belirtebilirsiniz. |
sıcaklık | Numara | Modelin örnekleme sıcaklığı. İzin verilen sıcaklık değerleri [0,6, 1,2] ile sınırlıdır. Varsayılan değer 0,8'tir. |
max_response_output_tokens | integer veya "inf" | Araç çağrıları dahil olmak üzere yardımcı yanıtı başına en fazla çıkış belirteci sayısı. Çıkış belirteçlerini sınırlamak için 1 ile 4096 arasında bir tamsayı belirtin. Aksi takdirde, en fazla belirteç sayısına izin vermek için değeri "inf" olarak ayarlayın. Örneğin, çıkış belirteçlerini 1000 ile sınırlamak için değerini ayarlayın "max_response_output_tokens": 1000 . En fazla belirteç sayısına izin vermek için değerini ayarlayın "max_response_output_tokens": "inf" .varsayılan değeridir "inf" . |
RealtimeRequestSystemMessageItem
Alan | Tür | Açıklama |
---|---|---|
rol | Dize | İletinin rolü. İzin verilen değerler: system |
content | RealtimeRequestTextContentPart dizisi | İletinin içeriği. |
RealtimeRequestTextContentPart
Alan | Tür | Açıklama |
---|---|---|
Tür | Dize | İçerik bölümünün türü. İzin verilen değerler: input_text |
text | Dize | Metin içeriği. |
RealtimeRequestUserMessageItem
Alan | Tür | Açıklama |
---|---|---|
rol | Dize | İletinin rolü. İzin verilen değerler: user |
content | RealtimeRequestTextContentPart veya RealtimeRequestAudioContentPart dizisi | İletinin içeriği. |
RealtimeResponse
Alan | Tür | Açıklama |
---|---|---|
nesne | Dize | Yanıt nesnesi. İzin verilen değerler: realtime.response |
id | dize | Yanıtın benzersiz kimliği. |
durum | RealtimeResponseStatus | Yanıtın durumu. Varsayılan durum değeri şeklindedir in_progress . |
status_details | RealtimeResponseStatusDetails | Yanıt durumunun ayrıntıları. Bu özellik null atanabilir. |
çıkış | RealtimeConversationResponseItem dizisi | Yanıtın çıkış öğeleri. |
kullanım | nesne | Yanıt için kullanım istatistikleri. Her Gerçek Zamanlı API oturumu bir konuşma bağlamı tutar ve konuşmaya yeni öğeler ekler. Önceki dönüşlerden (metin ve ses belirteçleri) çıkış, sonraki dönüşler için giriştir. Bkz. sonraki iç içe özellikler. |
+ total_tokens | integer | Giriş ve çıkış metni ile ses belirteçleri dahil olmak üzere Yanıttaki toplam belirteç sayısı. Nesnesinin usage özelliği. |
+ input_tokens | integer | Metin ve ses belirteçleri dahil olmak üzere yanıtta kullanılan giriş belirteçlerinin sayısı. Nesnesinin usage özelliği. |
+ output_tokens | integer | Metin ve ses belirteçleri dahil olmak üzere yanıtta gönderilen çıkış belirteçlerinin sayısı. Nesnesinin usage özelliği. |
+ input_token_details | nesne | Yanıtta kullanılan giriş belirteçleriyle ilgili ayrıntılar. Nesnesinin usage özelliği.Br> Bkz. sonraki iç içe özellikler. |
+ cached_tokens | integer | Yanıtta kullanılan önbelleğe alınmış belirteçlerin sayısı. Nesnesinin input_token_details özelliği. |
+ text_tokens | integer | Yanıtta kullanılan metin belirteçlerinin sayısı. Nesnesinin input_token_details özelliği. |
+ audio_tokens | integer | Yanıtta kullanılan ses belirteçlerinin sayısı. Nesnesinin input_token_details özelliği. |
+ output_token_details | nesne | Yanıtta kullanılan çıkış belirteçleriyle ilgili ayrıntılar. Nesnesinin usage özelliği.Bkz. sonraki iç içe özellikler. |
+ text_tokens | integer | Yanıtta kullanılan metin belirteçlerinin sayısı. Nesnesinin output_token_details özelliği. |
+ audio_tokens | integer | Yanıtta kullanılan ses belirteçlerinin sayısı. Nesnesinin output_token_details özelliği. |
RealtimeResponseAudioContentPart
Alan | Tür | Açıklama |
---|---|---|
Tür | Dize | İçerik bölümünün türü. İzin verilen değerler: audio |
Transkript | Dize | Sesin dökümü. Bu özellik null atanabilir. |
RealtimeResponseBase
Yanıt kaynağı.
RealtimeResponseFunctionCallItem
Alan | Tür | Açıklama |
---|---|---|
Tür | Dize | Öğenin türü. İzin verilen değerler: function_call |
Adı | Dize | İşlev çağrı öğesinin adı. |
call_id | Dize | İşlev çağrı öğesinin kimliği. |
Bağımsız değişken | Dize | İşlev çağrısı öğesinin bağımsız değişkenleri. |
durum | RealtimeItemStatus | Öğenin durumu. |
RealtimeResponseFunctionCallOutputItem
Alan | Tür | Açıklama |
---|---|---|
Tür | Dize | Öğenin türü. İzin verilen değerler: function_call_output |
call_id | Dize | İşlev çağrı öğesinin kimliği. |
çıkış | Dize | İşlev çağrısı öğesinin çıkışı. |
RealtimeResponseMessageItem
Alan | Tür | Açıklama |
---|---|---|
Tür | Dize | Öğenin türü. İzin verilen değerler: message |
rol | RealtimeMessageRole | İletinin rolü. |
content | dizi | İletinin içeriği. Dizi öğeleri: RealtimeResponseTextContentPart |
durum | RealtimeItemStatus | Öğenin durumu. |
RealtimeResponseOptions
Alan | Tür | Açıklama |
---|---|---|
kalıcılıklar | dizi | Oturumun desteklediği modaliteler. İzin verilen değerler: text , audio Örneğin, "modalities": ["text", "audio"] hem metin hem de ses modalitelerini etkinleştiren varsayılan ayardır. Yalnızca metni etkinleştirmek için ayarını belirleyin "modalities": ["text"] . Yalnızca sesi etkinleştiremezsiniz. |
yönergeler | Dize | Modelin metin ve ses yanıtlarına yol gösteren yönergeler (sistem iletisi). Metin ve ses yanıtlarının içeriğine ve biçimine kılavuzluk etmeye yardımcı olacak bazı örnek yönergeler aşağıda verilmiştir: "instructions": "be succinct" "instructions": "act friendly" "instructions": "here are examples of good responses" Ses davranışına kılavuzluk etmeye yardımcı olacak bazı örnek yönergeler aşağıda verilmiştir: "instructions": "talk quickly" "instructions": "inject emotion into your voice" "instructions": "laugh frequently" Model her zaman bu yönergeleri izlemese de, istenen davranışla ilgili yönergeler sağlar. |
voice | RealtimeVoice | Oturum için model yanıtı için kullanılan ses. Modelin ses yanıtı için oturumda ses kullanıldıktan sonra değiştirilemez. |
output_audio_format | RealtimeAudioFormat | Çıkış sesinin biçimi. |
araçlar | RealtimeTool dizisi | Oturum için modelde kullanılabilen araçlar. |
tool_choice | RealtimeToolChoice | Oturum için araç seçimi. |
sıcaklık | Numara | Modelin örnekleme sıcaklığı. İzin verilen sıcaklık değerleri [0,6, 1,2] ile sınırlıdır. Varsayılan değer 0,8'tir. |
max__output_tokens | integer veya "inf" | Araç çağrıları dahil olmak üzere yardımcı yanıtı başına en fazla çıkış belirteci sayısı. Çıkış belirteçlerini sınırlamak için 1 ile 4096 arasında bir tamsayı belirtin. Aksi takdirde, en fazla belirteç sayısına izin vermek için değeri "inf" olarak ayarlayın. Örneğin, çıkış belirteçlerini 1000 ile sınırlamak için değerini ayarlayın "max_response_output_tokens": 1000 . En fazla belirteç sayısına izin vermek için değerini ayarlayın "max_response_output_tokens": "inf" .varsayılan değeridir "inf" . |
konuşma | Dize | Yanıtın hangi konuşmaya ekleneceğini denetler. Desteklenen değerler ve none değerleridirauto .auto Değeri (veya bu özelliği ayarlamamak), yanıtın içeriğinin oturumun varsayılan konuşmasına eklenmesini sağlar.Öğelerin varsayılan konuşmaya eklenmeyeceği bant dışı bir yanıt oluşturmak için bu özelliği none olarak ayarlayın. Daha fazla bilgi için nasıl yapılır kılavuzuna bakın.Varsayılan değer: "auto" |
meta veriler | map | Bir nesneye eklenebilen en fazla 16 anahtar-değer çifti kümesi. Bu, nesne hakkında ek bilgileri yapılandırılmış biçimde depolamak için yararlı olabilir. Anahtarlar en fazla 64 karakter uzunluğunda ve değerler en fazla 512 karakter uzunluğunda olabilir. Örneğin: metadata: { topic: "classification" } |
input | dizi | Model istemine eklenecek öğeleri girin. Varsayılan konuşmayı eklemeden bu yanıt için yeni bir bağlam oluşturur. Varsayılan konuşmadaki öğelere başvurular içerebilir. Dizi öğeleri: RealtimeConversationItemBase |
RealtimeResponseSession
RealtimeResponseSession
nesnesi, Gerçek Zamanlı API'deki bir oturumu temsil eder. Aşağıdakiler gibi bazı sunucu olaylarında kullanılır:
Alan | Tür | Açıklama |
---|---|---|
nesne | Dize | Oturum nesnesi. İzin verilen değerler: realtime.session |
id | dize | Oturumun benzersiz kimliği. |
model | Dize | Oturum için kullanılan model. |
kalıcılıklar | dizi | Oturumun desteklediği modaliteler. İzin verilen değerler: text , audio Örneğin, "modalities": ["text", "audio"] hem metin hem de ses modalitelerini etkinleştiren varsayılan ayardır. Yalnızca metni etkinleştirmek için ayarını belirleyin "modalities": ["text"] . Yalnızca sesi etkinleştiremezsiniz. |
yönergeler | Dize | Modelin metin ve ses yanıtlarına yol gösteren yönergeler (sistem iletisi). Metin ve ses yanıtlarının içeriğine ve biçimine kılavuzluk etmeye yardımcı olacak bazı örnek yönergeler aşağıda verilmiştir: "instructions": "be succinct" "instructions": "act friendly" "instructions": "here are examples of good responses" Ses davranışına kılavuzluk etmeye yardımcı olacak bazı örnek yönergeler aşağıda verilmiştir: "instructions": "talk quickly" "instructions": "inject emotion into your voice" "instructions": "laugh frequently" Model her zaman bu yönergeleri izlemese de, istenen davranışla ilgili yönergeler sağlar. |
voice | RealtimeVoice | Oturum için model yanıtı için kullanılan ses. Modelin ses yanıtı için oturumda ses kullanıldıktan sonra değiştirilemez. |
input_audio_format | RealtimeAudioFormat | Giriş sesinin biçimi. |
output_audio_format | RealtimeAudioFormat | Çıkış sesinin biçimi. |
input_audio_transcription | RealtimeAudioInputTranscriptionSettings | Ses girişi transkripsiyonu ayarları. Bu özellik null atanabilir. |
turn_detection | RealtimeTurnDetection | Oturumun dönüş algılama ayarları. Bu özellik null atanabilir. |
araçlar | RealtimeTool dizisi | Oturum için modelde kullanılabilen araçlar. |
tool_choice | RealtimeToolChoice | Oturum için araç seçimi. |
sıcaklık | Numara | Modelin örnekleme sıcaklığı. İzin verilen sıcaklık değerleri [0,6, 1,2] ile sınırlıdır. Varsayılan değer 0,8'tir. |
max_response_output_tokens | integer veya "inf" | Araç çağrıları dahil olmak üzere yardımcı yanıtı başına en fazla çıkış belirteci sayısı. Çıkış belirteçlerini sınırlamak için 1 ile 4096 arasında bir tamsayı belirtin. Aksi takdirde, en fazla belirteç sayısına izin vermek için değeri "inf" olarak ayarlayın. Örneğin, çıkış belirteçlerini 1000 ile sınırlamak için değerini ayarlayın "max_response_output_tokens": 1000 . En fazla belirteç sayısına izin vermek için değerini ayarlayın "max_response_output_tokens": "inf" . |
RealtimeResponseStatus
İzin Verilen Değerler:
in_progress
completed
cancelled
incomplete
failed
RealtimeResponseStatusDetails
Alan | Tür | Açıklama |
---|---|---|
Tür | RealtimeResponseStatus | Yanıtın durumu. |
RealtimeResponseTextContentPart
Alan | Tür | Açıklama |
---|---|---|
Tür | Dize | İçerik bölümünün türü. İzin verilen değerler: text |
text | Dize | Metin içeriği. |
RealtimeServerEvent
Alan | Tür | Açıklama |
---|---|---|
Tür | RealtimeServerEventType | Sunucu olayının türü. |
event_id | Dize | Sunucu olayının benzersiz kimliği. |
RealtimeServerEventRateLimitsUpdatedRateLimitsItem
Alan | Tür | Açıklama |
---|---|---|
Adı | Dize | Bu öğenin hakkında bilgi içerdiği hız sınırı özellik adı. |
limit | integer | Bu hız sınırı özelliği için yapılandırılan üst sınır. |
kaldı | integer | Bu hız sınırı özelliği için yapılandırılan sınıra göre kullanılabilir kalan kota. |
reset_seconds | Numara | Bu hız sınırı özelliği sıfırlanıncaya kadar kalan süre (saniye olarak). |
RealtimeServerEventType
İzin Verilen Değerler:
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
Alan | Tür | Açıklama |
---|---|---|
Tür | Dize | Dönüş algılama türü. İzin verilen değerler: server_vad |
threshold | Numara | Sunucu VAD dönüş algılaması için etkinleştirme eşiği. Gürültülü ortamlarda hatalı pozitif sonuçları önlemek için eşiği artırmanız gerekebilir. Sessiz ortamlarda hatalı negatifleri önlemek için eşiği azaltmanız gerekebilir. varsayılan değeridir 0.5 . eşiği ile 1.0 arasında 0.0 bir değere ayarlayabilirsiniz. |
prefix_padding_ms | Dize | Algılanan konuşma başlamadan önce eklenecek konuşma sesinin süresi (milisaniye cinsinden). varsayılan değeridir 300 . |
silence_duration_ms | Dize | Konuşma sonunu algılamak için sessizlik süresi (milisaniye cinsinden). Konuşmanın sonunu en kısa sürede algılamak istiyorsunuz, ancak konuşmanın son bölümünü kesmekten kaçınmak için çok erken değil. Bu değeri daha düşük bir sayıya ayarlarsanız model daha hızlı yanıt verir, ancak konuşmanın son bölümünü kesebilir. Bu değeri daha yüksek bir sayıya ayarlarsanız model konuşma sonunu algılamak için daha uzun süre bekler, ancak yanıt vermek daha uzun sürebilir. |
RealtimeSessionBase
Gerçek zamanlı oturum nesnesi yapılandırması.
RealtimeTool
Gerçek zamanlı araç tanımının temel gösterimi.
Alan | Tür | Açıklama |
---|---|---|
Tür | RealtimeToolType | Aracın türü. |
RealtimeToolChoice
Gerçek zamanlı tool_choice
bir parametre için kullanılabilir gösterimlerin birleştirilmiş kümesi, hem 'otomatik' gibi dize değişmez değer seçeneklerini hem de tanımlı araçlara yönelik yapılandırılmış başvuruları kapsar.
RealtimeToolChoiceFunctionObject
Adlandırılmış bir işlev aracını seçerek gerçek zamanlı tool_choice
bir işlev aracının gösterimi.
Alan | Tür | Açıklama |
---|---|---|
Tür | Dize | türünün türü tool_choice .İzin verilen değerler: function |
function | nesne | Seçecek işlev aracı. Bkz. sonraki iç içe özellikler. |
+ ad | Dize | İşlev aracının adı. Nesnesinin function özelliği. |
RealtimeToolChoiceLiteral
Gerçek zamanlı uç nokta için kullanılabilir mod düzeyi, dize değişmez değer tool_choice
seçenekleri kümesi.
İzin Verilen Değerler:
auto
none
required
RealtimeToolChoiceObject
Adlandırılmış bir aracı seçerek gerçek zamanlı tool_choice
bir temel gösterim.
Alan | Tür | Açıklama |
---|---|---|
Tür | RealtimeToolType | türünün türü tool_choice . |
RealtimeToolType
Gerçek zamanlı araçlar için desteklenen araç türü ayırıcıları. Şu anda yalnızca 'işlev' araçları desteklenmektedir.
İzin Verilen Değerler:
function
RealtimeTurnDetection
Alan | Tür | Açıklama |
---|---|---|
Tür | RealtimeTurnDetectionType | Dönüş algılama türü. İzin verilen değerler: server_vad |
threshold | Numara | Sunucu VAD dönüş algılaması için etkinleştirme eşiği. Gürültülü ortamlarda hatalı pozitif sonuçları önlemek için eşiği artırmanız gerekebilir. Sessiz ortamlarda hatalı negatifleri önlemek için eşiği azaltmanız gerekebilir. varsayılan değeridir 0.5 . eşiği ile 1.0 arasında 0.0 bir değere ayarlayabilirsiniz. |
prefix_padding_ms | Dize | Algılanan konuşma başlamadan önce eklenecek konuşma sesinin süresi (milisaniye cinsinden). Varsayılan değer 300 milisaniyedir. |
silence_duration_ms | Dize | Konuşma sonunu algılamak için sessizlik süresi (milisaniye cinsinden). Konuşmanın sonunu en kısa sürede algılamak istiyorsunuz, ancak konuşmanın son bölümünü kesmekten kaçınmak için çok erken değil. Bu değeri daha düşük bir sayıya ayarlarsanız model daha hızlı yanıt verir, ancak konuşmanın son bölümünü kesebilir. Bu değeri daha yüksek bir sayıya ayarlarsanız model konuşma sonunu algılamak için daha uzun süre bekler, ancak yanıt vermek daha uzun sürebilir. Varsayılan değer 500 milisaniyedir. |
create_response | boolean | VAD etkinleştirildiğinde ve konuşma durduğunda sunucunun otomatik olarak yanıt oluşturup oluşturmayacağını gösterir. varsayılan değeridir true . |
RealtimeTurnDetectionType
İzin Verilen Değerler:
server_vad
RealtimeVoice
İzin Verilen Değerler:
alloy
ash
ballad
coral
echo
sage
shimmer
verse
İlgili içerik
- Realtime API hızlı başlangıcını kullanmaya başlayın.
- Gerçek Zamanlı API'yi kullanma hakkında daha fazla bilgi edinin.