Stand-alone OpenFST bindings for Python
Project description
OpenFst-Python
OpenFst-Python exposes the official Python API to OpenFst (officially called pywrapfst), but includes all the required OpenFst libraries in the Python package, so you don't need to install it separately.
The version number of OpenFst-Python is the same as the OpenFst version used. The current version uses OpenFst 1.7.2.
Build Requirements
The build process will download and build OpenFst from the official webpage, so you need an Internet connection and all OpenFst dependencies. Essentially, you will need:
- A C++ compiler supporting C++11 (tested with GCC 4.9).
- PatchELF.
- Zlib development.
- Python Requests.
Installation
Most likely, you want to avoid the build process. Then, simply install the package from PyPI:
pip install openfst-python
Alternatively, if you are installing from sources, you can simply do:
python setup.py install
Notice that this downloads the appropriate version of OpenFst directly from the Internet. If you don't have an Internet connection but are already in possession of the appropriate tar.gz file, you can use the following command:
python setup.py build --download-dir=DIRECTORY_CONTAINING_OPENFST_TAR_GZ
python setup.py install
Documentation
The Python API is the official one provided by OpenFst. Please, refer to its documentation.
A toy example:
import openfst_python as fst
f = fst.Fst()
s0 = f.add_state()
s1 = f.add_state()
s2 = f.add_state()
f.add_arc(s0, fst.Arc(1, 2, fst.Weight(f.weight_type(), 3.0), s1))
f.add_arc(s0, fst.Arc(1, 3, fst.Weight.One(f.weight_type()), s2))
f.add_arc(s1, fst.Arc(2, 1, fst.Weight(f.weight_type(), 1.0), s2))
f.set_start(s0)
f.set_final(s2, fst.Weight(f.weight_type(), 1.5))
License
The OpenFst library is licensed under the Apache License, Version 2.0.
OpenFst-Python is just a wrapper of its official Python API, so
I am using the same license for most of the source code.
ac_python_devel.m4
was not written by me and it is licensed under the
GPL license.
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 Distributions
Hashes for openfst_python-1.7.3-cp37-cp37m-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0b71c37a471784e2c0a44dfc1b61181517325af557d16afabcb095c6fc56f60e |
|
MD5 | 0b0d52f4cba4727204c1e03394e91ddc |
|
BLAKE2b-256 | dd4ba9729ed62c1fd7be8a31c5fe550641af5da7d9fa408b40f413a4d5852ee5 |
Hashes for openfst_python-1.7.3-cp36-cp36m-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 08e63546cb800afa06e120a1d9875d9e176f08f4a9dbca829b3dec749396ebd0 |
|
MD5 | 755b2316cc1b2e300e5f7c88716a1a80 |
|
BLAKE2b-256 | ee918d930766cfe34d4488f8aaded264c4fe8d160715b8885db57184f4833612 |
Hashes for openfst_python-1.7.3-cp35-cp35m-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ca39cac80aef9aa5ed6bfb0d1e5d3027ecc95c7f35137471c50944b2930c205f |
|
MD5 | f3b1f3905c39e6e4a991fee4909499de |
|
BLAKE2b-256 | e99dc9d607567d78c0edb38dc8f4672e8b5d883fbcb5811cd5796049c72f6da5 |
Hashes for openfst_python-1.7.3-cp27-cp27mu-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | acd48dfe1433d058aad6b4d4057c66747399e54434418a8cc1333dd71af4edc4 |
|
MD5 | 7a9cb9d4ea8f58b834a5b66e9d758b67 |
|
BLAKE2b-256 | 7bd517d8c6bee133e8dc4b2ef6e093a320d557d3614039a1ea1af909866c0bb9 |