תרגום מכונה · המקור באנגלית

MADLAD-400 תרגום (על-Device, 400+ Languages)

MADLAD-400-3B-MT הוא T5 v1.1 מודל קודקודר מ-Google שהוכשר לתרגום מכונה רב-לגברים ברחבי העולם. 400+ שפות. Apache 2.0The Soniqo בנייה ככמתה MLX מעכבי בטיחות ((INT4 / INT8) על Apple Silicon ללא שיחות ענן, זרוק אותו אחרי ASR לחבושת חיה, אחרי TTS מראש עבור סוכנים קוליים רב לשוניים, או להשתמש בו עומד.

ארכיון תגיות ASR

speech transcribe meeting.wav | speech translate --to es - אותו בינארי, שפת היעד היא הקלט היחיד הנדרש. שפת המקור הוא אוטומטי מקודמת על ידי המקודש; אתה רק מציין מה אתה רוצה לתרגם to.

התחלה מהירה

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 C

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

ארכיטקטורה

T5 v1.1 encoder-decoder - 3B פרמטרים. 32 מקודמת + 32 decoder שכבות, ZXQXXZ deקודר, ZXXQ4XZ. d_model = 1024, d_kv = 128, num_heads = 16ראשי התיבות של GLU FFN (GIRD GLU)d_ff = 8192מידע על מיקום מגיע באמצעות לומד המונחים: (32 דליs, מרחק מקסימלי 128) במקום למקם את הטביעות - דו-צדדי בקוד, unidirectional (past-Only) בדלפק.השולחן ההטיה חי רק על השכבה הראשונה של כל ערימה ומוסמך באמצעות שכבות הבאות. לא לא לא קנה על ידי 1/√d_k זה T5 quirk.

Cross-attention K/V הוא מפונק פעם מהפלט הקודר ומשמש מחדש עבור כל צעד קוד (בקיצור DecoderLayerCache.crossAttn) Decoder self-attention kV cache גדל perken. Greed decoding הוא ברירת המחדל ומומלץ לתרגום; טמפרטורה / העליון / mp-F-amp-F-Fed הוא חשוף לשימוש paraling.

מודלים

משתנההמונחיםגודלהמונחיםHuggingFace
MADLAD-400-3B-MTINT41.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/)

שפות מטרות

ציין את המטרה כקוד שפה המשמש באוצר המילים של MADLAD (בדרך כלל ISO 639-1) כמו MADLA DD. es, fr, zh, ja, בתוספת 400+ גרסאות אזוריות כגון yue לקטנטון, min_nan שם הסרטון: Hokkien: The Tokenizerפתור <2{lang}> באמצעות חיפוש מילים ישיר וזרקות MADLADTranslationError.unsupportedLanguage אם הקוד אינו מוכר.שפת המקור היא אוטומטית מפלט - אתה לא מציין את זה.

// 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)")
}

בלבול

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)
ParameterDefaultתיאור תיאור
temperature0.00 = חמדן, באמפ ל-0.6-0.8 עבור וריאציות פרמצבציה.
topK0Top-K חיתוךoff (0=מוגבל).
topP1.0Nucleus sampling Cutoff
maxTokens256כובע קשה על אורך התפוקה.
repetitionPenalty1.0ווגט;1 מענישים על אסימונים שנוצרו לאחרונה.

המונחים:

MLX בטוחtensors Aufklarer / MADLAD400-3B-MT-MLX הם מוגדרים מהמקור Google/madlad400-3b-mt באמצעות mx.quantize גודל הקבוצה 64 q/k/v/o, wi_0/wi_1/wo, lm_headו shared הטמיעו הם הקוונטים; קשקשים נורמטיביים ושולחן העל-המושבה היחסית נשמרים כ- fp16. MADLAD's only HFהטמעת מפתח (המפתח היחיד של HF)decoder.embed_tokens.weight(שם השם) shared.weight בזמן המרה, כך גם קודר וגם קודר משתמשים בו.

רישיון רישיון רישיון

Apache 2.0 Google/madlad400-3b-mtכרטיס מודל מציין את כל סט של קודי שפה נתמך.