Todos los productos
Search
Centro de documentos

Alibaba Cloud Model Studio:Clonación de voz

Última actualización: Oct 21, 2026

Cree una voz personalizada a partir de una muestra de audio para síntesis de voz o conversaciones de voz en tiempo real.

Introducción a la función

La clonación de voz permite personalizar asistentes de voz, anuncios de marca y contenido de audio sin entrenar un modelo.

NotaPara crear una voz a partir de una descripción en lenguaje natural sin una muestra de audio, use Diseño de voz.

Requisitos previos

  • Obtenga una clave de API y configure la variable de entorno DASHSCOPE_API_KEY.

  • Obtenga el ID de su espacio de trabajo y sustituya YOUR_WORKSPACE_ID en los ejemplos por el valor real. Consulte Regiones y endpoints.

  • Instale la biblioteca HTTP de Python requests:

    pip install requests
    
  • Prepare un archivo que cumpla los requisitos de audio. Qwen-Audio-TTS, Qwen-Audio-Realtime y CosyVoice aceptan una URL pública o un Data URI codificado en Base64; MiniMax sigue usando una URL pública. Los ejemplos siguientes usan la URL de la muestra de audio. Para la codificación y los parámetros del audio local, consulte la API HTTP.

Comenzar a usar

NotaUna voz clonada para Qwen-Audio-TTS / Qwen-Audio-Realtime / CosyVoice se vincula a su target_model al crearse y no puede usarse con otro modelo. Para usar la misma voz de referencia con varios modelos, cree una voz distinta para cada modelo.

Qwen-Audio-TTS / CosyVoice

Qwen-Audio-TTS y CosyVoice usan el mismo flujo de creación de voces y síntesis básica. El siguiente ejemplo usa qwen-audio-3.1-tts-flash.

  1. Crear una voz: pase la URL del audio de referencia o el Data URI codificado en Base64 en el campo audio de la API HTTP. Establezca target_model en el modelo de destino y prefix en el prefijo del nombre de voz.
  2. Sintetizar voz: pase el ID de voz devuelto como voice, use el mismo modelo de destino y guarde el audio sintetizado.
import os
import time
import requests

workspace_id = "YOUR_WORKSPACE_ID"
target_model = "qwen-audio-3.1-tts-flash"
base_url = f"https://{workspace_id}.cn-beijing.maas.aliyuncs.com/api/v1"
headers = {"Authorization": f"Bearer {os.environ['DASHSCOPE_API_KEY']}"}

response = requests.post(
    f"{base_url}/services/audio/tts/customization",
    headers=headers,
    json={
        "model": "voice-enrollment",
        "input": {
            "action": "create_voice",
            "target_model": target_model,
            "prefix": "myvoice",
            "audio": "https://dashscope.oss-cn-beijing.aliyuncs.com/samples/audio/cosyvoice/cosyvoice-zeroshot-sample.wav",
        },
    },
    timeout=60,
)
response.raise_for_status()
voice_id = response.json()["output"]["voice_id"]
print(f"voice_id: {voice_id}")

for _ in range(30):
    response = requests.post(
        f"{base_url}/services/audio/tts/customization",
        headers=headers,
        json={
            "model": "voice-enrollment",
            "input": {"action": "query_voice", "voice_id": voice_id},
        },
        timeout=60,
    )
    response.raise_for_status()
    status = response.json()["output"]["status"]
    if status == "OK":
        break
    if status != "DEPLOYING":
        raise RuntimeError(f"Voice status: {status}")
    time.sleep(1)
else:
    raise TimeoutError("Voice is not ready")

response = requests.post(
    f"{base_url}/services/audio/tts/SpeechSynthesizer",
    headers=headers,
    json={
        "model": target_model,
        "input": {
            "text": "The weather is pleasant today. Enjoy a walk outside and have a wonderful day.",
            "voice": voice_id,
            "format": "wav",
            "sample_rate": 24000,
        },
    },
    timeout=60,
)
response.raise_for_status()
audio_url = response.json()["output"]["audio"]["url"]
audio_response = requests.get(audio_url, timeout=60)
audio_response.raise_for_status()
with open("output.wav", "wb") as f:
    f.write(audio_response.content)

El ejemplo guarda el audio sintetizado en output.wav. Conserve el ID de voz mostrado para usarlo después.

Qwen-Audio-Realtime

Las voces clonadas de Qwen-Audio-Realtime personalizan la voz de las respuestas en conversaciones de voz en tiempo real. El siguiente ejemplo crea una voz para qwen-audio-3.1-realtime-plus.

import os
import time
import requests

workspace_id = "YOUR_WORKSPACE_ID"
target_model = "qwen-audio-3.1-realtime-plus"
base_url = f"https://{workspace_id}.cn-beijing.maas.aliyuncs.com/api/v1"
headers = {"Authorization": f"Bearer {os.environ['DASHSCOPE_API_KEY']}"}

response = requests.post(
    f"{base_url}/services/audio/tts/customization",
    headers=headers,
    json={
        "model": "voice-enrollment",
        "input": {
            "action": "create_voice",
            "target_model": target_model,
            "prefix": "myvoice",
            "audio": "https://dashscope.oss-cn-beijing.aliyuncs.com/samples/audio/cosyvoice/cosyvoice-zeroshot-sample.wav",
        },
    },
    timeout=60,
)
response.raise_for_status()
voice_id = response.json()["output"]["voice_id"]
print(f"voice_id: {voice_id}")

for _ in range(30):
    response = requests.post(
        f"{base_url}/services/audio/tts/customization",
        headers=headers,
        json={
            "model": "voice-enrollment",
            "input": {"action": "query_voice", "voice_id": voice_id},
        },
        timeout=60,
    )
    response.raise_for_status()
    status = response.json()["output"]["status"]
    if status == "OK":
        break
    if status != "DEPLOYING":
        raise RuntimeError(f"Voice status: {status}")
    time.sleep(1)
else:
    raise TimeoutError("Voice is not ready")

Tras conectarse al servicio de conversación de voz en tiempo real, establezca session.voice en el ID de voz devuelto en el primer evento session.update. Sustituya VOICE_ID a continuación por ese ID. El modelo de la sesión debe coincidir con el target_model usado al crear la voz.

{
    "type": "session.update",
    "session": {
        "voice": "VOICE_ID"
    }
}

Para más parámetros y ejemplos de clonación de voz, consulte la API HTTP, el SDK de Python y el SDK de Java.

Para usar una voz clonada en la síntesis de voz o en conversaciones de voz en tiempo real, consulte:

Requisitos de audio

La calidad del audio de entrada afecta la similitud y naturalidad de la voz. Siga las especificaciones del modelo de destino y los consejos de grabación para reducir el ruido, la reverberación y las voces de otras personas.

ElementoRequisito

Formatos

WAV (16-bit), MP3, M4A

Duración

Se recomiendan 10–20 segundos; máximo de 60 segundos.

Tamaño del archivo

≤ 10 MB

Frecuencia de muestreo

≥ 16 kHz

Canales

Mono o estéreo. Solo se procesa el primer canal del audio estéreo, y debe contener voz válida.

Contenido

Al menos 5 segundos de lectura continua y clara, con pausas breves (≤ 2 segundos) en el resto del audio. Evite música de fondo, ruido ambiental y otras voces. Use voz hablada a un ritmo normal, en lugar de canciones o grabaciones de canto.

Idiomas compatibles

  • Qwen-Audio-TTS / Qwen-Audio-Realtime: Chino (mandarín, cantonés, Chongqing, noreste, Gansu, Guizhou, Zhejiang, Hebei, Henan, Hubei, Hunan, Jiangxi, Ningbo, Ningxia, Qingdao, Shaanxi, Shanxi, Shandong, Shanghái, Sichuan y dialectos de Yunnan), inglés, japonés, coreano, ruso, francés, alemán, portugués, tailandés, indonesio, vietnamita, español, italiano, malayo, filipino y árabe
  • CosyVoice: Los idiomas compatibles del audio de referencia varían según el modelo de destino que utiliza la voz.

Haga clic para ver los idiomas compatibles por modelo CosyVoice

  • cosyvoice-v3.5-plus, cosyvoice-v3.5-flash, cosyvoice-v3-flash: Chino (mandarín, cantonés, noreste, Gansu, Guizhou, Henan, Hubei, Jiangxi, minnan, Ningxia, Shanxi, Shaanxi, Shandong, Shanghái, Sichuan, Tianjin y dialectos de Yunnan), inglés, francés, alemán, japonés, coreano, ruso, portugués, tailandés, indonesio y vietnamita
  • cosyvoice-v3-plus: Chino (mandarín, cantonés, noreste, Gansu, Guizhou, Henan, Hubei, Jiangxi, minnan, Ningxia, Shanxi, Shaanxi, Shandong, Shanghái, Sichuan, Tianjin y dialectos de Yunnan), inglés, francés, alemán, japonés, coreano y ruso
  • cosyvoice-v2: Chino (mandarín) e inglés

Las grabaciones claras y naturales ayudan a obtener audio de referencia de alta calidad y a conservar las características de la voz. Antes de grabar, consulte los consejos de grabación y operación que se indican a continuación.

Haga clic para ver consejos de grabación y operación

Equipo de grabación

Puede utilizar un teléfono inteligente, una grabadora de voz digital o un dispositivo de grabación profesional. Recomendamos un dispositivo que admita grabación con alta frecuencia de muestreo (≥ 24 kHz) para cumplir con los requisitos de audio.

Entorno de grabación

Ubicación

  • Grabe en un espacio pequeño y cerrado de 10 metros cuadrados o menos.
  • Priorice habitaciones con materiales absorbentes de sonido como espuma acústica, alfombras o cortinas.
  • Evite pasillos abiertos, salas de conferencias, aulas y otros espacios con alta reverberación.

Control de ruido

  • Ruido externo: Cierre puertas y ventanas para evitar el tráfico, la construcción y otras perturbaciones.
  • Ruido interno: Apague acondicionadores de aire, ventiladores, balastos de lámparas fluorescentes y otros equipos. Puede grabar el sonido ambiental con su teléfono y reproducirlo a alto volumen para identificar posibles fuentes de ruido.

Control de reverberación

  • La reverberación hace que el sonido se vuelva borroso y reduce la claridad.
  • Reduzca las reflexiones de superficies lisas: cierre cortinas, abra las puertas de los armarios y cubra mesas y gabinetes con ropa o mantas.
  • Utilice objetos irregulares (como estanterías y muebles tapizados) para crear reflexiones difusas.

Guion de grabación

  • No hay restricciones específicas de contenido. Recomendamos adaptar el contenido a su caso de uso objetivo.
  • Evite frases cortas (como "hola" o "sí"). Utilice oraciones completas.
  • Mantenga la coherencia semántica y evite pausas frecuentes al leer (se recomiendan al menos 3 segundos continuos sin interrupción).
  • Mantenga una velocidad de habla constante durante toda la grabación. Evite hablar demasiado rápido al principio o al final, ya que esto puede causar tartamudeo durante la síntesis.
  • Incluya una expresión emocional adecuada (como calidez, amabilidad o seriedad). Evite la lectura mecánica.
  • No incluya contenido sensible (como material político, pornográfico o violento). Esto provocará un error en la clonación.

Mejores prácticas

Tomando como ejemplo un dormitorio típico, después de completar el control de ruido y reverberación:

  1. Familiarícese con el guion de antemano, establezca un tono de personaje y hable con naturalidad.
  2. Mantenga una distancia aproximada de 10 cm del dispositivo de grabación para evitar distorsión por sonidos plosivos o señal débil.

Administración de voces

Qwen-Audio-TTS, Qwen-Audio-Realtime y CosyVoice usan las mismas API de consulta, actualización y eliminación de voces. Para conocer las interfaces y los parámetros, consulte la Referencia de la API HTTP de clonación de voz.

  • Listar voces: consulte las voces personalizadas existentes en su cuenta.
  • Consultar detalles de la voz: consulte información como la fecha de creación y el modelo vinculado.
  • Actualizar una voz: sustituya el audio de referencia y conserve el ID de la voz existente.
  • Eliminar una voz: elimine las voces que no use para liberar cuota.

Las voces creadas permanecen vigentes de forma predeterminada. Conserve el ID de voz y use la API de consulta cuando necesite comprobar su disponibilidad.

Modelos compatibles

China (Beijing)

Use una clave de API de esta región para llamar a los siguientes modelos:

  • Qwen-Audio-TTS: 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-Realtime: qwen-audio-3.1-realtime-plus, qwen-audio-3.0-realtime-plus, qwen-audio-3.0-realtime-flash

  • CosyVoice: cosyvoice-v3.5-plus, cosyvoice-v3.5-flash, cosyvoice-v3-plus, cosyvoice-v3-flash, cosyvoice-v2

Singapur

Use una clave de API de esta región para llamar a los siguientes modelos:

  • Qwen-Audio-TTS: qwen-audio-3.1-tts-plus, qwen-audio-3.0-tts-plus, qwen-audio-3.0-tts-flash

  • CosyVoice: cosyvoice-v3-plus, cosyvoice-v3-flash

Cuotas y límites

  • Cantidad de voces: cada cuenta de Alibaba Cloud Model Studio admite un máximo total de 1,000 voces personalizadas. La clonación y el diseño de voces comparten esta cuota de cuenta entre todos los modelos.

    Nota

    • Las nuevas solicitudes de creación por clonación o diseño de voz fallan al alcanzar la cuota. Elimine las voces que no use para liberar cuota antes de crear otra voz.

Facturación

  • Qwen-Audio-TTS / Qwen-Audio-Realtime / CosyVoice: La creación de voces es gratuita. La síntesis y las conversaciones de voz en tiempo real con voces clonadas se facturan según el modelo de destino. Consulte Precios de los modelos.