Clone y administre voces de Qwen-Audio y CosyVoice con el SDK de Python de DashScope.
Endpoint de servicio
El endpoint del SDK está determinado por los parámetros workspace y region del constructor del Client (correspondientes a los endpoints siguientes, que incluyen el WorkspaceId). Para cambiar a una región diferente, modifique los parámetros del constructor del Client por los valores de esa región.
- Las API keys varían por región. Use la API key de la región de destino.
- La configuración de región es a nivel de Client y afecta a todas las llamadas de API del SDK de DashScope realizadas a través de ese Client.
- Singapore
- China (Beijing)
https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1Reemplace {WorkspaceId} con su ID de espacio de trabajo real.Recurso principal (client.audio.voices)
Propósito: Administra el ciclo de vida de las voces clonadas de Qwen-Audio-TTS, Qwen-Audio-Realtime y CosyVoice (crear, consultar, actualizar y eliminar).
Construcción del Client (autenticación y región)
create() — Crear una voz
Firma del método:
| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| target_model | str | Sí | Modelo de destino que usa la voz. Debe coincidir con el modelo usado en las solicitudes posteriores con esta voz; de lo contrario, las solicitudes fallan. |
| prefix | str | Sí | Un prefijo para el nombre de la voz. Solo se permiten caracteres alfanuméricos, con una longitud máxima de 10 caracteres. El nombre de voz resultante sigue este formato: {target_model}-{prefix}-{unique_id}. |
| url | str | Sí | Audio de referencia para la clonación de voz. Acepta una URL de acceso público o un Data URI codificado en Base64, por ejemplo, data:audio/wav;base64,.... |
| language_hints | List[str] | No | Ayuda al modelo a identificar el idioma del audio de muestra para extraer características de voz con mayor precisión y mejorar la calidad de la clonación. Si el idioma especificado no coincide con el idioma real del audio (por ejemplo, establecer en cuando el audio está en chino), el sistema ignora este valor y detecta el idioma automáticamente.Este parámetro es una matriz y debe contener exactamente un elemento.Se aplica a 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.
Haga clic para ver los idiomas compatibles por modelo
|
| max_prompt_audio_length | float | No | La duración máxima (en segundos) del audio de referencia después del preprocesamiento. Valores válidos: [3.0, 30.0].Predeterminado: 10.0. Se aplica a 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_preprocess | bool | No | Indica si se debe habilitar el preprocesamiento de audio (reducción de ruido, mejora de audio y normalización de volumen). Habilite esta opción para grabaciones con ruido de fondo. Desactívela para grabaciones en entornos silenciosos para preservar las características originales de la voz.Predeterminado: false. Se aplica a 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 | bool | No | Especifica si se debe normalizar el volumen del audio de muestra utilizado para la clonación de voz. Pase este parámetro en el diccionario extra_input. Valor predeterminado: False. Si configura este parámetro en True, el volumen del audio sintetizado con la voz creada puede diferir del audio sintetizado con una voz creada con este parámetro deshabilitado. |
Voice, cuyo voice_id es el ID de la voz y cuyo request_id es el ID de la solicitud.
list() — Listar voces
Firma del método:
| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| prefix | str | No | Filtrar por prefijo de nombre de voz. |
| page_index | int | No | Índice de página. Valor predeterminado: 0. |
| page_size | int | No | Número de entradas por página. Valor predeterminado: 10. |
VoiceList, cuyo voices es la lista de voces y cuyo request_id es el ID de la solicitud.
get() — Consultar detalles de la voz
Firma del método:
| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| voice_id | str | Sí | El ID de voz a consultar. |
Voice con los detalles de la voz.
update() — Actualizar una voz
Firma del método:
| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| voice_id | str | Sí | El ID de voz a actualizar. |
| url | str | Sí | Nuevo audio de referencia. Acepta una URL de acceso público o un Data URI codificado en Base64, por ejemplo, data:audio/wav;base64,.... |
delete() — Eliminar una voz
Firma del método:
| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| voice_id | str | Sí | El ID de voz a eliminar. |
Ejemplos de código
Crear una voz
url anterior por el siguiente código antes de llamar a client.audio.voices.create(). Para actualizar una voz, pase también el Data URI mediante el parámetro url de client.audio.voices.update(). Sustituya sample.wav por la ruta de su archivo de audio local.