fix: support Fun-ASR MLT Nano inference - #65
Conversation
|
Marked ready for review after refreshing validation on head Validation:
The added coverage verifies that both |
|
Validated the current head Checks run:
The new test coverage includes the MLT checkpoint path ( |
|
Thank you for contributing Fun-ASR MLT Nano support and for adding focused regression coverage. I have merged this after verifying the change locally with the real MLT checkpoint and an end-to-end audio transcription. The model now initializes and transcribes successfully through AudioNotes. I will handle a couple of follow-up refinements separately, including deterministic decoding and clearer handling for timestamp-based output, so this contribution can remain focused. Thanks again! |
Summary
FunAudioLLM/Fun-ASR-MLT-Nano-2512as a Fun-ASR Nano modelcache,batch_size, and list-basedhotwords)ct-puncmodel for MLT NanoWhy
The current model-name check only matches the contiguous
fun-asr-nanostring. Theofficial multilingual model ID contains
fun-asr-mlt-nano, so it falls back to theclassic FunASR profile.
That profile adds
ct-punc, passesbatch_size_s, and uses the singularhotwordargument. Fun-ASR Nano reads the list-based
hotwordsargument instead, so configuredhotwords are silently lost for MLT Nano.
The official MLT model configuration declares
model: FunASRNano, and the officialinference example uses
cache={},batch_size=1, andhotwords=[...]:Verification
python -m unittest discover -s tests -p "test_*.py" -v(15 passed)ruff check .with the repository-pinnedruff==0.15.21python -m compileall -q app testsgit diff --check