Форсированное выравнивание
Qwen3-ForcedAligner обеспечивает выравнивание временных меток на уровне слов для аудио. Выполняется неавторегрессивный прямой проход, чтобы выровнять каждое слово в транскрипте с его точной позицией в аудиоволне.
Как это работает
Выравнивание использует CTC (Connectionist Temporal Classification) с шагом коррекции монотонности LIS (Longest Increasing Subsequence). Это гарантирует, что временные метки всегда идут по порядку, даже если сырой вывод CTC содержит незначительные несоответствия.
| Свойство | Значение |
|---|---|
| Метод выравнивания | CTC с коррекцией монотонности LIS |
| Разрешение временных меток | 80 мс |
| Выходных классов | 5000 |
| Режим инференса | Неавторегрессивный (один прямой проход) |
Использование CLI
Выровнять аудиофайл. Если транскрипт не предоставлен, аудио автоматически сначала транскрибируется через Qwen3-ASR:
.build/release/audio align recording.wav
Передайте известный транскрипт, чтобы пропустить автоматическую транскрипцию:
.build/release/audio align recording.wav --text "The quick brown fox jumps over the lazy dog"
Опции
# Указать текст транскрипта напрямую
.build/release/audio align recording.wav --text "known transcript"
# Выбрать ASR-модель для шага авто-транскрипции
.build/release/audio align recording.wav --model 1.7b
# Указать вариант модели выравнивания
.build/release/audio align recording.wav --aligner-model default
# Установить язык
.build/release/audio align recording.wav --language en
Варианты модели
Доступны несколько вариантов модели с компромиссом между размером и точностью:
| Вариант | Model ID | Размер |
|---|---|---|
| MLX 4-bit (по умолчанию) | aufklarer/Qwen3-ForcedAligner-0.6B-4bit | ~979 МБ |
| MLX 8-bit | aufklarer/Qwen3-ForcedAligner-0.6B-8bit | ~1.3 ГБ |
| MLX bf16 | aufklarer/Qwen3-ForcedAligner-0.6B-bf16 | ~1.8 ГБ |
| CoreML INT4 | aufklarer/Qwen3-ForcedAligner-0.6B-CoreML-INT4 | ~662 МБ |
| CoreML INT8 | aufklarer/Qwen3-ForcedAligner-0.6B-CoreML-INT8 | ~1.1 ГБ |
Выберите вариант через --aligner-model:
.build/release/audio align recording.wav --aligner-model aufklarer/Qwen3-ForcedAligner-0.6B-8bit
Формат вывода
Выравниватель выводит по одной строке на слово с временными метками начала и конца в секундах:
[0.24 - 0.48] The
[0.48 - 0.72] quick
[0.72 - 1.04] brown
[1.04 - 1.36] fox
[1.36 - 1.68] jumps
[1.68 - 1.92] over
[1.92 - 2.08] the
[2.08 - 2.40] lazy
[2.40 - 2.80] dog
Каждая пара временных меток указывает время начала и конца слова в аудио с разрешением 80 мс.
Если --text не предоставлен, выравниватель сначала запускает полный проход транскрипции Qwen3-ASR, затем выравнивает получившийся текст. Это означает, что при первом запуске загружаются и ASR-модель, и модель выравнивания. Передача --text пропускает шаг ASR и загружает только выравниватель.