{ "packFormat": 1, "direction": "fr-en", "source": "fr", "target": "en", "model": { "catalogueId": "translate-tc-big-fr-en", "repo": "WindyTranslate/translate-tc-big-fr-en", "revision": "4df75aab75047f16fef0821352fe3206392ea037", "baseModel": "Helsinki-NLP/opus-mt-tc-big-fr-en" }, "licence": "CC-BY-4.0", "attribution": "Based on OPUS-MT model Helsinki-NLP/opus-mt-tc-big-fr-en by Helsinki-NLP (Language Technology Research Group, University of Helsinki). Licensed CC-BY-4.0.", "notice": "This product uses the model WindyTranslate/translate-tc-big-fr-en\n(https://huggingface.co/WindyTranslate/translate-tc-big-fr-en), published by Windstorm Labs (https://windstormlabs.com).\nBased on OPUS-MT model Helsinki-NLP/opus-mt-tc-big-fr-en by Helsinki-NLP (Language Technology Research Group, University of Helsinki). Licensed CC-BY-4.0.\nWindstorm Labs modified the upstream weights; the model card describes what was changed.\nLicensed under Creative Commons Attribution 4.0 International: https://creativecommons.org/licenses/by/4.0/", "runtime": { "engine": "onnxruntime", "opset": 17, "weights": "int8 (dynamic quantization, MatMul; embedding int8 shared)", "files": { "encoder": "encoder.onnx", "decoder": "decoder.onnx", "sharedEmbedding": "embed.bin (external data of both graphs; keep it next to them)", "sourceTokenizer": "source.spm", "targetTokenizer": "target.spm", "vocab": "vocab.json", "config": "model_config.json" }, "tokenizer": "SentencePiece PIECES from source.spm mapped to ids through vocab.json (unknown piece -> ), then . Raw SentencePiece ids are NOT model ids. Do not use onnxruntime-extensions' tokenizer op.", "sourcePrefixToken": null, "decoding": { "decoderStartTokenId": 53016, "eosTokenId": 43311, "padTokenId": 53016, "neverGenerate": [ 53016 ], "beam": 4, "lengthNormalisation": "sum log-prob / output length", "maxNewTokens": 256 }, "encoder": { "inputs": [ "input_ids [b,s] int64", "attention_mask [b,s] int64" ], "outputs": [ "cross_k_i / cross_v_i [b,16,s,64] for i in 0..5" ] }, "decoder": { "inputs": [ "input_ids [b,1] int64 (start token on step 1, then the last token)", "encoder_attention_mask [b,s] int64", "past_k_i / past_v_i [b,16,t,64] float32 (t = 0 on step 1)", "cross_k_i / cross_v_i (from the encoder)" ], "outputs": [ "logits [b,1,vocab]", "present_k_i / present_v_i [b,heads,t+1,head_dim] (next step's past)" ] } }, "files": { "decoder.onnx": { "bytes": 93231362, "sha256": "0c083b2a264680ee936be73ab27a9604a255f9896edb2351536b1a5e8e751eae" }, "embed.bin": { "bytes": 54289408, "sha256": "05f5840bf67c1745f0cb341239aceb95764bc6e5b85edc1857ae8a092c2bc0cb" }, "encoder.onnx": { "bytes": 92883365, "sha256": "86c1486a5b442ffcc235801ebb2f1b0e10af70a3f09e9080beb142deabd582b8" }, "model_config.json": { "bytes": 203, "sha256": "3885c177317f50ae9a6da0fe28ce05d4ce99bf9cfb5ff6812862f030f46f7d3b" }, "source.spm": { "bytes": 819955, "sha256": "622a0fef37ea7c6d7cd4a6530c2279d4688987c5417bba26fba9ae416f8b7758" }, "target.spm": { "bytes": 802408, "sha256": "69e8272c2d215294ae2e19c6fcef39fc26b386fcf64cd07f376b965740c80592" }, "test_vectors.json": { "bytes": 29675, "sha256": "b36c38b68b73e6dca124be4414e468e75e7c045072205a67596d7a50588b4319" }, "vocab.json": { "bytes": 1332010, "sha256": "2994b7def69d6495d8f02369b57e3f04e2474f76ce64eda2921643e1f76fef41" } }, "downloadBytes": 243388386, "weightsBytes": 243358711, "quality": { "benchmark": "FLORES-200 devtest", "sentences": 1012, "chrf++": 67.44, "spbleu": 49.39, "ct2_int8_chrf++": 67.53, "delta_vs_ct2": -0.09, "beam": 4, "measured": "2026-10-17", "by": "Windy Translate" }, "built": "2026-10-17T16:47:02Z", "builder": "export_lean.py (Windy Translate)" }