curl --request POST \
--url https://api.evolink.ai/v1/audios/generations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"model": "voice-enrollment",
"audio_url": "https://your-cdn.com/samples/my-voice.wav",
"preferred_name": "myvoice"
}
'{
"created": 1775123456,
"id": "task-unified-1775123456-abcd1234",
"model": "voice-enrollment",
"object": "audio.generation.task",
"progress": 0,
"status": "pending",
"task_info": {
"can_cancel": false,
"estimated_time": 60,
"audio_type": "voice_clone"
},
"type": "audio",
"usage": {
"credits_reserved": 0.001
}
}Voice Enrollment : créer une voix personnalisée
- Créez des voix personnalisées pour Qwen Audio 3.1 TTS Flash avec le modèle
voice-enrollment. Deux modes :audio_urlpour le clonage vocal, ouvoice_prompt+preview_textpour la conception vocale. Fournir les deux sélecteurs ou aucun renvoie400 - Les voix des deux modes fonctionnent uniquement avec
qwen-audio-3.1-tts-flash, pour le compte créateur. Les voix de l’ancienqwen-voice-designsont incompatibles ; recréez-les via ce point d’accès lors de la migration - La conception renvoie aussi un aperçu audio (24 kHz WAV fixe) ; le clonage renvoie uniquement le nom de voix
- Traitement asynchrone : consultez le résultat avec l’ID de tâche. Clonage : environ 15–30 secondes. La conception attend la synthèse du texte entier : environ 12 secondes pour 30 caractères et 49 secondes pour 200 caractères
- Facturation par requête, même prix pour clonage et conception ; remboursement intégral en cas d’échec. Liens d’aperçu valides 24 heures ; enregistrez-les rapidement
- Clonez uniquement votre propre voix ou une voix pour laquelle vous avez une autorisation explicite
Procédure :
- Fournissez
audio_url(clonage) ouvoice_prompt+preview_text(conception), ainsi quepreferred_name - Interrogez le résultat pour obtenir
result_data.voice(nom de voix) - Appelez Qwen Audio 3.1 TTS Flash avec ce nom complet dans
voice
Résultat de tâche (lorsque status vaut completed) :
| Champ | Clonage vocal | Conception vocale |
|---|---|---|
result_data.voice | qwen-audio-3.1-tts-flash-{preferred_name}-{32-character-id} | qwen-audio-3.1-tts-flash-vd-{preferred_name}-{32-character-id} (segment vd- supplémentaire) |
result_data.voice_type | voice_clone | voice_design |
result_data.target_model | qwen-audio-3.1-tts-flash | qwen-audio-3.1-tts-flash |
results / result_data.preview_audio_url | Non renvoyé | URL d’aperçu (valide 24 heures), avec sample_rate: 24000 et response_format: "wav" |
Si l’aperçu de conception est parfois indisponible, la tâche se termine quand même (voix créée et facturée). Le résultat contient alors preview_audio_unavailable: true et preview_audio_warning.
Durée de validité :
- Les voix clonées ou conçues expirent par défaut
6 heuresaprès la fin de leur création. Les appels de synthèse ne prolongent pas cette durée - Après expiration, le TTS renvoie
404(voice_expired). Créez une nouvelle voix via ce point d’accès et utilisez-la pour la synthèse
Capacité de voix : Le compte amont impose une limite de voix personnalisées pour la série Qwen-Audio-TTS (officiellement 1000, partagées entre clonage et conception). Si elle est atteinte, la création échoue avec remboursement intégral.
Longueur mesurée en caractères : Chaque caractère chinois, anglais ou signe de ponctuation compte pour 1.
curl --request POST \
--url https://api.evolink.ai/v1/audios/generations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"model": "voice-enrollment",
"audio_url": "https://your-cdn.com/samples/my-voice.wav",
"preferred_name": "myvoice"
}
'{
"created": 1775123456,
"id": "task-unified-1775123456-abcd1234",
"model": "voice-enrollment",
"object": "audio.generation.task",
"progress": 0,
"status": "pending",
"task_info": {
"can_cancel": false,
"estimated_time": 60,
"audio_type": "voice_clone"
},
"type": "audio",
"usage": {
"credits_reserved": 0.001
}
}Autorisations
Tous les points d’accès exigent une authentification par token Bearer
Obtenir une clé API :
Rendez-vous dans Gestion des clés API pour obtenir votre clé
Ajoutez cet en-tête :
Authorization: Bearer YOUR_API_KEY
Corps
- Clonage vocal (audio_url)
- Conception vocale (voice_prompt)
Créez une voix depuis l’enregistrement d’une personne. audio_url sélectionne le clonage ; omettez les champs de conception voice_prompt, preview_text, sample_rate et response_format. Un texte de conception non vide, une fréquence non nulle ou un format non vide renvoie 400. sample_rate: 0/null et response_format: ""/null sont traités comme absents.
Nom du modèle
voice-enrollment "voice-enrollment"
URL de l’enregistrement à cloner. Ce champ sélectionne le clonage vocal et ne peut pas être fourni avec voice_prompt
Exigences de l’URL :
- HTTP ou HTTPS, accès public sans authentification
- Adresse locale ou privée :
400(invalid_media_url) - Maximum
2048caractères - Protocole non HTTP(S), comme FTP :
400(invalid_media_url) - Liens uniquement, pas de Base64 ; une URI de données Base64 renvoie
400(invalid_parameter)
Exigences audio (sinon la tâche peut échouer) :
- WAV, MP3 ou M4A
- Au plus 60 secondes ; trop peu de parole peut aussi échouer (un enregistrement de 2 secondes a échoué lors des tests)
- Taille maximale
10 MB - Fréquence d’échantillonnage d’au moins
16 kHz - Voix humaine claire obligatoire ; silence, musique et autres sons sans parole sont refusés
Conseils d’enregistrement :
- 10–20 secondes, dont au moins 5 secondes de lecture continue et claire ; pauses d’au plus 2 secondes
- Mono ; seul le premier canal d’un enregistrement stéréo est utilisé
- Sans musique, bruit de fond ou autre voix ; parlez normalement, sans chanter
Si l’audio ne peut pas être téléchargé ou ne respecte pas les exigences, la tâche échoue avec remboursement intégral
Clonez uniquement votre propre voix ou une voix avec autorisation explicite
2048[^\u0009-\u000D\u0020\u0085\u00A0\u1680\u2000-\u200A\u2028\u2029\u202F\u205F\u3000]"https://your-cdn.com/samples/my-voice.wav"
Préfixe du nom de voix
Contraintes :
- 1–10 lettres anglaises ou chiffres ; ni underscore ni autre symbole
- Les majuscules sont converties en minuscules
- L’unicité n’est pas requise
Nom complet : qwen-audio-3.1-tts-flash-{preferred_name}-{32-character-id} pour le clonage, qwen-audio-3.1-tts-flash-vd-{preferred_name}-{32-character-id} pour la conception
Exemple avec myvoice : qwen-audio-3.1-tts-flash-myvoice-5996beec833d41f4982158347ba97fae
10^[a-zA-Z0-9]+$"myvoice"
Pour le clonage, langue parlée dans l’enregistrement, afin de mieux extraire la voix. Pour la conception, préférence linguistique de la voix ; utilisez la même langue que preview_text
Par défaut zh si absent
zh, en, ja, ko, de, fr, it, ru, pt, es "zh"
Modèle TTS qui utilisera la voix. Une seule valeur est actuellement acceptée et utilisée par défaut ; les autres renvoient 400
| Valeur | Description |
|---|---|
qwen-audio-3.1-tts-flash | Qwen Audio 3.1 TTS Flash, non streaming (valeur par défaut et unique) |
qwen-audio-3.1-tts-flash "qwen-audio-3.1-tts-flash"
URL HTTPS de rappel pour le résultat de la tâche
Déclenchement :
- À la fin (
completed) ou à l’échec (failed) de la tâche - Après confirmation de la facturation
Sécurité :
- HTTPS uniquement
- Adresses IP privées interdites (127.0.0.1, 10.x.x.x, 172.16–31.x.x, 192.168.x.x, etc.)
- URL de
2048caractères maximum
Livraison :
- Délai d’expiration :
10secondes - Au plus
3nouvelles tentatives après un échec, avec délais de1/2/4secondes - Corps du rappel au même format que la réponse de consultation de tâche
- Un statut 2xx indique le succès ; les autres déclenchent une nouvelle tentative
"https://your-domain.com/webhooks/voice-completed"
Réponse
Tâche de création de voix acceptée
Horodatage de création de la tâche
1775123456
ID de tâche
"task-unified-1775123456-abcd1234"
Modèle effectivement utilisé
"voice-enrollment"
Type précis de l’objet de tâche
audio.generation.task Progression de la tâche en pourcentage (0–100)
0 <= x <= 1000
État de la tâche
pending, processing, completed, failed "pending"
Détails de la tâche audio
Show child attributes
Show child attributes
Type de sortie de la tâche
audio "audio"
Informations d’utilisation et de facturation
Show child attributes
Show child attributes