Crates.io | ctclib-pp |
lib.rs | ctclib-pp |
version | 0.2.0 |
source | src |
created_at | 2023-02-23 17:09:05.414439 |
updated_at | 2023-02-23 17:09:05.414439 |
description | A collection of utilities related to CTC, with the goal of being fast and highly flexible, with perplexity scores for KenLMs models |
homepage | |
repository | https://github.com/Uinelj/ctclib |
max_upload_size | |
id | 792925 |
size | 289,734 |
NOTE: This is currently under development.
A collection of utilities related to CTC, with the goal of being fast and highly flexible.
ctclib
depends on kpu/kenlm.
You must install the following libraries as KenLM dependencies.
For example, if you are using Ubuntu (or some Debian based Linux), you can install them by running the following command:
apt install libboost-all-dev libeigen3-dev
Currently, ctclib
isn't available on crates.io, but you can use this as git dependencies.
[dependencies]
ctclib = { version = "*", git = "https://github.com/agatan/ctclib" }
ctclib
provides python interfaces, named pyctclib
.
Currently, pyctclib
isn't available on PyPI, but you can install this as git dependency.
Ensure that you have installed cargo
and libclang-dev
.
pip install 'git+https://github.com/agatan/ctclib.git#egg=pyctclib&subdirectory=bindings/python'
import pyctclib
decoder = pyctclib.BeamSearchDecoderWithKenLM(
pyctclib.BeamSearchDecoderOptions(
beam_size=100,
beam_size_token=1000,
beam_threshold=1,
lm_weight=0.5,
),
"/path/to/model.arpa",
["a", "b", "c", "_"],
)
decode.decode(log_probs)
# or you can use user-defined LM
# See pyctclib.LMProtocol