ADIA_TTS est un modèle de synthèse vocale (Text-to-Speech) open source en wolof, développé par CONCREE. Basé sur le modèle parler-tts-mini-multilingual-v1.1, il représente une avancée significative dans la synthèse vocale pour la langue wolof.
Points clés
Entraîné sur 40 heures de données vocales en wolof
Affiné pendant 100 epochs (~168 heures d'entraînement)
Qualité vocale naturelle et fluide
Voix unique avec contrôle des caractéristiques vocales via description
Caractéristiques techniques
Spécifications du modèle
Architecture : parler-tts-mini-multilingual-v1.1
Taille du modèle : 1.88 GB
Format du modèle : PyTorch
Fréquence d'échantillonnage : 24kHz
Encodage audio : 16-bit PCM
Performance
Temps moyen d'inférence : secondes/phrase (CPU), 20 secondes/phrase (GPU)
1import torch
2from parler_tts import ParlerTTSForConditionalGeneration
3from transformers import AutoTokenizer
4import soundfile as sf
56device ="cuda:0"if torch.cuda.is_available()else"cpu"78# Chargement du modèle9model = ParlerTTSForConditionalGeneration.from_pretrained("CONCREE/Adia_TTS").to(device)10tokenizer = AutoTokenizer.from_pretrained("CONCREE/Adia_TTS")1112# Texte en wolof à synthétiser13text ="Entreprenariat ci Senegal dafa am solo lool ci yokkuteg koom-koom, di gëna yokk liggéey ak indi gis-gis yu bees ci dëkk bi."1415# Description du style vocal16description ="A clear and educational voice, with a flow adapted to learning"1718# Génération19input_ids = tokenizer(description, return_tensors="pt").input_ids.to(device)20prompt_ids = tokenizer(text, return_tensors="pt").input_ids.to(device)2122audio = model.generate(23 input_ids=input_ids,24 prompt_input_ids=prompt_ids,25)2627# Sauvegarde28sf.write("output.wav", audio.cpu().numpy().squeeze(), model.config.sampling_rate)
Configuration avancée
Paramètres de génération
py
1generation_config ={2"temperature":0.8,# Contrôle la variabilité de la sortie3"max_new_tokens":1000,# Longueur maximale de la séquence générée4"do_sample":True,# Active l'échantillonnage aléatoire5"top_k":50,# Limite le nombre de tokens considérés6"repetition_penalty":1.2,# Pénalise la répétition de tokens7}89audio = model.generate(10 input_ids=input_ids,11 prompt_input_ids=prompt_ids,12**generation_config
13)
Styles vocaux
Exemples de descriptions pour différents styles :
Voix naturelle
description = "A warm and natural voice, with a conversational flow"
Voix professionnelle
description = "A professional, clear and composed voice, perfect for formal presentations"
Voix pour l'éducation
description = "A clear and educational voice, with a flow adapted to learning"
Limitations
Performance réduite sur les phrases très longues
Gestion limitée des nombres et des dates
Temps de chargement initial du modèle relativement plus long
Le modèle est limité à 200 caractères maximum par inférence sans segmentation. Pour les textes plus longs, une segmentation manuelle est nécessaire.
La qualité des transitions entre segments peut varier selon la méthode de segmentation choisie
Il est recommandé de segmenter le texte aux frontières naturelles (phrases, paragraphes) pour de meilleurs résultats
Références
@misc{CONCREE-2024-Adia_TTS,
author = {CONCREE},
title = {Adia_TTS},
year = {2025},
publisher = {Hugging Face},
journal = {Hugging Face repository},
howpublished = {\url{https://huggingface.co/CONCREE/Adia_TTS}}
}
@misc{lyth2024natural,
title={Natural language guidance of high-fidelity text-to-speech with synthetic annotations},
author={Dan Lyth and Simon King},
year={2024},
eprint={2402.01912},
archivePrefix={arXiv},
primaryClass={cs.SD}
}
Licence
Ce projet est sous licence Apache 2.0. Voir le fichier LICENSE pour plus de détails.
Conditions d'utilisation
Les utilisateurs s'engagent à utiliser le modèle d'une manière qui respecte la langue wolof et la culture sénégalaise.
Nous encourageons l'utilisation de ce modèle pour développer des solutions qui améliorent l'accessibilité numérique pour les locuteurs wolof et contribuent à réduire la fracture numérique. Les projets visant l'inclusion numérique sont particulièrement bienvenus.
Toute utilisation du modèle doit mentionner CONCREE comme créateur original. Les utilisateurs sont fortement encouragés à partager leurs améliorations avec la communauté.
L'utilisation commerciale est autorisée selon les termes de la licence Apache 2.0.