Metadata-Version: 2.4
Name: lectura
Version: 3.0.0
Summary: Suite complète de traitement linguistique du français — tokenisation, phonémisation, alignement, syllabation, formules, lexique
Author-email: Max Carriere <contact@lec-tu-ra.com>
License: AGPL-3.0-or-later
Project-URL: Homepage, https://www.lec-tu-ra.com/solutions/modules/
Project-URL: Repository, https://github.com/maxcarriere/lectura-modules
Project-URL: Issues, https://github.com/maxcarriere/lectura-modules/issues
Keywords: nlp,french,g2p,aligneur,syllabeur,tokeniseur,phonétique
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Science/Research
Classifier: License :: OSI Approved :: GNU Affero General Public License v3 or later (AGPLv3+)
Classifier: Natural Language :: French
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: Text Processing :: Linguistic
Requires-Python: >=3.10
Description-Content-Type: text/markdown
License-File: LICENCE.txt
Requires-Dist: lectura-tokeniseur>=2.0
Requires-Dist: lectura-phonemiseur>=4.0
Requires-Dist: lectura-graphemiseur>=4.0
Requires-Dist: lectura-aligneur>=4.0
Requires-Dist: lectura-formules>=2.0
Requires-Dist: lectura-lexique>=1.0
Requires-Dist: lectura-correcteur>=1.0
Provides-Extra: onnx
Requires-Dist: lectura-phonemiseur[onnx]>=4.0; extra == "onnx"
Requires-Dist: lectura-graphemiseur[onnx]>=4.0; extra == "onnx"
Dynamic: license-file

# Lectura NLP — Modules de traitement du langage naturel pour le francais

Briques logicielles autonomes pour le traitement du francais : tokenisation,
phonetique, syllabes, formules, correction orthographique et grammaticale.
Installez tout d'un coup avec `pip install lectura` ou chaque module independamment.

## Modules atomiques (couche 1)

| Module | Description | Version | pip install |
|--------|-------------|---------|-------------|
| **[Tokeniseur](Tokeniseur/)** | Normalisation et tokenisation du francais, detection de formules | 2.0.0 | `pip install lectura-tokeniseur` |
| **[Formules](Formules/)** | Lecture algorithmique des formules (nombres, dates, heures...) | 2.0.0 | `pip install lectura-formules` |
| **[Phonemiseur](Phonemiseur/)** | Phonemiseur neural : G2P + POS + Morpho + Liaison + Groupes de lecture | 4.0.0 | `pip install lectura-phonemiseur` |
| **[Graphemiseur](Graphemiseur/)** | Graphemiseur neural : P2G + POS + Morpho (IPA vers orthographe) | 4.0.0 | `pip install lectura-graphemiseur` |
| **[Aligneur-Syllabeur](Aligneur/)** | Alignement grapheme-phoneme, syllabation | 4.0.0 | `pip install lectura-aligneur` |
| **[Correcteur](Correcteur/)** | Correcteur orthographique et grammatical du francais | 1.0.0 | `pip install lectura-correcteur` |

## Pipeline (couche 2)

| Module | Description | Version | pip install |
|--------|-------------|---------|-------------|
| **[G2P-Pipeline](G2P-Pipeline/)** | Pipeline complet texte → phonetique (tokeniseur + formules + phonemiseur) | 1.0.0 | `pip install lectura-g2p` |

## Synthese vocale

| Module | Description | Version | pip install |
|--------|-------------|---------|-------------|
| **[TTS-Monospeaker](TTS-Monospeaker/)** | Synthese vocale neuronale monospeaker francais (FastPitch + HiFi-GAN) | 1.0.0 | `pip install lectura-tts-monospeaker` |
| **[TTS-Diphone](TTS-Diphone/)** | Synthese vocale par concatenation de diphones WORLD (prosodie reglee) | 1.2.0 | `pip install lectura-tts-diphone` |

## Caracteristiques

- **Zero dependance** sur les modules de base (Tokeniseur, Formules, Aligneur)
- **4 backends d'inference** pour G2P/P2G : API, ONNX Runtime, NumPy, Pure Python
- **Type hints complets** (Python 3.10+, PEP-561)
- **Modeles compacts** : G2P = 1.8 Mo, P2G = 2.6 Mo (ONNX INT8)

## Installation rapide

```bash
# Tous les modules d'un coup
pip install lectura

# Avec backends ONNX pour G2P/P2G (recommande)
pip install lectura[onnx]

# Un seul module
pip install lectura-tokeniseur

# Phonemiseur avec backend ONNX
pip install lectura-phonemiseur[onnx]
```

## Exemple

```python
from lectura_tokeniseur import tokenise
from lectura_formules import lire_formule

# Tokeniser du texte francais
tokens = tokenise("Le 1er janvier 2025, j'ai lu 42 pages.")

# Lire une formule
result = lire_formule("NOMBRE", "42")
print(result.display_fr)  # "quarante-deux"
```

## Licence

Les modules Lectura sont distribues sous licence **[AGPL-3.0](LICENCE.txt)** (non commerciale).

Les modeles pre-entraines (.onnx) sont soumis a des conditions specifiques :
voir [MODEL_LICENCE.md](MODEL_LICENCE.md).

Pour un usage commercial, contacter **[contact@lec-tu-ra.com](mailto:contact@lec-tu-ra.com)**.

## Auteur

Max Carriere — [lec-tu-ra.com](https://www.lec-tu-ra.com)
