kaldifst
What it is and what it does
Kaldifst is a Python wrapper around OpenFst and selected extensions from the Kaldi speech recognition toolkit. It lets you use finite-state transducer operations—such as fstdeterminizestar—directly from Python without needing to install Kaldi itself. The package is compiled to native code and distributed as prebuilt wheels for common platforms and Python versions.
It is primarily used in speech recognition, language modeling, and other NLP tasks where finite-state machines are part of the pipeline. The wrapper bridges the gap between high-level Python code and the lower-level FST algorithms, making it easier to integrate Kaldi-style FST operations into Python applications.
Use it for:
- Build speech recognition pipelines that need FST determinization and composition operations.
- Integrate finite-state transducers into Python-based NLP workflows without a full Kaldi installation.
- Perform language model composition and optimization using OpenFst algorithms from Python.
- Prototype and experiment with FST-based algorithms in interactive environments.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Python wrapper for OpenFst and Kaldi extensions, providing finite-state transducer operations like fstdeterminizestar without requiring Kaldi installation.
Yes, if you need OpenFst or Kaldi FST operations in Python and are on a supported platform (Python 3.10–3.12, macOS/Linux/Windows). The permissive license, active maintenance, zero known vulnerabilities, and prebuilt wheels make it straightforward to adopt. If you require Python 3.8 support, verify source-build feasibility first.
Install
kaldifst on PyPI
pip
pip install kaldifstuv
uv add kaldifstpoetry
poetry add kaldifstInstalling kaldifst
Before you install
Medium install friction due to compiled wheels; prebuilt binaries available for Python 3.10, 3.11, and 3.12 on macOS (Intel and ARM), Linux (x86_64 and aarch64), and Windows. Last release 127 days ago; repository is active with 56 stars.
License in practice
Apache-2.0 permissive license allows commercial and private use with minimal restrictions; suitable for most projects.
Quickstart
pip install kaldifst
import kaldifst
# Use OpenFst operations (e.g., fstdeterminizestar) via the wrapper
Requires Python >=3.8; prebuilt wheels available for Python 3.10, 3.11, 3.12 on select platforms.
Verify before relying
- Specific API surface and which Kaldi FST extensions are exposed beyond fstdeterminizestar.
- Whether the package supports Python 3.8 via source build or only via prebuilt wheels for 3.10–3.12.
- Performance characteristics and typical use patterns in speech recognition or NLP pipelines.
Package facts
| License | Apache-2.0 (permissive) |
| Python support | supports the current Python release (>=3.8) |
| Install friction | medium — platform-specific wheel |
| Runtime dependencies | none |
| Maintenance | actively maintained — 127 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 295,858/month — #7,912 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: kaldifst-1.8.0-cp310-cp310-macosx_10_15_universal2.whl; kaldifst-1.8.0-cp310-cp310-macosx_10_15_x86_64.whl; kaldifst-1.8.0-cp310-cp310-macosx_11_0_arm64.whl; kaldifst-1.8.0-cp310-cp310-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl; kaldifst-1.8.0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl; kaldifst-1.8.0-cp310-cp310-win32.whl; kaldifst-1.8.0-cp310-cp310-win_amd64.whl; kaldifst-1.8.0-cp311-cp311-macosx_10_15_universal2.whl; kaldifst-1.8.0-cp311-cp311-macosx_10_15_x86_64.whl; kaldifst-1.8.0-cp311-cp311-macosx_11_0_arm64.whl; kaldifst-1.8.0-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl; kaldifst-1.8.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl; kaldifst-1.8.0-cp311-cp311-win32.whl; kaldifst-1.8.0-cp311-cp311-win_amd64.whl; kaldifst-1.8.0-cp312-cp312-macosx_10_15_universal2.whl; kaldifst-1.8.0-cp312-cp312-macosx_10_15_x86_64.whl; kaldifst-1.8.0-cp312-cp312-macosx_11_0_arm64.whl; kaldifst-1.8.0-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl; kaldifst-1.8.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl; kaldifst-1.8.0-cp312-cp312-win32.whl
Tags
More Artificial Intelligence packages
LiteLLM provides a unified Python interface to…
permissive · top 100 on PyPI
huggingface-hubClient library and CLI tool for downloading,…
permissive · top 100 on PyPI
langchainLangChain provides a framework for building…
permissive · top 1,000 on PyPI
hf-xethf-xet provides chunk-based deduplication and…
permissive · top 1,000 on PyPI
tokenizersTokenizers converts raw text into token…
permissive · top 1,000 on PyPI
transformersTransformers provides a unified framework for…
permissive · top 1,000 on PyPI
kaldi-native-fbankExtracts Kaldi-compatible filterbank (fbank)…
permissive · top 15,000 on PyPI
kaldialignComputes edit distance, alignment, and word…
permissive · top 15,000 on PyPI
pyniniPynini compiles grammar rules into weighted…
permissive · top 15,000 on PyPI
kaldiioKaldiio reads and writes Kaldi archive (ark)…
unclear · top 5,000 on PyPI
kaldi-python-ioReads and writes Kaldi binary archives,…
permissive · top 15,000 on PyPI
funasrFunASR is a speech recognition toolkit that…
permissive · top 15,000 on PyPI
voskVosk provides offline speech recognition for…
permissive · top 15,000 on PyPI
nemo-text-processingConverts text to normalized form and back…
permissive · top 15,000 on PyPI
django-fsm-2Adds declarative finite state machine support…
permissive · top 15,000 on PyPI
onnx-asrAutomatic Speech Recognition using ONNX models…
permissive · top 15,000 on PyPI