Referensi API Realtime (Pratinjau)
Catatan
Fitur ini masih dalam pratinjau umum. Pratinjau ini disediakan tanpa perjanjian tingkat layanan, dan kami tidak merekomendasikannya untuk beban kerja produksi. Fitur tertentu mungkin tidak didukung atau mungkin memiliki kemampuan terbatas. Untuk mengetahui informasi selengkapnya, lihat Ketentuan Penggunaan Tambahan untuk Pratinjau Microsoft Azure.
Realtime API adalah API berbasis WebSocket yang memungkinkan Anda berinteraksi dengan layanan Azure OpenAI secara real time.
API Realtime (melalui /realtime
) dibangun di WEBSockets API untuk memfasilitasi komunikasi streaming yang sepenuhnya asinkron antara pengguna akhir dan model. Detail perangkat seperti menangkap dan merender data audio berada di luar cakupan API Realtime. Ini harus digunakan dalam konteks layanan tepercaya dan menengah yang mengelola koneksi ke pengguna akhir dan koneksi titik akhir model. Jangan gunakan langsung dari perangkat pengguna akhir yang tidak tepercaya.
Connection
API Realtime memerlukan titik akhir sumber daya Azure OpenAI yang ada di wilayah yang didukung. API diakses melalui koneksi WebSocket yang aman ke /realtime
titik akhir sumber daya Azure OpenAI Anda.
Anda dapat membuat URI permintaan penuh dengan menggabungkan:
- Protokol WebSocket aman (
wss://
). - Nama host titik akhir sumber daya Azure OpenAI Anda, misalnya,
my-aoai-resource.openai.azure.com
- Jalur
openai/realtime
API. - Parameter
api-version
string kueri untuk versi API yang didukung seperti2024-12-17
- Parameter
deployment
string kueri dengan nama penyebaran model ataugpt-4o-mini-realtime-preview
Andagpt-4o-realtime-preview
.
Contoh berikut adalah URI permintaan yang dibuat /realtime
dengan baik:
wss://my-eastus2-openai-resource.openai.azure.com/openai/realtime?api-version=2024-12-17&deployment=gpt-4o-realtime-preview
Autentikasi
Untuk mengautentikasi:
-
Microsoft Entra (disarankan): Gunakan autentikasi berbasis token dengan
/realtime
API untuk sumber daya Azure OpenAI Service dengan identitas terkelola diaktifkan. Terapkan token autentikasi yangBearer
diambil menggunakan token denganAuthorization
header . -
Kunci API: Dapat
api-key
disediakan dengan salah satu dari dua cara:-
api-key
Menggunakan header koneksi pada koneksi prehandshake. Opsi ini tidak tersedia di lingkungan browser. -
api-key
Menggunakan parameter string kueri pada URI permintaan. Parameter string kueri dienkripsi saat menggunakan https/wss.
-
Peristiwa klien
Ada sembilan peristiwa klien yang dapat dikirim dari klien ke server:
Kejadian | Deskripsi |
---|---|
RealtimeClientEventConversationItemCreate | Peristiwa klien conversation.item.create digunakan untuk menambahkan item baru ke konteks percakapan, termasuk pesan, panggilan fungsi, dan respons panggilan fungsi. |
RealtimeClientEventConversationItemDelete | Peristiwa klien conversation.item.delete digunakan untuk menghapus item dari riwayat percakapan. |
RealtimeClientEventConversationItemTruncate | Peristiwa klien conversation.item.truncate digunakan untuk memotong audio pesan asisten sebelumnya. |
RealtimeClientEventInputAudioBufferAppend | Peristiwa klien input_audio_buffer.append digunakan untuk menambahkan byte audio ke buffer audio input. |
RealtimeClientEventInputAudioBufferClear | Peristiwa klien input_audio_buffer.clear digunakan untuk menghapus byte audio di buffer. |
RealtimeClientEventInputAudioBufferCommit | Peristiwa klien input_audio_buffer.commit digunakan untuk menerapkan buffer audio input pengguna. |
RealtimeClientEventResponseCancel | Peristiwa klien response.cancel digunakan untuk membatalkan respons yang sedang berlangsung. |
RealtimeClientEventResponseCreate | Peristiwa klien response.create digunakan untuk menginstruksikan server untuk membuat respons melalui inferensi model. |
RealtimeClientEventSessionUpdate | Peristiwa klien session.update digunakan untuk memperbarui konfigurasi default sesi. |
RealtimeClientEventConversationItemCreate
Peristiwa klien conversation.item.create
digunakan untuk menambahkan item baru ke konteks percakapan, termasuk pesan, panggilan fungsi, dan respons panggilan fungsi. Kejadian ini dapat digunakan untuk mengisi riwayat percakapan dan menambahkan item baru di tengah aliran. Saat ini kejadian ini tidak dapat mengisi pesan audio asisten.
Jika berhasil, server merespons dengan conversation.item.created
peristiwa, jika tidak error
, peristiwa akan dikirim.
Struktur peristiwa
{
"type": "conversation.item.create",
"previous_item_id": "<previous_item_id>"
}
Properti
Bidang | Jenis | Deskripsi |
---|---|---|
jenis | string | Jenis peristiwa harus conversation.item.create . |
previous_item_id | string | ID item sebelumnya setelah item baru disisipkan. Jika tidak diatur, item baru ditambahkan ke akhir percakapan. Jika diatur, item akan disisipkan di tengah percakapan. Jika ID tidak dapat ditemukan, maka kesalahan dikembalikan dan item tidak ditambahkan. |
item | RealtimeConversationRequestItem | Item yang akan ditambahkan ke percakapan. |
RealtimeClientEventConversationItemDelete
Peristiwa klien conversation.item.delete
digunakan untuk menghapus item dari riwayat percakapan.
Server merespons dengan conversation.item.deleted
peristiwa, kecuali item tidak ada dalam riwayat percakapan, dalam hal ini server merespons dengan kesalahan.
Struktur peristiwa
{
"type": "conversation.item.delete",
"item_id": "<item_id>"
}
Properti
Bidang | Jenis | Deskripsi |
---|---|---|
jenis | string | Jenis peristiwa harus conversation.item.delete . |
item_id | string | ID item yang akan dihapus. |
RealtimeClientEventConversationItemTruncate
Peristiwa klien conversation.item.truncate
digunakan untuk memotong audio pesan asisten sebelumnya. Server menghasilkan audio lebih cepat daripada realtime, sehingga peristiwa ini berguna ketika pengguna mengganggu untuk memotong audio yang dikirim ke klien tetapi belum diputar. Pemahaman server tentang audio dengan pemutaran klien disinkronkan.
Memotong audio akan menghapus transkrip teks sisi server untuk memastikan tidak ada teks dalam konteks yang tidak diketahui pengguna.
Jika peristiwa klien berhasil, server merespons dengan conversation.item.truncated
peristiwa.
Struktur peristiwa
{
"type": "conversation.item.truncate",
"item_id": "<item_id>",
"content_index": 0,
"audio_end_ms": 0
}
Properti
Bidang | Jenis | Deskripsi |
---|---|---|
jenis | string | Jenis peristiwa harus conversation.item.truncate . |
item_id | string | ID item pesan asisten untuk dipotong. Hanya item pesan asisten yang dapat dipotong. |
content_index | Integer | Indeks bagian konten untuk dipotong. Atur properti ini ke "0". |
audio_end_ms | Integer | Durasi inklusif hingga audio dipotong, dalam milidetik. Jika audio_end_ms lebih besar dari durasi audio aktual, server merespons dengan kesalahan. |
RealtimeClientEventInputAudioBufferAppend
Peristiwa klien input_audio_buffer.append
digunakan untuk menambahkan byte audio ke buffer audio input. Buffer audio adalah penyimpanan sementara yang dapat Anda tulis dan penerapannya nanti.
Dalam mode VAD Server (Deteksi Aktivitas Suara), buffer audio digunakan untuk mendeteksi ucapan dan server memutuskan kapan harus berkomitmen. Ketika VAD server dinonaktifkan, klien dapat memilih berapa banyak audio yang akan ditempatkan di setiap peristiwa hingga maksimum 15 MiB. Misalnya, streaming gugus yang lebih kecil dari klien dapat memungkinkan VAD lebih responsif.
Tidak seperti kebanyakan peristiwa klien lainnya, server tidak mengirim respons konfirmasi ke peristiwa klien input_audio_buffer.append
.
Struktur peristiwa
{
"type": "input_audio_buffer.append",
"audio": "<audio>"
}
Properti
Bidang | Jenis | Deskripsi |
---|---|---|
jenis | string | Jenis peristiwa harus input_audio_buffer.append . |
audio | string | Byte audio yang dikodekan Base64. Nilai ini harus dalam format yang ditentukan oleh input_audio_format bidang dalam konfigurasi sesi. |
RealtimeClientEventInputAudioBufferClear
Peristiwa klien input_audio_buffer.clear
digunakan untuk menghapus byte audio di buffer.
Server merespons dengan peristiwa input_audio_buffer.cleared
.
Struktur peristiwa
{
"type": "input_audio_buffer.clear"
}
Properti
Bidang | Jenis | Deskripsi |
---|---|---|
jenis | string | Jenis peristiwa harus input_audio_buffer.clear . |
RealtimeClientEventInputAudioBufferCommit
Peristiwa klien input_audio_buffer.commit
digunakan untuk menerapkan buffer audio input pengguna, yang membuat item pesan pengguna baru dalam percakapan. Audio ditranskripsikan jika input_audio_transcription
dikonfigurasi untuk sesi.
Ketika dalam mode VAD server, klien tidak perlu mengirim kejadian ini, server menerapkan buffer audio secara otomatis. Tanpa PPN server, klien harus menerapkan buffer audio untuk membuat item pesan pengguna. Kejadian klien ini menghasilkan kesalahan jika buffer audio input kosong.
Menerapkan buffer audio input tidak membuat respons dari model.
Server merespons dengan peristiwa input_audio_buffer.committed
.
Struktur peristiwa
{
"type": "input_audio_buffer.commit"
}
Properti
Bidang | Jenis | Deskripsi |
---|---|---|
jenis | string | Jenis peristiwa harus input_audio_buffer.commit . |
RealtimeClientEventResponseCancel
Peristiwa klien response.cancel
digunakan untuk membatalkan respons yang sedang berlangsung.
Server merespons dengan response.cancelled
peristiwa atau kesalahan jika tidak ada respons untuk membatalkan.
Struktur peristiwa
{
"type": "response.cancel"
}
Properti
Bidang | Jenis | Deskripsi |
---|---|---|
jenis | string | Jenis peristiwa harus response.cancel . |
RealtimeClientEventResponseCreate
Peristiwa klien response.create
digunakan untuk menginstruksikan server untuk membuat respons melalui inferensi model. Ketika sesi dikonfigurasi dalam mode VAD server, server membuat respons secara otomatis.
Respons mencakup setidaknya satu item
, dan dapat memiliki dua, dalam hal ini yang kedua adalah panggilan fungsi. Item ini ditambahkan ke riwayat percakapan.
Server merespons dengan response.created
peristiwa, satu atau beberapa item dan peristiwa konten (seperti conversation.item.created
dan response.content_part.added
), dan akhirnya response.done
peristiwa untuk menunjukkan respons selesai.
Catatan
Peristiwa klien response.create
mencakup konfigurasi inferensi seperti instructions
, dan temperature
. Bidang ini hanya dapat mengambil alih konfigurasi sesi untuk respons ini.
Struktur peristiwa
{
"type": "response.create"
}
Properti
Bidang | Jenis | Deskripsi |
---|---|---|
jenis | string | Jenis peristiwa harus response.create . |
respons | RealtimeResponseOptions | Opsi respons. |
RealtimeClientEventSessionUpdate
Peristiwa klien session.update
digunakan untuk memperbarui konfigurasi default sesi. Klien dapat mengirim peristiwa ini kapan saja untuk memperbarui konfigurasi sesi, dan bidang apa pun dapat diperbarui kapan saja, kecuali untuk suara.
Hanya bidang yang ada yang diperbarui. Untuk menghapus bidang (seperti instructions
), berikan string kosong.
Server merespons dengan session.updated
peristiwa yang berisi konfigurasi efektif penuh.
Struktur peristiwa
{
"type": "session.update"
}
Properti
Bidang | Jenis | Deskripsi |
---|---|---|
jenis | string | Jenis peristiwa harus session.update . |
sesi | RealtimeRequestSession | Konfigurasi sesi. |
Peristiwa server
Ada 28 peristiwa server yang dapat diterima dari server:
Kejadian | Deskripsi |
---|---|
RealtimeServerEventConversationCreated | Peristiwa server conversation.created dikembalikan tepat setelah pembuatan sesi. Satu percakapan dibuat per sesi. |
RealtimeServerEventConversationItemCreated | Peristiwa server conversation.item.created dikembalikan saat item percakapan dibuat. |
RealtimeServerEventConversationItemDeleted | Peristiwa server conversation.item.deleted dikembalikan saat klien menghapus item dalam percakapan dengan conversation.item.delete peristiwa. |
RealtimeServerEventConversationItemInputAudioTranscriptionCompleted | Peristiwa server conversation.item.input_audio_transcription.completed adalah hasil dari transkripsi audio untuk ucapan yang ditulis ke buffer audio. |
RealtimeServerEventConversationItemInputAudioTranscriptionFailed | Peristiwa server conversation.item.input_audio_transcription.failed dikembalikan ketika transkripsi audio input dikonfigurasi, dan permintaan transkripsi untuk pesan pengguna gagal. |
RealtimeServerEventConversationItemTruncated | Peristiwa server conversation.item.truncated dikembalikan ketika klien memotong item pesan audio asisten sebelumnya dengan conversation.item.truncate peristiwa. |
RealtimeServerEventError | Peristiwa server error dikembalikan ketika terjadi kesalahan, yang bisa menjadi masalah klien atau masalah server. |
RealtimeServerEventInputAudioBufferCleared | Peristiwa server input_audio_buffer.cleared dikembalikan ketika klien menghapus buffer audio input dengan input_audio_buffer.clear peristiwa. |
RealtimeServerEventInputAudioBufferCommitted | Peristiwa server input_audio_buffer.committed dikembalikan ketika buffer audio input diterapkan, baik oleh klien atau secara otomatis dalam mode VAD server. |
RealtimeServerEventInputAudioBufferSpeechStarted | Peristiwa server input_audio_buffer.speech_started dikembalikan dalam server_vad mode ketika ucapan terdeteksi di buffer audio. |
RealtimeServerEventInputAudioBufferSpeechStopped | Peristiwa server input_audio_buffer.speech_stopped dikembalikan dalam server_vad mode ketika server mendeteksi akhir ucapan di buffer audio. |
RealtimeServerEventRateLimitsUpdated | Peristiwa server rate_limits.updated dipancarkan di awal respons untuk menunjukkan batas laju yang diperbarui. |
RealtimeServerEventResponseAudioDelta | Peristiwa server response.audio.delta dikembalikan saat audio yang dihasilkan model diperbarui. |
RealtimeServerEventResponseAudioDone | Peristiwa server response.audio.done dikembalikan ketika audio yang dihasilkan model selesai. |
RealtimeServerEventResponseAudioTranscriptDelta | Peristiwa server response.audio_transcript.delta dikembalikan ketika transkripsi output audio yang dihasilkan model diperbarui. |
RealtimeServerEventResponseAudioTranscriptDone | Peristiwa server response.audio_transcript.done dikembalikan ketika transkripsi output audio yang dihasilkan model dilakukan streaming. |
RealtimeServerEventResponseContentPartAdded | Peristiwa server response.content_part.added dikembalikan ketika bagian konten baru ditambahkan ke item pesan asisten. |
RealtimeServerEventResponseContentPartdone | Peristiwa server response.content_part.done dikembalikan ketika bagian konten dilakukan streaming. |
RealtimeServerEventResponseCreated | Peristiwa server response.created dikembalikan saat respons baru dibuat. Ini adalah peristiwa pertama pembuatan respons, di mana respons berada dalam keadaan in_progress awal . |
RealtimeServerEventResponseDone | Peristiwa server response.done dikembalikan ketika respons dilakukan streaming. |
RealtimeServerEventResponseFunctionCallArgumentsDelta | Peristiwa server response.function_call_arguments.delta dikembalikan ketika argumen panggilan fungsi yang dihasilkan model diperbarui. |
RealtimeServerEventResponseFunctionCallArgumentsDone | Peristiwa server response.function_call_arguments.done dikembalikan ketika argumen panggilan fungsi yang dihasilkan model dilakukan streaming. |
RealtimeServerEventResponseOutputItemAdded | Peristiwa server response.output_item.added dikembalikan saat item baru dibuat selama pembuatan respons. |
RealtimeServerEventResponseOutputItemDone | Peristiwa server response.output_item.done dikembalikan ketika item selesai streaming. |
RealtimeServerEventResponseTextDelta | Peristiwa server response.text.delta dikembalikan saat teks yang dihasilkan model diperbarui. |
RealtimeServerEventResponseTextDone | Peristiwa server response.text.done dikembalikan ketika teks yang dihasilkan model dilakukan streaming. |
RealtimeServerEventSessionCreated | Peristiwa server session.created adalah peristiwa server pertama saat Anda membuat koneksi baru ke API Realtime. Kejadian ini membuat dan mengembalikan sesi baru dengan konfigurasi sesi default. |
RealtimeServerEventSessionUpdated | Peristiwa server session.updated dikembalikan ketika sesi diperbarui oleh klien. Jika ada kesalahan, server akan mengirim error peristiwa sebagai gantinya. |
RealtimeServerEventConversationCreated
Peristiwa server conversation.created
dikembalikan tepat setelah pembuatan sesi. Satu percakapan dibuat per sesi.
Struktur peristiwa
{
"type": "conversation.created",
"conversation": {
"id": "<id>",
"object": "<object>"
}
}
Properti
Bidang | Jenis | Deskripsi |
---|---|---|
jenis | string | Jenis peristiwa harus conversation.created . |
percakapan | object | Sumber daya percakapan. |
Properti percakapan
Bidang | Jenis | Deskripsi |
---|---|---|
id | string | ID unik percakapan. |
object | string | Jenis objek harus realtime.conversation . |
RealtimeServerEventConversationItemCreated
Peristiwa server conversation.item.created
dikembalikan saat item percakapan dibuat. Ada beberapa skenario yang menghasilkan peristiwa ini:
- Server menghasilkan respons, yang jika berhasil menghasilkan satu atau dua item, yang berjenis
message
(peranassistant
) atau jenisfunction_call
. - Buffer audio input diterapkan, baik oleh klien atau server (dalam
server_vad
mode). Server mengambil konten buffer audio input dan menambahkannya ke item pesan pengguna baru. - Klien mengirim
conversation.item.create
acara untuk menambahkan item baru ke percakapan.
Struktur peristiwa
{
"type": "conversation.item.created",
"previous_item_id": "<previous_item_id>"
}
Properti
Bidang | Jenis | Deskripsi |
---|---|---|
jenis | string | Jenis peristiwa harus conversation.item.created . |
previous_item_id | string | ID item sebelumnya dalam konteks percakapan, memungkinkan klien memahami urutan percakapan. |
item | RealtimeConversationResponseItem | Item yang dibuat. |
RealtimeServerEventConversationItemDeleted
Peristiwa server conversation.item.deleted
dikembalikan saat klien menghapus item dalam percakapan dengan conversation.item.delete
peristiwa. Kejadian ini digunakan untuk menyinkronkan pemahaman server tentang riwayat percakapan dengan tampilan klien.
Struktur peristiwa
{
"type": "conversation.item.deleted",
"item_id": "<item_id>"
}
Properti
Bidang | Jenis | Deskripsi |
---|---|---|
jenis | string | Jenis peristiwa harus conversation.item.deleted . |
item_id | string | ID item yang dihapus. |
RealtimeServerEventConversationItemInputAudioTranscriptionCompleted
Peristiwa server conversation.item.input_audio_transcription.completed
adalah hasil dari transkripsi audio untuk ucapan yang ditulis ke buffer audio.
Transkripsi dimulai ketika buffer audio input diterapkan oleh klien atau server (dalam server_vad
mode). Transkripsi berjalan secara asinkron dengan pembuatan respons, sehingga peristiwa ini dapat datang sebelum atau sesudah peristiwa respons.
Model API realtime menerima audio secara asli, dan dengan demikian transkripsi input adalah proses terpisah yang dijalankan pada model pengenalan ucapan terpisah, saat ini selalu whisper-1
. Dengan demikian transkrip dapat sedikit berbeda dari interpretasi model, dan harus diperlakukan sebagai panduan kasar.
Struktur peristiwa
{
"type": "conversation.item.input_audio_transcription.completed",
"item_id": "<item_id>",
"content_index": 0,
"transcript": "<transcript>"
}
Properti
Bidang | Jenis | Deskripsi |
---|---|---|
jenis | string | Jenis peristiwa harus conversation.item.input_audio_transcription.completed . |
item_id | string | ID item pesan pengguna yang berisi audio. |
content_index | Integer | Indeks bagian konten yang berisi audio. |
transkrip | string | Teks yang ditranskripsikan. |
RealtimeServerEventConversationItemInputAudioTranscriptionFailed
Peristiwa server conversation.item.input_audio_transcription.failed
dikembalikan ketika transkripsi audio input dikonfigurasi, dan permintaan transkripsi untuk pesan pengguna gagal. Kejadian ini terpisah dari peristiwa lain error
sehingga klien dapat mengidentifikasi item terkait.
Struktur peristiwa
{
"type": "conversation.item.input_audio_transcription.failed",
"item_id": "<item_id>",
"content_index": 0,
"error": {
"code": "<code>",
"message": "<message>",
"param": "<param>"
}
}
Properti
Bidang | Jenis | Deskripsi |
---|---|---|
jenis | string | Jenis peristiwa harus conversation.item.input_audio_transcription.failed . |
item_id | string | ID item pesan pengguna. |
content_index | Integer | Indeks bagian konten yang berisi audio. |
kesalahan | object | Detail kesalahan transkripsi. Lihat properti berlapis di tabel berikutnya. |
Properti kesalahan
Bidang | Jenis | Deskripsi |
---|---|---|
jenis | string | Jenis kesalahan. |
kode | string | Kode kesalahan, jika ada. |
pesan | string | Pesan kesalahan yang dapat dibaca manusia. |
param | string | Parameter yang terkait dengan kesalahan, jika ada. |
RealtimeServerEventConversationItemTruncated
Peristiwa server conversation.item.truncated
dikembalikan ketika klien memotong item pesan audio asisten sebelumnya dengan conversation.item.truncate
peristiwa. Kejadian ini digunakan untuk menyinkronkan pemahaman server tentang audio dengan pemutaran klien.
Kejadian ini memotong audio dan menghapus transkrip teks sisi server untuk memastikan tidak ada teks dalam konteks yang tidak diketahui pengguna.
Struktur peristiwa
{
"type": "conversation.item.truncated",
"item_id": "<item_id>",
"content_index": 0,
"audio_end_ms": 0
}
Properti
Bidang | Jenis | Deskripsi |
---|---|---|
jenis | string | Jenis peristiwa harus conversation.item.truncated . |
item_id | string | ID item pesan asisten yang dipotong. |
content_index | Integer | Indeks bagian konten yang terpotong. |
audio_end_ms | Integer | Durasi hingga audio dipotong, dalam milidetik. |
RealtimeServerEventError
Peristiwa server error
dikembalikan ketika terjadi kesalahan, yang bisa menjadi masalah klien atau masalah server. Sebagian besar kesalahan dapat dipulihkan dan sesi tetap terbuka.
Struktur peristiwa
{
"type": "error",
"error": {
"code": "<code>",
"message": "<message>",
"param": "<param>",
"event_id": "<event_id>"
}
}
Properti
Bidang | Jenis | Deskripsi |
---|---|---|
jenis | string | Jenis peristiwa harus error . |
kesalahan | object | Detail kesalahan. Lihat properti berlapis di tabel berikutnya. |
Properti kesalahan
Bidang | Jenis | Deskripsi |
---|---|---|
jenis | string | Jenis kesalahan. Misalnya, "invalid_request_error" dan "server_error" adalah jenis kesalahan. |
kode | string | Kode kesalahan, jika ada. |
pesan | string | Pesan kesalahan yang dapat dibaca manusia. |
param | string | Parameter yang terkait dengan kesalahan, jika ada. |
event_id | string | ID peristiwa klien yang menyebabkan kesalahan, jika berlaku. |
RealtimeServerEventInputAudioBufferCleared
Peristiwa server input_audio_buffer.cleared
dikembalikan ketika klien menghapus buffer audio input dengan input_audio_buffer.clear
peristiwa.
Struktur peristiwa
{
"type": "input_audio_buffer.cleared"
}
Properti
Bidang | Jenis | Deskripsi |
---|---|---|
jenis | string | Jenis peristiwa harus input_audio_buffer.cleared . |
RealtimeServerEventInputAudioBufferCommitted
Peristiwa server input_audio_buffer.committed
dikembalikan ketika buffer audio input diterapkan, baik oleh klien atau secara otomatis dalam mode VAD server. Properti item_id
adalah ID item pesan pengguna yang dibuat. Dengan demikian, conversation.item.created
peristiwa juga dikirim ke klien.
Struktur peristiwa
{
"type": "input_audio_buffer.committed",
"previous_item_id": "<previous_item_id>",
"item_id": "<item_id>"
}
Properti
Bidang | Jenis | Deskripsi |
---|---|---|
jenis | string | Jenis peristiwa harus input_audio_buffer.committed . |
previous_item_id | string | ID item sebelumnya setelah item baru disisipkan. |
item_id | string | ID item pesan pengguna yang dibuat. |
RealtimeServerEventInputAudioBufferSpeechStarted
Peristiwa server input_audio_buffer.speech_started
dikembalikan dalam server_vad
mode ketika ucapan terdeteksi di buffer audio. Kejadian ini dapat terjadi kapan saja audio ditambahkan ke buffer (kecuali ucapan sudah terdeteksi).
Catatan
Klien mungkin ingin menggunakan kejadian ini untuk mengganggu pemutaran audio atau memberikan umpan balik visual kepada pengguna.
Klien harus mengharapkan untuk menerima input_audio_buffer.speech_stopped
peristiwa ketika ucapan berhenti. Properti item_id
adalah ID item pesan pengguna yang dibuat saat ucapan berhenti. juga item_id
disertakan dalam input_audio_buffer.speech_stopped
peristiwa kecuali klien secara manual menerapkan buffer audio selama aktivasi VAD.
Struktur peristiwa
{
"type": "input_audio_buffer.speech_started",
"audio_start_ms": 0,
"item_id": "<item_id>"
}
Properti
Bidang | Jenis | Deskripsi |
---|---|---|
jenis | string | Jenis peristiwa harus input_audio_buffer.speech_started . |
audio_start_ms | Integer | Milidetik dari awal semua audio yang ditulis ke buffer selama sesi ketika ucapan pertama kali terdeteksi. Properti ini sesuai dengan awal audio yang dikirim ke model, dan dengan demikian menyertakan yang prefix_padding_ms dikonfigurasi dalam sesi. |
item_id | string | ID item pesan pengguna yang dibuat saat ucapan berhenti. |
RealtimeServerEventInputAudioBufferSpeechStopped
Peristiwa server input_audio_buffer.speech_stopped
dikembalikan dalam server_vad
mode ketika server mendeteksi akhir ucapan di buffer audio.
Server juga mengirim conversation.item.created
peristiwa dengan item pesan pengguna yang dibuat dari buffer audio.
Struktur peristiwa
{
"type": "input_audio_buffer.speech_stopped",
"audio_end_ms": 0,
"item_id": "<item_id>"
}
Properti
Bidang | Jenis | Deskripsi |
---|---|---|
jenis | string | Jenis peristiwa harus input_audio_buffer.speech_stopped . |
audio_end_ms | Integer | Milidetik sejak sesi dimulai ketika ucapan berhenti. Properti ini sesuai dengan akhir audio yang dikirim ke model, dan dengan demikian menyertakan yang min_silence_duration_ms dikonfigurasi dalam sesi. |
item_id | string | ID item pesan pengguna yang dibuat. |
RealtimeServerEventRateLimitsUpdated
Peristiwa server rate_limits.updated
dipancarkan di awal respons untuk menunjukkan batas laju yang diperbarui.
Saat respons dibuat, beberapa token dicadangkan untuk token output. Batas tarif yang ditunjukkan di sini mencerminkan reservasi tersebut, yang kemudian disesuaikan setelah respons selesai.
Struktur peristiwa
{
"type": "rate_limits.updated",
"rate_limits": [
{
"name": "<name>",
"limit": 0,
"remaining": 0,
"reset_seconds": 0
}
]
}
Properti
Bidang | Jenis | Deskripsi |
---|---|---|
jenis | string | Jenis peristiwa harus rate_limits.updated . |
rate_limits | array RealtimeServerEventRateLimitsUpdatedRateLimitsItem | Daftar informasi batas tarif. |
RealtimeServerEventResponseAudioDelta
Peristiwa server response.audio.delta
dikembalikan saat audio yang dihasilkan model diperbarui.
Struktur peristiwa
{
"type": "response.audio.delta",
"response_id": "<response_id>",
"item_id": "<item_id>",
"output_index": 0,
"content_index": 0,
"delta": "<delta>"
}
Properti
Bidang | Jenis | Deskripsi |
---|---|---|
jenis | string | Jenis peristiwa harus response.audio.delta . |
response_id | string | ID respons. |
item_id | string | ID item. |
output_index | Integer | Indeks item output dalam respons. |
content_index | Integer | Indeks bagian konten dalam array konten item. |
delta | string | Delta data audio yang dikodekan Base64. |
RealtimeServerEventResponseAudioDone
Peristiwa server response.audio.done
dikembalikan ketika audio yang dihasilkan model selesai.
Kejadian ini juga dikembalikan saat respons terganggu, tidak lengkap, atau dibatalkan.
Struktur peristiwa
{
"type": "response.audio.done",
"response_id": "<response_id>",
"item_id": "<item_id>",
"output_index": 0,
"content_index": 0
}
Properti
Bidang | Jenis | Deskripsi |
---|---|---|
jenis | string | Jenis peristiwa harus response.audio.done . |
response_id | string | ID respons. |
item_id | string | ID item. |
output_index | Integer | Indeks item output dalam respons. |
content_index | Integer | Indeks bagian konten dalam array konten item. |
RealtimeServerEventResponseAudioTranscriptDelta
Peristiwa server response.audio_transcript.delta
dikembalikan ketika transkripsi output audio yang dihasilkan model diperbarui.
Struktur peristiwa
{
"type": "response.audio_transcript.delta",
"response_id": "<response_id>",
"item_id": "<item_id>",
"output_index": 0,
"content_index": 0,
"delta": "<delta>"
}
Properti
Bidang | Jenis | Deskripsi |
---|---|---|
jenis | string | Jenis peristiwa harus response.audio_transcript.delta . |
response_id | string | ID respons. |
item_id | string | ID item. |
output_index | Integer | Indeks item output dalam respons. |
content_index | Integer | Indeks bagian konten dalam array konten item. |
delta | string | Delta transkrip. |
RealtimeServerEventResponseAudioTranscriptDone
Peristiwa server response.audio_transcript.done
dikembalikan ketika transkripsi output audio yang dihasilkan model dilakukan streaming.
Kejadian ini juga dikembalikan saat respons terganggu, tidak lengkap, atau dibatalkan.
Struktur peristiwa
{
"type": "response.audio_transcript.done",
"response_id": "<response_id>",
"item_id": "<item_id>",
"output_index": 0,
"content_index": 0,
"transcript": "<transcript>"
}
Properti
Bidang | Jenis | Deskripsi |
---|---|---|
jenis | string | Jenis peristiwa harus response.audio_transcript.done . |
response_id | string | ID respons. |
item_id | string | ID item. |
output_index | Integer | Indeks item output dalam respons. |
content_index | Integer | Indeks bagian konten dalam array konten item. |
transkrip | string | Transkrip akhir audio. |
RealtimeServerEventResponseContentPartAdded
Peristiwa server response.content_part.added
dikembalikan ketika bagian konten baru ditambahkan ke item pesan asisten selama pembuatan respons.
Struktur peristiwa
{
"type": "response.content_part.added",
"response_id": "<response_id>",
"item_id": "<item_id>",
"output_index": 0,
"content_index": 0
}
Properti
Bidang | Jenis | Deskripsi |
---|---|---|
jenis | string | Jenis peristiwa harus response.content_part.added . |
response_id | string | ID respons. |
item_id | string | ID item tempat bagian konten ditambahkan. |
output_index | Integer | Indeks item output dalam respons. |
content_index | Integer | Indeks bagian konten dalam array konten item. |
bagian | RealtimeContentPart | Bagian konten yang ditambahkan. |
Properti bagian
Bidang | Jenis | Deskripsi |
---|---|---|
jenis | RealtimeContentPartType |
RealtimeServerEventResponseContentPartdone
Peristiwa server response.content_part.done
dikembalikan ketika bagian konten dilakukan streaming dalam item pesan asisten.
Kejadian ini juga dikembalikan saat respons terganggu, tidak lengkap, atau dibatalkan.
Struktur peristiwa
{
"type": "response.content_part.done",
"response_id": "<response_id>",
"item_id": "<item_id>",
"output_index": 0,
"content_index": 0
}
Properti
Bidang | Jenis | Deskripsi |
---|---|---|
jenis | string | Jenis peristiwa harus response.content_part.done . |
response_id | string | ID respons. |
item_id | string | ID item. |
output_index | Integer | Indeks item output dalam respons. |
content_index | Integer | Indeks bagian konten dalam array konten item. |
bagian | RealtimeContentPart | Bagian konten yang dilakukan. |
Properti bagian
Bidang | Jenis | Deskripsi |
---|---|---|
jenis | RealtimeContentPartType |
RealtimeServerEventResponseCreated
Peristiwa server response.created
dikembalikan saat respons baru dibuat. Ini adalah peristiwa pertama pembuatan respons, di mana respons berada dalam keadaan in_progress
awal .
Struktur peristiwa
{
"type": "response.created"
}
Properti
Bidang | Jenis | Deskripsi |
---|---|---|
jenis | string | Jenis peristiwa harus response.created . |
respons | RealtimeResponse | Objek respons. |
RealtimeServerEventResponseDone
Peristiwa server response.done
dikembalikan ketika respons dilakukan streaming. Kejadian ini selalu dipancarkan, apa pun status akhirnya. Objek respons yang response.done
disertakan dalam peristiwa mencakup semua item output dalam respons, tetapi menghilangkan data audio mentah.
Struktur peristiwa
{
"type": "response.done"
}
Properti
Bidang | Jenis | Deskripsi |
---|---|---|
jenis | string | Jenis peristiwa harus response.done . |
respons | RealtimeResponse | Objek respons. |
RealtimeServerEventResponseFunctionCallArgumentsDelta
Peristiwa server response.function_call_arguments.delta
dikembalikan ketika argumen panggilan fungsi yang dihasilkan model diperbarui.
Struktur peristiwa
{
"type": "response.function_call_arguments.delta",
"response_id": "<response_id>",
"item_id": "<item_id>",
"output_index": 0,
"call_id": "<call_id>",
"delta": "<delta>"
}
Properti
Bidang | Jenis | Deskripsi |
---|---|---|
jenis | string | Jenis peristiwa harus response.function_call_arguments.delta . |
response_id | string | ID respons. |
item_id | string | ID item panggilan fungsi. |
output_index | Integer | Indeks item output dalam respons. |
call_id | string | ID panggilan fungsi. |
delta | string | Argumen delta sebagai string JSON. |
RealtimeServerEventResponseFunctionCallArgumentsDone
Peristiwa server response.function_call_arguments.done
dikembalikan ketika argumen panggilan fungsi yang dihasilkan model dilakukan streaming.
Kejadian ini juga dikembalikan saat respons terganggu, tidak lengkap, atau dibatalkan.
Struktur peristiwa
{
"type": "response.function_call_arguments.done",
"response_id": "<response_id>",
"item_id": "<item_id>",
"output_index": 0,
"call_id": "<call_id>",
"arguments": "<arguments>"
}
Properti
Bidang | Jenis | Deskripsi |
---|---|---|
jenis | string | Jenis peristiwa harus response.function_call_arguments.done . |
response_id | string | ID respons. |
item_id | string | ID item panggilan fungsi. |
output_index | Integer | Indeks item output dalam respons. |
call_id | string | ID panggilan fungsi. |
arguments | string | Argumen akhir sebagai string JSON. |
RealtimeServerEventResponseOutputItemAdded
Peristiwa server response.output_item.added
dikembalikan saat item baru dibuat selama pembuatan respons.
Struktur peristiwa
{
"type": "response.output_item.added",
"response_id": "<response_id>",
"output_index": 0
}
Properti
Bidang | Jenis | Deskripsi |
---|---|---|
jenis | string | Jenis peristiwa harus response.output_item.added . |
response_id | string | ID respons tempat item berada. |
output_index | Integer | Indeks item output dalam respons. |
item | RealtimeConversationResponseItem | Item yang ditambahkan. |
RealtimeServerEventResponseOutputItemDone
Peristiwa server response.output_item.done
dikembalikan ketika item selesai streaming.
Kejadian ini juga dikembalikan saat respons terganggu, tidak lengkap, atau dibatalkan.
Struktur peristiwa
{
"type": "response.output_item.done",
"response_id": "<response_id>",
"output_index": 0
}
Properti
Bidang | Jenis | Deskripsi |
---|---|---|
jenis | string | Jenis peristiwa harus response.output_item.done . |
response_id | string | ID respons tempat item berada. |
output_index | Integer | Indeks item output dalam respons. |
item | RealtimeConversationResponseItem | Item yang dilakukan streaming. |
RealtimeServerEventResponseTextDelta
Peristiwa server response.text.delta
dikembalikan saat teks yang dihasilkan model diperbarui. Teks sesuai dengan bagian text
konten item pesan asisten.
Struktur peristiwa
{
"type": "response.text.delta",
"response_id": "<response_id>",
"item_id": "<item_id>",
"output_index": 0,
"content_index": 0,
"delta": "<delta>"
}
Properti
Bidang | Jenis | Deskripsi |
---|---|---|
jenis | string | Jenis peristiwa harus response.text.delta . |
response_id | string | ID respons. |
item_id | string | ID item. |
output_index | Integer | Indeks item output dalam respons. |
content_index | Integer | Indeks bagian konten dalam array konten item. |
delta | string | Delta teks. |
RealtimeServerEventResponseTextDone
Peristiwa server response.text.done
dikembalikan ketika teks yang dihasilkan model dilakukan streaming. Teks sesuai dengan bagian text
konten item pesan asisten.
Kejadian ini juga dikembalikan saat respons terganggu, tidak lengkap, atau dibatalkan.
Struktur peristiwa
{
"type": "response.text.done",
"response_id": "<response_id>",
"item_id": "<item_id>",
"output_index": 0,
"content_index": 0,
"text": "<text>"
}
Properti
Bidang | Jenis | Deskripsi |
---|---|---|
jenis | string | Jenis peristiwa harus response.text.done . |
response_id | string | ID respons. |
item_id | string | ID item. |
output_index | Integer | Indeks item output dalam respons. |
content_index | Integer | Indeks bagian konten dalam array konten item. |
text | string | Konten teks akhir. |
RealtimeServerEventSessionCreated
Peristiwa server session.created
adalah peristiwa server pertama saat Anda membuat koneksi baru ke API Realtime. Kejadian ini membuat dan mengembalikan sesi baru dengan konfigurasi sesi default.
Struktur peristiwa
{
"type": "session.created"
}
Properti
Bidang | Jenis | Deskripsi |
---|---|---|
jenis | string | Jenis peristiwa harus session.created . |
sesi | RealtimeResponseSession | Objek sesi. |
RealtimeServerEventSessionUpdated
Peristiwa server session.updated
dikembalikan ketika sesi diperbarui oleh klien. Jika ada kesalahan, server akan mengirim error
peristiwa sebagai gantinya.
Struktur peristiwa
{
"type": "session.updated"
}
Properti
Bidang | Jenis | Deskripsi |
---|---|---|
jenis | string | Jenis peristiwa harus session.updated . |
sesi | RealtimeResponseSession | Objek sesi. |
Komponen
RealtimeAudioFormat
Nilai yang Diizinkan:
pcm16
g711_ulaw
g711_alaw
RealtimeAudioInputTranscriptionModel
Nilai yang Diizinkan:
whisper-1
RealtimeAudioInputTranscriptionSettings
Bidang | Jenis | Deskripsi |
---|---|---|
model | RealtimeAudioInputTranscriptionModel | Model default whisper-1 saat ini adalah satu-satunya model yang didukung untuk transkripsi input audio. |
RealtimeClientEvent
Bidang | Jenis | Deskripsi |
---|---|---|
jenis | RealtimeClientEventType | Jenis peristiwa klien. |
event_id | string | ID unik acara. Klien dapat menentukan ID untuk membantu mengidentifikasi peristiwa. |
RealtimeClientEventType
Nilai yang Diizinkan:
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
Bidang | Jenis | Deskripsi |
---|---|---|
jenis | RealtimeContentPartType | Jenis konten. Properti function objek.Nilai yang diizinkan: input_text , input_audio , item_reference , text . |
text | string | Isi teks. Properti ini berlaku untuk input_text tipe isi dan text . |
id | string | ID item percakapan sebelumnya untuk direferensikan dalam item yang dibuat klien dan server. Properti ini berlaku untuk item_reference tipe isi dalam response.create peristiwa. |
audio | string | Byte audio yang dikodekan base64. Properti ini berlaku untuk input_audio tipe isi. |
transkrip | string | Transkrip audio. Properti ini berlaku untuk input_audio tipe isi. |
RealtimeContentPartType
Nilai yang Diizinkan:
input_text
input_audio
text
audio
RealtimeConversationItemBase
Item yang akan ditambahkan ke percakapan.
Tabel ini menjelaskan semua RealtimeConversationItem
properti. Properti yang berlaku per peristiwa bergantung pada RealtimeItemType.
Bidang | Jenis | Deskripsi |
---|---|---|
id | string | ID unik item. Klien dapat menentukan ID untuk membantu mengelola konteks sisi server. Jika klien tidak memberikan ID, server akan membuatnya. |
jenis | RealtimeItemType | Jenis item. Nilai yang diizinkan: message , function_call , function_call_output |
object | string | Pengidentifikasi untuk objek API yang dikembalikan. Nilainya akan selalu .realtime.item |
status | RealtimeItemStatus | Status item. Bidang ini tidak memengaruhi percakapan, tetapi diterima untuk konsistensi dengan peristiwa.conversation.item.created Nilai yang diizinkan: completed , incomplete |
role | RealtimeMessageRole | Peran pengirim pesan. Properti ini hanya berlaku untuk message item. Nilai yang diizinkan: system , user , assistant |
konten | array RealtimeContentPart | Konten pesan. Properti ini hanya berlaku untuk message item.- Item pesan dari konten dukungan peran system saja input_text .- Item pesan dukungan input_text peran user dan input_audio konten.- Item pesan konten dukungan text peranassistant . |
call_id | string | ID panggilan fungsi (untuk function_call item dan function_call_output ). Jika diteruskan pada function_call_output item, server akan memeriksa apakah function_call item dengan ID yang sama ada dalam riwayat percakapan. |
nama | string | Nama fungsi yang dipanggil (untuk function_call item). |
arguments | string | Argumen panggilan fungsi (untuk function_call item). |
output | tali | Output panggilan fungsi (untuk function_call_output item). |
RealtimeConversationRequestItem
Anda menggunakan RealtimeConversationRequestItem
objek untuk membuat item baru dalam percakapan melalui peristiwa conversation.item.create .
Bidang | Jenis | Deskripsi |
---|---|---|
jenis | RealtimeItemType | Jenis item. |
id | string | ID unik item. Klien dapat menentukan ID untuk membantu mengelola konteks sisi server. Jika klien tidak memberikan ID, server akan membuatnya. |
RealtimeConversationResponseItem
Objek RealtimeConversationResponseItem
mewakili item dalam percakapan. Ini digunakan dalam beberapa peristiwa server, seperti:
- conversation.item.created
- response.output_item.added
- response.output_item.done
-
response.created
(melaluiresponse
jenisRealtimeResponse
properti ) -
response.done
(melaluiresponse
jenisRealtimeResponse
properti )
Bidang | Jenis | Deskripsi |
---|---|---|
object | string | Pengidentifikasi untuk objek API yang dikembalikan. Nilai yang diizinkan: realtime.item |
jenis | RealtimeItemType | Jenis item. Nilai yang diizinkan: message , function_call , function_call_output |
id | string | ID unik item. Klien dapat menentukan ID untuk membantu mengelola konteks sisi server. Jika klien tidak memberikan ID, server akan membuatnya. Properti ini dapat diubah ke null. |
RealtimeFunctionTool
Definisi alat fungsi seperti yang digunakan oleh titik akhir realtime.
Bidang | Jenis | Deskripsi |
---|---|---|
jenis | string | Jenis alat. Nilai yang diizinkan: function |
nama | string | Nama fungsi. |
description | string | Deskripsi fungsi, termasuk panduan penggunaan. Misalnya, "Gunakan fungsi ini untuk mendapatkan waktu saat ini." |
parameter | object | Parameter fungsi dalam bentuk objek JSON. |
RealtimeItemStatus
Nilai yang Diizinkan:
in_progress
completed
incomplete
RealtimeItemType
Nilai yang Diizinkan:
message
function_call
function_call_output
RealtimeMessageRole
Nilai yang Diizinkan:
system
user
assistant
RealtimeRequestAssistantMessageItem
Bidang | Jenis | Deskripsi |
---|---|---|
role | string | Peran pesan. Nilai yang diizinkan: assistant |
konten | array RealtimeRequestTextContentPart | Konten pesan. |
RealtimeRequestAudioContentPart
Bidang | Jenis | Deskripsi |
---|---|---|
jenis | string | Jenis bagian konten. Nilai yang diizinkan: input_audio |
transkrip | string | Transkrip audio. |
RealtimeRequestFunctionCallItem
Bidang | Jenis | Deskripsi |
---|---|---|
jenis | string | Jenis item. Nilai yang diizinkan: function_call |
nama | string | Nama item panggilan fungsi. |
call_id | string | ID item panggilan fungsi. |
arguments | string | Argumen item panggilan fungsi. |
status | RealtimeItemStatus | Status item. |
RealtimeRequestFunctionCallOutputItem
Bidang | Jenis | Deskripsi |
---|---|---|
jenis | string | Jenis item. Nilai yang diizinkan: function_call_output |
call_id | string | ID item panggilan fungsi. |
output | tali | Output item panggilan fungsi. |
RealtimeRequestMessageItem
Bidang | Jenis | Deskripsi |
---|---|---|
jenis | string | Jenis item. Nilai yang diizinkan: message |
role | RealtimeMessageRole | Peran pesan. |
status | RealtimeItemStatus | Status item. |
RealtimeRequestMessageReferenceItem
Bidang | Jenis | Deskripsi |
---|---|---|
jenis | string | Jenis item. Nilai yang diizinkan: message |
id | string | ID item pesan. |
RealtimeRequestSession
Anda menggunakan RealtimeRequestSession
objek saat ingin memperbarui konfigurasi sesi melalui peristiwa session.update .
Bidang | Jenis | Deskripsi |
---|---|---|
Modalitas | array | Modalitas yang didukung sesi. Nilai yang diizinkan: text , audio Misalnya, "modalities": ["text", "audio"] adalah pengaturan default yang memungkinkan modalitas teks dan audio. Untuk mengaktifkan hanya teks, atur "modalities": ["text"] . Anda tidak hanya dapat mengaktifkan audio. |
petunjuk | string | Instruksi (pesan sistem) untuk memandu respons teks dan audio model. Berikut adalah beberapa contoh instruksi untuk membantu memandu konten dan format respons teks dan audio: "instructions": "be succinct" "instructions": "act friendly" "instructions": "here are examples of good responses" Berikut adalah beberapa contoh instruksi untuk membantu memandu perilaku audio: "instructions": "talk quickly" "instructions": "inject emotion into your voice" "instructions": "laugh frequently" Meskipun model mungkin tidak selalu mengikuti instruksi ini, model tersebut memberikan panduan tentang perilaku yang diinginkan. |
Suara | RealtimeVoice | Suara yang digunakan untuk respons model untuk sesi tersebut. Setelah suara digunakan dalam sesi untuk respons audio model, suara tidak dapat diubah. |
input_audio_format | RealtimeAudioFormat | Format untuk audio input. |
output_audio_format | RealtimeAudioFormat | Format untuk audio output. |
input_audio_transcription | RealtimeAudioInputTranscriptionSettings | Pengaturan untuk transkripsi input audio. Properti ini dapat diubah ke null. |
turn_detection | RealtimeTurnDetection | Pengaturan deteksi giliran untuk sesi. Properti ini dapat diubah ke null. |
alat | array RealtimeTool | Alat yang tersedia untuk model untuk sesi tersebut. |
tool_choice | RealtimeToolChoice | Pilihan alat untuk sesi. Nilai yang diizinkan: auto , none , dan required . Jika tidak, Anda dapat menentukan nama fungsi yang akan digunakan. |
suhu | number | Suhu pengambilan sampel untuk model. Nilai suhu yang diizinkan dibatasi hingga [0,6, 1,2]. Default ke 0,8. |
max_response_output_tokens | bilangan bulat atau "inf" | Jumlah maksimum token output per respons asisten, termasuk panggilan alat. Tentukan bilangan bulat antara 1 dan 4096 untuk membatasi token output. Jika tidak, atur nilai ke "inf" untuk memungkinkan jumlah maksimum token. Misalnya, untuk membatasi token output menjadi 1000, atur "max_response_output_tokens": 1000 . Untuk mengizinkan jumlah maksimum token, atur "max_response_output_tokens": "inf" .Default ke "inf" . |
RealtimeRequestSystemMessageItem
Bidang | Jenis | Deskripsi |
---|---|---|
role | string | Peran pesan. Nilai yang diizinkan: system |
konten | array RealtimeRequestTextContentPart | Konten pesan. |
RealtimeRequestTextContentPart
Bidang | Jenis | Deskripsi |
---|---|---|
jenis | string | Jenis bagian konten. Nilai yang diizinkan: input_text |
text | string | Isi teks. |
RealtimeRequestUserMessageItem
Bidang | Jenis | Deskripsi |
---|---|---|
role | string | Peran pesan. Nilai yang diizinkan: user |
konten | array RealtimeRequestTextContentPart atau RealtimeRequestAudioContentPart | Konten pesan. |
RealtimeResponse
Bidang | Jenis | Deskripsi |
---|---|---|
object | string | Objek respons. Nilai yang diizinkan: realtime.response |
id | string | ID unik respons. |
status | RealtimeResponseStatus | Status respons. Nilai status defaultnya adalah in_progress . |
status_details | RealtimeResponseStatusDetails | Detail status respons. Properti ini dapat diubah ke null. |
output | array RealtimeConversationResponseItem | Item output respons. |
penggunaan | object | Statistik penggunaan untuk respons. Setiap sesi API Realtime mempertahankan konteks percakapan dan menambahkan item baru ke percakapan. Output dari belokan sebelumnya (token teks dan audio) diinput untuk giliran selanjutnya. Lihat properti berlapis berikutnya. |
+ total_tokens | Integer | Jumlah total token dalam Respons termasuk teks input dan output dan token audio. Properti usage objek. |
+ input_tokens | Integer | Jumlah token input yang digunakan dalam respons, termasuk token teks dan audio. Properti usage objek. |
+ output_tokens | Integer | Jumlah token output yang dikirim dalam respons, termasuk token teks dan audio. Properti usage objek. |
+ input_token_details | object | Detail tentang token input yang digunakan dalam respons. Properti usage objek.Br> Lihat properti berlapis berikutnya. |
+ cached_tokens | Integer | Jumlah token cache yang digunakan dalam respons. Properti input_token_details objek. |
+ text_tokens | Integer | Jumlah token teks yang digunakan dalam respons. Properti input_token_details objek. |
+ audio_tokens | Integer | Jumlah token audio yang digunakan dalam respons. Properti input_token_details objek. |
+ output_token_details | object | Detail tentang token output yang digunakan dalam respons. Properti usage objek.Lihat properti berlapis berikutnya. |
+ text_tokens | Integer | Jumlah token teks yang digunakan dalam respons. Properti output_token_details objek. |
+ audio_tokens | Integer | Jumlah token audio yang digunakan dalam respons. Properti output_token_details objek. |
RealtimeResponseAudioContentPart
Bidang | Jenis | Deskripsi |
---|---|---|
jenis | string | Jenis bagian konten. Nilai yang diizinkan: audio |
transkrip | string | Transkrip audio. Properti ini dapat diubah ke null. |
RealtimeResponseBase
Sumber daya respons.
RealtimeResponseFunctionCallItem
Bidang | Jenis | Deskripsi |
---|---|---|
jenis | string | Jenis item. Nilai yang diizinkan: function_call |
nama | string | Nama item panggilan fungsi. |
call_id | string | ID item panggilan fungsi. |
arguments | string | Argumen item panggilan fungsi. |
status | RealtimeItemStatus | Status item. |
RealtimeResponseFunctionCallOutputItem
Bidang | Jenis | Deskripsi |
---|---|---|
jenis | string | Jenis item. Nilai yang diizinkan: function_call_output |
call_id | string | ID item panggilan fungsi. |
output | tali | Output item panggilan fungsi. |
RealtimeResponseMessageItem
Bidang | Jenis | Deskripsi |
---|---|---|
jenis | string | Jenis item. Nilai yang diizinkan: message |
role | RealtimeMessageRole | Peran pesan. |
konten | array | Konten pesan. Item array: RealtimeResponseTextContentPart |
status | RealtimeItemStatus | Status item. |
RealtimeResponseOptions
Bidang | Jenis | Deskripsi |
---|---|---|
Modalitas | array | Modalitas yang didukung sesi. Nilai yang diizinkan: text , audio Misalnya, "modalities": ["text", "audio"] adalah pengaturan default yang memungkinkan modalitas teks dan audio. Untuk mengaktifkan hanya teks, atur "modalities": ["text"] . Anda tidak hanya dapat mengaktifkan audio. |
petunjuk | string | Instruksi (pesan sistem) untuk memandu respons teks dan audio model. Berikut adalah beberapa contoh instruksi untuk membantu memandu konten dan format respons teks dan audio: "instructions": "be succinct" "instructions": "act friendly" "instructions": "here are examples of good responses" Berikut adalah beberapa contoh instruksi untuk membantu memandu perilaku audio: "instructions": "talk quickly" "instructions": "inject emotion into your voice" "instructions": "laugh frequently" Meskipun model mungkin tidak selalu mengikuti instruksi ini, model tersebut memberikan panduan tentang perilaku yang diinginkan. |
Suara | RealtimeVoice | Suara yang digunakan untuk respons model untuk sesi tersebut. Setelah suara digunakan dalam sesi untuk respons audio model, suara tidak dapat diubah. |
output_audio_format | RealtimeAudioFormat | Format untuk audio output. |
alat | array RealtimeTool | Alat yang tersedia untuk model untuk sesi tersebut. |
tool_choice | RealtimeToolChoice | Pilihan alat untuk sesi. |
suhu | number | Suhu pengambilan sampel untuk model. Nilai suhu yang diizinkan dibatasi hingga [0,6, 1,2]. Default ke 0,8. |
max__output_tokens | bilangan bulat atau "inf" | Jumlah maksimum token output per respons asisten, termasuk panggilan alat. Tentukan bilangan bulat antara 1 dan 4096 untuk membatasi token output. Jika tidak, atur nilai ke "inf" untuk memungkinkan jumlah maksimum token. Misalnya, untuk membatasi token output menjadi 1000, atur "max_response_output_tokens": 1000 . Untuk mengizinkan jumlah maksimum token, atur "max_response_output_tokens": "inf" .Default ke "inf" . |
percakapan | string | Mengontrol percakapan mana respons ditambahkan. Nilai yang didukung adalah auto dan none .Nilai auto (atau tidak mengatur properti ini) memastikan bahwa konten respons ditambahkan ke percakapan default sesi.Atur properti ini ke none untuk membuat respons di luar band di mana item tidak akan ditambahkan ke percakapan default. Untuk informasi selengkapnya, lihat panduan cara penggunaan.Default ke "auto" |
metadata | peta | Atur hingga 16 pasangan kunci-nilai yang dapat dilampirkan ke objek. Ini dapat berguna untuk menyimpan informasi tambahan tentang objek dalam format terstruktur. Kunci dapat memiliki panjang maksimal 64 karakter dan nilai dapat memiliki panjang maksimal 512 karakter. Misalnya: metadata: { topic: "classification" } |
input | array | Masukkan item untuk disertakan dalam permintaan model. Membuat konteks baru untuk respons ini, tanpa menyertakan percakapan default. Bisa menyertakan referensi ke item dari percakapan default. Item array: RealtimeConversationItemBase |
RealtimeResponseSession
Objek RealtimeResponseSession
mewakili sesi di API Realtime. Ini digunakan dalam beberapa peristiwa server, seperti:
Bidang | Jenis | Deskripsi |
---|---|---|
object | string | Objek sesi. Nilai yang diizinkan: realtime.session |
id | string | ID unik sesi. |
model | string | Model yang digunakan untuk sesi. |
Modalitas | array | Modalitas yang didukung sesi. Nilai yang diizinkan: text , audio Misalnya, "modalities": ["text", "audio"] adalah pengaturan default yang memungkinkan modalitas teks dan audio. Untuk mengaktifkan hanya teks, atur "modalities": ["text"] . Anda tidak hanya dapat mengaktifkan audio. |
petunjuk | string | Instruksi (pesan sistem) untuk memandu respons teks dan audio model. Berikut adalah beberapa contoh instruksi untuk membantu memandu konten dan format respons teks dan audio: "instructions": "be succinct" "instructions": "act friendly" "instructions": "here are examples of good responses" Berikut adalah beberapa contoh instruksi untuk membantu memandu perilaku audio: "instructions": "talk quickly" "instructions": "inject emotion into your voice" "instructions": "laugh frequently" Meskipun model mungkin tidak selalu mengikuti instruksi ini, model tersebut memberikan panduan tentang perilaku yang diinginkan. |
Suara | RealtimeVoice | Suara yang digunakan untuk respons model untuk sesi tersebut. Setelah suara digunakan dalam sesi untuk respons audio model, suara tidak dapat diubah. |
input_audio_format | RealtimeAudioFormat | Format untuk audio input. |
output_audio_format | RealtimeAudioFormat | Format untuk audio output. |
input_audio_transcription | RealtimeAudioInputTranscriptionSettings | Pengaturan untuk transkripsi input audio. Properti ini dapat diubah ke null. |
turn_detection | RealtimeTurnDetection | Pengaturan deteksi giliran untuk sesi. Properti ini dapat diubah ke null. |
alat | array RealtimeTool | Alat yang tersedia untuk model untuk sesi tersebut. |
tool_choice | RealtimeToolChoice | Pilihan alat untuk sesi. |
suhu | number | Suhu pengambilan sampel untuk model. Nilai suhu yang diizinkan dibatasi hingga [0,6, 1,2]. Default ke 0,8. |
max_response_output_tokens | bilangan bulat atau "inf" | Jumlah maksimum token output per respons asisten, termasuk panggilan alat. Tentukan bilangan bulat antara 1 dan 4096 untuk membatasi token output. Jika tidak, atur nilai ke "inf" untuk memungkinkan jumlah maksimum token. Misalnya, untuk membatasi token output menjadi 1000, atur "max_response_output_tokens": 1000 . Untuk mengizinkan jumlah maksimum token, atur "max_response_output_tokens": "inf" . |
RealtimeResponseStatus
Nilai yang Diizinkan:
in_progress
completed
cancelled
incomplete
failed
RealtimeResponseStatusDetails
Bidang | Jenis | Deskripsi |
---|---|---|
jenis | RealtimeResponseStatus | Status respons. |
RealtimeResponseTextContentPart
Bidang | Jenis | Deskripsi |
---|---|---|
jenis | string | Jenis bagian konten. Nilai yang diizinkan: text |
text | string | Isi teks. |
RealtimeServerEvent
Bidang | Jenis | Deskripsi |
---|---|---|
jenis | RealtimeServerEventType | Jenis peristiwa server. |
event_id | string | ID unik peristiwa server. |
RealtimeServerEventRateLimitsUpdatedRateLimitsItem
Bidang | Jenis | Deskripsi |
---|---|---|
nama | string | Nama properti batas tarif yang menyertakan informasi tentang item ini. |
batas | Integer | Batas maksimum yang dikonfigurasi untuk properti batas tarif ini. |
tersisa | Integer | Sisa kuota yang tersedia terhadap batas yang dikonfigurasi untuk properti batas tarif ini. |
reset_seconds | number | Sisa waktu, dalam detik, hingga properti batas tarif ini diatur ulang. |
RealtimeServerEventType
Nilai yang Diizinkan:
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
Bidang | Jenis | Deskripsi |
---|---|---|
jenis | string | Jenis deteksi giliran. Nilai yang diizinkan: server_vad |
ambang | number | Ambang aktivasi untuk deteksi giliran VAD server. Di lingkungan yang berisik, Anda mungkin perlu meningkatkan ambang batas untuk menghindari positif palsu. Di lingkungan yang tenang, Anda mungkin perlu mengurangi ambang batas untuk menghindari negatif palsu. Default ke 0.5 . Anda dapat mengatur ambang batas ke nilai antara 0.0 dan 1.0 . |
prefix_padding_ms | string | Durasi audio ucapan (dalam milidetik) untuk disertakan sebelum dimulainya ucapan yang terdeteksi. Default ke 300 . |
silence_duration_ms | string | Durasi keheningan (dalam milidetik) untuk mendeteksi akhir ucapan. Anda ingin mendeteksi akhir ucapan sesegera mungkin, tetapi tidak terlalu cepat untuk menghindari pemotongan bagian terakhir dari ucapan. Model akan merespons lebih cepat jika Anda mengatur nilai ini ke angka yang lebih rendah, tetapi mungkin memotong bagian terakhir ucapan. Jika Anda mengatur nilai ini ke angka yang lebih tinggi, model akan menunggu lebih lama untuk mendeteksi akhir ucapan, tetapi mungkin perlu waktu lebih lama untuk merespons. |
RealtimeSessionBase
Konfigurasi objek sesi realtime.
RealtimeTool
Representasi dasar definisi alat realtime.
Bidang | Jenis | Deskripsi |
---|---|---|
jenis | RealtimeToolType | Jenis alat. |
RealtimeToolChoice
Kumpulan gabungan representasi yang tersedia untuk parameter realtime tool_choice
, mencakup kedua opsi literal string seperti 'otomatis' dan referensi terstruktur ke alat yang ditentukan.
RealtimeToolChoiceFunctionObject
Representasi realtime tool_choice
memilih alat fungsi bernama.
Bidang | Jenis | Deskripsi |
---|---|---|
jenis | string | Jenis tool_choice .Nilai yang diizinkan: function |
fungsi | object | Alat fungsi untuk dipilih. Lihat properti berlapis berikutnya. |
+ nama | string | Nama alat fungsi. Properti function objek. |
RealtimeToolChoiceLiteral
Set opsi literal tool_choice
string tingkat mode yang tersedia untuk titik akhir realtime.
Nilai yang Diizinkan:
auto
none
required
RealtimeToolChoiceObject
Representasi dasar untuk realtime tool_choice
memilih alat bernama.
Bidang | Jenis | Deskripsi |
---|---|---|
jenis | RealtimeToolType | Jenis tool_choice . |
RealtimeToolType
Diskriminator jenis alat yang didukung untuk alat realtime. Saat ini, hanya alat 'fungsi' yang didukung.
Nilai yang Diizinkan:
function
RealtimeTurnDetection
Bidang | Jenis | Deskripsi |
---|---|---|
jenis | RealtimeTurnDetectionType | Jenis deteksi giliran. Nilai yang diizinkan: server_vad |
ambang | number | Ambang aktivasi untuk deteksi giliran VAD server. Di lingkungan yang berisik, Anda mungkin perlu meningkatkan ambang batas untuk menghindari positif palsu. Di lingkungan yang tenang, Anda mungkin perlu mengurangi ambang batas untuk menghindari negatif palsu. Default ke 0.5 . Anda dapat mengatur ambang batas ke nilai antara 0.0 dan 1.0 . |
prefix_padding_ms | string | Durasi audio ucapan (dalam milidetik) untuk disertakan sebelum dimulainya ucapan yang terdeteksi. Default ke 300 milidetik. |
silence_duration_ms | string | Durasi keheningan (dalam milidetik) untuk mendeteksi akhir ucapan. Anda ingin mendeteksi akhir ucapan sesegera mungkin, tetapi tidak terlalu cepat untuk menghindari pemotongan bagian terakhir dari ucapan. Model akan merespons lebih cepat jika Anda mengatur nilai ini ke angka yang lebih rendah, tetapi mungkin memotong bagian terakhir ucapan. Jika Anda mengatur nilai ini ke angka yang lebih tinggi, model akan menunggu lebih lama untuk mendeteksi akhir ucapan, tetapi mungkin perlu waktu lebih lama untuk merespons. Default ke 500 milidetik. |
create_response | Boolean | Menunjukkan apakah server akan secara otomatis membuat respons saat PPN diaktifkan dan ucapan berhenti. Default ke true . |
RealtimeTurnDetectionType
Nilai yang Diizinkan:
server_vad
RealtimeVoice
Nilai yang Diizinkan:
alloy
ash
ballad
coral
echo
sage
shimmer
verse
Konten terkait
- Mulai menggunakan mulai cepat Api Realtime.
- Pelajari selengkapnya tentang Cara menggunakan API Realtime.