Model outputs Japanese text even when English is specified

#4
by jerryyoon - opened

Hello,

I am using your model and have set the language to English, but sometimes the output contains Japanese text instead of English. Could you please advise on how to prevent this and ensure the model only outputs English when English is specified? Are there any recommended settings or preprocessing steps to avoid this issue?
I have confirmed that the "fun-asr-nano" model produces correct outputs.

error example
reference : Its a common tragedy enough Anne
hypothesis : …むッツ、むッツ。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン。をン

Thank you for your support!

FunAudioLLM org

Thanks for the detailed example, and sorry this sat unanswered.

I traced a concrete source of nondeterminism in the current checkpoint path: the bundled Qwen3-0.6B/generation_config.json enables sampling by default (do_sample=true, temperature=0.6, top_p=0.95), and the current model.py inherits those values unless llm_kwargs overrides them. For ASR, that can turn a difficult or ambiguous segment into wrong-script repetition even when a language hint is present.

Please use deterministic decoding and the documented language label:

res = model.generate(
    input=[wav_path],
    cache={},
    batch_size=1,
    language="θ‹±ζ–‡",
    llm_kwargs={"do_sample": False},
)

This is a workaround, not the final resolution. We will keep this discussion open while changing the repository default to deterministic ASR decoding and adding a regression test that verifies caller overrides still work. If the same clip still produces Japanese output with the snippet above, please share the audio (or a minimal reproducible sample), your FunASR version, and the exact model revision.

FunAudioLLM org

Update: the model card now documents deterministic decoding in every quickstart via llm_kwargs={"do_sample": False} and explicitly selects the Hugging Face model repository. The change is published in f20d841.

I validated the documented path on an H100 with funasr==1.3.14: two runs over the bundled sample returned identical text, and both the VAD and direct-inference paths completed successfully. For English input, keep language="θ‹±ζ–‡" together with deterministic decoding.

This discussion remains open because the checkpoint's bundled generation config still enables sampling by default; the model card change prevents that behavior in the documented examples but does not change the underlying default.

Thank you for your kind and helpful response. I am thrilled to hear that you are researching a successor model. I look forward to hearing the good news.

Sign up or log in to comment