kensho-technologies / pyctcdecode

A fast and lightweight python-based CTC beam search decoder for speech recognition.
Apache License 2.0
416 stars 89 forks source link

Support for Transformer LM based decoding #20

Closed sarim-zafar closed 2 years ago

sarim-zafar commented 2 years ago

Hi! I hope you're doing well. We had this brief conversation before but is there any timeline as to when you guys would introduce support for Transformer LM scorers? Maybe if one were to use this library: https://github.com/simonepri/lm-scorer

Or just a decoder based on a black-box function that takes a string as input and returns a score. Looking forward to a positive reply.

poneill commented 2 years ago

Hi @sarim-zafar, you might want to take a look at the AbstractLanguageModel class: https://github.com/kensho-technologies/pyctcdecode/blob/50fd623fdcfd526778a95dfd3ebf5d6603504457/pyctcdecode/language_model.py#L120 and see if you can get away with just subclassing that with your preferred LM?

There may be a bit of cleanup required in order to fully abstract it away from kenlm. If you end up taking that route, we'd be glad to accept a PR.