/SymSpellCppPy

Fast SymSpell written in c++ and exposes to python via pybind11

Primary LanguageC++Apache License 2.0Apache-2.0

SymSpellCppPy

A Fast SymSpell v6.5 port for python written in C++ using pybind11.

Version UnitTests Docs Downloads License

Installation

pip install --upgrade SymSpellCppPy

Documentation

  • Check examples for provided usage.
  • Check api docs for detailed API documentation.
  • Check tests/SymSpellCppPyTest.py for extended api usage.

Benchmark Results

Run on AMD 5900x

pip install pytest pytest-benchmark symspellpy SymSpellCppPy
pytest benchmark.py --benchmark-compare

Benchmark Results

Development

git clone git@github.com:viig99/SymSpellCppPy.git
cd SymSpellCppPy
mkdir -p build && cd build
cmake .. -DCMAKE_BUILD_TYPE=Release
make -j$(nproc)

Testing

Python Bindings

Build

python3 setup.py build

Test

Python tests

python3 setup.py test

C++ tests

For detailed list of command line test flags please refer to Catch 2 Docs

cd build
./Catch2Test -s

Acknowledgements