Hibiki Zero-3B स्पीच अनुवाद (FR / ES / PT / DE → EN)

Hibiki Zero-3B Kyutai का स्ट्रीमिंग स्पीच-टू-स्पीच अनुवाद मॉडल है — इनपुट फ्रेंच, स्पेनिश, पुर्तगाली, या जर्मन में 24 kHz ऑडियो स्ट्रीम है; आउटपुट 24 kHz अंग्रेज़ी ऑडियो स्ट्रीम के साथ-साथ उसी 12.5 Hz फ्रेम दर पर एक समानांतर अंग्रेज़ी टेक्स्ट ट्रांसक्रिप्ट है। Moshi/Mimi मल्टीस्ट्रीम आर्किटेक्चर पर बनाया गया: एक सिंगल डिकोडर-ओनली ट्रांसफ़ॉर्मर स्रोत-ऑडियो कोडेक स्ट्रीम और लक्ष्य टेक्स्ट+ऑडियो स्ट्रीम्स को संयुक्त रूप से मॉडल करता है, इसलिए कोई अलग ASR + MT + TTS पाइपलाइन नहीं है। Soniqo बिल्ड पूरी तरह से Apple Silicon पर क्वांटाइज़्ड MLX safetensors (डिफ़ॉल्ट INT4, INT8 उपलब्ध) के रूप में चलता है। CC-BY-4.0।

Hibiki बनाम ASR + MADLAD का चयन कब करें

पाइप-स्टाइल ASR + MADLAD (speech transcribe | speech translate) आपको 400+ भाषाएँ देता है लेकिन तीन मॉडलों की राउंड-ट्रिप लेटेंसी जोड़ता है। Hibiki एंड-टू-एंड एक ही मॉडल है और प्रॉसोडी को संरक्षित रखता है — जब आपको केवल टेक्स्ट के बजाय लक्ष्य भाषा में लाइव स्पीच चाहिए तब इसे चुनें।

क्विक स्टार्ट

import HibikiTranslate
import AudioCommon

let model = try await HibikiTranslateModel.fromPretrained()

let pcm = try AudioFileLoader.load(url: input, targetSampleRate: 24000)
let (englishAudio, textTokens) = model.translate(
    sourceAudio: pcm,
    sourceLanguage: .fr     // .fr / .es / .pt / .de — स्वतः पता लगाया जाता है पर मेटाडेटा के लिए पास करें
)
try WAVWriter.write(samples: englishAudio, sampleRate: 24000, to: output)

CLI

speech audio-translate input_fr.wav -o out_en.wav --source-lang fr
speech audio-translate input_es.wav -o out_en.wav --source-lang es --quantization 8bit
speech audio-translate input_pt.wav -o out_en.wav --source-lang pt --verbose

# डिटरमिनिस्टिक मोड (CI रिग्रेशन कैनरीज़ द्वारा उपयोग किया जाता है)
HIBIKI_GREEDY=1 speech audio-translate input_fr.wav -o out_en.wav --source-lang fr

# इनर-मोनोलॉग टेक्स्ट टोकन IDs (रॉ — SPM डिकोड एक फ़ॉलो-अप है)
speech audio-translate input.wav -o out.wav --transcript

आर्किटेक्चर

Hibiki Zero-3B एक 3.1B-पैरामीटर डिकोडर-ओनली मल्टीस्ट्रीम ट्रांसफ़ॉर्मर है। मॉडल प्रति फ्रेम 33 स्ट्रीम पर संयुक्त रूप से अटेंड करता है: एक टेक्स्ट स्ट्रीम, 16 टार्गेट-ऑडियो कोडबुक्स (एजेंट का आउटपुट), और 16 सोर्स-ऑडियो कोडबुक्स (उपयोगकर्ता का इनपुट)। प्रत्येक 80 ms फ्रेम पर मॉडल एक छोटे 6-लेयर depformer के माध्यम से एक टेक्स्ट टोकन प्लस 16 ऑडियो कोड सैंपल करता है जो प्रति फ्रेम 16 सब-स्टेप्स चलाता है, प्रति टार्गेट कोडबुक एक, 9-स्लाइस शेड्यूल्ड MultiLinear प्रोजेक्शन के साथ।

ऑडियो कोडेक Mimi है 12.5 Hz / 16 कोडबुक्स पर। सोर्स ऑडियो को 16 सोर्स-स्ट्रीम कोडबुक्स में एनकोड किया जाता है (देरी [0, 2, 2, …, 2]); जनरेट किया गया टार्गेट ऑडियो 16 टार्गेट-स्ट्रीम कोडबुक्स को भरता है (समान देरी पैटर्न); Mimi द्वारा टार्गेट को 24 kHz अंग्रेज़ी PCM में डिकोड करने से पहले प्रति-कोडबुक अन-शिफ्ट लागू किया जाता है। टेम्पोरल बैकबोन 28 GQA लेयर्स है (dim = 2048, 16 क्वेरी हेड्स, 8 KV हेड्स, kv_repeat = 2, स्प्लिट-हाफ RoPE rope_concat, कोई कंडीशनर नहीं — Zero अनकंडीशनल वेरिएंट है)।

डिकोड लूप

Hibiki अनुवाद करने के लिए पर्याप्त सोर्स कॉन्टेक्स्ट एकत्रित करते समय SPM पैडिंग टोकन (id 3) उत्सर्जित करता है, फिर मेल खाते टार्गेट ऑडियो के साथ कॉन्टेंट टेक्स्ट टोकन, और अंत में text-EOS (id 2)। Swift ड्राइवर तब तक चलता है जब तक सोर्स विंडो के बाद EOS सैंपल न हो जाए, सुरक्षा सीमा के रूप में max(tSrc × 5/2, tSrc + 20) स्टेप्स पर सीमित। FLEURS-स्टाइल क्लिप्स पर आउटपुट लगभग इनपुट अवधि का 1.0–1.6× चलता है; कॉलर्स को output_duration == input_duration नहीं मानना चाहिए।

ऑटोरिग्रेसिव फ़ीडबैक पाथ गैर-स्पष्ट है: स्टेप t पर ट्रांसफ़ॉर्मर कैश इंडेक्स step पर टोकन पढ़ता है (सभी 33 स्ट्रीम्स में एकसमान, जब step ≤ delays[k] हो तो init-token प्रतिस्थापन के साथ); सैंपल किए गए टेक्स्ट + 16 टार्गेट कोड इंडेक्स step + 1 पर लिखे जाते हैं। यह अपस्ट्रीम Moshi lm.py को प्रतिबिंबित करता है जहाँ कैश स्कैटर से पहले state.offsets += 1 होता है। EOS (id 2) के लिए text_emb रो को वज़न-लोड समय पर रो 3 (PAD) पर अलियास किया जाता है, जो Kyutai के loaders.py:312 "implicitly replace early EOS with PAD" पैच को प्रतिबिंबित करता है — ऑडियो-स्ट्रीमिंग विंडो के दौरान सैंपल किया गया कोई भी EOS हानिरहित है, केवल पोस्ट-सोर्स EOS लूप को समाप्त करता है।

मॉडल वेरिएंट्स

वेरिएंटक्वांटाइज़ेशनआकारकंप्यूटHuggingFace
Hibiki Zero-3BINT4~2.7 GBMetal GPU (MLX)aufklarer/Hibiki-Zero-3B-MLX-4bit
Hibiki Zero-3BINT8~3.9 GBMetal GPU (MLX)aufklarer/Hibiki-Zero-3B-MLX-8bit

भाषा कवरेज

Hibiki Zero-3B को फ्रेंच, स्पेनिश, पुर्तगाली, और जर्मन → अंग्रेज़ी पर प्रशिक्षित किया गया है। Swift ड्राइवर स्वतः सोर्स भाषा का पता लगाता है; --source-lang फ्लैग केवल मेटाडेटा है।

स्रोतस्थितिनमूना ग्रीडी आउटपुट
FRस्ट्रिक्ट E2E कैनरी"so it's a ski route." ("Pensez à l'itinéraire de ski…" से)
ESस्ट्रिक्ट E2E कैनरी"gentlemen, the data is worrying." (Hibiki europarl नमूना)
PTकेवल चेतावनी (कॉन्टेंट-फेथफुल, कम कीवर्ड रिकॉल)"the fifth c is p of the martyr." (FLEURS PT)
DEकेवल चेतावनी (कॉन्टेंट-फेथफुल, कम कीवर्ड रिकॉल)"that didn't seem to me to be useful." (FLEURS DE)
FLEURS स्पेनिश आउट-ऑफ-डिस्ट्रिब्यूशन है

16 kHz मानव-रिकॉर्ड की गई FLEURS स्पेनिश क्लिप्स Python अपस्ट्रीम और Swift पोर्ट दोनों में डिजेनरेट जनरेशन ट्रिगर करती हैं (Python EOS सैंपल किए बिना 1643 स्टेप्स / ~131 s का टूटा हुआ ऑडियो उत्सर्जित करता है)। Swift ES रिग्रेशन कैनरी 24 kHz TTS-जनरेटेड ऑडियो पर Kyutai के अपने नमूने स्पेस (kyutai/hibiki-zero-samples) से 5 s ट्रिम किए गए अंश का उपयोग करती है, जो प्रशिक्षण वितरण से मेल खाता है और साफ़ अंग्रेज़ी उत्पन्न करता है। यदि आप प्रोडक्शन में Hibiki Spanish फ़ीड कर रहे हैं, तो पहले 24 kHz पर रिसैंपल करें और लंबी क्लिप्स (5 s+) का उपयोग करें।

एनवायरनमेंट वेरिएबल्स

वेरिएबलप्रभाव
HIBIKI_GREEDY=1टेक्स्ट और टार्गेट ऑडियो दोनों के लिए argmax डिकोडिंग बाध्य करें। पुनरुत्पादक — स्ट्रिक्ट CI कैनरीज़ द्वारा उपयोग किया जाता है।
HIBIKI_E2E=1E2E टेस्ट केसेज़ सक्षम करें (~2.7 GB मॉडल डाउनलोड की आवश्यकता है)।
HIBIKI_STRICT_ALL=1PT/DE टेस्ट्स को केवल-चेतावनी से स्ट्रिक्ट तक प्रमोट करें।
HIBIKI_LENIENT=1FR/ES टेस्ट्स को स्ट्रिक्ट से केवल-चेतावनी पर डाउनग्रेड करें (केवल डिबगिंग)।
HIBIKI_MODEL_ID=<repo>डिफ़ॉल्ट aufklarer/Hibiki-Zero-3B-MLX-4bit मॉडल id को ओवरराइड करें।

प्रदर्शन (M2 Max, MLX 4-bit)

मीट्रिकग्रीडीसैंपल्ड
प्रति-स्टेप लेटेंसी~75 ms~95 ms
3.54 s FR सोर्स के लिए वॉल-क्लॉक~5 s~7 s
आउटपुट अवधि1.0–1.6× सोर्स1.0–1.6× सोर्स

ज्ञात सीमाएँ

संदर्भ