Repository navigation
v1.4.18
Hotword Scope Correction
PR #3798 fixes cross-script fuzzy hotword misreplacement, not local hotword-file loading. In particular, Chinese-only text such as 这个端口 must not acquire the C prefix from the mixed-script hotword C端; complete mixed-script homophones remain supported. The earlier description was incorrect.
Nine additional checks of the final installed 1.4.18 wheel passed with real pypinyin/rapidfuzz dependencies: the reporter's AI/digit example, Chinese-only prefix rejection, unchanged valid text, and complete mixed-script homophone controls. These are post-publication CPU text checks, not file-parser coverage, new GPU/model inference or a full suite.
The immutable v1.4.18 tag, wheel/sdist and their packaged README/PyPI description retain the original erroneous summary sentence. This erratum corrects that description; no package bytes, tag or hashes have been replaced. The runtime fix itself is present and the official PyPI bytes remain equal to the accepted GitHub packages.
FunASR 1.4.18
Source: 5315edd5db957ffd5c0035ac5b6b432560e88608 / tag v1.4.18.
Fixes
- Prevent cross-script fuzzy hotword misreplacement (#3798), while retaining complete mixed-script homophones.
- Keep timestamps aligned when special tokens are filtered (#3802/#3803). A retained token without a timestamp now raises
ValueErrorinstead of silently shifting the mapping; an untimed trailing filtered EOS remains supported. - Preserve Chinese VAD chunk token boundaries for sentence text, timestamps and speaker assignment (#3804).
The auxiliary ONNX/libtorch source corrections are in this Git tag; this release does not publish new independent versions of those Python packages. Reporter-specific original-recording confirmation remains outstanding.
Verification Scope
- 137 release/docs/package/runtime-contract checks passed; 2 local browser checks skipped because their browser tools were absent. Exact-head hosted build, browser and all other checks passed separately, as did the new-main checks.
- 52 affected regression cases passed with a mix of installed imports and explicit source-file loaders; these are not all installed-wheel tests. An additional 15 cases explicitly verified imports from the installed candidate wheel: 3 existing postprocessing hotword-parser controls (not tests of the cross-script matcher repair), 4 Paraformer hotword-file controls and 8 filtered-token timestamp cases. On an idle NVIDIA L20Z, the installed wheel passed 6 FP32/BF16 CUDA CIF timestamp pipelines and 8 VAD/speaker/raw-text alignment cases. Inputs and model responses are synthetic fixtures, not pretrained ASR or original-recording quality evaluation.
- Newly downloaded final-tag wheel and sdist match the accepted source files; metadata, all 13 entrypoints, strict Twine, offline installation, actual package import and CLI checks passed.
- All 12 payloads passed full SHA-256/size and archive-integrity checks. The 2 Python packages were newly downloaded from this release. The 10 unchanged runtime archives reuse complete verified cache bytes, freshly rehashed against both the new release asset metadata and
runtime-llamacpp-v0.2.6. They were not downloaded anew or rebuilt. Platform binaries were not executed. SHA256SUMScovers all 12 payloads. This is scoped release validation, not a full repository suite or the deferred Nano nine-dataset benchmark.
What's Changed
- fix(hotwords): prevent missing Latin prefixes in mixed-script correction by @LauraGPT in #3798
- fix: align filtered token timestamps and reject incomplete input by @LauraGPT in #3803
- fix(postprocess): keep word timestamps aligned after filtered tokens by @ANDROIDHASSAN in #3802
- fix: preserve VAD chunk token alignment in sentence timestamps by @LauraGPT in #3804
- Release FunASR 1.4.18 by @LauraGPT in #3805
New Contributors
- @ANDROIDHASSAN made their first contribution in #3802
Full Changelog: v1.4.17...v1.4.18
Runtime downloads
This Python release pairs with the current prebuilt llama.cpp / GGUF runtime release: runtime-llamacpp-v0.2.6.
The same verified runtime assets are attached directly to this Python release so users can find the package and self-contained llama-funasr-* binaries in one place.
| Platform | Asset | SHA-256 |
|---|---|---|
| Linux arm64 | funasr-llamacpp-linux-arm64.tar.gz | 7bca29cfa3c9a08e235a62212ca9e00f6656e59a8f07078966a2bfda1e5aa1f9 |
| Linux x64 AVX2 | funasr-llamacpp-linux-x64-avx2.tar.gz | aaebc5470f846ce915200b35d6e9f9bd0a0d3ed399d39e49bdeb7a1f1782bc70 |
| Linux x64 Vulkan | funasr-llamacpp-linux-x64-vulkan.tar.gz | f02d41e98e9d4041f0896661007193810f025484d2175958f7c1313d5c90ec46 |
| Linux x64 portable | funasr-llamacpp-linux-x64.tar.gz | 779967de1c528c2be966bcc47f246e7d3e6fcdb748d9491263062f4120f35e52 |
| macOS arm64 | funasr-llamacpp-macos-arm64.tar.gz | bda59474202b887190f59d25b7b42c714469efae71276072c12fa0a38de68792 |
| Windows x64 AVX2 | funasr-llamacpp-windows-x64-avx2.zip | 062cda8fefadd31c3e811227116daccf448a8520f4b0bb168d225c896e65ebbd |
| Windows x64 CUDA Blackwell (sm_120) | funasr-llamacpp-windows-x64-cuda-blackwell.zip | e32961a753f40888182f352fa551159c5165a6a77718ae4ade316aedfea4b1c2 |
| Windows x64 CUDA | funasr-llamacpp-windows-x64-cuda.zip | 148657911fb666b7af6ec43af2e23a0984e3259012b4c39f95631b717feb6840 |
| Windows x64 Vulkan | funasr-llamacpp-windows-x64-vulkan.zip | debf8007e55011cad06081e7b8a78972f1b8fe672bc324d41e650d68821f6a6a |
| Windows x64 portable | funasr-llamacpp-windows-x64.zip | f6a73a548413ba9fbaf2145263ea66ec53cbdad1fb11790dbeeee493e339492e |
Quick start: download one asset, unpack it, then run the bundled download-funasr-model.sh <sensevoice|paraformer|nano> helper and one of llama-funasr-cli, llama-funasr-sensevoice, or llama-funasr-paraformer.
For Python users, install from PyPI:
python -m pip install -U "funasr==1.4.18"