本文介绍声音复刻的Python SDK使用方法。
接口地址
SDK的接口地址需在初始化前设置为下方地址(包含WorkspaceId)。如需切换到其他地域,请修改 dashscope.base_http_api_url为对应地域的URL。
- 华北2(北京)
- 新加坡
https://{WorkspaceId}.cn-beijing.maas.aliyuncs.com/api/v1调用时请将{WorkspaceId}替换为真实的Workspace ID。- 不同地域的 API Key 不同,请确保使用对应地域的 API Key
- 地域配置为全局设置,影响所有 DashScope SDK 的 API 调用
VoiceEnrollmentService 类
包路径:dashscope.audio.tts_v2.VoiceEnrollmentService
功能:管理Qwen-Audio-TTS/CosyVoice复刻音色的生命周期(创建、查询、更新、删除)。
构造方法
create_voice() - 创建音色
方法签名:
参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
target_model | str | 是 | 驱动音色的语音合成模型。必须与后续调用语音合成接口时使用的模型一致,否则合成会失败。 |
prefix | str | 是 | 音色名称前缀,仅允许数字和英文字母,不超过10个字符。生成的音色名格式: |
url | str | 是 | 用于复刻音色的音频文件URL,要求公网可访问。 |
language_hints | List[str] | 否 | 仅适用于Qwen-Audio-TTS/CosyVoice声音复刻(model为 辅助模型识别样本音频的语种,从而更准确地提取音色特征,提升复刻效果。若设置的语种与实际音频语种不符(例如为中文音频设置 此参数为数组,但当前版本仅处理第一个元素。 取值范围(因模型而异):
默认值:["zh"]。 |
max_prompt_audio_length | float | 否 | 仅适用于Qwen-Audio-TTS/CosyVoice声音复刻(model为 音频预处理后用于声音复刻的参考音频最大时长(秒)。取值范围:[3.0, 30.0]。 默认值:10.0。 |
enable_preprocess | bool | 否 | 仅适用于Qwen-Audio-TTS/CosyVoice声音复刻(model为 是否开启音频预处理(降噪、音频增强、音量规整)。有背景噪音时建议开启;安静环境建议关闭以最大程度还原音色。 默认值:false。 |
enable_volume_normalization | bool | 否 | 是否对用于声音复刻的样本音频进行音量归一化。通过关键字参数直接传入。默认值为 |
str,音色ID(voice_id)。
list_voices() - 查询音色列表
方法签名:
参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
prefix | str | 否 | 按音色名称前缀筛选。 |
page_index | int | 否 | 页码索引,默认0。 |
page_size | int | 否 | 每页条数,默认10。 |
list,音色列表。
query_voice() - 查询音色详情
方法签名:
参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
voice_id | str | 是 | 要查询的音色ID。 |
dict,音色详情。
update_voice() - 更新音色
方法签名:
参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
voice_id | str | 是 | 要更新的音色ID。 |
url | str | 是 | 新的音频文件URL。 |
language_hints | List[str] | 否 | 样本音频语种提示。 |
max_prompt_audio_length | float | 否 | 参考音频最大时长。 |
enable_preprocess | bool | 否 | 是否开启音频预处理。 |
delete_voice() - 删除音色
方法签名:
参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
voice_id | str | 是 | 要删除的音色ID。 |