skillfed

texterrors

For WER

texterrors v1.1.8 875.9K downloads/30d#4,832 on PyPI37
Permissive license Apache-2.0 License Active released

What it is and what it does

texterrors is a command-line tool and Python library for evaluating automatic speech recognition and transcription systems. It computes standard metrics like word error rate (WER) and character error rate (CER), then provides detailed aligned error reports showing exactly where and how transcriptions diverged from reference text. The tool supports multiple input formats (ark-like, CTM), can group metrics by speaker or other categories, and offers specialized analysis modes like out-of-vocabulary word tracking and oracle WER selection across multiple hypotheses.

The package depends on Levenshtein for edit-distance alignment, numpy for numerical operations, typer for CLI scaffolding, loguru for logging, regex for pattern matching, and termcolor for colored terminal output. It ships prebuilt wheels for Python 3.10, 3.11, and 3.12 across macOS, Linux, and Windows, making installation straightforward on common platforms. Character-aware alignment is available as an option to produce more intuitive word alignments when words are similar, though it can increase reported WER by exposing insertions and deletions that token-only alignment would hide.

Use it for:

  • Compute aggregate WER/CER metrics on ASR output files to track system performance over time
  • Generate detailed per-utterance alignment reports to diagnose specific transcription errors and patterns
  • Compare multiple ASR systems or hypotheses against the same reference to rank model quality
  • Analyze out-of-vocabulary word recognition rates using OOV-CER for targeted model improvement
  • Extract per-speaker or per-group error metrics from mixed-speaker transcriptions for speaker-specific analysis
  • Produce JSON summaries of top errors for automated reporting and integration into evaluation pipelines

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Scores automatic speech recognition or transcription output against a reference text, computing WER and CER with detailed alignment reports and diagnostic tools.

Yes. texterrors is actively maintained, has no known vulnerabilities, carries a permissive license, and directly solves a common problem in speech recognition evaluation. Medium install friction is acceptable given the prebuilt wheels and straightforward dependency set. Install it if you regularly evaluate ASR or transcription systems.

Install

texterrors on PyPI

pip

pip install texterrors

uv

uv add texterrors

poetry

poetry add texterrors

Installing texterrors

Before you install

Medium install friction due to compiled dependencies (Levenshtein, numpy, regex). Active maintenance with recent release (66 days ago). Supports Python 3.9 or newer across multiple platforms via prebuilt wheels.

License in practice

Apache-2.0 permissive license allows use in commercial and proprietary projects with minimal restrictions.

Quickstart

pip install texterrors

from texterrors import align_texts

ref_aligned, hyp_aligned, cost = align_texts(
    ["speedbird", "eight", "six", "two"],
    ["hello", "speedbird", "six", "two"],
    use_chardiff=True,
)

Requires Python 3.9 or newer; compiled dependencies (Levenshtein, numpy) may require build tools on some platforms.

Verify before relying

  • Whether the character-aware alignment mode is enabled by default or requires explicit flags
  • Performance characteristics on very large transcription files or datasets
  • Compatibility with non-English or multilingual transcription outputs

Package facts

License Apache-2.0 License (permissive)
Python support supports the current Python release (>=3.9)
Install friction medium — platform-specific wheel
Runtime dependencies 6 — Levenshtein, loguru, numpy, typer, regex, termcolor
Maintenance actively maintained — 66 days since the last release
Last repo commit
First released
Downloads 875,922/month — #4,832 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: texterrors-1.1.8-cp310-cp310-macosx_10_14_x86_64.whl; texterrors-1.1.8-cp310-cp310-macosx_11_0_arm64.whl; texterrors-1.1.8-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl; texterrors-1.1.8-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl; texterrors-1.1.8-cp310-cp310-musllinux_1_2_i686.whl; texterrors-1.1.8-cp310-cp310-musllinux_1_2_x86_64.whl; texterrors-1.1.8-cp310-cp310-win32.whl; texterrors-1.1.8-cp310-cp310-win_amd64.whl; texterrors-1.1.8-cp311-cp311-macosx_10_14_x86_64.whl; texterrors-1.1.8-cp311-cp311-macosx_11_0_arm64.whl; texterrors-1.1.8-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl; texterrors-1.1.8-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl; texterrors-1.1.8-cp311-cp311-musllinux_1_2_i686.whl; texterrors-1.1.8-cp311-cp311-musllinux_1_2_x86_64.whl; texterrors-1.1.8-cp311-cp311-win32.whl; texterrors-1.1.8-cp311-cp311-win_amd64.whl; texterrors-1.1.8-cp312-cp312-macosx_10_14_x86_64.whl; texterrors-1.1.8-cp312-cp312-macosx_11_0_arm64.whl; texterrors-1.1.8-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl; texterrors-1.1.8-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Tags

WER CER scoringspeech recognition evaluationtranscription error analysisASR output comparisonalignment and error reportingword error rate metricstranscription quality assessment
asr-evaluationnlp-metricsspeech-recognition

More Artificial Intelligence packages

Further reading