Logo Lanfrica

Arnel7/fongbe-g2p

Domaine:

natural language processing

Type de record:

software
Créateur:
Arn
Hôte:
# fongbe_g2p Conversion **graphème → phonème** pour le **fongbe** à base de règles. Sortie en **IPA avec marques de ton**, prête pour un front-end TTS ou une lexique de prononciation. Bibliothèque standard Python uniquement — **aucune dépendance**. ```python from fongbe_g2p import g2p, apply_sandhi g2p("gbɛtɔ́") # 'ɡ͡b ɛ˧ t ɔ˥' (personne) g2p("kpɔ́n") # 'k͡p ɔ̃˥' (regarder — nasalisation) g2p("vodúngbe") # 'v o˧ d ũ˥ ɡ͡b e˧' (dimanche) g2p("Mawu", sep="") # 'ma˧wu˧' (sans séparateur) g2p("gbɛtɔ́", with_tone=False) # 'ɡ͡b ɛ t ɔ' ``` ## Ce que fait le module | | | |---|---| | **Digraphes** | `gb → ɡ͡b`, `kp → k͡p`, `ny → ɲ` (segmentation par plus longue correspondance) | | **Voyelles orales** | `a e ɛ i o ɔ u` | | **Nasalisation contextuelle** | `Vn → Ṽ` quand `n` clôt la syllabe ; `n` devant voyelle reste une consonne, et `ny` n'est jamais nasalisant | | **4 tons** | haut `˥` (aigu), moyen `˧` (non marqué), bas `˩` (grave), modulé `˩˥` (caron) | | **Homoglyphes** | `ε→ɛ`, `Đ/đ/ð→ɖ`, `ọ→ɔ`, `ẹ→ɛ`, `ɩ→i`… normalisés en entrée | | **`r → l`** | conformément à la note du document source | Les tons sont lus via une décomposition **NFD** : la voyelle et sa marque de ton sont traitées séparément, donc rien n'est perdu quel que soit l'encodage de l'entrée. ## Sandhi tonal `sandhi_fongbe.py` implémente la règle contextuelle la plus déterministe : > Dans une succession de tons **bas**, seul le **dernier** reste bas ; les autres remontent > au ton **moyen**. → `B B B` devient `M M B` ```python apply_sandhi("è kò nù") # 'e ko nù' ``` Les résolutions du **ton modulé** (`V→H` ou `V→B`) dépendent du contexte *grammatical* (impératif, pronom, négation, composition) et ne sont **pas** déductibles de la seule orthographe : elles sont laissées inchangées, volontairement. > Cette partie est bien moins mûre que le G2P — voir Limites connues > pour son apport réellement mesuré. Pour valider la règle sur un corpus …

Languages

Licenses