Pipeline P2G
Pipeline P2G
Phonèmes IPA → texte français — pipeline complet avec formules, noms propres et entités
Présentation
Le pipeline P2G orchestre le Graphémiseur (modèle core) avec des modules complémentaires pour reconstituer du texte français complet à partir de phonèmes IPA.
Architecture en deux couches
| Couche | Package | Contenu | Performance |
|---|---|---|---|
| Couche 1 | lectura-graphemiseur |
Modèle P2G core + lex_select + cohérence morpho + accents | ~95% word accuracy |
| Couche 2 | lectura-p2g |
Pipeline complet = graphémiseur + formules + noms propres + entités | ~96% word accuracy |
Pipeline
Phonèmes IPA (mots séparés)
│
▼
┌──────────────────────┐
│ Graphémiseur (V7) │ BiLSTM + attention cross + lex_select
│ │ → orthographe brute + POS + morpho
└────────┬─────────────┘
│
▼
┌──────────────────────┐
│ Lex Rescoring │ lex_select parmi candidats phonétiques
└────────┬─────────────┘
│
▼
┌──────────────────────┐
│ Formules │ reconnaissance nombres, sigles, expressions math
│ │ (mode chiffres par défaut, tolerance="stt" pour STT)
└────────┬─────────────┘
│
▼
┌──────────────────────┐
│ Noms propres │ reconnaissance de ~9000 entités notables
└────────┬─────────────┘
│
▼
┌──────────────────────┐
│ Cohérence morpho │ accords, accents, fusion composés
└────────┬─────────────┘
│
▼
Texte français orthographié
Briques utilisées
| Brique | Package | Rôle dans le pipeline |
|---|---|---|
| Graphémiseur | lectura-graphemiseur |
Modèle P2G core (IPA → ortho) |
| Formules | lectura-formules |
Nombres, sigles en mode inverse |
| Lexique | lectura-lexique |
Phone lexicon pour lex_select |
Exemple de code
# Couche 1 : Graphémiseur core (zéro dépendance)
from lectura_graphemiseur import creer_engine
engine = creer_engine()
result = engine.analyser(["le", "ɑ̃fɑ̃", "sɔ̃", "aʁive", "a", "la", "mɛzɔ̃"])
print(result["ortho"]) # ['les', 'enfants', 'sont', 'arrives', 'a', 'la', 'maison']
# Couche 2 : Pipeline complet (formules + noms propres)
from lectura_p2g import creer_engine
engine = creer_engine()
result = engine.analyser(["sɛ̃k", "sɑ̃", "vɛ̃", "e", "œ̃"])
print(result["ortho"]) # ['521'] — formules reconnues et fusionnées
Essayer en ligne
Installation
# Modèle core (zéro dépendance)
pip install lectura-graphemiseur # mode API (zero config)
pip install lectura-graphemiseur[onnx] # backend ONNX Runtime local
# Pipeline complet (graphemiseur + formules + noms propres)
pip install lectura-p2g
Le graphémiseur (couche 1) est zéro dépendance — pas d’import de lectura_formules. Le pipeline complet (couche 2) orchestre formules, fusion de composés, cohérence morpho, noms propres et reconnaissance d’entités notables.
Caractéristiques techniques
- 3.2M paramètres (graphémiseur core), ONNX INT8 = 4.4 Mo
- 4 backends : API (zero config), ONNX Runtime (~2 ms), NumPy (~50 ms), pur Python (~200 ms)
- Lex_select : sélection lexicale parmi candidats phonétiques
- Pipeline
lectura-p2g: formules (mode chiffres, tolerance=”stt”), fusion composés, noms propres, ~9000 entités notables - Zéro dépendance (couche 1) : le graphémiseur n’importe pas
lectura_formules - Python 3.10+ avec type hints complets (PEP-561)
- Licence : AGPL-3.0 — licence commerciale sur demande : nous contacter