फ़ोर्स्ड अलाइनमेंट

Qwen3-ForcedAligner ऑडियो के लिए शब्द-स्तरीय timestamp अलाइनमेंट प्रदान करता है। यह एक non-autoregressive single forward pass करता है ताकि प्रत्येक शब्द को ट्रांसक्रिप्ट में ऑडियो वेवफ़ॉर्म में उसकी सटीक स्थिति से अलाइन कर सके।

यह कैसे काम करता है

अलाइनर LIS (Longest Increasing Subsequence) monotonicity सुधार चरण के साथ CTC (Connectionist Temporal Classification) अलाइनमेंट का उपयोग करता है। यह सुनिश्चित करता है कि timestamps हमेशा क्रम में हों, भले ही raw CTC आउटपुट में मामूली असंगतियाँ हों।

प्रॉपर्टीमान
अलाइनमेंट विधिLIS monotonicity सुधार के साथ CTC
Timestamp resolution80 ms
आउटपुट classes5000
इन्फ़रेंस मोडNon-autoregressive (single forward pass)

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"

विकल्प

# Specify transcript text directly
.build/release/audio align recording.wav --text "known transcript"

# Choose ASR model for auto-transcription step
.build/release/audio align recording.wav --model 1.7b

# Specify aligner model variant
.build/release/audio align recording.wav --aligner-model default

# Set language
.build/release/audio align recording.wav --language en

मॉडल वेरिएंट

कई मॉडल वेरिएंट उपलब्ध हैं, जो सटीकता के लिए आकार का व्यापार करते हैं:

वेरिएंटमॉडल IDआकार
MLX 4-bit (डिफ़ॉल्ट)aufklarer/Qwen3-ForcedAligner-0.6B-4bit~979 MB
MLX 8-bitaufklarer/Qwen3-ForcedAligner-0.6B-8bit~1.3 GB
MLX bf16aufklarer/Qwen3-ForcedAligner-0.6B-bf16~1.8 GB
CoreML INT4aufklarer/Qwen3-ForcedAligner-0.6B-CoreML-INT4~662 MB
CoreML INT8aufklarer/Qwen3-ForcedAligner-0.6B-CoreML-INT8~1.1 GB

--aligner-model के साथ एक वेरिएंट चुनें:

.build/release/audio align recording.wav --aligner-model aufklarer/Qwen3-ForcedAligner-0.6B-8bit

आउटपुट फ़ॉर्मैट

अलाइनर प्रति शब्द एक line आउटपुट करता है जिसमें सेकंड में start और end timestamps होते हैं:

[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

प्रत्येक timestamp जोड़ी 80 ms resolution पर ऑडियो में शब्द के start और end समय को इंगित करती है।

महत्वपूर्ण

जब कोई --text प्रदान नहीं किया जाता है, तो अलाइनर पहले एक पूर्ण Qwen3-ASR ट्रांसक्रिप्शन pass चलाता है, फिर परिणामी टेक्स्ट को अलाइन करता है। इसका अर्थ है कि पहला रन ASR मॉडल और अलाइनर मॉडल दोनों को लोड करता है। --text प्रदान करना ASR चरण को छोड़ देता है और केवल अलाइनर लोड करता है।