Maskinoversettelse · Engelsk original

MADLAD-400 Oversettelse (på enhet, 400+ språk)

MADLAD-400-3B-MT er en T5 v1.1-koder-dekoder-modell fra Google utdannet til mange-mange maskinoversettelser på tvers av 400+-språk. Apache 2.0. Den Soniqo Bygge løp som kvantisert MLX safetensorer (INT4 / INT8) på Apple Silicon uten skysamtaler. Slipp det etter ASR liveteksting, etter TTS prep for flerspråklige stemmemidler, eller bruk den frittstående.

Rør fra ASR

speech transcribe meeting.wav | speech translate --to es - samme binære, målspråk er det eneste nødvendige inndata. Kildespråket blir automatisk detektert av koderen; du angir bare hva du vil det oversatt into.

Rask start

import MADLADTranslation

let translator = try await MADLADTranslator.fromPretrained()

// Greedy decode (recommended default)
let es = try translator.translate("Hello, how are you?", to: "es")
// → "Hola, ¿cómo estás?"

let zh = try translator.translate("Where is the library?", to: "zh")
// → "图书馆在哪里?"

// Streaming
for try await piece in translator.translateStream("Good morning", to: "fr") {
    print(piece, terminator: "")
}

CLI

speech translate "Hello, how are you?" --to es
speech translate "Bonjour" --to en --quantization int8
speech translate "Hello world" --to es --stream
speech translate --to fr --json    # JSON with timing metrics

# Pipe from ASR
speech transcribe meeting.wav | speech translate --to es

Arkitektur

T5 v1.1 koder-dekoder, ~3B-parametre. 32-koder + 32 dekoder lag, d_model = 1024, d_kv = 128, num_heads = 16, gated Gelu FFN (d_ff = 8192. Positionsinformasjonen kommer via en lærd relativ posisjon bias (32-bøtter, maks avstand 128) i stedet for posisjonsinnbygginger - toveis i koderen, enveis (bare i avkoderen). Biastabellen lever bare på det første laget i hver stabel og blir forplantet gjennom påfølgende lag. ikke skalert av 1/√d_k - Det er en T5 quirk.

Cross-attention K/V beregnes en gang fra koderutgangen og gjenbrukes for hvert dekodetrinn (cached i DecoderLayerCache.crossAttn). Demoduler selvoppmerksomhet KV-bufferen vokser per generert token. Greedy decoding er standard og anbefales for oversettelse; temperatur / topp-k / topp-p-prøvetaking er eksponert for parafras-stil bruk.

Modell Varianter

Variant Kvantisering StørrelseBeregnHuggingFace
MADLAD-400-3B-MTINT4~1.7 GBMetal GPU (MLX)aufklarer/MADLAD400-3B-MT-MLX (int4/)
MADLAD-400-3B-MTINT8~3.1 GBMetal GPU (MLX)aufklarer/MADLAD400-3B-MT-MLX (int8/)

Målspråk

Angi målet som språkkoden som brukes i MADLADs ordforråd (vanligvis ISO 639-1 som es, fr, zh, ja, pluss 400+ regionale varianter som yue for kantonesisk, min_nan for Hokkien). Tokenizer løser <2{lang}> via direkte ordforrådsoppslag og kast MADLADTranslationError.unsupportedLanguage hvis koden ikke er gjenkjent. Kildespråk blir automatisk oppdaget fra inngangen - du angir det ikke.

// Errors out if the language code isn't in MADLAD's vocab.
do {
    let _ = try translator.translate("Hello", to: "xx")
} catch MADLADTranslationError.unsupportedLanguage(let code) {
    print("MADLAD doesn't support: \(code)")
}

Samplingskonfigurasjon

let sampling = TranslationSamplingConfig(
    temperature: 0.0,        // greedy (default, recommended for MT)
    topK: 0,                 // disabled
    topP: 1.0,               // disabled
    maxTokens: 256,
    repetitionPenalty: 1.0
)
let result = try translator.translate("Long-form text…", to: "es", sampling: sampling)
ParameterStandard Beskrivelse
temperature0.00 = grådig. Bump til 0.6-0.8 for parafrase variasjon.
topK0 Topp-K cutoff (0 = deaktivert).
topP1.0Nucleus prøvetaking kuttet.
maxTokens256Hard hette på utgangslengden.
repetitionPenalty1.0> 1 straffer nylig genererte polletter.

Konvertering

MLX-sikkerhetsenhetene på aufklarer/MADLAD400-3B-MT-MLX er kvantisert fra originalen Google/madlad400-3b-mt via mx.quantize (gruppestørrelse 64). Den q/k/v/o, wi_0/wi_1/wo, lm_head, og shared Innbyggingen er kvantisert; lagnormen skalaer og den relative posisjon-Bias-tabellen holdes som fp16. MADLADs eneste HF-innbyggingsnøkkel (decoder.embed_tokens.weight) er omdøpt til shared.weight ved konverteringstid så både koder og dekoder gjenbruke den.

Lisens

Apache 2.0 (heretter fra google/madlad400-3b-mt). Modellkort lister det fulle settet av støttede språkkoder.