Topik ini menjelaskan event server untuk API Qwen-Omni-Realtime.
Referensi: Real-time (Qwen-Omni-Realtime).
error
Pesan error 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 Jenis event. Selalu error. |
error object Informasi detail mengenai error tersebut. Properties code string Kode kesalahan. message string Pesan error. param string Parameter yang terkait dengan error, seperti session.modalities. |
session.created
Setelah klien terhubung, ini adalah event pertama yang dikembalikan oleh server. Event ini berisi informasi 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": "pcm",
"output_audio_format": "pcm",
"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 Jenis event. Selalu session.created. |
session object Informasi konfigurasi untuk sesi tersebut. Properties object string 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. Selalu pcm. output_audio_format string Format audio output. Selalu pcm. input_audio_transcription object Konfigurasi untuk transkripsi ucapan. Properties model string Model transkripsi ucapan. Selalu gummy-realtime-v1. turn_detection object Konfigurasi untuk deteksi aktivitas suara (VAD). Properties type string Jenis VAD server. Selalu server_vad. threshold float Ambang batas deteksi VAD. silence_duration_ms integer Durasi keheningan untuk mendeteksi akhir ucapan. temperature float Parameter suhu untuk model. |
session.updated
Setelah menerima permintaan session.update dari pengguna, server mengembalikan event ini jika permintaan berhasil. Jika terjadi error, server akan 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": "pcm",
"output_audio_format": "pcm",
"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 Jenis event. Selalu session.updated. |
session object Informasi 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. Selalu pcm. output_audio_format string Format audio output. Selalu pcm. input_audio_transcription object Konfigurasi untuk transkripsi ucapan. Properties model string Model transkripsi ucapan. Selalu gummy-realtime-v1. turn_detection object Konfigurasi untuk VAD. Properties type string Jenis VAD server. Selalu server_vad. threshold float Ambang batas deteksi VAD. silence_duration_ms integer Durasi keheningan 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 dapat dipicu setiap kali audio ditambahkan ke buffer jika server belum mendeteksi adanya 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 Jenis event. Selalu input_audio_buffer.speech_started. |
audio_start_ms integer Waktu dalam milidetik sejak penulisan audio ke buffer dimulai hingga ucapan pertama kali terdeteksi. |
item_id string ID item pesan pengguna yang akan dibuat ketika ucapan berhenti. Item pesan pengguna digunakan untuk menambahkan input pengguna ke riwayat percakapan guna inferensi dan generasi model selanjutnya. |
input_audio_buffer.speech_stopped
Dalam mode VAD, server mengembalikan event ini ketika mendeteksi akhir ucapan dalam buffer audio.
Bersamaan dengan itu, server juga mengembalikan event conversation.item.created untuk membuat item pesan pengguna yang sesuai.
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 Jenis event. 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 Jenis event. 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 Jenis event. Selalu input_audio_buffer.cleared. |
conversation.item.created
Event ini dikembalikan ketika 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 Jenis event. Selalu conversation.item.created. |
item object Item yang akan ditambahkan ke percakapan. Properties id string ID unik item percakapan. object string Selalu realtime.item. status string Status item percakapan. role string Peran pesan tersebut. content string Konten pesan tersebut. |
conversation.item.input_audio_transcription.completed
Event ini menyediakan hasil transkripsi yang dihasilkan setelah audio pengguna dibuffer. Transkripsi diproses oleh model pengenalan ucapan terpisah, yang saat ini diatur ke 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 Jenis event. Selalu conversation.item.input_audio_transcription.completed. |
item_id string ID item pesan pengguna. |
content_index integer Nilainya saat ini tetap 0. |
transcript string Konten teks hasil transkripsi. |
conversation.item.input_audio_transcription.failed
Jika transkripsi audio input diaktifkan dan gagal, server mengembalikan event ini. Event ini independen dari event error untuk membantu klien mengidentifikasi masalah 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 Jenis event. Selalu conversation.item.input_audio_transcription.failed. |
item_id string ID item pesan pengguna. |
content_index integer Nilainya saat ini tetap 0. |
error object Pesan error. Properties code string Kode kesalahan. message string Pesan error. param string Parameter yang terkait dengan error. |
response.created
Server mengembalikan event ini ketika 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": "pcm",
"output": []
}
}
|
type string Jenis event. Selalu response.created. |
response object Objek respons. Properties id string ID unik respons tersebut. conversation_id string ID unik sesi saat ini. object string Jenis objek. Untuk event ini, nilainya selalu realtime.response. status string Status respons tersebut. Nilai yang valid: [completed, failed, in_progress, atau incomplete]. modalities array Modalitas respons tersebut. voice string Timbre audio yang dihasilkan oleh model. output string Saat ini kosong untuk event ini. |
response.done
Setelah respons dihasilkan, server mengembalikan event ini. Objek response dalam event ini 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": "pcm",
"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 Jenis event. Selalu response.done. |
response object Objek respons. Properties id string ID unik respons tersebut. conversation_id string ID unik sesi saat ini. object string Jenis objek. Untuk event ini, nilainya selalu realtime.response. status string Status respons tersebut. modalities array Modalitas respons tersebut. voice string Timbre audio yang dihasilkan oleh model. output object Output dari respons tersebut. Properties id string ID yang sesuai dengan output respons. type string Jenis item output. Nilainya saat ini diatur ke message. object string Jenis objek item output. Nilainya saat ini diatur ke realtime.item. status string Status item output tersebut. role string Peran item output tersebut. content array Konten item output tersebut. Properties type string Jenis konten output. Nilainya text jika output berupa teks biasa, atau audio jika output mencakup audio. text string Konten teks output. transcript string Konten teks yang ditranskripsikan dari audio. usage object Informasi konsumsi token untuk respons ini. |
response.text.delta
Ketika modalitas output hanya mencakup teks dan model secara bertahap menghasilkan teks baru, server mengembalikan event ini.
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 Jenis event. Selalu response.text.delta. |
delta string Teks bertahap yang dikembalikan. |
response_id string ID respons tersebut. |
item_id string ID item pesan. Anda dapat menggunakan ID ini untuk mengaitkan item dari pesan yang sama. |
output_index integer Indeks item output dalam respons. Nilainya saat ini tetap 0. |
content_index integer Indeks bagian konten dalam item output. Nilainya saat ini tetap 0. |
response.text.done
Ketika modalitas output hanya mencakup teks dan model selesai menghasilkan teks, server mengembalikan event ini.
Event ini juga dikembalikan ketika 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 Jenis event. Selalu response.text.done. |
response_id string ID respons tersebut. |
item_id string ID item pesan. |
output_index integer Indeks item output dalam respons. |
content_index integer Indeks bagian konten dalam item output. |
text string Teks lengkap yang dihasilkan oleh model. |
response.audio.delta
Ketika modalitas output mencakup audio dan model secara bertahap menghasilkan data audio baru, server mengembalikan event ini.
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 Jenis event. Selalu response.audio.delta. |
response_id string ID respons tersebut. |
item_id string ID item pesan. |
output_index integer Indeks item output dalam respons. |
content_index integer Indeks bagian konten dalam item output. |
delta string Data audio bertahap yang dihasilkan oleh model, dikodekan dalam Base64. |
response.audio.done
Ketika modalitas output mencakup audio dan model selesai menghasilkan data audio, server mengembalikan event ini.
Event ini juga dikembalikan ketika 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 Jenis event. Selalu response.audio.done. |
response_id string ID respons tersebut. |
item_id string ID item pesan. |
output_index integer Indeks item output dalam respons. |
content_index integer Indeks bagian konten dalam item output. |
response.audio_transcript.delta
Ketika modalitas output mencakup audio dan model secara bertahap menghasilkan teks yang sesuai dengan audio baru, server mengembalikan event response.audio_transcript.delta.
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 anything"
}
|
type string Jenis event. Selalu response.audio_transcript.delta. |
response_id string ID respons tersebut. |
item_id string ID item pesan. |
output_index integer Indeks item output dalam respons. |
content_index integer Indeks bagian konten dalam item output. |
delta string Teks bertahap. |
response.audio_transcript.done
Ketika modalitas output mencakup audio dan model selesai mentranskripsikan audio, server mengembalikan event response.audio_transcript.done.
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 Jenis event. Selalu response.audio_transcript.done. |
response_id string ID respons tersebut. |
item_id string ID item pesan. |
output_index integer Indeks item output dalam respons. |
content_index integer Indeks bagian konten dalam item output. |
transcript string Teks lengkap. |
response.output_item.added
Server mengembalikan event ini ketika 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 Jenis event. Selalu response.output_item.added. |
response_id string ID respons tersebut. |
output_index integer Indeks item output dalam respons. |
item object Informasi mengenai item output. Properties id string ID unik item output. object string Selalu realtime.item. status string Status item output tersebut. role string Peran pengirim pesan. content string Konten pesan tersebut. |
response.output_item.done
Server mengembalikan event ini ketika 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 Jenis event. Selalu response.output_item.done. |
response_id string ID respons tersebut. |
output_index integer Indeks item output dalam respons. |
item object Informasi mengenai item output. Properties id string ID unik item output. object string Selalu realtime.item. status string Status item output tersebut. role string Peran pengirim pesan. content string Konten pesan tersebut. |
response.content_part.added
Server mengembalikan event ini ketika 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 Jenis event. Selalu response.content_part.added. |
response_id string ID respons tersebut. |
item_id string ID item pesan. |
output_index integer Indeks item output dalam respons. Nilainya saat ini tetap 0. |
content_index integer Indeks bagian konten dalam item output. Nilainya saat ini tetap 0. |
part object Informasi mengenai bagian konten. Properties type string Jenis bagian konten. text string Teks bagian konten tersebut. |
response.content_part.done
Server mengembalikan event ini ketika 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 Jenis event. Selalu response.content_part.done. |
response_id string ID respons tersebut. |
item_id string ID item pesan. |
output_index integer Indeks item output dalam respons. Nilainya saat ini tetap 0. |
content_index integer Indeks bagian konten dalam array konten item. Nilainya saat ini tetap 0. |
part object Informasi yang dikembalikan. Properties type string Jenis bagian konten. text string Teks bagian konten tersebut. |