Correcteur orthographique et grammatical du francais — regles, homophones, accords, conjugaison, participes passes
Project description
Lectura Correcteur
Correcteur orthographique et grammatical du français. Pipeline à base de règles linguistiques avec support optionnel de modèles statistiques (BiLSTM, n-gram).
Installation
pip install lectura-correcteur
Dépendance : lectura-lexique (installée automatiquement).
Utilisation rapide
from lectura_correcteur import creer_correcteur
# Mode automatique : local si lexique disponible, sinon API
correcteur = creer_correcteur()
result = correcteur.corriger("Les enfant mange des pomme.")
print(result.phrase_corrigee) # "Les enfants mangent des pommes."
for c in result.corrections:
print(f" {c.original} -> {c.corrige} ({c.type_correction.value})")
Avec un lexique local :
from lectura_lexique import Lexique
from lectura_correcteur import Correcteur
lex = Lexique("lexique.db")
correcteur = Correcteur(lex)
result = correcteur.corriger("Les enfant mange des pomme.")
Types de corrections
| Type | Exemples |
|---|---|
| Orthographe | Mots hors lexique, distance d'édition 1-2, fautes AZERTY |
| Accords | Déterminant-nom, adjectif-nom (genre et nombre) |
| Conjugaison | Accord sujet-verbe, terminaisons verbales |
| Homophones | à/a, est/et, son/sont, où/ou, ce/se, ces/ses... |
| Participes passés | Accord avec avoir/être, COD antéposés |
| Resegmentation | Apostrophes SMS (jai → j'ai), agglutinations |
Benchmark comparatif
Évaluation sur 800 phrases issues de Wicopaco (erreurs réelles Wikipedia français).
| Correcteur | Précision | Rappel | F1 | F0.5 | Vitesse |
|---|---|---|---|---|---|
| Lectura (règles + modèles) | 0.94 | 0.73 | 0.82 | 0.89 | ~55 ms/phrase |
| Lectura (règles seules) | 0.93 | 0.65 | 0.77 | 0.86 | ~15 ms/phrase |
| Grammalecte | 0.54 | 0.26 | 0.35 | 0.44 | ~40 ms/phrase |
| LanguageTool | 0.30 | 0.37 | 0.33 | 0.31 | ~12 600 ms/phrase |
Configuration
from lectura_correcteur import CorrecteurConfig
config = CorrecteurConfig(
activer_orthographe=True, # Vérification lexicale (OOV)
activer_grammaire=True, # Accords, conjugaison, homophones
activer_resegmentation=True, # Apostrophes et agglutinations
activer_azerty=True, # Corrections spécifiques clavier AZERTY
max_suggestions=5, # Nombre max de suggestions par mot
activer_editeur_homophones=True, # BiLSTM (si modèle présent)
activer_lm=True, # Modèle de langue n-gram (si présent)
)
correcteur = Correcteur(lex, config=config)
Mode sans modèles
Le correcteur fonctionne sans fichiers de modèles (mode règles uniquement). Les modèles optionnels (BiLSTM, n-gram) améliorent la précision sur les homophones mais ne sont pas nécessaires. Si les fichiers sont absents, le correcteur se rabat automatiquement sur les règles linguistiques.
Compatibilité lexique
Le correcteur fonctionne avec n'importe quelle base lexicale chargée via lectura-lexique (Lexique383, GLAFF, LeXiK, ou tout lexique au format compatible).
Dépendances
lectura-lexique: accès au lexique français (formes, fréquences, POS, morphologie)
Licence
Ce module est distribué sous licence AGPL-3.0 (non commerciale) — voir LICENCE.txt.
Pour un usage commercial, contacter contact@lec-tu-ra.com.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file lectura_correcteur-1.0.1-py3-none-any.whl.
File metadata
- Download URL: lectura_correcteur-1.0.1-py3-none-any.whl
- Upload date:
- Size: 926.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
885cd9a878628028e933c462e90dca2f907f23aac90a6de1158893c932e7bff1
|
|
| MD5 |
6b3e377a7a0a26b8924c0628b63bc5c0
|
|
| BLAKE2b-256 |
fb136376192fa159cc6576948bca67b9987a5af0d1d30c4d745936b43aaccf6f
|