全部产品
Search
文档中心

Alibaba Cloud Model Studio:Sintesis suara - Qwen

更新时间:Jan 06, 2026

Model sintesis suara Qwen menyediakan berbagai pilihan suara yang menyerupai manusia. Suara-suara tersebut mendukung berbagai bahasa dan dialek, serta dapat menghasilkan konten multibahasa dalam satu suara. Model ini secara otomatis menyesuaikan intonasi dan memproses teks kompleks dengan lancar.

Model yang didukung

Kami merekomendasikan Qwen3-TTS-Flash.

Qwen3-TTS-Flash menyediakan 49 suara dan mendukung berbagai bahasa serta dialek.

Qwen-TTS menyediakan hingga 7 suara dan hanya mendukung bahasa Tiongkok dan Inggris.

Internasional

Dalam mode penyebaran internasional, titik akhir dan penyimpanan data berlokasi di wilayah Singapura. Sumber daya komputasi inferensi dijadwalkan secara dinamis di seluruh dunia, tidak termasuk Daratan Tiongkok.

Model name

Version

Price

Maximum input characters

Supported languages

Free quota (Catatan)

qwen3-tts-flash

Kemampuan yang sama dengan qwen3-tts-flash-2025-09-18.

Stable

$0,10 per 10.000 karakter

600

Tiongkok (Mandarin, Beijing, Shanghai, Sichuan, Nanjing, Shaanxi, Minnan, Tianjin, Kanton), Inggris, Spanyol, Rusia, Italia, Prancis, Korea, Jepang, Jerman, Portugis

2.000 karakter jika Anda mengaktifkan Alibaba Cloud Model Studio sebelum pukul 00.00 pada 13 November 2025.

10.000 karakter jika Anda mengaktifkan Alibaba Cloud Model Studio pada atau setelah pukul 00.00 pada 13 November 2025.

Kuota berlaku selama 90 hari setelah Anda mengaktifkan Alibaba Cloud Model Studio.

qwen3-tts-flash-2025-11-27

Snapshot

10.000 karakter

Kuota berlaku selama 90 hari setelah Anda mengaktifkan Alibaba Cloud Model Studio.

qwen3-tts-flash-2025-09-18

Snapshot

2.000 karakter jika Anda mengaktifkan Alibaba Cloud Model Studio sebelum pukul 00.00 pada 13 November 2025.

10.000 karakter jika Anda mengaktifkan Alibaba Cloud Model Studio pada atau setelah pukul 00.00 pada 13 November 2025.

Kuota berlaku selama 90 hari setelah Anda mengaktifkan Alibaba Cloud Model Studio.

Penagihan didasarkan pada jumlah karakter input. Aturan perhitungannya sebagai berikut:

  • Setiap karakter Tiongkok, termasuk Hanzi Tiongkok sederhana dan tradisional, Kanji Jepang, serta Hanja Korea, dihitung sebagai 2 karakter.

  • Karakter lainnya, seperti huruf Latin, tanda baca, atau spasi, dihitung sebagai 1 karakter.

Daratan Tiongkok

Dalam mode penyebaran Daratan Tiongkok, titik akhir dan penyimpanan data berlokasi di wilayah Tiongkok (Beijing), dan sumber daya komputasi inferensi dibatasi hanya di Daratan Tiongkok.

Qwen3-TTS-Flash

Model name

Version

Price

Max input characters

Supported languages

Free quota (Catatan)

qwen3-tts-flash

Kemampuan yang sama dengan qwen3-tts-flash-2025-09-18.

Stable

$0,114682/10.000 karakter

600

Tiongkok (Mandarin, Beijing, Shanghai, Sichuan, Nanjing, Shaanxi, Minnan, Tianjin, Kanton), Inggris, Spanyol, Rusia, Italia, Prancis, Korea, Jepang, Jerman, Portugis

Tidak ada kuota gratis

qwen3-tts-flash-2025-11-27

Snapshot

qwen3-tts-flash-2025-09-18

Snapshot

Penagihan didasarkan pada jumlah karakter input. Aturan perhitungannya sebagai berikut:

  • Setiap karakter Tiongkok, termasuk Hanzi Tiongkok sederhana dan tradisional, Kanji Jepang, serta Hanja Korea, dihitung sebagai 2 karakter.

  • Karakter lainnya, seperti huruf Latin, tanda baca, atau spasi, dihitung sebagai 1 karakter.

Qwen-TTS

Model Name

Version

Context window

Max input

Max output

Input cost

Output cost

Free quota (Catatan)

(Tokens)

(per 1.000 tokens)

qwen-tts

Model ini memiliki kemampuan yang sama dengan qwen-tts-2025-04-10.

Stable

8.192

512

7.680

Rp0,230

$1,434

Tidak ada kuota gratis

qwen-tts-latest

Model ini selalu memiliki kemampuan yang sama dengan versi snapshot terbaru.

Latest

qwen-tts-2025-05-22

Snapshot

qwen-tts-2025-04-10

Audio dikonversi ke token dengan laju 50 token per detik. Klip audio yang durasinya kurang dari 1 detik ditagih sebagai 50 token.

Fitur

Fitur

Qwen3-TTS-Flash

Qwen-TTS

Connection type

Java/Python SDK, RESTful API

Streaming output

Didukung

Streaming input

Tidak didukung

Synthesized audio format

  • wav

  • PCM yang dienkripsi Base64 untuk keluaran streaming

Synthesized audio sample rate

24 kHz

Timestamp

Tidak didukung

Language

Tiongkok (Mandarin, Beijing, Shanghai, Sichuan, Nanjing, Shaanxi, Minnan, Tianjin, Kanton), Inggris, Spanyol, Rusia, Italia, Prancis, Korea, Jepang, Jerman, Portugis. Bervariasi tergantung suara. Untuk informasi lebih lanjut, lihat Suara yang didukung

Tiongkok (Mandarin, Beijing, Shanghai, Sichuan), Inggris. Bervariasi tergantung model dan suara. Untuk informasi lebih lanjut, lihat Suara yang didukung

Voice cloning

Tidak didukung

SSML

Tidak didukung

Memulai

Persiapan

  • Anda telah membuat kunci API dan mengekspor kunci API sebagai variabel lingkungan.

  • Untuk menggunakan SDK DashScope, instal versi terbaru SDK. SDK DashScope Java harus versi 2.21.9 atau lebih baru. SDK DashScope Python harus versi 1.24.6 atau lebih baru.

    Catatan

    Dalam SDK DashScope Python, antarmuka SpeechSynthesizer digantikan oleh MultiModalConversation. Untuk menggunakan antarmuka baru ini, ganti nama antarmukanya. Semua parameter lainnya tetap kompatibel.

Parameter utama

  • text: Menentukan teks yang akan disintesis.

  • voice: Menentukan suara yang akan digunakan.

  • language_type: Bahasa untuk audio hasil sintesis. Nilai yang valid adalah Chinese, English, German, Italian, Portuguese, Spanish, Japanese, Korean, French, Russian, dan Auto (default).

Gunakan url yang dikembalikan untuk mengambil audio hasil sintesis. URL tersebut berlaku selama 24 jam.

Python

# DashScope SDK versi 1.24.6 atau lebih baru
import os
import dashscope

# Ini adalah URL untuk wilayah Singapura. Jika Anda menggunakan model di wilayah Tiongkok (Beijing), ganti URL dengan: https://dashscope.aliyuncs.com/api/v1
dashscope.base_http_api_url = 'https://dashscope-intl.aliyuncs.com/api/v1'

text = "Today is a wonderful day to build something people love!"
# Untuk menggunakan antarmuka SpeechSynthesizer: dashscope.audio.qwen_tts.SpeechSynthesizer.call(...)
response = dashscope.MultiModalConversation.call(
    model="qwen3-tts-flash",
    # Kunci API untuk wilayah Singapura dan Tiongkok (Beijing) berbeda. Untuk mendapatkan kunci API: https://www.alibabacloud.com/help/en/model-studio/get-api-key
    # Jika Anda belum mengonfigurasi variabel lingkungan, ganti baris berikut dengan kunci API Studio Model Anda: api_key = "sk-xxx"
    api_key=os.getenv("DASHSCOPE_API_KEY"),
    text=text,
    voice="Cherry",
    language_type="English", # Kami menyarankan agar nilai ini sesuai dengan bahasa teks untuk memastikan pelafalan yang benar dan intonasi yang alami.
    stream=False
)
print(response)

Java

Anda harus mengimpor dependensi Gson. Jika Anda menggunakan Maven atau Gradle, Anda dapat menambahkan dependensi sebagai berikut:

Maven

Tambahkan konten berikut ke pom.xml:

<!-- https://mvnrepository.com/artifact/com.google.code.gson/gson -->
<dependency>
    <groupId>com.google.code.gson</groupId>
    <artifactId>gson</artifactId>
    <version>2.13.1</version>
</dependency>

Gradle

Tambahkan konten berikut ke build.gradle:

// https://mvnrepository.com/artifact/com.google.code.gson/gson
implementation("com.google.code.gson:gson:2.13.1")
// DashScope SDK versi 2.21.9 atau lebih baru
// Versi 2.20.7 dan lebih baru mendukung suara Dylan, Jada, dan Sunny.
import com.alibaba.dashscope.aigc.multimodalconversation.AudioParameters;
import com.alibaba.dashscope.aigc.multimodalconversation.MultiModalConversation;
import com.alibaba.dashscope.aigc.multimodalconversation.MultiModalConversationParam;
import com.alibaba.dashscope.aigc.multimodalconversation.MultiModalConversationResult;
import com.alibaba.dashscope.exception.ApiException;
import com.alibaba.dashscope.exception.NoApiKeyException;
import com.alibaba.dashscope.exception.UploadFileException;
import com.alibaba.dashscope.protocol.Protocol;
import com.alibaba.dashscope.utils.Constants;

import java.io.FileOutputStream;
import java.io.InputStream;
import java.net.URL;

public class Main {
    private static final String MODEL = "qwen3-tts-flash";
    public static void call() throws ApiException, NoApiKeyException, UploadFileException {
        MultiModalConversation conv = new MultiModalConversation();
        MultiModalConversationParam param = MultiModalConversationParam.builder()
                // Kunci API untuk wilayah Singapura dan Tiongkok (Beijing) berbeda. Untuk mendapatkan kunci API: https://www.alibabacloud.com/help/en/model-studio/get-api-key
                // Jika Anda belum mengonfigurasi variabel lingkungan, ganti baris berikut dengan kunci API Studio Model Anda: .apiKey("sk-xxx")
                .apiKey(System.getenv("DASHSCOPE_API_KEY"))
                .model(MODEL)
                .text("Today is a wonderful day to build something people love!")
                .voice(AudioParameters.Voice.CHERRY)
                .languageType("English") // Kami menyarankan agar nilai ini sesuai dengan bahasa teks untuk memastikan pelafalan yang benar dan intonasi yang alami.
                .build();
        MultiModalConversationResult result = conv.call(param);
        String audioUrl = result.getOutput().getAudio().getUrl();
        System.out.print(audioUrl);

        // Unduh file audio secara lokal
        try (InputStream in = new URL(audioUrl).openStream();
             FileOutputStream out = new FileOutputStream("downloaded_audio.wav")) {
            byte[] buffer = new byte[1024];
            int bytesRead;
            while ((bytesRead = in.read(buffer)) != -1) {
                out.write(buffer, 0, bytesRead);
            }
            System.out.println("\nFile audio telah diunduh ke path lokal: downloaded_audio.wav");
        } catch (Exception e) {
            System.out.println("\nTerjadi error saat mengunduh file audio: " + e.getMessage());
        }
    }
    public static void main(String[] args) {
        // Ini adalah URL untuk wilayah Singapura. Jika Anda menggunakan model di wilayah Tiongkok (Beijing), ganti URL dengan: https://dashscope.aliyuncs.com/api/v1
        Constants.baseHttpApiUrl = "https://dashscope-intl.aliyuncs.com/api/v1";
        try {
            call();
        } catch (ApiException | NoApiKeyException | UploadFileException e) {
            System.out.println(e.getMessage());
        }
        System.exit(0);
    }
}

cURL

# ======= Penting =======
# Ini adalah URL untuk wilayah Singapura. Jika Anda menggunakan model di wilayah Tiongkok (Beijing), ganti URL dengan: https://dashscope.aliyuncs.com/api/v1/services/aigc/multimodal-generation/generation
# Kunci API untuk wilayah Singapura dan Tiongkok (Beijing) berbeda. Untuk mendapatkan kunci API: https://www.alibabacloud.com/help/en/model-studio/get-api-key
# === Hapus komentar ini sebelum eksekusi ===

curl -X POST 'https://dashscope-intl.aliyuncs.com/api/v1/services/aigc/multimodal-generation/generation' \
-H "Authorization: Bearer $DASHSCOPE_API_KEY" \
-H 'Content-Type: application/json' \
-d '{
    "model": "qwen3-tts-flash",
    "input": {
        "text": "Today is a wonderful day to build something people love!",
        "voice": "Cherry",
        "language_type": "English"
    }
}'

Pemutaran real-time

Data audio dialirkan dalam format Base64. Paket terakhir berisi URL untuk file audio lengkap.

Python

# DashScope SDK versi 1.24.6 atau lebih baru
# coding=utf-8
#
# Petunjuk instalasi pyaudio:
# APPLE Mac OS X
#   brew install portaudio
#   pip install pyaudio
# Debian/Ubuntu
#   sudo apt-get install python-pyaudio python3-pyaudio
#   atau
#   pip install pyaudio
# CentOS
#   sudo yum install -y portaudio portaudio-devel && pip install pyaudio
# Microsoft Windows
#   python -m pip install pyaudio

import os
import dashscope
import pyaudio
import time
import base64
import numpy as np

# Ini adalah URL untuk wilayah Singapura. Jika Anda menggunakan model di wilayah Tiongkok (Beijing), ganti URL dengan: https://dashscope.aliyuncs.com/api/v1
dashscope.base_http_api_url = 'https://dashscope-intl.aliyuncs.com/api/v1'

p = pyaudio.PyAudio()
# Buat aliran audio
stream = p.open(format=pyaudio.paInt16,
                channels=1,
                rate=24000,
                output=True)


text = "Today is a wonderful day to build something people love!"
response = dashscope.MultiModalConversation.call(
    # Kunci API untuk wilayah Singapura dan Tiongkok (Beijing) berbeda. Untuk mendapatkan kunci API: https://www.alibabacloud.com/help/en/model-studio/get-api-key
    # Jika Anda belum mengonfigurasi variabel lingkungan, ganti baris berikut dengan kunci API Studio Model Anda: api_key = "sk-xxx"
    api_key=os.getenv("DASHSCOPE_API_KEY"),
    model="qwen3-tts-flash",
    text=text,
    voice="Cherry",
    language_type="English", # Kami menyarankan agar nilai ini sesuai dengan bahasa teks untuk memastikan pelafalan yang benar dan intonasi yang alami.
    stream=True
)

for chunk in response:
    if chunk.output is not None:
      audio = chunk.output.audio
      if audio.data is not None:
          wav_bytes = base64.b64decode(audio.data)
          audio_np = np.frombuffer(wav_bytes, dtype=np.int16)
          # Putar data audio secara langsung
          stream.write(audio_np.tobytes())
      if chunk.output.finish_reason == "stop":
          print("selesai pada: {} ", chunk.output.audio.expires_at)
time.sleep(0.8)
# Bersihkan sumber daya
stream.stop_stream()
stream.close()
p.terminate()

Java

Anda harus mengimpor dependensi Gson. Jika Anda menggunakan Maven atau Gradle, Anda dapat menambahkan dependensi sebagai berikut:

Maven

Tambahkan konten berikut ke pom.xml:

<!-- https://mvnrepository.com/artifact/com.google.code.gson/gson -->
<dependency>
    <groupId>com.google.code.gson</groupId>
    <artifactId>gson</artifactId>
    <version>2.13.1</version>
</dependency>

Gradle

Tambahkan konten berikut ke build.gradle:

// https://mvnrepository.com/artifact/com.google.code.gson/gson
implementation("com.google.code.gson:gson:2.13.1")
// Instal versi terbaru SDK DashScope
// Versi 2.20.7 dan lebih baru mendukung suara Dylan, Jada, dan Sunny.
import com.alibaba.dashscope.aigc.multimodalconversation.AudioParameters;
import com.alibaba.dashscope.aigc.multimodalconversation.MultiModalConversation;
import com.alibaba.dashscope.aigc.multimodalconversation.MultiModalConversationParam;
import com.alibaba.dashscope.aigc.multimodalconversation.MultiModalConversationResult;
import com.alibaba.dashscope.exception.ApiException;
import com.alibaba.dashscope.exception.NoApiKeyException;
import com.alibaba.dashscope.exception.UploadFileException;
import com.alibaba.dashscope.protocol.Protocol;
import com.alibaba.dashscope.utils.Constants;
import io.reactivex.Flowable;
import javax.sound.sampled.*;
import java.util.Base64;

public class Main {
    private static final String MODEL = "qwen3-tts-flash";
    public static void streamCall() throws ApiException, NoApiKeyException, UploadFileException {
        MultiModalConversation conv = new MultiModalConversation();
        MultiModalConversationParam param = MultiModalConversationParam.builder()
                // Kunci API untuk wilayah Singapura dan Tiongkok (Beijing) berbeda. Untuk mendapatkan kunci API: https://www.alibabacloud.com/help/en/model-studio/get-api-key
                // Jika Anda belum mengonfigurasi variabel lingkungan, ganti baris berikut dengan kunci API Studio Model Anda: .apiKey("sk-xxx")
                .apiKey(System.getenv("DASHSCOPE_API_KEY"))
                .model(MODEL)
                .text("Today is a wonderful day to build something people love!")
                .voice(AudioParameters.Voice.CHERRY)
                .languageType("English") // Kami menyarankan agar nilai ini sesuai dengan bahasa teks untuk memastikan pelafalan yang benar dan intonasi yang alami.
                .build();
        Flowable<MultiModalConversationResult> result = conv.streamCall(param);
        result.blockingForEach(r -> {
            try {
                // 1. Ambil data audio yang dienkripsi Base64
                String base64Data = r.getOutput().getAudio().getData();
                byte[] audioBytes = Base64.getDecoder().decode(base64Data);

                // 2. Konfigurasikan format audio (sesuaikan berdasarkan format yang dikembalikan oleh API)
                AudioFormat format = new AudioFormat(
                        AudioFormat.Encoding.PCM_SIGNED,
                        24000, // Laju sampel (harus sesuai dengan format yang dikembalikan oleh API)
                        16,    // Kedalaman bit audio
                        1,     // Jumlah saluran suara
                        2,     // Ukuran frame (kedalaman bit / 8)
                        24000, // Laju transfer data (harus sesuai dengan laju sampel)
                        false  // Apakah terkompresi
                );

                // 3. Putar data audio secara real-time
                DataLine.Info info = new DataLine.Info(SourceDataLine.class, format);
                try (SourceDataLine line = (SourceDataLine) AudioSystem.getLine(info)) {
                    if (line != null) {
                        line.open(format);
                        line.start();
                        line.write(audioBytes, 0, audioBytes.length);
                        line.drain();
                    }
                }
            } catch (LineUnavailableException e) {
                e.printStackTrace();
            }
        });
    }
    public static void main(String[] args) {
        // Ini adalah URL untuk wilayah Singapura. Jika Anda menggunakan model di wilayah Tiongkok (Beijing), ganti URL dengan: https://dashscope.aliyuncs.com/api/v1
        Constants.baseHttpApiUrl = "https://dashscope-intl.aliyuncs.com/api/v1";
        try {
            streamCall();
        } catch (ApiException | NoApiKeyException | UploadFileException e) {
            System.out.println(e.getMessage());
        }
        System.exit(0);
    }
}

cURL

# ======= Catatan Penting =======
# URL berikut ini untuk wilayah Singapura. Jika Anda menggunakan model di wilayah Beijing, Anda harus mengganti URL dengan: https://dashscope.aliyuncs.com/api/v1/services/aigc/multimodal-generation/generation
# Kunci API untuk wilayah Singapura dan Beijing berbeda. Untuk mendapatkan kunci API, kunjungi: https://www.alibabacloud.com/help/en/model-studio/get-api-key
# === Hapus komentar ini sebelum eksekusi ===

curl -X POST 'https://dashscope-intl.aliyuncs.com/api/v1/services/aigc/multimodal-generation/generation' \
-H "Authorization: Bearer $DASHSCOPE_API_KEY" \
-H 'Content-Type: application/json' \
-H 'X-DashScope-SSE: enable' \
-d '{
    "model": "qwen3-tts-flash",
    "input": {
        "text": "Today is a wonderful day to build something people love!",
        "voice": "Cherry",
        "language_type": "Chinese"
    }
}'

Referensi API

Untuk informasi lebih lanjut, lihat Sintesis suara (Qwen-TTS).

Suara yang didukung

Suara yang didukung bervariasi tergantung model. Tetapkan parameter permintaan voice ke nilai pada kolom `voice` parameter tabel.

FAQ

Q: Berapa lama masa berlaku URL file audio?

A: URL file audio kedaluwarsa setelah 24 jam.