Konekäännös · Englanninkielinen alkuperäinen
Hibiki Zero-3B Puhekäännös (FR / ES / PT / DE → EN)
Hibiki Zero-3B on Kyutain streaming puhe-to-puhe käännös malli ... 24 kHz äänivirta ranskaksi, espanjaksi, portugaliksi tai saksaksi; tuloste on 24 kHz:n englanninkielinen audiovirta ja rinnakkaisen englanninkielisen tekstin transkripti samaan aikaan 12.5 Hz:n kuvanopeus. Rakennettu Moshi/Mimi multistream arkkitehtuuri: yksi dekooderi vain muuntaja yhdessä mallintaa lähde-audio koodekki virta ja kohdeteksti+audio streams, joten ei ole erillistä ASR + MT + TTS Putkijohto. Soniqo rakennusajot kvantitasoituina MLX turvajärjestelmät (INT4 oletus, INT8 saatavilla) kokonaan Apple Silicon. CC-BY-4.0.
Pipe-style ASR + MADLAD (speech transcribe | speech translate) saat 400+ kieltä, mutta lisää kolmen mallin kierroksen latenssin. Hibiki on yksi malli päästä päähän ja säilyttää prosodian . Valitse se, kun tarvitset live-puhetta kohdekielellä eikä vain teksti.
Pikakäynnistys
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 — auto-detected but pass for the metadata
)
try WAVWriter.write(samples: englishAudio, sampleRate: 24000, to: output)
KLI
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
# Deterministic mode (used by the CI regression canaries)
HIBIKI_GREEDY=1 speech audio-translate input_fr.wav -o out_en.wav --source-lang fr
# Inner-monologue text token IDs (raw — SPM decode is a follow-up)
speech audio-translate input.wav -o out.wav --transcript
Arkkitehtuuri
Hibiki Zero-3B on 3.1B-parametri dekooderi-vain multistream muuntaja. Malli osallistuu yhdessä yli 33 streams per runko: yksi tekstivirta, 16 kohde-audio-koodikirjaa (agentin tulos) ja 16 lähde-audio koodikirjaa (käyttäjän tulo). Kullakin 80 ms:n rungolla mallinäytteitä yksi tekstimerkki plus 16 audiokoodia pienen 6-kerroksen depformer joka ajaa 16 osa-askelta per runko, yksi tavoitekoodikirjaa kohden, 9-liikaisella ajoitetulla MultiLinear-projektiolla.
Äänikoodekki on Mimi 12,5 Hz / 16 koodikirjat. Lähdeääni on koodattu 16 lähdevirran koodikirjaan (viivästys [0, 2, 2, …, 2]); luotu kohdeääni täyttää 16 kohdevirtakoodikirjaa (sama viivemalli); koodikirjaa ei muuteta ennen Mimi -koodia, jossa kohde on poistettavissa takaisin 24 kHz:ään englannin PCM:ään. Ajo selkärangan pituus on 28 GQA-kerrosta (dim = 2048, 16 kyselypäätä, 8 KV-päätä, kv_repeat = 2, split-puoli RPE rope_concat
Pura silmukka
Hibiki säteilee SPM-pehmuste rahakkeita (id 3) vaikka se kerää tarpeeksi lähde konteksti kääntää, sitten sisältö teksti rahakkeita yhteensopiva kohde ääni, ja lopuksi teksti-EOS (id 2) Swift-ajuri kulkee Kunnes EOS näytetään lähdeikkunan ohi, jonka yläraja on max(tSrc × 5/2, tSrc + 20) askelmat turvallisuus sidottu. Lähtö kulkee karkeasti 1.0.1.6× syöte kesto FLERS-tyylinen leikkeet; soittajat ei pitäisi olettaa output_duration == input_duration.
Autoregressiivinen palautepolku ei ole ilmeinen: vaiheessa ist Muuntaja lukee rahakkeita välimuistissa. Vaihe (yhtenäisyys kaikissa 33-virroissa, init-token substituutiolla, kun step ≤ delays[k]); näyteteksti + 16 tavoitekoodit on kirjoitettu indeksiin askelma + 1. Tämä peilaa ylävirtaan Moshi lm.py jossa state.offsets += 1 Se tapahtuu ennen välimuistin hajaantumista. text_emb EOS-rivi (id 2) peitetään riville 3 (PAD) painon latausajalla, joka heijastaa Kyutain loaders.py:312 "korvaa automaattisesti varhaisen EOS-järjestelmän PAD-laastarilla" mikä tahansa audiostreaming-ikkunan aikana otettu EOS on vaaraton, vain lähdekoodin jälkeinen EOS lopettaa silmukan.
Mallivaihtoehdot
| Variantti | Määrä | Koko | Laske | HuggingFace |
|---|---|---|---|---|
| Hibiki Zero-3B | INT4 | ~2.7 GB | Metal GPU (MLX) | aufklarer/Hibiki-Zero-3B-MLX-4bit |
| Hibiki Zero-3B | INT8 | ~3,9 GB | Metal GPU (MLX) | aufklarer/Hibiki-Zero-3B-MLX-8bit |
Kielikate
Hibiki Zero-3B on koulutettu ranskan, espanjan, portugalin ja saksan kielellä → englanti . Swift kuljettaja automaattisesti havaitsee lähdekielen; --source-lang -lippu on vain metatieto.
| Lähde | Tila | Näyte ahneesta tuotannosta |
|---|---|---|
| FR | Tiukka E2E kanarialintu | "joten se on hiihtoreitti." (Pensez à l'itinéraire de shi...) |
| ES | Tiukka E2E kanarialintu | "Hyvät herrat, tiedot ovat huolestuttavia." (Hibiki europarl -näyte) |
| PT | Varovainen (sisältö-uskollinen, alempi avainsanan palautus) | "viidentenä c on marttyyrin p." (FLEURS PT) |
| DE | Varovainen (sisältö-uskollinen, alempi avainsanan palautus) | (FLEURS DE) |
16 kHz ihmisen tallentama FLEURS Espanjan leikkeet laukaista degeneratiivisen sukupolven sekä Python ylävirta ja Swift portti (Python lähettää 1643 askeleet / ~131 s rikki ääni ilman näytteenottoa EOS). Swift ES regressiokanarialin käyttää 5 lohkottu otsake Kyutain omasta näytetilasta ( kyutai/hibiki-nolla-näytteet) 24 kHz:n TTS:n tuottama ääni, joka vastaa harjoitusjakelua ja tuottaa puhdasta englantia. Jos syötät Hibiki espanjaa tuotannossa, ota esinäyte 24:n kHz:iin ja kiinni pidemmissä leikkeissä (5 s+).
Ympäristömuuttujat
| Muuttuja | Vaikutus |
|---|---|
HIBIKI_GREEDY=1 | Force argmax dekoodaus sekä tekstin ja kohde ääni. Reproducible . Käytetään tiukka CI kanarialinnut. |
HIBIKI_E2E=1 | Ota käyttöön E2E -testitapaukset (vaatii ~2.7 GB -mallin latauksen). |
HIBIKI_STRICT_ALL=1 | Edistetään PT/DE-testejä pelkästä varoituksesta tiukkoihin. |
HIBIKI_LENIENT=1 | Demote FR/ES testit tiukasta varoitus-vain (vianetsintä vain). |
HIBIKI_MODEL_ID=<repo> | Ohita oletus aufklarer/Hibiki-Zero-3B-MLX-4bit malli id. |
Suorituskyky (M2 Max, MLX 4-bit)
| Metrinen | Ahne | Näyte |
|---|---|---|
| Per-step latency | ~75 ms | ~95 ms |
| Seinäkellot 3,54 s FR lähde | ~5 s | ~7 s |
| Tuotoksen kesto | 1.0.1.6×-lähde | 1.0.1.6×-lähde |
Tunnetut rajoitukset
translateStream()Se lähettää viimeisen palan. Virtauskohta kietoo tällä hetkellä offlinentranslate(). Todellinen per-chunk Mimi streaming decode on v2 seuranta.- Ei SentencePiece teksti dekooderi.
--transcriptlippu tulostaa raa'at tunnisteet. SPM decode johdotus on seuranta. - Emptled-tila on selvästi meluisampi kuin ahneus. Käytä
HIBIKI_GREEDY=1toistettavissa olevilla ajoilla. - Vain kvantitatiiviset arvot. Repo-alukset Zero-3B 4-bittinen ja 8-bittinen; 1B- ja 2B-Hibiki-variantit ovat muuntimessa (
models/hibiki/export/convert.py), mutta Swift -kuljettajan tavoitteet Zero-3B -mallin GQA + köysi_koncat + ehdoton ulkoasu.
Lähteet
- Paperi: High-Fidelity Samanaikainen puhe-puhe-käännös (Kyutai, 2025)
- Etuvirtakoodi: kyutai-labs/hibiki
- Näytteet: kyutai/hibiki-nolla-näytteet
- Lisenssi: CC-BY-4.0