Topik ini menjelaskan event klien yang dikirim oleh klien ke server melalui WebSocket dalam layanan pengenalan ucapan real-time Qwen-Audio-ASR-Streaming, termasuk struktur data dan definisi bidang untuk run-task (memulai tugas), dan finish-task (mengakhiri tugas).
run-task
Memulai tugas pengenalan ucapan dan menetapkan parameter seperti model, format audio, dan laju sampel.
Kapan mengirim: Kirim segera setelah koneksi WebSocket terbentuk.
Event respons: Anda hanya dapat mengirim audio setelah server mengembalikan event task-started.
headerobject(Wajib)
Properti action string(Wajib)Jenis perintah. Tetapkan ke run-task.task_idstring(Wajib)ID tugas yang dihasilkan klien (format UUID) yang menghubungkan event berikutnya dengan tugas ini.streamingstring(Wajib)Tetapkan ke duplex.object(Wajib)
Properti task_group string(Wajib)Grup tugas. Tetapkan ke audio.taskstring(Wajib)Jenis tugas. Tetapkan ke asr.functionstring(Wajib)Jenis fungsi. Tetapkan ke recognition.modelstring(Wajib)Nama model.inputobject(Wajib)Objek input. Berikan {} jika tidak ada konteks yang disediakan.
Properti context array(object)(Opsional)Konteks percakapan meningkatkan akurasi pengenalan untuk kosakata spesifik domain. Untuk detail penggunaan, lihat Peningkatan konteks.
Properti role string(Wajib)Peran pesan. Nilai yang valid:
array(object)(Wajib)Daftar konten pesan.
Properti type string(Wajib)Jenis konten. Nilai yang valid:
string(Wajib)Isi teks. Saat type bernilai input_text, masukkan hasil pengenalan dari giliran ucapan pengguna sebelumnya atau daftar kata spesifik domain. Saat type bernilai text, masukkan tanggapan dari model bahasa besar pada giliran sebelumnya.object(Wajib)Parameter pengenalan ucapan.
Properti keep_dialect boolean (Opsional)Hanya berlaku untuk qwen-audio-3.1-asr-flash-streaming.false, yang mentranskripsikan dialek menjadi bahasa Mandarin standar. Tetapkan ke true untuk mempertahankan ungkapan dialek.vad_model string (Opsional)Hanya berlaku untuk qwen-audio-3.1-asr-flash-streaming.near_meeting_16k (jarak dekat) atau far_field_meeting_16k (jarak jauh, default).formatstring(Wajib)Format audio.Nilai yang valid:
integer(Wajib)Laju sampel dalam Hz. Semua laju sampel didukung.vocabulary_idstring(Opsional)ID daftar kata kunci yang telah dikompilasi sebelumnya.Hasilkan ID ini terlebih dahulu dengan memanggil API pembuatan daftar kata kunci. Berikan ID tersebut selama pengenalan untuk menggunakan kata kunci dalam daftar.Cocok untuk skenario di mana kosakata diketahui dan relatif stabil, serta Anda perlu menggunakan kembali daftar kata yang sama di berbagai permintaan.Untuk detail penggunaan, lihat Kata kunci yang telah dikompilasi.vocabularyobject(Opsional)Kata kunci instan.Diberikan sebagai pasangan kunci-nilai, di mana kunci adalah teks kata kunci (string) dan nilai adalah bobot kata kunci (integer). Tidak perlu membuat daftar kata kunci terlebih dahulu. Bobot berkisar antara [1, 5] atau ditetapkan ke 50: nilai dalam [1, 5] membuat model lebih cenderung mengeluarkan kata tersebut seiring peningkatan nilainya; nilai 50 menunjukkan kata kunci super, yang sangat meningkatkan recall, tetapi jumlah kata kunci super tidak boleh melebihi 50.Cocok untuk optimasi kata kunci sementara tingkat sesi.Jika dikonfigurasi bersama kata kunci yang telah dikompilasi, hanya kata kunci instan yang berlaku. Untuk detail penggunaannya, lihat tautan tersebut.language_hintsarray[string](Opsional)Bahasa audio yang akan dikenali. Tidak ada nilai default; jika tidak ditetapkan, model akan mendeteksi bahasa secara otomatis.Anda dapat menetapkan hingga 4 nilai. Jika lebih, hanya 4 nilai pertama yang berlaku.
Klik untuk melihat kode bahasa yang didukung
boolean(Opsional)Apakah segmentasi semantik diaktifkan.Nilai default: false.
integer(Opsional)Ambang batas diam VAD untuk segmentasi, dalam ms. Ketika keheningan setelah segmen ucapan melebihi ambang batas ini, sistem menentukan bahwa kalimat telah berakhir. Saat semantic_punctuation_enabled diatur ke true, parameter ini tidak digunakan sebagai kriteria untuk mengembalikan sentence_end, tetapi pengaturannya terlalu rendah dapat memengaruhi kinerja pengenalan.Nilai default: 1300.Nilai yang valid: [200, 6000].multi_threshold_mode_enabledboolean(Opsional)Apakah mode multi-ambang batas diaktifkan. Saat diaktifkan, ini mencegah segmen VAD menjadi terlalu panjang.Nilai default: false.heartbeatboolean(Opsional)Apakah paket heartbeat diaktifkan.Nilai default: false.
float(Opsional)Ambang batas untuk membedakan ucapan dari kebisingan, digunakan untuk menyesuaikan sensitivitas Voice Activity Detection (VAD).Nilai yang valid: [-1.0, 1.0].Deskripsi nilai:
string(Opsional)Menentukan kata sensitif yang akan diproses selama pengenalan ucapan serta mendukung pengaturan metode pemrosesan berbeda untuk setiap kata sensitif. Untuk detailnya, lihat Penyaringan kata sensitif. |
continue-task
Memperbarui konteks percakapan selama eksekusi tugas untuk meningkatkan pengenalan.
Kapan mengirim: Kirim selama eksekusi tugas saat Anda perlu memperbarui konteks percakapan.
headerobject(Wajib)
Properti action string(Wajib)Jenis perintah. Tetapkan ke continue-task.task_idstring(Wajib)ID tugas yang dihasilkan klien (dalam format UUID) harus sesuai dengan task_id dalam event run-task.streamingstring(Wajib)Tetapkan ke duplex.object(Wajib)
Properti input object(Wajib)Objek input.
Properti context _array(object)_ (Opsional) Konteks percakapan yang meningkatkan akurasi pengenalan terhadap kosakata spesifik domain. Untuk detail penggunaan, lihat Quick start.Propertiuser: Hasil pengenalan dari giliran ucapan pengguna sebelumnya atau daftar kata spesifik domain.assistant: Tanggapan dari model bahasa besar pada giliran sebelumnya.content array(object) (Wajib) Daftar isi pesan.input_text: Hasil pengenalan dari giliran ucapan pengguna sebelumnya atau daftar kata spesifik domain (digunakan saat role adalah user). Anda juga harus menyediakan bidang text.text: Tanggapan dari model bahasa besar pada giliran sebelumnya (digunakan saat role adalah assistant). Anda juga harus menyediakan bidang text.text string (Wajib) Isi teks. Saat type bernilai input_text, masukkan hasil pengenalan dari giliran ucapan pengguna sebelumnya atau daftar kata spesifik domain. Saat type bernilai text, masukkan tanggapan dari model bahasa besar pada giliran sebelumnya. |
finish-task
Memberi tahu server bahwa semua audio telah dikirim dan meminta untuk mengakhiri tugas.
Kapan mengirim: Kirim setelah semua data audio dikirim.
Event respons: Server mengembalikan event task-finished.
headerobject(Wajib)
Properti action string(Wajib)Jenis perintah. Tetapkan ke finish-task.task_idstring(Wajib)ID tugas yang dihasilkan klien (format UUID) dan harus sesuai dengan task_id dalam event run-task.streamingstring(Wajib)Tetapkan ke duplex.object(Wajib)
Properti input object(Wajib)Tetapkan ke {}. |