Repository navigation
Conversation
_MlxWhisperModel did not forward InlineAsrOptions.temperature to mlx_whisper.transcribe, so the setting was ignored on Apple Silicon and mlx-whisper always used its own temperature fallback schedule. The native Whisper backend already forwards it. Signed-off-by: Yihang Chen <yhc0720@berkeley.edu>
|
✅ DCO Check Passed Thanks @YHC66, all your commits are properly signed off. 🎉 |
Merge Protections🟢 Merge protection satisfied — ready to merge. Show 1 satisfied protection🟢 Enforce conventional commitMake sure that we follow https://www.conventionalcommits.org/en/v1.0.0/
|
AI triage (advisory)Checked commit The PR makes Topic labels added: CI safety: no concern found. A maintainer must still approve CI. 3 related pull request(s) in the same code
The |
There was a problem hiding this comment.
AI first review (advisory): no blocker found
This review covers the full diff at f4c03e37f9. It read the code and did not run it.
The changes forward temperature from InlineAsrMlxWhisperOptions to mlx_whisper.transcribe, matching the native Whisper backend. I checked _MlxWhisperModel in docling/pipeline/asr_transcriber.py and the updated unit test in tests/test_asr_mlx_whisper.py.
A maintainer makes the merge decision. This review never approves the pull request.
Codecov Report✅ All modified and coverable lines are covered by tests. 📢 Thoughts on this report? Let us know! |
_MlxWhisperModeldid not forwardInlineAsrOptions.temperaturetomlx_whisper.transcribe. On Apple Silicon the option had no effect, and mlx-whisper always used its default schedule(0.0, 0.2, …, 1.0). The native Whisper backend already forwards it (#3717). This PR forwards it in the same way.Note on behavior: the default
temperature=0.0is now passed to mlx-whisper, so its temperature fallback is off by default. This is the same behavior as the native Whisper backend and matches the field description ("0.0 uses greedy decoding (deterministic)").Issue resolved by this Pull Request:
Resolves #4872
Checklist:
Review evidence:
Before / after, end to end on macOS arm64 (M4 Pro), real model
mlx-community/whisper-tiny-mlx,tests/data/audio/sources/sample_10s.mp3, mlx-whisper 0.4.3:mlx_whisper.transcribegets notemperature. The transcripts for temperature 0.0, 1.0 and 2.0 are identical.Tests and checks:
tests/test_asr_mlx_whisper.py::TestMlxWhisperIntegration::test_mlx_whisper_transcribenow setstemperature=0.7and expects it in themlx_whisper.transcribecall. It fails on main and passes with this change (file: 9 passed).tests/test_asr_mlx_whisper.py,tests/test_asr_pipeline.py,tests/test_asr_api.py,tests/test_asr_whisper_s2t.py: 52 passed, 8 failed, with the same 8 failures on main (openai-whisper is not installed in my local environment, so those tests fail with ImportError).ruff check,ruff format --check,tach check: pass.