Skip to main content

Pipeline STT complet du francais — audio vers texte (CTC + P2G)

Project description

Lectura STT — Pipeline STT complet du francais

Pipeline de transcription automatique du francais : audio vers texte. Chaine le decodeur CTC medium (10.6M params, PER ~4.34%) avec le pipeline P2G (phones → orthographe).

WER benchmark : ~23.5% (all) / ~19.7% (parole courante).

Installation

# Mode minimal (CTC uniquement, transcription phonetique)
pip install lectura-stt

# Avec pipeline P2G complet (formules + noms propres)
pip install lectura-stt[p2g]

# Avec backend ONNX (inference locale rapide)
pip install lectura-stt[onnx]

# Avec support micro
pip install lectura-stt[micro]

Exemple

import numpy as np
from lectura_stt import creer_engine

engine = creer_engine()

# Charger un fichier WAV
import wave
with wave.open("bonjour.wav", "rb") as wf:
    sr = wf.getframerate()
    audio = np.frombuffer(
        wf.readframes(wf.getnframes()), dtype=np.int16
    ).astype(np.float32) / 32768.0

result = engine.transcrire(audio, sr=sr)
print(result.ipa)    # "b ɔ̃ ʒ u ʁ | l ə | m ɔ̃ d ."
print(result.texte)  # "Bonjour le monde."

Architecture

Pipeline optimal (avec PhoneLexicon)

Lorsqu'un PhoneLexicon est disponible (via le graphemiseur), le pipeline optimal est active automatiquement :

Audio 16kHz mono
     |
     v
[lectura-ctc]       --> IPA phones "b ɔ̃ ʒ u ʁ | l ə | m ɔ̃ d ."
     |
     v
[parse_ctc_v2]      --> segments enrichis (mots, liaisons, composes, ponctuation)
     |
     v
[strip_liaisons]    --> supprime les liaisons erronees (via lexique phonetique)
     |
     v
[split_elisions]    --> separe les clitiques elides (l'ami → l + ami)
     |
     v
[split_merged_words] --> decoupe les mots sur-segmentes
     |
     v
[P2G analyser_v2]   --> conversion IPA → orthographe avec lex_select
     |
     v
[merge_and_rescore]  --> fusionne les mots sur-segmentes (rescoring lexical)
     |
     v
[try_elision_merges] --> fusionne les clitiques elides adjacents
     |
     v
[rejoin_elisions]    --> reconstruction texte final avec apostrophes et tirets
     |
     v
"Bonjour le monde."

Pipeline simplifie (sans PhoneLexicon)

Audio 16kHz mono
     |
     v
[lectura-ctc]  --> IPA phones "b ɔ̃ ʒ u ʁ | l ə | m ɔ̃ d ."
     |
     v
[_parse_ctc]   --> mots IPA ["bɔ̃ʒuʁ", "lə", "mɔ̃d"] + ponctuation ["."]
     |
     v
[lectura-p2g]  --> ortho ["bonjour", "le", "monde"]
     |
     v
[_assembler]   --> "Bonjour le monde."

Licence

AGPL-3.0-or-later — voir LICENCE.txt. Licence commerciale disponible — voir LICENCE-COMMERCIALE.md.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

lectura_stt-3.2.3.tar.gz (55.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

lectura_stt-3.2.3-py3-none-any.whl (54.9 kB view details)

Uploaded Python 3

File details

Details for the file lectura_stt-3.2.3.tar.gz.

File metadata

  • Download URL: lectura_stt-3.2.3.tar.gz
  • Upload date:
  • Size: 55.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.9

File hashes

Hashes for lectura_stt-3.2.3.tar.gz
Algorithm Hash digest
SHA256 ffe206d8d3c3abab3b77bd6ff0ffa98352fabffd7d25e2f8d5cbb78cc5610381
MD5 f1b6bb4e95d9206a46787e16cb8506d9
BLAKE2b-256 bb0925ef186a36a72be82359e2362264df6ff6371608a70595d06bdc98fda9f7

See more details on using hashes here.

File details

Details for the file lectura_stt-3.2.3-py3-none-any.whl.

File metadata

  • Download URL: lectura_stt-3.2.3-py3-none-any.whl
  • Upload date:
  • Size: 54.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.9

File hashes

Hashes for lectura_stt-3.2.3-py3-none-any.whl
Algorithm Hash digest
SHA256 e0eb1f086c00134c9e35bcf362a4fbdace499d60954e03225eb30a8749f0c0de
MD5 90118c3880040b48ef670c32dc03bd79
BLAKE2b-256 224ee1ef15583470090d108017adceda4f090f29c586f899399fde383f45d684

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page