Skip to content

Latest commit

 

History

History
151 lines (101 loc) · 8.59 KB

CHANGELOG.md

File metadata and controls

151 lines (101 loc) · 8.59 KB

Changelog

All notable changes to this project will be documented in this file. Note that the project (and python wheel) is built from a duorepo (2 separate repos used together), so changes from both will be reflected here, but the commits are spread between both.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning since v1.0.0.

3.1.0 - 2021-11-24 - Changes: KaldiAG KaldiFork

Fixed

  • Fix updating of SymbolTable multiple times for new words, so that there is only one instance for a single Model.

Changed

  • Only mark lexicon stale if it was successfully modified.
  • Removed deprecated CLI binaries from Windows build, reducing wheel size by ~65%.

3.0.0 - 2021-10-31 - Changes: KaldiAG KaldiFork

Changed

  • Pronunciation generation for lexicon now better supports local mode (using the g2p_en package), which is now also the default mode. It is also preferred over the online mode (using CMU's web service), which is now disabled by default. See the Setup section of the README for details. The new models now include the data files for g2p_en.
  • PlainDictation output now discards any silence words from transcript.
  • lattice_beam default value reduced from 6.0 to 5.0, to hopefully avoid occasional errors.
  • Removed deprecated CLI binaries from build for linux/mac.

Fixed

  • Whitespace in the model path is once again handled properly (thanks @matthewmcintire).
  • NativeWFST.has_path() now handles loops.
  • Linux/Mac binaries are now more stripped.

2.1.0 - 2021-04-04 - Changes: KaldiAG KaldiFork

Added

  • NativeWFST support for checking for impossible graphs (no successful path), which can then fail to compile.
  • Debugging info for NativeWFST.

Changed

  • lattice_beam default value reduced from 8.0 to 6.0, to hopefully avoid occasional errors.

Fixed

  • Reloading grammars with NativeWFST.

2.0.2 - 2021-03-30 - Changes: KaldiAG KaldiFork

Changed

  • Minor fix for OpenBLAS compilation for some architectures on linux/mac

2.0.0 - 2021-03-21 - Changes: KaldiAG KaldiFork

Added

  • Native FST support, via direct wrapping of OpenFST, rather than Python text-format implementation
    • Eliminates grammar (G) FST compilation step
  • Internalized many graph construction steps, via direct use of native Kaldi/OpenFST functions, rather than invoking separate CLI processes
    • Eliminates need for many temporary files (FSTs, .confs, etc) and pipes
  • Example usage for allowing mixing of free dictation with strict command phrases
  • Experimental support for "look ahead" graphs, as an alternative to full HCLG compilation
  • Experimental support for rescoring with CARPA LMs
  • Experimental support for rescoring with RNN LMs
  • Experimental support for "priming" RNNLM previous left context for each utterance

Changed

  • OpenBLAS is now the default linear algebra library (rather than Intel MKL) on Linux/MacOS
    • Because it is open source and provides good performance on all hardware (including AMD)
    • Windows is more difficult for this, and will be implemented soon in a later release
  • Default tmp_dir is now set to [model_dir]/cache.tmp
  • tmp_dir is now optional, and only needed if caching compiled FSTs (or for certain framework/option combinations)
  • File cache is now stored at [model_dir]/file_cache.json
  • Optimized adding many new words to the lexicon, in many different grammars, all in one loading session: only rebuild L_disambig.fst once at the end.
  • External interfaces: Compiler.__init__(), decoding setup, etc.
  • Internal interfaces: wrappers, etc.
  • Major refactoring of C++ components, with a new inheritance hierarchy and configuration mechanism, making it easier to use and test features with and without "activity"
  • Many build changes

Removed

  • Python 2.7 support: it may still work, but will not be a focus.
  • Google cloud speech-to-text removed, as an unneeded dependency. Alternative dictation is still supported as an option, via a callback to an external provider.

Deprecated

  • Separate CLI Kaldi/OpenFST executables
  • Indirect AGF graph compilation (framework==agf-indirect)
  • Non-native FSTs
  • parsing_framework==text

1.8.0 - 2020-09-05 - Changes: KaldiAG KaldiFork

Added

  • New speech models (should be better in general, and support new noise resistance)
  • Make failed AGF graph compilation save and output stderr upon failure automatically
  • Example of complete usage with a grammar and microphone audio
  • Various documentation

Changed

  • Top FST now accepts various noise phones (if present in speech model), making it more resistant to noise
  • Cleanup error handling in compiler, supporting Dragonfly backend automatically printing excerpt of the Rule that failed

Fixed

  • Mysterious windows newline bug in some environments

1.7.0 - 2020-08-01 - Changes: KaldiAG KaldiFork

Added

  • Add automatic saving of text FST & compiled FST files with log level 5

Changed

  • Miscellaneous naming

Fixed

  • Support compiling some complex grammars (Caster text manipulation), by simplifying during compilation (remove epsilons, and determinize)

1.6.2 - 2020-07-20 - Changes: KaldiAG KaldiFork

Fixed

  • Add missing rnnlm library file in MacOS build

1.6.1 - 2020-07-19 - Changes: KaldiAG KaldiFork

Changed

  • Windows wheels now only require the VS2017 (not VS2019) redistributables to be installed

1.6.0 - 2020-07-11 - Changes: KaldiAG KaldiFork

Added

  • Can now pass configuration dict to KaldiAgfNNet3Decoder, PlainDictationRecognizer (without HCLG.fst).
  • Continuous Integration builds run on GitHub Actions for Windows (x64), MacOS (x64), Linux (x64).

Changed

  • Refactor of passing configuration to initialization.
  • PlainDictationRecognizer.decode_utterance can take chunk_size parameter.
  • Smaller binaries: MacOS 11MB -> 7.6MB, Linux 21MB -> 18MB.

Fixed

  • Confidence measurement in the presence of multiple, redundant rules.
  • Python3 int division bug for cloud dictation.

Earlier versions

See GitHub releases notes.