course
पिछले कुछ वर्षों में स्वचालित स्पीच रिकग्निशन में उल्लेखनीय सुधार हुआ है। जो स्पीच-टू-टेक्स्ट मॉडल पहले शक्तिशाली GPU की मांग करते थे और असंगत परिणाम देते थे, वे अब साधारण कंप्यूटरों पर भी सटीक ट्रांसक्रिप्शन दे सकते हैं।
साथ ही, मॉडल आकार छोटे हुए हैं, CPU इन्फरेंस तेज़ हुआ है, और बहुभाषी सपोर्ट बढ़ा है—जिससे ट्रांसक्रिप्शन गुणवत्ता, गति, सुलभता और गोपनीयता का बेहतर संयोजन मिल रहा है।
Microsoft का VibeVoice-ASR-BitNet इस प्रगति का एक अच्छा उदाहरण है।
इसका अनुकूलित VibeASR.cpp रनटाइम Windows, Linux या macOS कंप्यूटर पर समर्पित GPU पर निर्भर हुए बिना या रिकॉर्डिंग को किसी क्लाउड सेवा पर भेजे बिना लोकल रूप से बहुभाषी स्पीच-टू-टेक्स्ट चलाना संभव बनाता है।
इस गाइड में, आप सीखेंगे कि VibeASR.cpp कैसे इंस्टॉल व बिल्ड करें, क्वांटाइज़्ड मॉडल डाउनलोड करें, कमांड लाइन से ऑडियो फ़ाइलों का ट्रांसक्रिप्शन करें, इसका परसिस्टेंट स्ट्रीमिंग सर्वर चलाएँ, और Gradio वेब इंटरफ़ेस से अपलोड या रिकॉर्डिंग करें।
Microsoft VibeASR.cpp क्या है?
VibeASR.cpp Microsoft का VibeVoice-ASR-BitNet के लिए आधिकारिक C++ इन्फरेंस रनटाइम है—जो कि CPUs पर कुशल लोकल इन्फरेंस के लिए डिज़ाइन किया गया एक संपीड़ित बहुभाषी स्वचालित स्पीच रिकग्निशन मॉडल है।
यह अलग स्पीच मॉडल नहीं है; VibeASR.cpp वह अनुकूलित इंजन देता है जिसकी मॉडल चलाने के लिए ज़रूरत होती है—जिससे बिना समर्पित GPU या क्लाउड-आधारित स्पीच सेवा के रीयल-टाइम ट्रांसक्रिप्शन संभव हो जाता है।
यह लैपटॉप, डेस्कटॉप, एज डिवाइस और सीमित कंप्यूटिंग संसाधनों वाले अन्य सिस्टम के लिए उपयुक्त है।

स्रोत: microsoft/VibeVoice-ASR-BitNet
CPU डिप्लॉयमेंट को व्यावहारिक बनाने के लिए, Microsoft ने मूल VibeVoice-ASR आर्किटेक्चर में प्रयुक्त Qwen2.5-7B भाषा-मॉडल घटक को बहुत छोटे Qwen2.5-1.5B मॉडल से बदल दिया।
यह दो मुख्य घटकों पर अलग-अलग क्वांटाइज़ेशन विधियाँ भी लागू करता है:
I8_SVAE ऑडियो एन्कोडर के लिएI2_Sभाषा मॉडल के लिए, जिसमें उच्च-प्रेसिजन एम्बेडिंग्स होती हैं
इन अनुकूलनों से कुल मॉडल आकार लगभग 4.62 GB से घटकर 1.58 GB रह जाता है—जिससे इसे लैपटॉप और डेस्कटॉप पर चलाना व्यावहारिक होता है।
आकार में पर्याप्त कमी के बावजूद, संपीड़ित मॉडल का शब्द-त्रुटि-दर लगभग 1–4 प्रतिशत अंक ही बढ़ता है, जो बड़े आर्किटेक्चर की तुलना में अपेक्षाकृत कम है।
VibeASR.cpp ggml फ़्रेमवर्क, कस्टम CPU इंस्ट्रक्शंस और ऑपरेटर फ्यूज़न का उपयोग कर इन्फरेंस गति बढ़ाता है।
Microsoft के बेंचमार्क के अनुसार, यह तुलनीय मॉडल आकारों पर Whisper.cpp से 1.6–2.3 गुना तेज़ चल सकता है और पर्याप्त थ्रेड्स होने पर सपोर्टेड CPUs पर रीयल-टाइम से तेज़ ट्रांसक्रिप्शन हासिल कर सकता है।
Microsoft के CPU बेंचमार्क में, मॉडल ने चार थ्रेड्स पर 0.63 RTF और आठ थ्रेड्स पर 0.42 हासिल किया, जो लगभग 1.59× और 2.38× रीयल-टाइम गति के बराबर है।
रिपोर्टेड WER में MLC English पर 8.25%, AMI हेडसेट ऑडियो पर 21.36%, AMI डिस्टेंट-माइक्रोफ़ोन ऑडियो पर 25.87% और LibriSpeech clean पर 2.41% शामिल हैं—जो ट्रांसक्रिप्शन सटीकता, मॉडल आकार और CPU प्रदर्शन के बीच अच्छा संतुलन दर्शाते हैं।
1. आवश्यक बिल्ड टूल्स इंस्टॉल करें
VibeASR.cpp पूरी तरह CPU पर चलता है, इसलिए आपको समर्पित GPU की आवश्यकता नहीं है। आपको केवल समर्थित Windows, Linux, या macOS कंप्यूटर, Python 3.9 या नया, Git, एक C++ कंपाइलर, और सोर्स कोड, बिल्ड फ़ाइलों व मॉडल के लिए लगभग 4 GB खाली डिस्क स्पेस चाहिए।
बिल्ड प्रक्रिया के लिए CMake और Ninja भी आवश्यक हैं।
Windows पर, सबसे आसान विकल्प w64devkit है, जो प्रीकॉन्फ़िगर किए गए टर्मिनल में कंपाइलर और बिल्ड टूल्स प्रदान करता है।
Linux पर, आवश्यक पैकेज सीधे सिस्टम पैकेज मैनेजर से इंस्टॉल किए जा सकते हैं।
Windows
w64devkit के नवीनतम x64 .exe फ़ाइल को रिलीज़ पेज से डाउनलोड करें।

डाउनलोड की गई फ़ाइल एक स्व-एक्सट्रैक्टिंग आर्काइव है। इसे चलाएँ और फ़ोल्डर को किसी सरल स्थान पर एक्सट्रैक्ट करें, जैसे:
C:\w64devkit
इसके बाद खोलें:
C:\w64devkit\w64devkit.exe
यह एक रेडी-टू-यूज़ टर्मिनल लॉन्च करता है जिसमें GCC, CMake, Make और Ninja शामिल हैं। आप शेष Windows चरणों के लिए इसी टर्मिनल का उपयोग कर सकते हैं—एनवायरनमेंट वेरिएबल्स को मैन्युअली कॉन्फ़िगर करने की आवश्यकता नहीं है।
Linux
Ubuntu, Debian और संबंधित Linux डिस्ट्रीब्यूशन्स पर आवश्यक कंपाइलर और बिल्ड टूल्स एक ही कमांड से इंस्टॉल किए जा सकते हैं:
sudo apt update
sudo apt install build-essential cmake ninja-build git python3 python3-venv
यह GCC कंपाइलर, CMake, Ninja, Git, Python और Python वर्चुअल एनवायरनमेंट बनाने के लिए आवश्यक पैकेज इंस्टॉल करता है।
macOS
macOS पर Apple के कमांड-लाइन डेवलपमेंट टूल्स इंस्टॉल करें:
xcode-select --install
आपको Git, Python 3.9 या नया, CMake और Ninja भी चाहिए। शेष टूल्स इंस्टॉल करने का सबसे आसान तरीका Homebrew है:
brew install git python cmake ninja
2. VibeASR.cpp क्लोन करें और Python एनवायरनमेंट सेट करें
निम्न सेटअप प्रक्रिया Windows, Linux और macOS—तीनों पर समान है।
केवल ऑपरेटिंग सिस्टम-विशिष्ट चरण Python वर्चुअल एनवायरनमेंट को सक्रिय करने का कमांड है।
अपना टर्मिनल खोलें, उस फ़ोल्डर में जाएँ जहाँ आप प्रोजेक्ट स्टोर करना चाहते हैं, और VibeASR.cpp रिपोजिटरी क्लोन करें:
git clone --recursive https://github.com/microsoft/VibeASR.cpp.git
cd VibeASR.cpp

--recursive विकल्प आवश्यक llama.cpp सबमॉड्यूल भी डाउनलोड करता है। इसके बिना, इन्फरेंस रनटाइम बिल्ड करने के लिए कुछ ज़रूरी फ़ाइलें गायब रहेंगी।
प्रोजेक्ट फ़ोल्डर के अंदर एक Python वर्चुअल एनवायरनमेंट बनाएँ।
python -m venv .venv
इसे अपने ऑपरेटिंग सिस्टम के अनुसार सक्रिय करें।
w64devkit टर्मिनल के साथ Windows:
. .venv/Scripts/activate
Linux और macOS:
source .venv/bin/activate
सक्रिय करने के बाद, टर्मिनल में कमांड प्रॉम्प्ट से पहले (.venv) दिखना चाहिए। सुनिश्चित करें कि Python उपलब्ध है:
python --version
pip अपग्रेड करें और प्रोजेक्ट डिपेंडेंसीज़ इंस्टॉल करें:
python -m pip install --upgrade pip
pip install -r requirements.txt
इन डिपेंडेंसीज़ में सेटअप स्क्रिप्ट, मॉडल-डाउनलोड प्रक्रिया और लोकल Gradio वेब इंटरफ़ेस द्वारा प्रयुक्त Python पैकेज शामिल हैं।
3. VibeASR.cpp बिल्ड करें और मॉडल डाउनलोड करें
VibeASR.cpp में एक सेटअप स्क्रिप्ट शामिल है जो C++ बिल्ड प्रक्रिया और मॉडल डाउनलोड—दोनों को संभालती है।
यह कमांड-लाइन और स्ट्रीमिंग एक्ज़िक्यूटेबल्स को कंपाइल करता है, आवश्यक GGUF पैकेज इंस्टॉल करता है, और प्री-क्वांटाइज़्ड मॉडल फ़ाइलें प्रोजेक्ट डायरेक्टरी में डाउनलोड करता है।
सेटअप स्क्रिप्ट चलाने से पहले सुनिश्चित करें कि Python वर्चुअल एनवायरनमेंट सक्रिय है।
Linux और macOS पर, चलाएँ:
python setup_env.py
Windows पर, w64devkit टर्मिनल के अंदर निम्न कमांड चलाएँ:
CMAKE_GENERATOR=Ninja python setup_env.py
CMAKE_GENERATOR=Ninja सेट करने से CMake, Microsoft Visual C++ की बजाय Ninja बिल्ड सिस्टम का उपयोग करता है—जो w64devkit वातावरण में उपलब्ध नहीं है।
सेटअप स्क्रिप्ट यह करेगी:
- आवश्यक
ggufPython पैकेज इंस्टॉल करना। - VibeASR.cpp को कॉन्फ़िगर और कंपाइल करना।
- इन्फरेंस और स्ट्रीमिंग एक्ज़िक्यूटेबल्स बनाना।
- प्री-क्वांटाइज़्ड VibeASR मॉडल फ़ाइलें डाउनलोड करना।
- डाउनलोड किए गए मॉडल्स को
models/vibeasrमें सेव करना।
प्रक्रिया पूरी होने के बाद, मुख्य इन्फरेंस एक्ज़िक्यूटेबल निम्न स्थान पर उपलब्ध होगा।
Windows पर:
build/bin/asr_infer.exe
Linux और macOS पर:
build/bin/asr_infer
उपलब्ध कमांड-लाइन विकल्प दिखाकर सत्यापित करें कि एक्ज़िक्यूटेबल सफलतापूर्वक बिल्ड हुआ है।
Windows पर:
./build/bin/asr_infer.exe --help
Linux और macOS पर:
./build/bin/asr_infer --help

4. फ़ाइल और स्ट्रीमिंग ट्रांसक्रिप्शन का परीक्षण करें
अब जबकि रनटाइम और मॉडल तैयार हैं, आप दो ट्रांसक्रिप्शन विधियों का परीक्षण कर सकते हैं।
मानक इन्फरेंस एक्ज़िक्यूटेबल एक ऑडियो फ़ाइल प्रोसेस करता है और पूर्ण ट्रांसक्रिप्ट लौटाता है, जबकि स्ट्रीमिंग सर्वर मॉडल को लोडेड रखता है और टोकन जेनरेट होने के साथ-साथ ट्रांसक्रिप्शन प्रगतिशील रूप से दिखाता है।
पहले, VibeASR.cpp प्रोजेक्ट फ़ोल्डर के अंदर से एक छोटा सैंपल रिकॉर्डिंग डाउनलोड करें:
curl -L "https://homepages.inf.ed.ac.uk/htang2/notes/speech-samples/103-1240-0000.wav" -o recording.wav
ऑडियो फ़ाइल वर्तमान प्रोजेक्ट डायरेक्टरी में recording.wav नाम से सेव हो जाएगी।
किसी ऑडियो फ़ाइल का ट्रांसक्राइब करें
मानक इन्फरेंस कमांड ऑडियो एन्कोडर और भाषा मॉडल को लोड करता है, रिकॉर्डिंग प्रोसेस करता है और पूर्ण ट्रांसक्रिप्शन प्रिंट करता है।
Windows पर चलाएँ:
./build/bin/asr_infer.exe \
--vae-model models/vibeasr/vibeasr-vae-encoder-i8_s.gguf \
--lm-model models/vibeasr/vibeasr-lm-i2_s-embed-q6_k.gguf \
--audio recording.wav \
-t 6 \
--greedy
Linux और macOS पर, यही कमांड .exe एक्सटेंशन के बिना उपयोग करें:
./build/bin/asr_infer \
--vae-model models/vibeasr/vibeasr-vae-encoder-i8_s.gguf \
--lm-model models/vibeasr/vibeasr-lm-i2_s-embed-q6_k.gguf \
--audio recording.wav \
-t 6 \
--greedy

-t 6 विकल्प इन्फरेंस के लिए छह CPU थ्रेड्स असाइन करता है। आप अपने प्रोसेसर के अनुसार इस संख्या को बढ़ा या घटा सकते हैं।
--greedy विकल्प प्रत्येक डिकोडिंग स्टेप पर सबसे संभावित टोकन चुनता है, जिससे ट्रांसक्रिप्शन परिणाम स्थिर रहते हैं।
मेरे कंप्यूटर पर, 14.085-सेकंड की रिकॉर्डिंग को प्रोसेस करने में लगभग 13.7 सेकंड लगे:
RTF: 0.9726
Speed: approximately 1.03× real time
रीयल-टाइम फ़ैक्टर (RTF) प्रोसेसिंग समय की तुलना ऑडियो अवधि से करता है।
यदि RTF 1.0 से कम है, तो रिकॉर्डिंग वास्तविक प्लेबैक लंबाई से तेज़ी से ट्रांसक्राइब हुई। प्रदर्शन प्रोसेसर, ऑपरेटिंग सिस्टम, थ्रेड संख्या और रिकॉर्डिंग की लंबाई पर निर्भर करेगा।
टोकन-बाय-टोकन स्ट्रीमिंग परीक्षण
VibeASR.cpp में एक परसिस्टेंट स्ट्रीमिंग सर्वर भी शामिल है। यह दोनों मॉडल फ़ाइलों को एक बार लोड करता है और सक्रिय रहता है—जिससे हर बार मॉडल को रीस्टार्ट और रीलोड किए बिना आप कई रिकॉर्डिंग सबमिट कर सकते हैं।
आउटपुट बड़े भाषा मॉडल की स्ट्रीमिंग जैसा काम करता है।
पूरे ट्रांसक्रिप्शन का इंतज़ार करने की बजाय, डिकोडर द्वारा हर टोकन जेनरेट होते ही आप पाठ देखना शुरू कर देते हैं।
कुछ टोकन पूरे शब्द का प्रतिनिधित्व करेंगे, जबकि कुछ शब्द के अंश या विराम-चिह्न का—पर इन्हें ट्रांसक्रिप्ट पूरा होने तक क्रमशः दिखाया जाता है।
Windows पर सर्वर शुरू करें:
./build/bin/asr_stream_server.exe \
--vae-model models/vibeasr/vibeasr-vae-encoder-i8_s.gguf \
--lm-model models/vibeasr/vibeasr-lm-i2_s-embed-q6_k.gguf \
-t 6 \
--greedy
Linux और macOS पर चलाएँ:
./build/bin/asr_stream_server \
--vae-model models/vibeasr/vibeasr-vae-encoder-i8_s.gguf \
--lm-model models/vibeasr/vibeasr-lm-i2_s-embed-q6_k.gguf \
-t 6 \
--greedy

मॉडल्स लोड होने के बाद सर्वर यह दिखाए तब तक प्रतीक्षा करें:
---READY---
ऑडियो फ़ाइल का पथ दर्ज करें और Enter दबाएँ:
recording.wav
ट्रांसक्रिप्शन टोकन-बाय-टोकन दिखना शुरू हो जाएगा। जब रिकॉर्डिंग पूरी तरह प्रोसेस हो जाएगी, सर्वर यह दिखाएगा:
---END---

इसके बाद बिना मॉडल्स को रीलोड किए आप दूसरी ऑडियो फ़ाइल का पथ दर्ज कर सकते हैं। सर्वर रोकने के लिए टाइप करें:
exit
जब आप कई रिकॉर्डिंग्स ट्रांसक्राइब कर रहे हों या VibeASR.cpp को किसी अन्य एप्लिकेशन से जोड़ना चाहते हों जिसे प्रगतिशील आउटपुट चाहिए—तो यह परसिस्टेंट वर्कफ़्लो विशेष रूप से उपयोगी है।
5. वेब इंटरफ़ेस लॉन्च करें और परीक्षण करें
VibeASR.cpp में लोकल Gradio वेब इंटरफ़ेस शामिल है, जिससे आप ऑडियो फ़ाइलें अपलोड कर सकते हैं या माइक्रोफ़ोन से सीधे रिकॉर्ड कर सकते हैं। यह प्रक्रिया Windows, Linux और macOS पर समान है—हालाँकि Windows पर एक्ज़िक्यूटेबल्स .exe से समाप्त होते हैं।
इंटरफ़ेस के लिए आवश्यक डिपेंडेंसीज़—जैसे Gradio, SoundFile और NumPy—पहले ही requirements.txt के माध्यम से इंस्टॉल की गई थीं।
पहले, सुनिश्चित करें कि वर्चुअल एनवायरनमेंट सक्रिय है।
w64devkit टर्मिनल के साथ Windows:
. .venv/Scripts/activate
Linux और macOS:
source .venv/bin/activate
Windows पर इंटरफ़ेस लॉन्च करें:
python demo/gradio_asr_demo.py \
--port 7860 \
--bin build/bin/asr_infer.exe \
--server-bin build/bin/asr_stream_server.exe
Linux और macOS पर, डिफ़ॉल्ट एक्ज़िक्यूटेबल पथ स्वतः पहचान लिए जाते हैं:
python demo/gradio_asr_demo.py --port 7860
मॉडल पथ सभी ऑपरेटिंग सिस्टम्स के लिए Gradio स्क्रिप्ट के अंदर पहले से कॉन्फ़िगर हैं, इसलिए आपको उन्हें कमांड में शामिल करने की आवश्यकता नहीं है।
स्क्रिप्ट मानक इन्फरेंस एक्ज़िक्यूटेबल और स्ट्रीमिंग सर्वर के लिए अलग-अलग पथों को भी सपोर्ट करती है।
अपने ब्राउज़र में निम्न पता खोलें:
http://127.0.0.1:7860
इंटरफ़ेस एक्सप्लोर करें
इंटरफ़ेस आपको ये करने देता है:
- CPU मॉडल चुनें।
- CPU थ्रेड्स की संख्या चुनें।
- Online और Offline प्रोसेसिंग के बीच स्विच करें।
- ग्रीडी डिकोडिंग सक्षम करें या तापमान और Top-p समायोजित करें।
- ऑडियो फ़ाइल अपलोड करें या सीधे माइक्रोफ़ोन से रिकॉर्ड करें।
- वैकल्पिक हॉटवर्ड्स जोड़ें, जैसे नाम या तकनीकी शब्द।
- ट्रांसक्रिप्शन, ऑडियो अवधि और रीयल-टाइम फ़ैक्टर देखें।
यहाँ Online मोड का अर्थ यह नहीं है कि आपका ऑडियो किसी ऑनलाइन सेवा को भेजा जाता है।
यह लंबे रिकॉर्डिंग्स को टुकड़ों में प्रगतिशील रूप से प्रोसेस करता है और उपलब्ध होने पर asr_stream_server का उपयोग करता है।
Offline मोड पूर्ण ऑडियो फ़ाइल को प्रोसेस करने के बाद परिणाम दिखाता है।

छोटी रिकॉर्डिंग का परीक्षण करें
पहले परीक्षण में, मैंने माइक्रोफ़ोन से सीधे एक छोटा वाक्य रिकॉर्ड किया और Offline मोड चुना, चार CPU थ्रेड्स के साथ।

0.9584 का RTF दर्शाता है कि मॉडल को प्रति सेकंड ऑडियो के लिए लगभग 0.96 सेकंड लगे।
यह लगभग 1.04× रीयल टाइम है—अर्थात ट्रांसक्रिप्शन रिकॉर्डिंग की वास्तविक अवधि से थोड़ा तेज़ पूरा हुआ।
लंबी रिकॉर्डिंग का परीक्षण करें
मैंने लगभग 109.7 सेकंड के भाषण वाली लंबी रिकॉर्डिंग के साथ भी इंटरफ़ेस का परीक्षण किया। मॉडल ने सफलतापूर्वक पूरा ट्रांसक्रिप्शन तैयार किया और यह रिपोर्ट किया:
RTF: 0.5305
Audio: 109.7s

इसका मतलब मॉडल को प्रति सेकंड ऑडियो के लिए लगभग 0.53 सेकंड की आवश्यकता हुई। पूरी रिकॉर्डिंग को ट्रांसक्राइब करने में लगभग 58 सेकंड लगे—जो लगभग 1.88× रीयल टाइम की गति देता है।
अंतिम विचार
यह देखकर मैं प्रभावित हुआ कि लोकल स्पीच रिकग्निशन कितना व्यावहारिक हो गया है।
यहाँ तक कि पुराने CPU पर भी, VibeASR.cpp बिना GPU, अधिक मेमोरी या अधिक स्टोरेज के, रीयल-टाइम के बराबर या उससे तेज़ी से ऑडियो ट्रांसक्राइब कर सकता है।
कंपाइल किया गया एक्ज़िक्यूटेबल Python एप्लिकेशन में जोड़ा जा सकता है, FastAPI एन्डपॉइंट में रैप किया जा सकता है, या किसी बड़े लोकल टूल के लिए ट्रांसक्रिप्शन इंजन के रूप में इस्तेमाल किया जा सकता है।
विचार करने के लिए मुख्य सेटिंग प्रोसेस को असाइन किए गए CPU थ्रेड्स की संख्या है।
आपको ऑनलाइन मोड—जो ट्रांसक्रिप्ट को प्रगतिशील रूप से स्ट्रीम करता है—और ऑफ़लाइन मोड—जो ऑडियो प्रोसेस होने के बाद पूरा ट्रांसक्रिप्शन लौटाता है—के बीच भी चुनाव करना होगा।
सेटअप अभी भी और आसान हो सकता है—खासकर Windows, Linux और macOS पर।
चूँकि प्रोजेक्ट अभी विकसित हो रहा है, मुझे उम्मीद है कि इंस्टॉलेशन और प्री-बिल्ट बाइनरी सपोर्ट समय के साथ बेहतर होंगे। एक बार स्थिर स्टैंडअलोन बाइनरी उपलब्ध होने पर, मैं खुद को और अधिक लोकल स्पीच-टू-टेक्स्ट प्रोजेक्ट्स में इस मॉडल का उपयोग करते हुए देख सकता हूँ।
हमारे GPT Live Transcribe API ट्यूटोरियल को भी ज़रूर देखें।
FAQs
VibeASR मॉडल वास्तव में किन भाषाओं का समर्थन करता है?
VibeVoice-ASR मॉडल स्वाभाविक रूप से 50 से अधिक भाषाओं का समर्थन करता है। इसमें English, Chinese, French, Italian, Korean, Portuguese और Vietnamese शामिल हैं। इसे स्पष्ट भाषा सेटिंग की आवश्यकता नहीं होती और यह स्वतः "कोड-स्विचिंग" (जब वक्ता एक ही वाक्य में स्वाभाविक रूप से कई भाषाएँ मिलाते हैं) संभाल सकता है।
क्या मुझे ट्रांसक्रिप्शन से पहले अपनी MP3 या वीडियो फ़ाइलें कन्वर्ट करनी होंगी?
यदि आप सीधे asr_infer कमांड-लाइन एक्ज़िक्यूटेबल का उपयोग कर रहे हैं, तो यह .wav फ़ाइलों (आमतौर पर 16kHz, 16-बिट मोनो) की अपेक्षा करता है। यदि आपके पास MP3, M4A, या FLAC जैसे अन्य प्रारूपों में ऑडियो है, तो आपको CLI को देने से पहले उन्हें FFmpeg जैसे टूल से पहले WAV में कन्वर्ट करना होगा।
क्या मॉडल अलग-अलग स्पीकर्स की पहचान कर सकता है या शब्द-स्तरीय टाइमस्टैम्प दे सकता है?
बेस VibeVoice-ASR आर्किटेक्चर को स्पष्ट रूप से एक ही पास में "Who" (स्पीकर डायराइज़ेशन), "When" (टाइमस्टैम्प्स) और "What" (कंटेंट) युक्त स्ट्रक्चर्ड आउटपुट जनरेट करने के लिए डिज़ाइन किया गया था। हालाँकि, हल्का C++ इन्फरेंस एक्ज़िक्यूटेबल (VibeASR.cpp) वर्तमान में प्रगतिशील रॉ टेक्स्ट ट्रांसक्रिप्शन पर केंद्रित है। स्पीकर IDs और टाइमस्टैम्प्स सहित पूरा स्ट्रक्चर्ड JSON आउटपुट प्राप्त करने के लिए, आमतौर पर आपको Python की transformers लाइब्रेरी का उपयोग करके मॉडल चलाने की आवश्यकता होती है।