Model reference · open weights

Haidass-Translate

Available as managed deployment LLMs DALabCommunity Text gen 1 variants 723 dl/mo

Haidass-Translate is an open-weight language model from DALabCommunity. AxForge deploys and operates it for you on dedicated EU-owned hardware — with the licence handled where one is required.

Available as managed deployment — configured and operated for you on dedicated EU hardware, quoted per deployment.

What it is

Released byDALabCommunity
TypeLanguage models
TaskText gen
Parameters (lead)143M
Context4k tokens
Released2026-09-10
Popularity723 downloads / month
LicenceOpen weights

About

What Haidass-Translate is

English | 中文

A 143M-parameter bidirectional Chinese↔English translation model, instruction-tuned on the Haidass1.5-143M base — the strongest zh⇄en translator at this scale among general chat-architecture models.

Live demo: Haidass Translate on Hugging Face Spaces.

Read the full model card

FLORES-200 dev

ModelParamsArchen→zh BLEUen→zh chrF++zh→en BLEUzh→en chrF++
HY-MT1.5-1.8B1800MLLM44.6530.9827.6857.96
Qwen3-0.6B600MLLM30.9421.1020.2148.62
OPUS-MT en-zh78MSeq2Seq30.8821.80--
OPUS-MT zh-en78MSeq2Seq--22.9951.03
Qwen2.5-0.5B-Instruct500MLLM28.9619.6518.0945.85
M2M-100-418M418MSeq2Seq28.0420.5320.5848.79
Haidass-Translate-143M143MLLM27.5619.2717.1743.20
NLLB-200-distilled-600M600MSeq2Seq22.4416.7425.7152.28
Drafter-143M*143MLLM12.049.435.4727.31

*Drafter-143M: a control model with identical configuration, data and training recipe, except that it starts from random initialization instead of the pretrained base — used to quantify the contribution of base-model pretraining.

OPUS-MT models are single-directional — one independent 78M model per direction; "-" marks directions a model does not serve.

FLORES+ devtest

The same models re-evaluated on FLORES+ devtest (released 2026; zero overlap with dev):

ModelParamsArchen→zh BLEUen→zh chrF++zh→en BLEUzh→en chrF++
HY-MT1.5-1.8B1800MLLM37.3626.0820.3351.48
OPUS-MT en-zh78MSeq2Seq32.2322.40--
OPUS-MT zh-en78MSeq2Seq--23.0651.03
Qwen3-0.6B600MLLM31.7621.4819.6648.14
Qwen2.5-0.5B-Instruct500MLLM29.3219.9518.0446.00
M2M-100-418M418MSeq2Seq28.2920.6019.5247.87
Haidass-Translate-143M143MLLM28.4819.4517.0142.69
NLLB-200-distilled-600M600MSeq2Seq23.0716.9424.3051.48
Drafter-143M*143MLLM10.939.005.8226.83

devtest sentences do not overlap with dev. This model's scores on the new split are essentially unchanged (en→zh 27.56→28.48, zh→en 17.17→17.01), indicating that the results reflect translation ability rather than memorization of a specific benchmark.

Decontamination

To verify that the scores contain no test-set leakage, we audited all 15.83M training samples: every sentence is cut into consecutive fragments (8 words for English, 10 characters for Chinese), and any training sample sharing any fragment with any test sentence is counted as a hit. Results: 1,147 hits (0.0072%) against FLORES-200 dev, 1,788 (0.0113%) against FLORES+ devtest. Manual inspection shows the hits are common-phrase-level fragment overlaps rather than full-sentence leakage — i.e., the reported scores are not inflated by leakage. Audit report (top-50 overlapping samples included for inspection): audit_report.json (devtest audit: audit_floresplus_devtest.json in the same repo).

Training recipe

  • Base: Haidass1.5-143M (Qwen3 architecture: 30 layers, hidden 576, GQA 9/3, vocab 64,000)
  • Data: 7.837M cleaned zh↔en parallel sentence pairs (15.67M samples bidirectional, translation-only, no general-domain data)
  • Packing: official MindSpeed-LLM --pack --neat-pack (607,622 full 2048-token sequences with inter-document attention-mask isolation)
  • Training: 16×Ascend 910C, GBS=256, lr 3e-5 cosine over a 5-epoch schedule; released checkpoint at epoch 4 (iteration 9,496, ~5.0B tokens, loss 1.671) — epoch-wise ablation showed epoch 4 as the sweet spot (epoch 5 added no gain)
  • Framework: MindSpeed-LLM v2.3.0 + Megatron-LM core_v0.12.1 (NPU)

Usage

from transformers import AutoModelForCausalLM, AutoTokenizer

model = AutoModelForCausalLM.from_pretrained("DALabCommunity/Haidass-Translate-143M", torch_dtype="bfloat16", device_map="auto")
tok = AutoTokenizer.from_pretrained("DALabCommunity/Haidass-Translate-143M")

msgs = [{"role": "user", "content": "将以下文本翻译为英文:光子甚至比构成原子的物质还要小!"}]
ids = tok.apply_chat_template(msgs, add_generation_prompt=True, return_tensors="pt").to(model.device)
out = model.generate(ids, max_new_tokens=512, do_sample=False)
print(tok.decode(out[0][ids.shape[1]:], skip_special_tokens=True))
# Even photons are smaller than the stuff that makes up atoms!

Note: the training data follows the qwen3 chat template (an empty `` block precedes the assistant turn). Always use the model's built-in chat_template at inference; do not hand-craft prompts.

Translation samples (spot check on FLORES-200 dev)

en→zh:

Src: Water is another example. The compound water is made up of two hydrogen atoms and one oxygen atom. Out: 水是另一个例子。化合物水是由两个氢原子和一个氧原子组成的。(sentence chrF++ 71.7)

Src: They are listed on the UNESCO World Heritage List. Out: 它们被列入联合国教科文组织世界遗产名录。(sentence chrF++ 69.4)

zh→en:

Src: 它们被列入了联合国教科文组织世界遗产名录。 Out: They are listed in the UNESCO World Heritage List. (sentence chrF++ 89.2)

Src: 光子甚至比构成原子的物质还要小! Out: Even photons are smaller than the stuff that makes up atoms! (sentence chrF++ 84.1)

Known limitations

  • zh→en gains come mainly from longer training (2→4 epochs: 14.65→17.17); at 2 epochs, more same-distribution parallel data (1M/4M/8M) plateaued at ~14.4
  • Typical residual errors: entity mix-ups (e.g., "斯洛伐克" → Slovenia), occasional omission of numeric details
  • Optimized for zh⇄en translation only; not a general chat model

Evaluation

  • Metrics: sacreBLEU corpus BLEU (tokenize=zh for Chinese targets, tokenize=13a for English) + chrF++ (word_order=2); prompts byte-identical to the training chat te

From the published model card. Full card on the HuggingFace links in the sidebar.

Using it via the API

Call it like any OpenAI endpoint

Once AxForge deploys haidass-translate for you, it answers on the OpenAI-compatible API — the same base URL and keys as every other model. (haidass-translate below is illustrative; you get the exact model name on deployment.)

$ curl -sS https://api.axforge.ai/v1/chat/completions \
  -H "Authorization: Bearer $AXFORGE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model":"haidass-translate","messages":[{"role":"user","content":"Hello"}]}'

Create an account — your API key is available in the console. 3M free tokens every 30 days with every new account.

© 2026 AxForge · EU-hosted AI infrastructure Pricing Docs Trust Privacy Terms