Skip to content

Guide complet d'utilisation de l'API ElevenLabs pour Python

Updated on

L'API ElevenLabs est un outil essentiel pour les développeurs et les créateurs, permettant aux utilisateurs de Python d'intégrer des voix convaincantes et naturelles dans leurs applications en seulement quelques lignes de code. Ce guide détaillé vous guidera à travers l'installation, l'utilisation, le support multilingue, la personnalisation des voix, les fonctionnalités de flux en temps réel et la configuration de la clé API de l'API ElevenLabs.

Configuration de l'API ElevenLabs

L'API ElevenLabs est conçue pour être simple à installer. Tout ce dont vous avez besoin est une commande via pip, l'installateur de packages intégré de Python :

pip install elevenlabs

Avec cette commande, ElevenLabs est immédiatement disponible sur votre système pour vos scripts Python.

Utilisation de l'API

Une fois installée, l'API ElevenLabs est tout aussi simple à utiliser. Considérons un exemple :

from elevenlabs import generate, play
 
audio = generate(
  text="Bonjour ! Je m'appelle Robert, ravi de faire votre connaissance !",
  voice="Robert",
  model="eleven_monolingual_v1"
)
 
play(audio)

Cet exemple utilise la voix 'Robert' du modèle 'eleven_monolingual_v1' pour générer et lire l'audio pour le texte donné.

Exploitation des capacités multilingues

Une caractéristique remarquable de l'API ElevenLabs est son support robuste pour de multiples langues. Le modèle eleven_multilingual_v1 offre aux développeurs la possibilité de créer des audios de synthèse vocale dans plusieurs langues, dont l'anglais, l'allemand, le polonais, l'espagnol, l'italien, le français, le portugais et l'hindi. Regardons un exemple différent :

from elevenlabs import generate, play
 
audio = generate(
    text="Bonjour ! Je m'appelle Marcel, ravi de vous rencontrer !",
    voice="Marcel",
    model='eleven_multilingual_v1'
)
 
play(audio)

Cet exemple génère et lit un audio en français en utilisant la voix 'Marcel' du modèle 'eleven_multilingual_v1'.

Expérimentation avec différentes voix

L'API ElevenLabs vous permet de lister toutes les voix disponibles avec la fonction voices() :

from elevenlabs import voices, generate
 
available_voices = voices()
 
audio = generate(text="Salutations, Terriens !", voice=available_voices[0])
 
print(available_voices)

Cet exemple génère et lit un audio en utilisant la première voix de la liste des voix disponibles.

Clonage des voix

Avec l'API ElevenLabs, vous pouvez cloner n'importe quelle voix instantanément. Gardez à l'esprit que le clonage de voix nécessite une clé API. Voici une démonstration de comment cloner une voix :

from elevenlabs import clone, generate, play
 
voice = clone(
    name="Charlie",
    description="Une voix masculine britannique avec un ton profond et résonant. Idéal pour les livres audio.",
    files=["./sample_0.mp3", "./sample_1.mp3", "./sample_2.mp3"],
)
 
audio = generate(text="Salutations ! Je suis une voix clonée !", voice=voice)
 
play(audio)

Cet exemple montre le processus de clonage d'une voix et la génération d'un audio avec la voix clonée.

Flux en temps réel

L'API ElevenLabs permet de diffuser de l'audio en temps réel pendant sa génération. Voici une démonstration rapide :

from elevenlabs import generate, stream
 
audio_stream = generate(
  text="Accordez-vous... pour une voix en streaming en temps réel !",
  stream=True
)
 
stream(audio_stream)

Configuration de la clé API

L'API de base a une capacité de caractères limitée. Pour étendre cette limite, vous pouvez obtenir une clé API gratuite auprès d'ElevenLabs. Cette clé peut être configurée comme variable d'environnement ELEVEN_API_KEY, ou vous pouvez la fournir comme argument de chaîne à la fonction generate() :

from elevenlabs import set_api_key
set_api_key("<VOTRE_CLÉ_API>")

Dans cet exemple, nous configurons la clé API dans notre script, ce qui étend la limite de caractères de notre fonctionnalité de synthèse vocale.

En intégrant l'API ElevenLabs dans vos scripts Python, vous pourrez faire parler vos applications avec des voix naturelles et attrayantes. Il est temps d'améliorer vos projets avec la puissance de la parole réaliste.

Dépannage de l'API ElevenLabs

Bien que ElevenLabs soit encore en version bêta et que le modèle multilingue soit expérimental, il existe des mesures que vous pouvez prendre pour optimiser votre utilisation et votre expérience. Lors de la génération, vous pouvez remarquer des changements de tonalité, des transitions de voix ou des intrusions de bruits. L'importance de ces problèmes dépend largement du modèle et de la voix utilisés. Bien que nous travaillions continuellement sur ces modèles pour les améliorer, nous avons quelques conseils pour atténuer ces problèmes.

Nous vous recommandons de diviser le texte en sections plus courtes, de préférence inférieures à 800 caractères. Cela peut contribuer à maintenir une meilleure qualité audio. De plus, pour les voix anglaises, le modèle monolingue a tendance à offrir plus de stabilité.

Voici quelques facteurs clés à prendre en compte lors du dépannage :

  1. Longueur de fragment de texte : Les voix peuvent se dégrader avec le temps, et la dégradation est plus rapide avec le modèle multilingue expérimental. Notre équipe travaille activement à résoudre ce problème.

  2. Monolingue ou multilingue : Le modèle monolingue est plus stable, mais ne prend officiellement en charge que l'anglais. Le modèle multilingue est expérimental et peut présenter des particularités sur lesquelles nous travaillons continuellement.

  3. Type de voix : Certaines voix préfabriquées et des voix personnalisées peuvent commencer à chuchoter pendant de plus longues générations. Lors de l'utilisation de voix clonées, la qualité des échantillons utilisés est cruciale pour le rendu final.

  4. Paramètres utilisés : Les paramètres de stabilité et de similarité peuvent affecter les performances de la voix et la présence d'artefacts. Le modèle multilingue peut mal prononcer les nombres et les symboles, il peut donc être préférable de les écrire en toutes lettres.

Bien que ces solutions soient temporaires, nous espérons qu'elles pourront améliorer votre expérience avec l'API ElevenLabs. Notre équipe développe activement de nouvelles technologies, telles que notre prochaine mise à jour "projects", pour faciliter les générations extrêmement longues.

Conclusion

L'API ElevenLabs pour Python est un outil puissant qui offre aux créateurs et développeurs les voix les plus réalistes. Son installation est un jeu d'enfant et son utilisation est simplifiée grâce à un code clair et concis. Malgré sa phase bêta, elle offre un support multilingue robuste, diverses options de voix, du streaming en temps réel et une clé d'API configurable pour augmenter la limite de caractères. Avec les conseils fournis dans cet article, vous êtes maintenant prêt à naviguer dans l'API, résoudre les problèmes potentiels et enrichir vos applications avec une parole réaliste. Adoptez le futur de la synthèse vocale avec l'API ElevenLabs.

Foire aux questions (FAQ)

Q : Comment puis-je installer l'API ElevenLabs ? R : Vous pouvez installer l'API ElevenLabs en utilisant pip avec la commande pip install elevenlabs.

Q : Comment puis-je générer un fichier audio en utilisant l'API ElevenLabs ? R : Vous pouvez générer un fichier audio en utilisant la fonction generate, en spécifiant le texte, la voix et le modèle. Ensuite, utilisez la fonction play pour jouer le fichier audio généré.

Q : L'API ElevenLabs supporte-t-elle plusieurs langues ? R : Oui, le modèle eleven_multilingual_v1 supporte plusieurs langues, dont l'anglais, l'allemand, le polonais, l'espagnol, l'italien, le français, le portugais et l'hindi.

Q : Quels problèmes puis-je rencontrer lors de l'utilisation de l'API ElevenLabs ? R : Étant donné que l'API ElevenLabs est encore en version bêta, vous pouvez rencontrer des changements de tonalité, des transitions de voix ou du bruit lors de la génération audio. Raccourcir la longueur du texte, utiliser le modèle monolingue pour l'anglais et prendre en compte le type de voix et les paramètres utilisés peuvent atténuer ces problèmes.

Q : Comment puis-je étendre la limite de caractères de l'API ElevenLabs ? R : Vous pouvez étendre la limite de caractères en obtenant une clé d'API gratuite auprès de ElevenLabs et en la configurant en tant que variable d'environnement ELEVEN_API_KEY, ou en la fournissant en tant qu'argument de chaîne à la fonction generate.