Locara

translation

HF group: NLP · Status: 🟡 partial (works through chat LLM)

What it is

Text in language A → text in language B. Specialized translation models meaningfully outperform chat LLMs on low-resource languages.

Open-weight models

ModelParamsReleasedLicenseQualityNotes
MADLAD-400 (3B / 7B / 10B)3-10 B2023Apache-2.0419 languagesApache-2.0 — best for commercial.
NLLB-200600 M – 54 B2022CC-BY-NC200 languagesNon-commercial license.
OPUS-MT (per-pair)~80 M2020+Apache-2.0Solid for major pairsMany small per-pair models.
Meta Omnilingual MT (OMT)varies2026-03TBD1,600 languagesNewest; license details still being clarified.
Any chat LLMvariesvariousvariousStrong on major pairs, weak on rareConvenient but lossy on low-resource.

Infrastructure required

Inference

  • 🟡 Works today via chat LLM in locara-llama.
  • ❌ Encoder-decoder runtime (BART/MBART class) for specialist models. llama.cpp doesn’t support these natively; would need Candle or ONNX Runtime path.

Input

  • Plain text + source/target language codes.

Output

  • Plain text.

Storage

  • ✅ Weights cache.
  • App-side: optionally cache translations.

Interaction (IPC + SDK)

  • 🟡 Today: llm.chat with a “translate to X” prompt.
  • ❌ Specialized: translate.text({ text, from, to }) IPC.

Capabilities (manifest)

  • capabilities.models[] for the translator (or chat LLM fallback).

Gaps

  • Apache-2.0 specialized model (MADLAD-400) for quality on low-resource languages.
  • Encoder-decoder runtime — shared need with summarization specialists and Donut for DocVQA.

See also