MFST: A Python OpenFST Wrapper With Support for Custom Semirings and Jupyter Notebooks
This library provides a more flexible tool for researchers and developers working with FSTs in Python, particularly those integrating FSTs with neural networks or requiring custom semiring definitions.
This paper introduces mFST, a new Python library that wraps OpenFST, providing access to all of OpenFST's methods for manipulating Finite-State Machines. It uniquely supports custom semirings, making it suitable for developing models that learn FST weights or create neuralized FSTs.
This paper introduces mFST, a new Python library for working with Finite-State Machines based on OpenFST. mFST is a thin wrapper for OpenFST and exposes all of OpenFST's methods for manipulating FSTs. Additionally, mFST is the only Python wrapper for OpenFST that exposes OpenFST's ability to define a custom semirings. This makes mFST ideal for developing models that involve learning the weights on a FST or creating neuralized FSTs. mFST has been designed to be easy to get started with and has been previously used in homework assignments for a NLP class as well in projects for integrating FSTs and neural networks. In this paper, we exhibit mFST API and how to use mFST to build a simple neuralized FST with PyTorch.