DashScope Java SDK を使用して Qwen-Audio と CosyVoice の音声をクローンし、管理します。
サービスエンドポイント
SDK は、デフォルトで China (Beijing) エンドポイントを使用します。別のリージョンに切り替えるには、初期化の前に Constants.baseHttpApiUrl を変更します。
- API キーはリージョンごとに異なります。対象リージョンに対応する API キーを使用してください。
- リージョン設定はグローバルに適用され、すべての DashScope SDK API コールに影響します。
- Singapore
- China (Beijing)
https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1{WorkspaceId} は、実際の ワークスペース ID に置き換えてください。VoiceEnrollmentService クラス
パッケージ: com.alibaba.dashscope.audio.ttsv2.enrollment.VoiceEnrollmentService
目的:Qwen-Audio-TTS、Qwen-Audio-Realtime、CosyVoice のクローン音色のライフサイクル (作成、照会、更新、削除) を管理します。
コンストラクター
| パラメーター | タイプ | 説明 |
|---|---|---|
| apiKey | String | API キー |
createVoice() - 音声の作成
メソッドシグネチャ:
| パラメーター | タイプ | 必須 | 説明 |
|---|---|---|---|
| targetModel | String | はい | 音色を使用する対象モデル。後続のリクエストでその音色を使用するモデルと一致する必要があります。一致しない場合、リクエストは失敗します。 |
| prefix | String | はい | 音声名のプレフィックス。英数字のみが許可され、最大長は 10 文字です。結果として得られる音声名は、{target_model}-{prefix}-{unique_id} のフォーマットに従います。 |
| url | String | はい | 音声クローニングに使用する参照音声。公開アクセス可能な URL または data:audio/wav;base64,... 形式の Base64 Data URI を指定できます。 |
| customParam | VoiceEnrollmentParam | いいえ | languageHints や maxPromptAudioLength などのカスタムパラメーター。 |
Voice オブジェクトを返します。getVoiceId() を呼び出して音声 ID を取得します。
listVoice() - 音声の一覧取得
メソッドシグネチャ:
| パラメーター | タイプ | 必須 | 説明 |
|---|---|---|---|
| prefix | String | いいえ | 音声名のプレフィックスで音声をフィルタリングします。 |
| pageIndex | int | いいえ | ページインデックス。0 から始まります。 |
| pageSize | int | いいえ | 1 ページあたりのレコード数。 |
Voice[] 配列を返します。
queryVoice() - 音声詳細の取得
メソッドシグネチャ:
| パラメーター | タイプ | 必須 | 説明 |
|---|---|---|---|
| voiceId | String | はい | 取得する音声の ID。 |
Voice オブジェクトを返します。
updateVoice() - 音声の更新
メソッドシグネチャ一覧:
| パラメーター | タイプ | 必須 | 説明 |
|---|---|---|---|
| voiceId | String | はい | 更新する音声 ID。 |
| url | String | はい | 新しい参照音声。公開アクセス可能な URL または data:audio/wav;base64,... 形式の Base64 Data URI を指定できます。 |
| customParam | VoiceEnrollmentParam | いいえ | カスタムパラメーター。 |
deleteVoice() - 音声の削除
メソッドシグネチャ:
| パラメーター | タイプ | 必須 | 説明 |
|---|---|---|---|
| voiceId | String | はい | 削除する音声 ID。 |
VoiceEnrollmentParam クラス
パッケージ: com.alibaba.dashscope.audio.ttsv2.enrollment.VoiceEnrollmentParam
ビルダーパターンを使用してパラメーターオブジェクトを構築します。
| メソッド | タイプ | 説明 |
|---|---|---|
| model(String) | String | 音声クローニングモデル。値は "voice-enrollment" である必要があります。 |
languageHints(List<String>) | List<String> | モデルがサンプル音声の言語を識別し、音声特徴をより正確に抽出し、クローニング品質を向上させるのに役立ちます。指定された言語が実際の音声言語と一致しない場合 (たとえば、音声が中国語なのに en を設定した場合)、システムはこの値を無視し、言語を自動的に検出します。このパラメーターは配列で、要素数は 1 である必要があります。対象モデル:qwen-audio-3.1-tts-plus、qwen-audio-3.1-tts-flash、qwen-audio-3.0-tts-plus、qwen-audio-3.0-tts-flash、qwen-audio-3.1-realtime-plus、qwen-audio-3.0-realtime-plus、qwen-audio-3.0-realtime-flash、cosyvoice-v3.5-plus、cosyvoice-v3.5-flash、cosyvoice-v3-plus、cosyvoice-v3-flash。
クリックしてモデル別の対応言語を表示
|
| maxPromptAudioLength(Float) | Float | 前処理後の参照音声の最大持続時間 (秒)。有効な値: [3.0, 30.0]。デフォルト: 10.0。 対象モデル:qwen-audio-3.1-tts-plus、qwen-audio-3.1-tts-flash、qwen-audio-3.0-tts-plus、qwen-audio-3.0-tts-flash、qwen-audio-3.1-realtime-plus、qwen-audio-3.0-realtime-plus、qwen-audio-3.0-realtime-flash、cosyvoice-v3.5-plus、cosyvoice-v3.5-flash、cosyvoice-v3-flash。 |
| parameter(String, Object) | Object | parameter("language_hints", Arrays.asList("en"))、parameter("max_prompt_audio_length", 10.0f)、parameter("enable_preprocess", false)、parameter("enable_volume_normalization", "false") などのカスタムパラメーターを設定します。 |
追加パラメーター
| パラメーター | タイプ | 必須 | 説明 |
|---|---|---|---|
| enable_preprocess | boolean | いいえ | 音声前処理 (ノイズリダクション、音声強調、音量正規化) を有効にするかどうか。バックグラウンドノイズのある録音の場合はこれを有効にします。静かな環境での録音の場合は、元の音声特性を保持するために無効にします。デフォルト: false。 対象モデル:qwen-audio-3.1-tts-plus、qwen-audio-3.1-tts-flash、qwen-audio-3.0-tts-plus、qwen-audio-3.0-tts-flash、qwen-audio-3.1-realtime-plus、qwen-audio-3.0-realtime-plus、qwen-audio-3.0-realtime-flash、cosyvoice-v3.5-plus、cosyvoice-v3.5-flash、cosyvoice-v3-flash。 |
| enable_volume_normalization | String | いいえ | 音声クローニングに使用されるサンプル音声の音量を正規化するかどうかを指定します。有効な値は "true" と "false" です。このパラメーターを有効にすると、生成される音声の音量が、無効にした場合と異なることがあります。デフォルト: "false"。 |
サンプルコード
音声の作成
try ブロック内で createVoice を呼び出す前に、以下の代入を追加します。音声の更新時も、Data URI を updateVoice の url パラメーターに指定します。sample.wav をローカル音声ファイルのパスに置き換えてください。
音声の一覧表示
この例では、サードパーティライブラリ com.google.gson.Gson が必要です。
特定の音声の取得
この例では、サードパーティライブラリ com.google.gson.Gson が必要です。