すべてのプロダクト
Search
ドキュメントセンター

Alibaba Cloud Model Studio:Speech synthesis - Qwen

最終更新日:Jan 06, 2026

Qwen 音声合成モデルは、人間のような多様な音声を提供します。これらの音声は複数の言語と方言をサポートし、単一の音声で多言語コンテンツを生成できます。モデルは自動的にトーンを調整し、複雑なテキストを流暢に処理します。

サポートされているモデル

Qwen3-TTS-Flash を推奨します。

Qwen3-TTS-Flash は 49 種類の音声を提供し、複数の言語と方言をサポートしています。

Qwen-TTS は最大 7 種類の音声を提供し、中国語と英語のみをサポートしています。

国際

国際デプロイメントモードでは、エンドポイントとデータストレージはシンガポールリージョンに配置されます。推論コンピューティングリソースは、中国本土を除き、グローバルに動的にスケジュールされます。

モデル名

バージョン

価格

最大入力文字数

サポート言語

無料クォータ (注)

qwen3-tts-flash

機能は qwen3-tts-flash-2025-09-18 と同じです。

安定版

$0.10/10,000 文字

600

中国語 (標準語、北京語、上海語、四川語、南京語、陝西語、閩南語、天津語、広東語)、英語、スペイン語、ロシア語、イタリア語、フランス語、韓国語、日本語、ドイツ語、ポルトガル語

2025 年 11 月 13 日 00:00 より前に Alibaba Cloud Model Studio をアクティベートした場合:2,000 文字

2025 年 11 月 13 日 00:00 以降に Alibaba Cloud Model Studio をアクティベートした場合:10,000 文字

クォータは Alibaba Cloud Model Studio をアクティベートしてから 90 日間有効です。

qwen3-tts-flash-2025-11-27

スナップショット

10,000 文字

クォータは Alibaba Cloud Model Studio をアクティベートしてから 90 日間有効です。

qwen3-tts-flash-2025-09-18

スナップショット

2025 年 11 月 13 日 00:00 より前に Alibaba Cloud Model Studio をアクティベートした場合:2,000 文字

2025 年 11 月 13 日 00:00 以降に Alibaba Cloud Model Studio をアクティベートした場合:10,000 文字

クォータは Alibaba Cloud Model Studio をアクティベートしてから 90 日間有効です。

課金は入力文字数に基づきます。計算ルールは以下の通りです:

  • 簡体字、繁体字、日本語の漢字、韓国語の漢字を含む各漢字は、2 文字としてカウントされます。

  • 英字、句読点、スペースなどのその他の文字は、1 文字としてカウントされます。

中国本土

中国本土デプロイメントモードでは、エンドポイントとデータストレージは中国 (北京) リージョンに配置され、推論コンピューティングリソースは中国本土に制限されます。

Qwen3-TTS-Flash

モデル名

バージョン

価格

最大入力文字数

サポート言語

無料クォータ (注)

qwen3-tts-flash

機能は qwen3-tts-flash-2025-09-18 と同じです。

安定版

$0.114682/10,000 文字

600

中国語 (標準語、北京語、上海語、四川語、南京語、陝西語、閩南語、天津語、広東語)、英語、スペイン語、ロシア語、イタリア語、フランス語、韓国語、日本語、ドイツ語、ポルトガル語

無料クォータなし

qwen3-tts-flash-2025-11-27

スナップショット

qwen3-tts-flash-2025-09-18

スナップショット

課金は入力文字数に基づきます。計算ルールは以下の通りです:

  • 簡体字、繁体字、日本語の漢字、韓国語の漢字を含む各漢字は、2 文字としてカウントされます。

  • 英字、句読点、スペースなどのその他の文字は、1 文字としてカウントされます。

Qwen-TTS

モデル名

バージョン

コンテキストウィンドウ

最大入力

最大出力

入力コスト

出力コスト

無料クォータ (注)

(トークン)

(1,000 トークンあたり)

qwen-tts

このモデルの機能は qwen-tts-2025-04-10 と同じです。

安定版

8,192

512

7,680

$0.230

$1.434

無料クォータなし

qwen-tts-latest

このモデルの機能は常に最新のスナップショットバージョンと同じです。

最新

qwen-tts-2025-05-22

スナップショット

qwen-tts-2025-04-10

音声は 1 秒あたり 50 トークンのレートでトークンに変換されます。1 秒未満の音声クリップは 50 トークンとして課金されます。

機能

機能

Qwen3-TTS-Flash

Qwen-TTS

接続タイプ

Java/Python SDK、RESTful API

ストリーミング出力

サポート

ストリーミング入力

非サポート

合成音声フォーマット

  • wav

  • ストリーミング出力用の Base64 エンコードされた PCM

合成音声サンプルレート

24 kHz

タイムスタンプ

非サポート

言語

中国語 (標準語、北京語、上海語、四川語、南京語、陝西語、閩南語、天津語、広東語)、英語、スペイン語、ロシア語、イタリア語、フランス語、韓国語、日本語、ドイツ語、ポルトガル語。音声によって異なります。詳細については、「サポートされている音声」をご参照ください。

中国語 (標準語、北京語、上海語、四川語)、英語。モデルと音声によって異なります。詳細については、「サポートされている音声」をご参照ください。

音声クローン

非サポート

SSML

非サポート

はじめに

事前準備

  • API キーを作成し、API キーを環境変数としてエクスポート済みであること。

  • DashScope SDK を使用するには、最新バージョンの SDK をインストールします。DashScope Java SDK はバージョン 2.21.9 以降、DashScope Python SDK はバージョン 1.24.6 以降である必要があります。

    説明

    DashScope Python SDK では、SpeechSynthesizer インターフェイスは MultiModalConversation に置き換えられています。新しいインターフェイスを使用するには、インターフェイス名を置き換えてください。他のすべてのパラメーターは互換性があります。

主要なパラメーター

  • text:合成するテキストを指定します。

  • voice:使用する音声を指定します。

  • language_type:合成音声の言語。有効な値は ChineseEnglishGermanItalianPortugueseSpanishJapaneseKoreanFrenchRussian、および Auto (デフォルト) です。

返された url を使用して合成音声を取得します。URL は 24 時間有効です。

Python

# DashScope SDK バージョン 1.24.6 以降
import os
import dashscope

# これはシンガポールリージョンの URL です。中国 (北京) リージョンのモデルを使用する場合は、URL を 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!"
# SpeechSynthesizer インターフェイスを使用する場合:dashscope.audio.qwen_tts.SpeechSynthesizer.call(...)
response = dashscope.MultiModalConversation.call(
    model="qwen3-tts-flash",
    # シンガポールリージョンと中国 (北京) リージョンの API キーは異なります。API キーを取得するには、https://www.alibabacloud.com/help/model-studio/get-api-key をご参照ください
    # 環境変数を設定していない場合は、次の行をご利用の Model Studio API キーに置き換えてください:api_key = "sk-xxx"
    api_key=os.getenv("DASHSCOPE_API_KEY"),
    text=text,
    voice="Cherry",
    language_type="English", # 正しい発音と自然なイントネーションを確保するために、テキストの言語と一致させることを推奨します。
    stream=False
)
print(response)

Java

Gson 依存関係をインポートする必要があります。Maven または Gradle を使用している場合は、次のように依存関係を追加できます:

Maven

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

build.gradle に次の内容を追加します:

// https://mvnrepository.com/artifact/com.google.code.gson/gson
implementation("com.google.code.gson:gson:2.13.1")
// DashScope SDK バージョン 2.21.9 以降
// バージョン 2.20.7 以降は Dylan、Jada、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()
                // シンガポールリージョンと中国 (北京) リージョンの API キーは異なります。API キーを取得するには、https://www.alibabacloud.com/help/model-studio/get-api-key をご参照ください
                // 環境変数を設定していない場合は、次の行をご利用の Model Studio API キーに置き換えてください:.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") // 正しい発音と自然なイントネーションを確保するために、テキストの言語と一致させることを推奨します。
                .build();
        MultiModalConversationResult result = conv.call(param);
        String audioUrl = result.getOutput().getAudio().getUrl();
        System.out.print(audioUrl);

        // 音声ファイルをローカルにダウンロード
        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("\nAudio file downloaded to local path: downloaded_audio.wav");
        } catch (Exception e) {
            System.out.println("\nError downloading audio file: " + e.getMessage());
        }
    }
    public static void main(String[] args) {
        // これはシンガポールリージョンの URL です。中国 (北京) リージョンのモデルを使用する場合は、URL を 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

# ======= 重要 =======
# これはシンガポールリージョンの URL です。中国 (北京) リージョンのモデルを使用する場合は、URL を https://dashscope.aliyuncs.com/api/v1/services/aigc/multimodal-generation/generation に置き換えてください
# シンガポールリージョンと中国 (北京) リージョンの API キーは異なります。API キーを取得するには、https://www.alibabacloud.com/help/model-studio/get-api-key をご参照ください
# === 実行前にこのコメントを削除してください ===

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"
    }
}'

リアルタイム再生

音声データは Base64 フォーマットでストリーミングされます。最後のパケットには、完全な音声ファイルの URL が含まれています。

Python

# DashScope SDK バージョン 1.24.6 以降
# coding=utf-8
#
# pyaudio のインストール手順:
# APPLE Mac OS X
#   brew install portaudio
#   pip install pyaudio
# Debian/Ubuntu
#   sudo apt-get install python-pyaudio python3-pyaudio
#   または
#   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

# これはシンガポールリージョンの URL です。中国 (北京) リージョンのモデルを使用する場合は、URL を https://dashscope.aliyuncs.com/api/v1 に置き換えてください
dashscope.base_http_api_url = 'https://dashscope-intl.aliyuncs.com/api/v1'

p = pyaudio.PyAudio()
# オーディオストリームを作成
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(
    # シンガポールリージョンと中国 (北京) リージョンの API キーは異なります。API キーを取得するには、https://www.alibabacloud.com/help/model-studio/get-api-key をご参照ください
    # 環境変数を設定していない場合は、次の行をご利用の Model Studio API キーに置き換えてください:api_key = "sk-xxx"
    api_key=os.getenv("DASHSCOPE_API_KEY"),
    model="qwen3-tts-flash",
    text=text,
    voice="Cherry",
    language_type="English", # 正しい発音と自然なイントネーションを確保するために、テキストの言語と一致させることを推奨します。
    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)
          # 音声データを直接再生
          stream.write(audio_np.tobytes())
      if chunk.output.finish_reason == "stop":
          print("finish at: {} ", chunk.output.audio.expires_at)
time.sleep(0.8)
# リソースをクリーンアップ
stream.stop_stream()
stream.close()
p.terminate()

Java

Gson 依存関係をインポートする必要があります。Maven または Gradle を使用している場合は、次のように依存関係を追加できます:

Maven

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

build.gradle に次の内容を追加します:

// https://mvnrepository.com/artifact/com.google.code.gson/gson
implementation("com.google.code.gson:gson:2.13.1")
// 最新バージョンの DashScope SDK をインストール
// バージョン 2.20.7 以降は Dylan、Jada、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()
                // シンガポールリージョンと中国 (北京) リージョンの API キーは異なります。API キーを取得するには、https://www.alibabacloud.com/help/model-studio/get-api-key をご参照ください
                // 環境変数を設定していない場合は、次の行をご利用の Model Studio API キーに置き換えてください:.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") // 正しい発音と自然なイントネーションを確保するために、テキストの言語と一致させることを推奨します。
                .build();
        Flowable<MultiModalConversationResult> result = conv.streamCall(param);
        result.blockingForEach(r -> {
            try {
                // 1. Base64 エンコードされた音声データを取得
                String base64Data = r.getOutput().getAudio().getData();
                byte[] audioBytes = Base64.getDecoder().decode(base64Data);

                // 2. 音声フォーマットを設定 (API が返すフォーマットに基づいて調整)
                AudioFormat format = new AudioFormat(
                        AudioFormat.Encoding.PCM_SIGNED,
                        24000, // サンプルレート (API が返すフォーマットと一致させる必要があります)
                        16,    // オーディオビット深度
                        1,     // サウンドチャンネル数
                        2,     // フレームサイズ (ビット深度 / 8)
                        24000, // データ転送レート (サンプルレートと一致させる必要があります)
                        false  // 圧縮されているか
                );

                // 3. 音声データをリアルタイムで再生
                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) {
        // これはシンガポールリージョンの URL です。中国 (北京) リージョンのモデルを使用する場合は、URL を 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

# ======= 重要事項 =======
# 次の URL はシンガポールリージョン用です。北京リージョンのモデルを使用する場合は、URL を https://dashscope.aliyuncs.com/api/v1/services/aigc/multimodal-generation/generation に置き換える必要があります
# シンガポールリージョンと北京リージョンの API キーは異なります。API キーを取得するには、https://www.alibabacloud.com/help/model-studio/get-api-key をご参照ください
# === 実行前にこのコメントを削除してください ===

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"
    }
}'

API リファレンス

詳細については、「音声合成 (Qwen-TTS)」をご参照ください。

サポートされている音声

サポートされている音声はモデルによって異なります。リクエストパラメーター voice を、表の `voice` パラメーター列の値に設定します。

よくある質問

Q:音声ファイルの URL はどのくらいの期間有効ですか?

A:音声ファイルの URL は 24 時間後に失効します。