MOSS Whisper 词级对齐模型 · T8star-Aix
Give MOSS real word-level timestamps with a pinned Whisper-small
- 词级对齐模型
- 对齐模型信息 JSON
Here's a fact about MOSS that a lot of people discover the hard way: its native output is sentence- and segment-level timestamps. Great for subtitles at the cue level, useless if you need to know exactly when a word was said - for karaoke, for keyword search, for syncing a transcript to a video frame. This loader exists because the pack's answer to that is to bring in a second, separate model: a pinned openai/whisper-small, run purely to generate word anchors that get mapped back onto MOSS's transcript.
T8_MOSS_WordAlignmentModelLoader is the config-and-cache half of that arrangement. It doesn't do the alignment itself - that's T8_MOSS_WordAlignment, the node that actually runs Whisper over your audio and reports how well the word anchors matched your transcript. This loader just prepares the T8_MOSS_WORD_ALIGNMENT_MODEL handle. You wire it, you set maybe two things, and it quietly does its job.
The settings that matter:
- model_id - defaults to
openai/whisper-smallon Hugging Face, pinned to revision973afd24965f72e36ca33b3055d56a652f456b4d. The pack deliberately fixes the revision so your alignment is reproducible; you can also point this at a local model directory. - language - default
auto. If you know the content language, set it (zh,en, …). This is genuinely worth doing: Whisper does faster and more accurate word-level alignment when it doesn't have to guess the language first, and it's the one input beginners usually ignore. - chunk_length_seconds - 30 by default (5–120 range). Longer chunks mean fewer passes but more VRAM per pass; drop it if you're on a tight card.
- device and precision - both
auto, same resolution logic as the rest of the pack. - release_after_run -
trueby default, so the aligner frees its VRAM after the alignment node finishes.
It outputs the aligner handle plus a JSON info string describing what got configured. The model only loads when the alignment node actually runs - lazy loading, independent cache, and - per the pack's design - this loader never touches ComfyUI's own torch or transformers stack, so it can't break your image models.
A note on expectations, because this is where people get let down: Whisper-small is a tiny model and word-alignment coverage is not 100%. In the pack author's own benchmark runs against real speech, model-matched coverage landed between roughly 55% and 72%. That's normal and by design - the alignment node marks unmatched words as interpolated instead of pretending they came from the model, and it flags coverage below 50% as a warning. So don't panic when the coverage report isn't perfect; do read it.
Installing the pack
cd ComfyUI/custom_nodes
git clone https://github.com/T8mars/Comfyui-MOSS-Transcribe-Diarize-T8.git comfyui-MOSS-Transcribe-Diarize-T8
In the ComfyUI Python environment (..\..\python_embeded\python.exe on Windows Portable): pip install -r requirements.txt, run scripts/check_transformers.py (needs Transformers >= 5.5.0, < 6), restart ComfyUI. ComfyUI Manager users: search comfyui-moss-transcribe-diarize-t8. The Whisper-small weights download automatically on this loader's first execution - no manual model download needed for the aligner.
One last thing: word alignment only makes sense if you actually feed it the same audio and transcript the main model produced. Wire it into the standard chain - main model → transcript → this loader → T8_MOSS_WordAlignment → subtitle export - and you'll get cues with per-word anchors for free. Try to align against a transcript from a different source and the coverage report will lovingly tell you how badly it mismatched.
Inputs (7)
| Name | Type | Default | Description |
|---|---|---|---|
| model_id | STRING | openai/whisper-small | — |
| revision | STRING | 973afd24965f72e36ca33b3055d56a652f456b4d | — |
| device | COMBO | auto | 2 options: auto, cpu |
| precision | COMBO | auto | 4 options: auto, bfloat16, float16, float32 |
| language | STRING | auto | — |
| chunk_length_seconds | FLOAT | 305–120 | — |
| release_after_run | BOOLEAN | true | — |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| 词级对齐模型 | T8_MOSS_WORD_ALIGNMENT_MODEL | — |
| 对齐模型信息 JSON | STRING | — |