Topik ini menjelaskan event sisi server untuk API Qwen-Omni-Realtime.
Untuk informasi selengkapnya, lihat Real-time multimodal.
error
Pesan kesalahan yang dikembalikan oleh server.
event_id string Identifier unik untuk event ini. | {
"event_id": "event_RoUu4T8yExPMI37GKwaOC",
"type": "error",
"error": {
"type": "invalid_request_error",
"code": "invalid_value",
"message": "Invalid modalities: ['audio']. Supported combinations are: ['text'] and ['audio', 'text'].",
"param": "session.modalities"
}
}
|
type string Tipe event. Nilainya selalu error. |
error object Informasi detail mengenai kesalahan. Properties type string Tipe kesalahan. code string Kode kesalahan. message string Pesan kesalahan. param string Parameter yang terkait dengan kesalahan, seperti session.modalities. |
session.created
Saat klien terhubung, server mengembalikan event ini terlebih dahulu. Event ini berisi konfigurasi default untuk sesi tersebut.
event_id string Identifier unik untuk event ini. | {
"event_id": "event_RdvlSpbBb2ssyBjYrDHjt",
"type": "session.created",
"session": {
"object": "realtime.session",
"model": "qwen3-omni-flash-realtime",
"modalities": [
"text",
"audio"
],
"voice": "Cherry",
"input_audio_format": "pcm16",
"output_audio_format": "pcm24",
"input_audio_transcription": {
"model": "gummy-realtime-v1"
},
"turn_detection": {
"type": "server_vad",
"threshold": 0.5,
"prefix_padding_ms": 300,
"silence_duration_ms": 800,
"create_response": true,
"interrupt_response": true
},
"tools": [],
"tool_choice": "auto",
"temperature": 0.8,
"id": "sess_Ov7GOXoNXhNjlxXtOGKQS"
}
}
|
type string Tipe event. Nilainya selalu session.created. |
session object Konfigurasi untuk sesi tersebut. Properties object string Nilainya selalu realtime.session. model string Model yang digunakan. modalities array Pengaturan modalitas output untuk model. voice string Timbre audio yang dihasilkan oleh model. input_audio_format string Format audio input. Nilainya selalu pcm16. output_audio_format string Format audio output dari model: input_audio_transcription object Konfigurasi untuk transkripsi ucapan. Properties model string Model transkripsi ucapan. Nilainya selalu gummy-realtime-v1. turn_detection object Konfigurasi untuk deteksi aktivitas suara (VAD). Properties type string Tipe VAD sisi server. Nilainya selalu server_vad. threshold float Ambang batas deteksi VAD. silence_duration_ms integer Durasi diam untuk mendeteksi akhir ucapan. temperature float Parameter suhu untuk model. |
session.updated
Server mengembalikan event ini setelah berhasil memproses permintaan session.update dari pengguna. Jika permintaan gagal, server mengembalikan event error.
event_id string Identifier unik untuk event ini. | {
"event_id": "event_X1HsXS4b4uptp6yo1LgKd",
"type": "session.updated",
"session": {
"id": "sess_Aih6vAcY5Ddt6jwFx1tCa",
"object": "realtime.session",
"model": "qwen3-omni-flash-realtime",
"modalities": [
"text",
"audio"
],
"instructions": "You are a personal assistant named Xiaoyun. Please answer user questions accurately and in a friendly manner, always responding with a helpful attitude.",
"voice": "Cherry",
"input_audio_format": "pcm16",
"output_audio_format": "pcm24",
"input_audio_transcription": {
"model": "gummy-realtime-v1"
},
"turn_detection": {
"type": "server_vad",
"threshold": 0.1,
"prefix_padding_ms": 500,
"silence_duration_ms": 900,
"create_response": true,
"interrupt_response": true
},
"temperature": 0.8,
"max_response_output_token": "inf",
"max_tokens": 16384,
"repetition_penalty": 1.05,
"presence_penalty": 0.0,
"top_k": 50,
"top_p": 1.0,
"seed":-1
}
}
|
type string Tipe event. Nilainya selalu session.updated. |
session object Konfigurasi untuk sesi tersebut. Properties temperature float Parameter suhu untuk model. modalities array Pengaturan modalitas output untuk model. voice string Timbre audio yang dihasilkan oleh model. instructions string Tujuan dan peran model. input_audio_format string Format audio input. Nilainya selalu pcm16. output_audio_format string Format audio output. Nilainya selalu pcm24. input_audio_transcription object Konfigurasi untuk transkripsi ucapan. Properties model string Model transkripsi ucapan. Nilainya selalu gummy-realtime-v1. turn_detection object Konfigurasi untuk VAD. Properties type string Tipe VAD sisi server. Nilainya selalu server_vad. threshold float Ambang batas deteksi VAD. silence_duration_ms integer Durasi diam untuk mendeteksi akhir ucapan. top_pfloat Ambang batas probabilitas untuk pengambilan sampel inti. top_k integer Ukuran set kandidat untuk pengambilan sampel selama generasi model. max_tokens integer Jumlah maksimum token yang dapat dikembalikan model untuk permintaan saat ini. repetition_penalty float Mengontrol tingkat pengulangan dalam urutan berturut-turut selama generasi model. presence_penalty float Mengontrol tingkat pengulangan saat model menghasilkan konten. seed integer Tingkat konsistensi hasil untuk setiap permintaan. |
input_audio_buffer.speech_started
Dalam mode VAD, server mengembalikan event ini ketika mendeteksi awal ucapan dalam buffer audio.
Event ini juga dipicu setiap kali audio ditambahkan ke buffer sebelum server mendeteksi ucapan.
event_id string Identifier unik untuk event ini. | {
"event_id": "event_Pvp8nEhsQuGCQbFJ9x58n",
"type": "input_audio_buffer.speech_started",
"audio_start_ms": 3647,
"item_id": "item_YbAiGvK2H7YaS34o4R6Ba"
}
|
type string Tipe event. Nilainya selalu input_audio_buffer.speech_started. |
audio_start_ms integer Waktu dalam milidetik sejak buffer audio mulai menerima data hingga ucapan pertama kali terdeteksi. |
item_id string ID item pesan pengguna yang akan dibuat saat ucapan berhenti. Item pesan pengguna digunakan untuk menambahkan input pengguna ke riwayat percakapan untuk inferensi dan generasi model berikutnya. |
input_audio_buffer.speech_stopped
Dalam mode VAD, server mengembalikan event ini ketika mendeteksi akhir ucapan dalam buffer audio.
Bersamaan dengan itu, server mengembalikan event conversation.item.created.
event_id string Identifier unik untuk event ini. | {
"event_id": "event_UhQiqNVRsgUiq4KUS5Xb5",
"type": "input_audio_buffer.speech_stopped",
"audio_end_ms": 4453,
"item_id": "item_YbAiGvK2H7YaS34o4R6Ba"
}
|
type string Tipe event. Nilainya selalu input_audio_buffer.speech_stopped. |
audio_end_ms integer Waktu dalam milidetik sejak awal sesi hingga ucapan berhenti. |
item_id string ID item pesan pengguna yang akan dibuat. |
input_audio_buffer.committed
Event ini dikembalikan ketika buffer audio input dikomit.
Dalam mode VAD, server secara otomatis mengkomit buffer audio dan mengembalikan event ini ketika mendeteksi bahwa pengguna telah selesai berbicara.
Dalam mode Manual, server mengembalikan event ini setelah klien mengirim event input_audio_buffer.commit.
event_id string Identifier unik untuk event ini. | {
"event_id": "event_Iy6sUzL1nmdFgshFYxJEz",
"type": "input_audio_buffer.committed",
"item_id": "item_YbAiGvK2H7YaS34o4R6Ba"
}
|
type string Tipe event. Nilainya selalu input_audio_buffer.committed. |
item_id string ID item pesan pengguna yang akan dibuat. |
input_audio_buffer.cleared
Server mengembalikan event ini setelah klien mengirim event input_audio_buffer.clear.
event_id string Identifier unik untuk event ini. | {
"event_id": "event_RoUu4T8yExPMI37GKwaOC",
"type": "input_audio_buffer.cleared"
}
|
type string Tipe event. Nilainya selalu input_audio_buffer.cleared. |
conversation.item.created
Event ini dikembalikan saat sebuah item percakapan dibuat.
event_id string Identifier unik untuk event ini. | {
"event_id": "event_JEfkrr9gO3Ny7Xcv9bGVd",
"type": "conversation.item.created",
"item": {
"id": "item_YbAiGvK2H7YaS34o4R6Ba",
"object": "realtime.item",
"type": "message",
"status": "in_progress",
"role": "assistant",
"content": [
{
"type": "input_audio"
}
]
}
}
|
type string Tipe event. Nilainya selalu conversation.item.created. |
item object Item yang akan ditambahkan ke percakapan. Properties id string ID unik item percakapan. object string Nilainya selalu realtime.item. status string Status item percakapan. content string Konten pesan. |
conversation.item.input_audio_transcription.completed
Event ini menyediakan transkripsi audio yang dibuffer oleh pengguna. Transkripsi diproses oleh model pengenalan ucapan terpisah, yaitu gummy-realtime-v1.
Teks hasil transkripsi dari model pengenalan ucapan mungkin berbeda dari teks yang diproses oleh model Qwen-Omni-Realtime dan hanya bersifat Referensi.
event_id string Identifier unik untuk event ini. | {
"event_id": "event_FrrZcxiDfTB9LD9p4pVng",
"type": "conversation.item.input_audio_transcription.completed",
"item_id": "item_YbAiGvK2H7YaS34o4R6Ba",
"content_index": 0,
"transcript": "Hello."
}
|
type string Tipe event. Nilainya selalu conversation.item.input_audio_transcription.completed. |
item_id string ID item pesan pengguna. |
content_index integer Nilainya selalu 0. |
transcript string Teks hasil transkripsi. |
conversation.item.input_audio_transcription.failed
Jika transkripsi audio input diaktifkan dan gagal, server mengembalikan event ini. Event ini berbeda dari event error, yang membantu klien mengidentifikasi penyebab spesifik kegagalan tersebut.
event_id string Identifier unik untuk event ini. | {
"type": "conversation.item.input_audio_transcription.failed",
"item_id": "<item_id>",
"content_index": 0,
"error": {
"code": "<code>",
"message": "<message>",
"param": "<param>"
}
}
|
type string Tipe event. Nilainya selalu conversation.item.input_audio_transcription.failed. |
item_id string ID item pesan pengguna. |
content_index integer Nilainya selalu 0. |
error object Pesan kesalahan. Properties code string Kode kesalahan. message string Pesan kesalahan. param string Parameter yang terkait dengan kesalahan. |
response.created
Server mengembalikan event ini saat menghasilkan respons model baru.
event_id string Identifier unik untuk event ini. | {
"event_id": "event_XuDavMzQN3KKepqGu3KRh",
"type": "response.created",
"response": {
"id": "resp_HaVOPdbmX6vifiV5pAfJY",
"object": "realtime.response",
"conversation_id": "conv_FjJaccpnvwHNo9cPVuzGc",
"status": "in_progress",
"modalities": [
"text",
"audio"
],
"voice": "Cherry",
"output_audio_format": "pcm24",
"output": []
}
}
|
type string Tipe event. Nilainya selalu response.created. |
response object Objek respons. Properties id string ID unik respons. conversation_id string ID unik sesi saat ini. object string Tipe objek. Untuk event ini, nilainya selalu realtime.response. status string Status respons. Nilai yang valid adalah completed, failed, in_progress, atau incomplete. modalities array Modalitas respons. voice string Timbre audio yang dihasilkan oleh model. output string Bidang ini kosong untuk event ini. |
response.done
Saat generasi respons selesai, server mengembalikan event ini. Objek response dalam event berisi semua item output kecuali data audio mentah.
event_id string Identifier unik untuk event ini. | {
"event_id": "event_CSaxRRYLvbrfexDXAEuDG",
"type": "response.done",
"response": {
"id": "resp_HaVOPdbmX6vifiV5pAfJY",
"object": "realtime.response",
"conversation_id": "conv_FjJaccpnvwHNo9cPVuzGc",
"status": "completed",
"modalities": [
"text",
"audio"
],
"voice": "Cherry",
"output_audio_format": "pcm24",
"output": [
{
"id": "item_Ls6MtCUWO7LM4E59QziNv",
"object": "realtime.item",
"type": "message",
"status": "completed",
"role": "assistant",
"content": [
{
"type": "audio",
"transcript": "Hello! Is there anything I can help you with?"
}
]
}
],
"usage": {
"total_tokens": 377,
"input_tokens": 336,
"output_tokens": 41,
"input_tokens_details": {
"text_tokens": 228,
"audio_tokens": 108
},
"output_tokens_details": {
"text_tokens": 9,
"audio_tokens": 32
}
}
}
}
|
type string Tipe event. Nilainya selalu response.done. |
response object Objek respons. Properties id string ID unik respons. conversation_id string ID unik sesi saat ini. object string Tipe objek. Untuk event ini, nilainya selalu realtime.response. status string Status respons. modalities array Modalitas respons. voice string Timbre audio yang dihasilkan oleh model. output object Output respons. Properties id string ID output respons. type string Tipe item output. Nilainya selalu message. object string Tipe objek item output. Nilainya selalu realtime.item. status string Status item output. role string Peran item output. content array Konten item output. Properties type string Tipe konten output. Nilainya text jika output berupa teks biasa, atau audio jika output mencakup audio. transcript string Teks hasil transkripsi dari audio. usage object Detail penggunaan token untuk respons ini. |
response.text.delta
Server mengembalikan event ini saat modalitas output hanya berupa teks dan model menghasilkan teks secara inkremental.
event_id string Identifier unik untuk event ini. | {
"delta": "Hello",
"event_id": "event_TH49MauuPmRo1RGaMSlP7",
"type": "response.text.delta",
"response_id": "resp_PrRSvPVpnCExdUOGHHLuP",
"item_id": "item_L8IRm9kRXFpxoOjDqDC96",
"output_index": 0,
"content_index": 0
}
|
type string Tipe event. Nilainya selalu response.text.delta. |
delta string Teks inkremental. |
response_id string ID respons. |
item_id string ID item pesan. Anda dapat menggunakan ID ini untuk mengasosiasikan item dari pesan yang sama. |
output_index integer Indeks item output dalam respons. Nilainya selalu 0. |
content_index integer Indeks bagian konten dalam item output. Nilainya selalu 0. |
response.text.done
Server mengembalikan event ini saat modalitas output hanya berupa teks dan model selesai menghasilkan teks.
Event ini juga dikembalikan saat respons diinterupsi, tidak lengkap, atau dibatalkan.
event_id string Identifier unik untuk event ini. | {
"event_id": "event_B1lIeE2Nac33zn5V7h2mm",
"type": "response.text.done",
"response_id": "resp_B1lIdtjF4Noqpn5NOjznj",
"item_id": "item_B1lIdJsAJlJiFs8ztWpJt",
"output_index": 0,
"content_index": 0,
"text": "How can I assist you today?"
}
|
type string Tipe event. Nilainya selalu response.text.done. |
response_id string ID respons. |
item_id string ID item pesan. |
output_indexinteger Indeks item output dalam respons. |
content_indexinteger Indeks yang dikembalikan dalam respons. |
text string Teks lengkap yang dihasilkan oleh model. |
response.audio.delta
Server mengembalikan event ini saat modalitas output mencakup audio dan model menghasilkan data audio secara inkremental.
event_id string Identifier unik untuk event ini. | {
"event_id": "event_B1osWMZBtrEQbiIwW0qHQ",
"type": "response.audio.delta",
"response_id": "resp_P79OOMs8LnrXVpiIHUCKR",
"item_id": "item_OFaPGtzfWCPyGzxnuEX9i",
"output_index": 0,
"content_index": 0,
"delta": "{base64 audio}"
}
|
type string Tipe event. Nilainya selalu response.audio.delta. |
response_id string ID respons. |
item_id string ID item pesan. |
output_indexinteger Indeks item output dalam respons. |
content_indexinteger Indeks respons. |
delta string Data audio inkremental yang dihasilkan oleh model dikodekan dalam Base64. |
response.audio.done
Server mengembalikan event ini saat modalitas output mencakup audio dan model selesai menghasilkan data audio.
Event ini juga dikembalikan saat respons diinterupsi, tidak lengkap, atau dibatalkan.
event_id string Identifier unik untuk event ini. | {
"event_id": "event_Le1TDl7VfyHQxl47DtGxI",
"type": "response.audio.done",
"response_id": "resp_HaVOPdbmX6vifiV5pAfJY",
"item_id": "item_Ls6MtCUWO7LM4E59QziNv",
"output_index": 0,
"content_index": 0
}
|
type string Tipe event. Nilainya selalu response.audio.done. |
response_id string ID respons. |
item_id string ID item pesan. |
output_indexinteger Indeks item output dalam respons. |
content_indexinteger Indeks bagian konten dalam item output. |
response.audio_transcript.delta
Saat modalitas output mencakup audio, server mengembalikan event response.audio_transcript.delta saat model menghasilkan teks secara inkremental untuk audio yang sesuai.
event_id string Identifier unik untuk event ini. | {
"event_id": "event_BksW7fOwnyavZdDxIzZYM",
"type": "response.audio_transcript.delta",
"response_id": "resp_HaVOPdbmX6vifiV5pAfJY",
"item_id": "item_Ls6MtCUWO7LM4E59QziNv",
"output_index": 0,
"content_index": 0,
"delta": "Is there"
}
|
type string Tipe event. Nilainya response.audio_transcript.delta. |
response_id string ID respons. |
item_id string ID item pesan. |
output_index integer Indeks output. |
content_index integer Indeks konten. |
delta string Teks inkremental. |
response.audio_transcript.done
Jika modalitas output mencakup audio, server mengembalikan event response.audio_transcript.done saat model selesai mentranskripsikan audio.
event_id string Identifier unik untuk event ini. | {
"event_id": "event_X49tL2WerT4WjxcmH16lS",
"type": "response.audio_transcript.done",
"response_id": "resp_HaVOPdbmX6vifiV5pAfJY",
"item_id": "item_Ls6MtCUWO7LM4E59QziNv",
"output_index": 0,
"content_index": 0,
"transcript": "Hello! Is there anything I can help you with?"
}
|
type string Tipe event. Nilainya selalu response.audio_transcript.done. |
response_id string ID respons. |
item_id string ID item pesan. |
output_indexinteger Indeks item output dalam respons. |
content_indexinteger Indeks bagian konten dalam item output. |
transcript string Teks lengkap. |
response.output_item.added
Server mengembalikan event ini saat item baru dibuat selama generasi respons.
event_id string Identifier unik untuk event ini. | {
"event_id": "event_DsCO341DEVtiATtCB6BUY",
"type": "response.output_item.added",
"response_id": "resp_HaVOPdbmX6vifiV5pAfJY",
"output_index": 0,
"item": {
"id": "item_Ls6MtCUWO7LM4E59QziNv",
"object": "realtime.item",
"type": "message",
"status": "in_progress",
"role": "assistant",
"content": []
}
}
|
type string Tipe event. Nilainya selalu response.output_item.added. |
response_id string ID respons. |
output_indexinteger Indeks item output dalam respons. |
itemobject Informasi mengenai item output. Properties id string ID unik item output. object string Nilainya selalu realtime.item. status string Status item output. role string Peran pengirim pesan. content string Konten pesan. |
response.output_item.done
Server mengembalikan event ini saat output item baru selesai.
event_id string Identifier unik untuk event ini. | {
"event_id": "event_MEu5nlLw1LsOguHiehIP8",
"type": "response.output_item.done",
"response_id": "resp_HaVOPdbmX6vifiV5pAfJY",
"output_index": 0,
"item": {
"id": "item_Ls6MtCUWO7LM4E59QziNv",
"object": "realtime.item",
"type": "message",
"status": "completed",
"role": "assistant",
"content": [
{
"type": "audio",
"text": "Hello! Is there anything I can help you with?"
}
]
}
}
|
type string Tipe event. Nilainya selalu response.output_item.done. |
response_id string ID respons. |
output_indexinteger Indeks item output dalam respons. |
itemobject Informasi mengenai item output. Properties id string ID unik item output. object string Nilainya selalu realtime.item. status string Status item output. role string Peran pengirim pesan. content string Konten pesan. |
response.content_part.added
Server mengembalikan event ini saat bagian konten baru ditambahkan ke item pesan asisten selama generasi respons.
event_id string Identifier unik untuk event ini. | {
"event_id": "event_AVBOmrgY3C8bjlRajfSUT",
"type": "response.content_part.added",
"response_id": "resp_HaVOPdbmX6vifiV5pAfJY",
"item_id": "item_Ls6MtCUWO7LM4E59QziNv",
"output_index": 0,
"content_index": 0,
"part": {
"type": "audio",
"text": ""
}
}
|
type string Tipe event. Nilainya selalu response.content_part.added. |
response_id string ID respons. |
item_id string ID item pesan. |
output_indexinteger Indeks item output dalam respons. Nilainya selalu 0. |
content_indexinteger Indeks bagian konten dalam item output. Nilainya selalu 0. |
partobject Informasi mengenai bagian konten. Properties type string Tipe bagian konten. text string Teks bagian konten. |
response.content_part.done
Server mengembalikan event ini saat streaming bagian konten dalam item pesan asisten selesai.
event_id string Identifier unik untuk event ini. | {
"event_id": "event_Il8HD19v58Qr5IBkw7LtN",
"type": "response.content_part.done",
"response_id": "resp_HaVOPdbmX6vifiV5pAfJY",
"item_id": "item_Ls6MtCUWO7LM4E59QziNv",
"output_index": 0,
"content_index": 0,
"part": {
"type": "audio",
"text": "Hello! Is there anything I can help you with?"
}
}
|
type string Tipe event. Nilainya selalu response.content_part.done. |
response_id string ID respons. |
item_id string ID item pesan. |
output_indexinteger Indeks item output dalam respons. Nilainya selalu 0. |
content_indexinteger Indeks bagian konten dalam array konten item. Nilainya selalu 0. |
partobject Informasi mengenai bagian konten. Properties type string Tipe bagian konten. text string Teks bagian konten. |