Skip to main content
Voice Enhance part d’une voix existante (une voix phare, un clone ou une voix créée avec Voice Design) et produit des candidats plus propres du même locuteur, dans la même langue. Un clone issu d’un enregistrement bruité revient avec un bruit de fond réduit et une cible de qualité appliquée ; le locuteur, la langue et le débit sont conservés. Vous écoutez les candidats, convertissez celui qui vous plaît, et il fonctionne comme n’importe quel autre voice_id : REST, WebSocket et Speech-to-Speech.
Comparez chaque candidat à sa source avant de le convertir.

Vous partez d'un enregistrement ?

Clonez d’abord le locuteur, puis améliorez le clone.

Vous partez d'une description ?

Voice Design crée une nouvelle voix à partir de mots. Enhance améliore une voix que vous avez déjà.

Fonctionnement

1. Choisir une source

Une voix phare, l’un de vos clones ou un candidat Voice Design.

2. Améliorer

Une seule requête, aucun autre réglage. Les candidats sont prêts en une vingtaine de secondes.

3. Écouter

Comparez chaque candidat à la source sur la même phrase en synthèse vocale.

4. Convertir

Transformez votre choix en voice_id permanent.
La source n’est jamais modifiée. Chaque requête crée n_samples nouveaux candidats, des brouillons dotés d’un identifiant vox_emb_, exactement comme les candidats Voice Design : vous les écoutez via POST /post/speech/tts, les convertissez avec POST /voices/from-embedding, et ils expirent au bout de 30 jours s’ils ne sont pas convertis.

Accès

URL de base https://api.gradium.ai/api, clé API dans l’en-tête x-api-key.

Démarrage rapide

L’exemple améliore un clone français. Remplacez $SOURCE par n’importe quel identifiant de voix ou de candidat qui vous appartient, ou par l’identifiant d’une voix phare.
1

Améliorer la voix

201 Created
Il n’y a rien d’autre à régler : la langue vient de la voix source, tout comme le locuteur. La requête est vérifiée avant toute mise en file d’attente : une source inconnue ou une source qui ne peut pas être améliorée échoue dès cette étape avec 404 ou 409, et rien n’est facturé.
2

Attendre les candidats

200 OK
Les candidats améliorés sont généralement prêts en quinze à vingt secondes. Dans la liste, kind vaut enhance et enhance_config contient l’identifiant de la source et sa langue. language est la langue de la voix source, que le candidat conserve. prompt est vide pour un candidat amélioré.
3

Écouter un candidat

Passez l’identifiant du candidat comme voice_id sur l’endpoint de synthèse vocale, avec un texte dans la langue de la voix. Synthétisez aussi la même phrase avec la voix source : la différence entre les deux fichiers correspond à ce qu’a fait Enhance.
Les candidats sont soumis aux mêmes restrictions que les candidats Voice Design : REST uniquement, texte d’écoute plafonné, et une erreur opaque 404 Embedding not found tant qu’ils ne sont pas prêts.
4

Convertir le candidat en voix

201 Created
uid est votre voice_id permanent. Conservez-le. La nouvelle voix garde la language de la source. La conversion est gratuite, occupe un emplacement de voix personnalisée et supprime l’expiration du candidat. Les candidats issus d’une même requête sont des variations : si l’un d’eux vous plaît, convertissez-le plutôt que de relancer la requête. La voix source n’est pas modifiée : vous pouvez donc conserver les deux, ou supprimer la source une fois satisfait de la version améliorée.

Exemple complet

Définissez GRADIUM_API_KEY et SOURCE, puis lancez le script. Il crée une vraie voix dans votre compte.
voice_enhance.py

Sources compatibles

Conseils issus de nos tests

  • Comparez avec la source lisant le même texte. Enhance change la façon dont la voix sonne, pas ce qu’elle dit ni la langue dans laquelle elle parle. Placez la source et le candidat côte à côte dans votre interface de validation, sur la même phrase.
  • Commencez par un clone. Les voix phares sont déjà produites à partir d’enregistrements propres ; le clone que vous aimeriez entendre plus propre est la source naturelle.
  • Les candidats varient. Cinq échantillons issus d’une requête, ou cinq requêtes distinctes, donnent cinq résultats légèrement différents. Convertissez celui qui vous plaît ; ne comptez pas sur une nouvelle exécution pour le reproduire.
  • Conservez la source. Convertir un candidat ne remplace pas la voix source. Basculez votre voice_id une fois que vous avez écouté, et supprimez l’ancienne voix lorsque vous n’en avez plus besoin.
  • Prévoyez l’attente. Les candidats améliorés prennent quinze à vingt secondes, plus que les candidats Voice Design. Interrogez régulièrement leur état plutôt que de bloquer une requête dessus.

Cycle de vie des candidats

Les candidats améliorés suivent le cycle de vie des candidats Voice Design : conservation de 30 jours, levée à la conversion, et DELETE /voice-generator/embeddings/{embedding_id} pour en supprimer un plus tôt. Supprimer la voix ou le candidat source après le 201 ne fait jamais échouer la requête : chaque candidat conserve sa propre copie de la source.

Limites

Erreurs

Les erreurs prennent la forme {"detail": "..."}, sauf 422, qui contient une liste d’erreurs par champ.

Étapes suivantes

Voix personnalisées

Clonez un locuteur, avec une langue, afin que le clone puisse être amélioré.

Voice Design

Créez plutôt une voix à partir d’une description.

Gérer les voix

Définissez une langue sur un ancien clone, listez et supprimez des voix.

Référence API

L’endpoint enhance dans son intégralité.