基于百炼CosyVoice创建自定义音色

本文将介绍如何利用已录制的音频文件,借助百炼CosyVoice的声音复刻服务,生成定制化的专有音色,并在AI实时互动中进行应用。

前置准备

音频文件准备

在准备音频文件时,请注意以下事项:

  • 声道数:单/双声道

  • 采样率:大于等于 16000 Hz

  • 格式:WAV(16bit)、MP3、M4A

  • 文件大小:10MB 以内

准备好音频文件后,您需要将音频文件上传到公网可访问URL。这里推荐您将音频上传至OSS,具体操作步骤请参考,操作步骤

说明

您需对所提供声音的所有权及合法使用权负责,请注意阅读服务协议

音色复刻

以下示例代码将展示如何对音色进行复刻:

import os
import dashscope
from dashscope.audio.tts_v2 import VoiceEnrollmentService, SpeechSynthesizer

dashscope.api_key = os.getenv('DASHSCOPE_API_KEY')  # 如果您没有配置环境变量,请在此处用您的API-KEY进行替换
url = "https://your-audio-file-url"  # 请按实际情况进行替换
prefix = 'prefix' #可自定义音色前缀
target_model = "cosyvoice-clone-v1"

# 创建语音注册服务实例
service = VoiceEnrollmentService()

# 调用create_voice方法复刻声音,并生成voice_id
voice_id = service.create_voice(target_model=target_model, prefix=prefix, url=url)
print(f"your voice id is {voice_id}")
# 输出 cosyvoice-prefix-xxxxx

调用完成后,请保存上述代码返回的音色id,即voice_id字符串,以便在AI实时互动服务中使用。

音色使用

  1. 前往工作流管理界面。

  2. 单击您需要配置的工作流,单击右上角编辑按钮。

  3. 选择TTS文字转语音节点,选择模型为百炼,对参数进行配置。

    • ApiKey:调用百炼服务所使用的ApiKey,此处使用的ApiKey需要与复刻时的api_key相同。

    • ModelId:调用百炼模型的模型Id。此处使用cosyvoice-clone-v1

    • 音色:音色Id,此处使用复刻返回的音色Id。

      image

  4. 单击保存按钮。