All Products
Search
Document Center

Alibaba Cloud Model Studio:API WebSocket sintesis suara CosyVoice

Last Updated:Jul 03, 2026

Gunakan koneksi WebSocket untuk mengakses layanan sintesis suara real-time CosyVoice. Referensi ini mencakup alur kerja interaksi, titik akhir layanan, dan header permintaan.

SDK DashScope saat ini hanya mendukung Java dan Python. Untuk bahasa pemrograman lainnya, gunakan koneksi WebSocket untuk berkomunikasi dengan layanan.

Panduan pengguna: Untuk detail model dan rekomendasi pemilihan, lihat Sintesis suara.

Titik akhir layanan

Layanan menggunakan URL WebSocket tetap:

Singapore

wss://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api-ws/v1/inference

Ganti {WorkspaceId} dengan workspace ID Anda yang sebenarnya.

China (Beijing)

wss://{WorkspaceId}.cn-beijing.maas.aliyuncs.com/api-ws/v1/inference

Ganti {WorkspaceId} dengan workspace ID Anda yang sebenarnya.

Penting

Selalu gunakan protokol wss://. URL yang ditampilkan di atas bersifat tetap. Untuk detail otorisasi, lihat Header permintaan.

Penting

Alibaba Cloud Model Studio telah merilis domain khusus workspace untuk wilayah China (Beijing) dan Singapura. Domain khusus baru ini memberikan performa lebih unggul dan stabilitas lebih tinggi untuk permintaan inferensi. Kami merekomendasikan migrasi ke domain baru:

  • China (Beijing): dari dashscope.aliyuncs.com ke {WorkspaceId}.cn-beijing.maas.aliyuncs.com

  • Singapura: dari dashscope-intl.aliyuncs.com ke {WorkspaceId}.ap-southeast-1.maas.aliyuncs.com

Ganti {WorkspaceId} dengan Workspace ID Anda yang sebenarnya. Domain lama tetap berfungsi sepenuhnya.

Header permintaan

Sertakan header berikut dalam permintaan:

Parameter

Tipe

Wajib

Deskripsi

Authorization

string

Ya

Token autentikasi dalam format Bearer <API key>. Ganti <API key> dengan Kunci API Anda yang sebenarnya.

user-agent

string

Tidak

Identifikasi klien untuk pelacakan permintaan di sisi server.

X-DashScope-WorkSpace

string

Tidak

Workspace ID Alibaba Cloud Model Studio.

X-DashScope-DataInspection

string

Tidak

Apakah akan mengaktifkan inspeksi data. Nilai default-nya adalah enable jika tidak ditentukan. Kecuali diperlukan, biarkan header ini tidak disetel.

Penting

Otorisasi diverifikasi selama handshake WebSocket. Jika Kunci API tidak valid atau tidak ada, handshake gagal dengan error HTTP 401/403.

Alur kerja interaksi

Untuk detail tentang event di sisi klien dan sisi server, lihat Event klien dan Server-side events.

Klien dan server berinteraksi dalam urutan berikut:

  1. Membuat koneksi: Klien membuat koneksi WebSocket dengan server.

  2. Memulai tugas: Klien mengirim event run-task untuk memulai sebuah tugas.

  3. Menunggu konfirmasi: Klien menerima event task-started dari server, yang menandakan tugas telah dimulai dan langkah-langkah berikutnya dapat dilanjutkan.

  4. Mengirim teks untuk sintesis:

    Klien mengirim satu atau beberapa event continue-task yang berisi teks untuk disintesis, secara berurutan. Setelah menerima kalimat lengkap, server mengembalikan event result-generated beserta aliran audio. Untuk batasan panjang teks, lihat bidang text dalam event continue-task.

    Catatan

    Anda dapat mengirim beberapa event continue-task. Kirim segmen teks secara berurutan. Server secara otomatis membagi teks yang diterima menjadi kalimat:

    • Kalimat lengkap langsung disintesis, dan klien menerima audio dari server.

    • Kalimat yang belum lengkap dibuffer hingga menjadi lengkap. Server tidak mengembalikan audio untuk kalimat yang belum lengkap.

    Saat Anda mengirim event finish-task, server melakukan sintesis paksa terhadap semua konten yang telah dibuffer.

  5. Menerima audio: Terima aliran audio melalui saluran binary.

  6. Memberi tahu server untuk mengakhiri tugas:

    Setelah mengirim seluruh teks, klien mengirim event finish-task dan terus menerima aliran audio. Langkah ini wajib; melewatkannya dapat menyebabkan audio tidak lengkap.

  7. Menerima event penyelesaian tugas:

    Klien menerima event task-finished dari server, yang menandakan tugas telah selesai.

  8. Menutup koneksi: Klien menutup koneksi WebSocket.

Gunakan kembali koneksi WebSocket untuk beberapa tugas, alih-alih membuat koneksi baru untuk setiap tugas.

Penting

Dalam satu tugas sintesis, event run-task, semua continue-task, dan finish-task harus menggunakan task_id yang sama. Hasilkan task_id baru (misalnya, UUID) untuk setiap tugas baru. Penggunaan nilai task_id yang berbeda dapat menyebabkan korupsi audio atau kegagalan tugas.