Panduan ini memandu Anda melalui SDK iOS pengenalan ucapan non-real-time Qwen-Audio-3.x-ASR-Flash-Filetrans/Fun-ASR, sehingga Anda dapat mengonversi audio menjadi teks.
Mulai cepat
- Dapatkan Kunci API:Dapatkan kunci API
-
Unduh SDK dan jalankan kode contoh:
- Unduh bundel SDK terbaru.
- Ekstrak paket ZIP dan tambahkan nuisdk.framework yang disertakan ke proyek Anda.
- Di bawah Build Phases → Link Binary With Libraries, tambahkan
nuisdk.xcframework. - Di bawah General → Frameworks, Libraries, and Embedded Content, atur
nuisdk.xcframeworkke Embed & Sign. - Buka proyek contoh di Xcode. Kode contoh terletak di
DashFunAsrFileTranscriberViewController.m. Ganti API Key untuk mencoba fitur tersebut.
Langkah panggilan
- Mode sinkron
- Mode asinkron
- Inisialisasi SDK.
- Konfigurasikan parameter yang relevan untuk kasus penggunaan Anda.
- Atur
async_requestkefalsedan panggil nui_file_trans_start untuk mengirimkan permintaan pengenalan ucapan non-real-time dan menunggu hasilnya. - Pada callback onFileTransEventCallback, dengarkan event
EVENT_FILE_TRANS_RESULTuntuk mendapatkan hasil pengenalan akhir. - Panggil nui_release untuk melepaskan sumber daya SDK.
Parameter permintaan
Parameter koneksi dan kontrol
Konfigurasikan parameter ini dengan meneruskan string JSON dalam argumen parameters dari antarmuka nui_initialize.
- Contoh parameter: Berikut ini adalah contoh string JSON. Tidak semua parameter dicantumkan. Tambahkan yang Anda butuhkan saat menulis kode:
-
Deskripsi parameter
Parameter
Tipe
Wajib
Deskripsi
urlStringYa
Endpoint layanan:
wss://dashscope.aliyuncs.com/api/v1/services/audio/asr/transcription- Tiongkok (Beijing):
wss://{WorkspaceId}.cn-beijing.maas.aliyuncs.com/api/v1/services/audio/asr/transcription - Singapura:
wss://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1/services/audio/asr/transcription
Ganti
{WorkspaceId}dengan ID Workspace Anda yang sebenarnya.apikeyStringYa
Kunci API.
service_modeStringYa
Mode eksekusi. Diatur tetap ke
"1"untuk pengenalan suara non-real-time.device_idStringYa
String unik yang mengidentifikasi pengguna akhir. Atur ke ID pengguna dalam aplikasi atau pengenal perangkat yang dihasilkan oleh klien. ID ini terutama digunakan untuk pelacakan log dan pemecahan masalah.
debug_pathStringTidak
Jalur penyimpanan untuk file log.
Parameter ini hanya berlaku ketika
save_logdiatur keYESsaat Anda memanggil antarmuka nui_initialize. Dalam hal ini, Anda harus mengatur jalur file log; jika tidak, error akan dikembalikan.Maksimal dua file log disimpan secara lokal.
max_log_file_sizeintTidak
Ukuran maksimum file log, dalam byte.
Parameter ini hanya berlaku ketika
save_logdiatur keYESsaat Anda memanggil antarmuka nui_initialize.Nilai default: 104857600 (100 * 1024 * 1024 byte, yaitu, 100 MiB).
log_track_levelintTidak
Mengontrol tingkat filter konten log yang dikirim melalui callback log (onFileTransLogTrackCallback).
Nilai default: 2.
Nilai yang valid:
0: LOG_LEVEL_VERBOSE
1: LOG_LEVEL_DEBUG
2: LOG_LEVEL_INFO
3: LOG_LEVEL_WARNING
4: LOG_LEVEL_ERROR
5: LOG_LEVEL_NONE (menonaktifkan fitur ini)
Catatan:
log_track_leveldanlevel(diatur melalui antarmuka nui_initialize) bersama-sama menentukan log mana yang akhirnya dikirim ke callback. Nilai tingkat log harus lebih besar dari atau sama denganlog_track_leveldanlevelsebelum dikirim ke callback. Misalnya, jikalog_track_leveldiatur ke 2 (INFO) danleveldiatur ke 3 (WARNING), hanya log pada tingkat WARNING atau lebih tinggi (nilai >= 3) yang dikirim ke callback.
Parameter efek pengenalan suara
Konfigurasikan semua parameter pengenalan suara melalui antarmuka nui_file_trans_start.
- Contoh parameter: Berikut ini adalah contoh string JSON. Tidak semua parameter dicantumkan. Tambahkan yang Anda butuhkan saat menulis kode:
-
Deskripsi parameter
Parameter Tipe Wajib Deskripsi file_urlsarray[string]Ya Daftar URL file audio atau video yang akan ditranskripsikan. HTTP dan HTTPS didukung. Satu permintaan hanya mendukung satu URL. Untuk persyaratan input seperti format audio yang didukung, batas ukuran file, dan batas durasi, lihat Spesifikasi audio.Jika rekaman disimpan di Alibaba Cloud OSS, API RESTful mendukung URL sementara dengan awalan oss://, sedangkan SDK tidak mendukung URL sementara dengan awalanoss://.async_requestbooleanTidak Apakah permintaan pengenalan suara bersifat asinkron.Nilai default: false.Nilai yang valid:- true: permintaan asinkron
- false: permintaan sinkron
apikeystringTidak Jika apikeydi Parameter koneksi dan kontrol adalah API Key sementara, Anda dapat memperbaruinya di sini untuk mencegah kedaluwarsa.nls_configobjectYa Objek konfigurasi pengenalan suara inti. Ini berisi parameter kunci seperti pemilihan model dan kontrol efek pengenalan. nls_config.modelstringYa Model yang digunakan dalam contoh. Untuk informasi model, lihat Model dan wilayah yang didukung. nls_config.special_word_filterobjectTidak Kata sensitif yang akan diproses selama pengenalan suara. Anda dapat mengatur metode penanganan yang berbeda untuk setiap kata sensitif. Untuk detailnya, lihat Pemfilteran kata sensitif. nls_config.channel_idarray[integer]Tidak Indeks trek audio yang akan dikenali dalam file audio multi-trek. Indeks dimulai dari 0. Misalnya, [0] mengenali trek pertama, dan [0, 1] mengenali trek pertama dan kedua secara bersamaan. Jika Anda menghilangkan parameter ini, hanya trek pertama yang diproses.Nilai default: [0]. nls_config.diarization_enabledbooleanTidak Apakah akan mengaktifkan diarization pembicara. Dinonaktifkan secara default.Hanya berlaku untuk audio mono. Audio multi-saluran tidak mendukung diarization pembicara.Saat diaktifkan, hasil pengenalan menyertakan bidang speaker_idyang membedakan pembicara yang berbeda.Nilai default: false.Untuk contohSaat diarization pembicara diaktifkan, pertahankan durasi audio dalam 2 jam. Jika tidak, pengenalan mungkin gagal atau habis waktu.speaker_id, lihat Deskripsi hasil pengenalan.nls_config.speaker_countintegerTidak Nilai referensi untuk jumlah pembicara. Rentang yang valid adalah bilangan bulat dari 2 hingga 100 (inklusif).Secara default, jumlah pembicara dideteksi secara otomatis. Jika Anda mengatur nilai ini, ini hanya memandu algoritme untuk menghasilkan jumlah yang ditentukan jika memungkinkan dan tidak menjamin jumlah yang tepat tersebut.Tidak ada nilai default. nls_config.vocabulary_idstringTidak ID dari daftar hotword yang telah dikompilasi sebelumnya.Hasilkan ID ini terlebih dahulu dengan memanggil API buat daftar hotword. Teruskan ID selama pengenalan untuk menggunakan hotword dalam daftar.Cocok untuk skenario di mana kosakata diketahui dan relatif stabil, dan di mana Anda perlu menggunakan kembali daftar kata yang sama di berbagai permintaan.Untuk detail penggunaan, lihat Hotword yang telah dikompilasi sebelumnya. nls_config.input_contextarrayTidak Daftar pesan yang berisi konteks percakapan opsional untuk meningkatkan akurasi pengenalan. nls_config.instant_vocabularyobjectTidak Hotword instan, diteruskan sebagai pasangan kunci-nilai. Setiap kunci adalah teks hotword ( string), dan setiap nilai adalah bobotnya (integer). Tidak diperlukan daftar hotword yang telah dikompilasi sebelumnya. Gunakan parameter ini untuk hotword sementara tingkat sesi.Bobot yang valid adalah bilangan bulat dari 1 hingga 5, atau 50. Bobot yang lebih tinggi dari 1 hingga 5 membuat model lebih mungkin menghasilkan hotword. Bobot 50 mendefinisikan super hotword dan secara signifikan meningkatkan recall. Anda dapat menentukan hingga 50 super hotword.Jika Anda juga mengonfigurasi hotword yang telah dikompilasi sebelumnya, kedua set akan digabungkan. Jika set yang digabungkan melebihi 2000 hotword, 2000 akan dipilih secara acak. Untuk penggunaan, lihat Hotword instan.nls_config.language_hintsarray[string]Tidak Kode bahasa yang akan dikenali. Jika Anda tidak dapat menentukan bahasa terlebih dahulu, biarkan tidak diatur dan model akan mendeteksi bahasa secara otomatis.Untuk model Qwen-Audio-3.x-ASR-Flash-Filetrans, Anda dapat mengatur hingga 4 nilai; nilai apa pun setelah 4 pertama akan diabaikan. Untuk model Fun-ASR, Anda hanya dapat mengatur 1 nilai; jika Anda mengatur beberapa, hanya yang pertama yang berlaku. Klik untuk melihat kode bahasa yang didukung
-
Qwen-Audio-3.x-ASR-Flash-Filetrans, fun-asr, fun-asr-2025-11-07, fun-asr-mtl, fun-asr-mtl-2025-08-25:
- zh: Tiongkok
- en: Inggris
- ja: Jepang
- ko: Korea
- vi: Vietnam
- th: Thai
- id: Indonesia
- ms: Melayu
- tl: Filipino
- hi: Hindi
- ar: Arab
- fr: Prancis
- de: Jerman
- es: Spanyol
- pt: Portugis
- ru: Rusia
- it: Italia
- nl: Belanda
- sv: Swedia
- da: Denmark
- fi: Finlandia
- no: Norwegia
- el: Yunani
- pl: Polandia
- cs: Ceko
- hu: Hungaria
- ro: Rumania
- bg: Bulgaria
- hr: Kroasia
- sk: Slovakia
-
fun-asr-2025-08-25:
- zh: Tiongkok
- en: Inggris
Antarmuka utama
NeoNui
nui_initialize
Menginisialisasi instance SDK pengenalan ucapan. SDK ini adalah singleton. Jangan menginisialisasinya lagi sebelum Anda memanggil nui_release.
- Signature metode
-
Deskripsi parameter
Parameter
Tipe
Deskripsi
parameterschar*String JSON yang berisi parameter autentikasi, koneksi, dan debugging. Lihat Parameter koneksi dan kontrol.
levelNuiSdkLogLevelMengontrol tingkat pencetakan log SDK itu sendiri.
save_logBOOLApakah akan menyimpan log secara lokal. Jika diatur ke
YES, Anda harus menentukan jalur melaluidebug_pathdi Parameter koneksi dan kontrol, dan Anda dapat mengatur ukuran file melaluimax_log_file_size. - Nilai kembalian
nui_set_params
Gunakan antarmuka ini untuk mengatur atau memperbarui parameter nls_config secara independen. Jika Anda menyediakan semua parameter sekaligus di nui_file_trans_start, Anda tidak perlu memanggil metode ini.
- Signature metode
-
Deskripsi parameter
Parameter Tipe Deskripsi paramschar*Parameter nls_configdi Parameter efek pengenalan ucapan. Parameter selainnls_configtidak dapat diatur melalui metode ini.Contoh: - Nilai kembalian
nui_file_trans_start
Memulai pengenalan.
- Signature metode
-
Deskripsi parameter
Parameter Tipe Deskripsi paramschar*Parameter efek pengenalan suara.Contoh: task_idchar*ID tugas. SDK menghasilkan string acak secara internal dan mengembalikan task_id ketika antarmuka ini berhasil dipanggil. - Nilai kembalian
nui_file_trans_query
Gunakan antarmuka ini untuk secara aktif mengkueri status dan hasil saat ini dari tugas asinkron. Setelah panggilan berhasil, hasil dikembalikan melalui event EVENT_FILE_TRANS_QUERY_RESULT di callback onFileTransEventCallback.
task_id yang diteruskan ke metode ini dari event EVENT_FILE_TRANS_UPLOADED.- Signature metode
-
Deskripsi parameter
Parameter
Tipe
Deskripsi
task_idchar*ID tugas yang akan dikueri, diperoleh dari event
EVENT_FILE_TRANS_UPLOADED. - Nilai kembalian
nui_file_trans_cancel
Membatalkan tugas saat ini secara langsung.
- Signature metode
-
Deskripsi parameter
Parameter
Tipe
Deskripsi
task_idchar*ID tugas yang akan dibatalkan, diperoleh dari event
EVENT_FILE_TRANS_UPLOADED. - Nilai kembalian
nui_release
Melepaskan semua sumber daya internal SDK dan menghentikan paksa semua tugas yang sedang berlangsung. Setelah Anda memanggil metode ini, instance SDK menjadi tidak tersedia. Untuk menggunakannya lagi, Anda harus memanggil nui_initialize lagi untuk menginisialisasinya.
- Signature metode
- Nilai kembalian
nui_get_version
Mendapatkan informasi versi SDK saat ini.
- Signature metode
- Nilai kembalian Informasi versi SDK saat ini.
NeoNuiSdkDelegate: pantau callback
onFileTransEventCallback: pantau event dan hasil pengenalan suara
- Signature metode
-
Deskripsi parameter
Parameter
Tipe
Deskripsi
nuiEventEvent callback.
asr_resultchar*Hasil pengenalan ucapan.
task_idchar*ID tugas.
finishBOOLMenunjukkan apakah putaran pengenalan ini telah selesai.
codeintHanya valid saat event
EVENT_ASR_ERRORterjadi.
onFileTransLogTrackCallback: pantau log pelacakan
Gunakan callback ini untuk menerima log internal SDK yang terperinci untuk pemecahan masalah dan debugging.
NuiCallbackEvent: tipe event
Event | Deskripsi |
|---|---|
EVENT_FILE_TRANS_CONNECTED | Berhasil terhubung ke layanan. |
EVENT_FILE_TRANS_UPLOADED | File audio yang akan dikenali berhasil diunggah. Anda sekarang dapat memperoleh |
EVENT_FILE_TRANS_QUERY_RESULT | Hasil tugas kueri. |
EVENT_FILE_TRANS_RESULT | Hasil pengenalan akhir. |
EVENT_ASR_ERROR | Terjadi error selama pengenalan ucapan. |