Maskinoversettelse · Engelsk original

Hibiki Zero-3B taleoversettelse (FR / ES / PT / DE → EN)

Hibiki Zero-3B er Kyutais streaming tale-til-speech oversettelse Modell - Inngang er en 24 kHz lydstrøm på fransk, spansk, portugisisk eller tysk; utdata er en 24 kHz Engelsk lydstrøm pluss en parallell engelsk tekst transkripsjon på samme 12.5 Hz rammehastighet. Bygget på Moshi/Mimi multistream-arkitektur: en enkelt dekoder-bare transformator i fellesskap modellerer kilde-audio codec-strømmen og målteksten+audio-strømmer, så det er ingen separate ASR + MT + TTS rørledning. Den Soniqo Bygge løp som kvantisert MLX safetensorer (INT4 standard, INT8 Tilgjengelig) helt på Apple Silicon. CC-BY-4.0.

Når du skal nå Hibiki vs. ASR + MADLAD

Pipe-stil ASR + MADLAD (speech transcribe | speech translate) får deg 400+ språk, men legger til den runde tripp latensen til tre modeller. Hibiki er en modell slutt-til-end og bevarer prosodi - velg den når du trenger live tale i målspråket i stedet for bare tekst.

Rask start

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)

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

# 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

Arkitektur

Hibiki Zero-3B er en 3,1B-parameter dekoder-bare multistrøms transformator. Modellen deltar i fellesskap over 33 streams per ramme: én tekststrøm, 16 mållydkodebøker (middelets utgang) og 16 kildelydkodebøker(brukerens inngang). Ved hver 80 ms innrammer modellen prøver en teksttoken pluss 16 lydkoder via en liten 6-lags depformer som kjører 16 undertrinn per ramme, en per målkodebok, med en 9-slike planlagte multilinjeprojeksjon.

Lydkodeken er Mimi på 12.5 Hz / 16 kodebøker. Kildelyd er kodet i 16 kildestrøm kodebøker (delay [0, 2, 2, …, 2]); generert mållyd fyller 16 målstrømskodebøker (same forsinkelsesmønster); per kodebok un-shift brukes før Mimi dekoder målet tilbake til 24 kHz engelsk PCM. Den temporære ryggraden er 28 GQA lag (dim = 2048, 16 spørringshoder, 8 KV-hoder, kv_repeat = 2, split-halv RoPE rope_concat, ingen balsam - Zero er den ubetingede varianten).

Decode Loop

Hibiki sender ut SPM-fylletoken (id 3) mens den akkumulerer nok kildekontekst til å oversette, deretter innholdsteksttokener med matchende mållyd, og til slutt tekst-EOS (id 2). Swift driveren kjører til EOS er prøvet forbi kildevinduet, som er dekket av max(tSrc × 5/2, tSrc + 20) trinn som sikkerhetsbunden. Utgangskjøring ca. 1.0-1.6× inngangsvarigheten på FLEURS-stil-klipp; callers bør ikke anta output_duration == input_duration.

Den autoregressive tilbakemeldingsstien er ikke åpenbar: i trinn t transformatoren leser polletter ved cacheindeks trinn (uniform på tvers av alle 33-strømmer, med init-token substitusjon når step ≤ delays[k]), prøveteksten + 16-målkodene er skrevet ved indeks trinn + 1. Dette speilet oppstrøms Moshi lm.py hvor state.offsets += 1 skjer før cachespreaden. text_emb rad for EOS (id 2) er aliasert til å rekke 3 (PAD) på vekt-last tid, speiler Kyutais loaders.py:312 -implicitt erstatte tidlig EOS med PAD-patch - ethvert EOS-prøvebilde under lydstrømsvinduet er ufarlig, bare etterkilde EOS avslutter sløyfen.

Modell Varianter

Variant Kvantisering StørrelseBeregnHuggingFace
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

Språkdekning

Hibiki Zero-3B er trent på Fransk, spansk, portugisisk og tysk → Engelsk. Swift driveren registrerer automatisk kildespråket; --source-lang flagget er metadata.

KildeStatus Prøve grådig utgang
FR Strengt E2E kanarie- Så det er en skirute - (fra -Pensez à l'itinéraire de ski -)
ES Strengt E2E kanarie-Gentlemen, dataene er bekymrende - (Hibiki europarl prøve)
PTVarsel bare (innholds-trolig, lavere søkeord tilbakekallelse)Den femte c er p av martyren - (FLEURS PT)
DEVarsel bare (innholds-trolig, lavere søkeord tilbakekallelse) Det syntes ikke å være nyttig for meg - (FLEURS DE)
FLEURS Spansk er ut-av-distribusjon

16 kHz menneskelig-innspilt FLEURS Spanske klipp utløser degenerert generasjon i både Python oppstrøms og Swift port (Python sender 1643 trinn / ~ 131 s ødelagt lyd uten prøvetaking EOS). Swift ES regresjonskanalen bruker en 5 trimmet utdrag fra Kyutais egen prøverom (kyutai/hibiki-zero-prøver) ved 24 kHz TTS-generert lyd, som matcher trening distribusjonen og produserer ren engelsk. Hvis du mater Hibiki spansk i produksjon, pre-remplementererer til 24 kHC og stikk til lengre klipp (5 s+).

Miljøvariabler

Variabel Effekt
HIBIKI_GREEDY=1 Tving argmax dekoding for både tekst og mållyd. Reproduserbar - brukt av de strenge CI-kanariene.
HIBIKI_E2E=1 Aktivere E2E test tilfeller (krever ~ 2,7 GB modell nedlasting).
HIBIKI_STRICT_ALL=1 Fremme PT/DE-tester fra kun varsling til streng.
HIBIKI_LENIENT=1 Demote FR/ES tester fra streng til kun varsle (kun debugging).
HIBIKI_MODEL_ID=<repo>Overstyr standarden aufklarer/Hibiki-Zero-3B-MLX-4bit modell-ID.

Ytelse (M2 Max, MLX 4-bit)

MetriskGreedySamplet
Per-trinn latens~75 ms~95 ms
Vegg-klokke for 3.54 s FR-kilde~5 s~7 s
Utgangs varighet1.0-1.6× kilde1.0-1.6× kilde

Kjente grenser

Referanser