sneakyfree commited on
Commit
954fb80
·
verified ·
1 Parent(s): f952223

Promote lora build from WindstormLabs/translate-lua-es, with attribution and change statement

Browse files
.gitattributes CHANGED
@@ -33,3 +33,5 @@ saved_model/**/* filter=lfs diff=lfs merge=lfs -text
33
  *.zip filter=lfs diff=lfs merge=lfs -text
34
  *.zst filter=lfs diff=lfs merge=lfs -text
35
  *tfevents* filter=lfs diff=lfs merge=lfs -text
 
 
 
33
  *.zip filter=lfs diff=lfs merge=lfs -text
34
  *.zst filter=lfs diff=lfs merge=lfs -text
35
  *tfevents* filter=lfs diff=lfs merge=lfs -text
36
+ source.spm filter=lfs diff=lfs merge=lfs -text
37
+ target.spm filter=lfs diff=lfs merge=lfs -text
README.md ADDED
@@ -0,0 +1,57 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ license: apache-2.0
3
+ base_model: Helsinki-NLP/opus-mt-lua-es
4
+ library_name: transformers
5
+ pipeline_tag: translation
6
+ tags:
7
+ - translation
8
+ - marian
9
+ ---
10
+
11
+ # translate-lua-es
12
+
13
+ Machine translation model, `lua` to `es`, published by Windstorm Labs.
14
+
15
+ ## Attribution
16
+
17
+ Derived from [`Helsinki-NLP/opus-mt-lua-es`](https://huggingface.co/Helsinki-NLP/opus-mt-lua-es), licensed **apache-2.0**.
18
+ Windstorm Labs did not train the original model. This notice provides the attribution the
19
+ licence requires.
20
+
21
+ ## What was changed
22
+
23
+ **The weights in this repository have been modified from the original.** A LoRA fine-tune trained on parallel corpus data and merged into the base weights.
24
+
25
+ | | |
26
+ |---|---|
27
+ | Method | `lora-fog` |
28
+ | Tensors modified | **36 of 254** |
29
+ | Max absolute weight delta | **6.614e-05** |
30
+ | Verified | tensor-by-tensor against the upstream original, 2026-07-26 |
31
+
32
+ The comparison is tensor-level rather than file-level: safetensors and PyTorch `.bin`
33
+ containers hash differently even when the tensors inside are identical, so a file-hash
34
+ mismatch would prove nothing.
35
+
36
+ ## Contents
37
+
38
+ A single transformers build in safetensors format, loadable directly:
39
+
40
+ ```python
41
+ from transformers import AutoTokenizer, AutoModelForSeq2SeqLM
42
+
43
+ tok = AutoTokenizer.from_pretrained("WindyTranslate/translate-lua-es")
44
+ model = AutoModelForSeq2SeqLM.from_pretrained("WindyTranslate/translate-lua-es")
45
+
46
+ batch = tok(["<your text here>"], return_tensors="pt", padding=True)
47
+ print(tok.batch_decode(model.generate(**batch), skip_special_tokens=True))
48
+ ```
49
+
50
+ Other builds of this pair, including CTranslate2 INT8, are not included in this repository.
51
+
52
+ ## Limitations
53
+
54
+ - A single language direction: `lua` to `es`.
55
+ - **No quality benchmark has been run on this pair.** The weights are verified to differ from
56
+ the original; that is a statement about provenance, not about translation quality.
57
+ - Quality is not monotonic with model size or with the amount of fine-tuning applied.
config.json ADDED
@@ -0,0 +1,56 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "_name_or_path": "Helsinki-NLP/opus-mt-lua-es",
3
+ "_num_labels": 3,
4
+ "activation_dropout": 0.0,
5
+ "activation_function": "swish",
6
+ "add_bias_logits": false,
7
+ "add_final_layer_norm": false,
8
+ "architectures": [
9
+ "MarianMTModel"
10
+ ],
11
+ "attention_dropout": 0.0,
12
+ "bos_token_id": 0,
13
+ "classif_dropout": 0.0,
14
+ "classifier_dropout": 0.0,
15
+ "d_model": 512,
16
+ "decoder_attention_heads": 8,
17
+ "decoder_ffn_dim": 2048,
18
+ "decoder_layerdrop": 0.0,
19
+ "decoder_layers": 6,
20
+ "decoder_start_token_id": 60812,
21
+ "decoder_vocab_size": 60813,
22
+ "dropout": 0.1,
23
+ "encoder_attention_heads": 8,
24
+ "encoder_ffn_dim": 2048,
25
+ "encoder_layerdrop": 0.0,
26
+ "encoder_layers": 6,
27
+ "eos_token_id": 0,
28
+ "forced_eos_token_id": 0,
29
+ "id2label": {
30
+ "0": "LABEL_0",
31
+ "1": "LABEL_1",
32
+ "2": "LABEL_2"
33
+ },
34
+ "init_std": 0.02,
35
+ "is_encoder_decoder": true,
36
+ "label2id": {
37
+ "LABEL_0": 0,
38
+ "LABEL_1": 1,
39
+ "LABEL_2": 2
40
+ },
41
+ "max_length": null,
42
+ "max_position_embeddings": 512,
43
+ "model_type": "marian",
44
+ "normalize_before": false,
45
+ "normalize_embedding": false,
46
+ "num_beams": null,
47
+ "num_hidden_layers": 6,
48
+ "pad_token_id": 60812,
49
+ "scale_embedding": true,
50
+ "share_encoder_decoder_embeddings": true,
51
+ "static_position_embeddings": true,
52
+ "torch_dtype": "float32",
53
+ "transformers_version": "4.45.1",
54
+ "use_cache": true,
55
+ "vocab_size": 60813
56
+ }
generation_config.json ADDED
@@ -0,0 +1,16 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "bad_words_ids": [
3
+ [
4
+ 60812
5
+ ]
6
+ ],
7
+ "bos_token_id": 0,
8
+ "decoder_start_token_id": 60812,
9
+ "eos_token_id": 0,
10
+ "forced_eos_token_id": 0,
11
+ "max_length": 512,
12
+ "num_beams": 6,
13
+ "pad_token_id": 60812,
14
+ "renormalize_logits": true,
15
+ "transformers_version": "4.45.1"
16
+ }
model.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:6fe96f122059fb21b88f14880e8dda86761b644eb85ec577bb5a069be981a909
3
+ size 301371316
source.spm ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:cbe7059341233a855bd72e95b2fd84acb711b6acd48f5e46b604af5edbaff378
3
+ size 823233
special_tokens_map.json ADDED
@@ -0,0 +1,5 @@
 
 
 
 
 
 
1
+ {
2
+ "eos_token": "</s>",
3
+ "pad_token": "<pad>",
4
+ "unk_token": "<unk>"
5
+ }
target.spm ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:b5bf28c020a04fc922f671f5e121486cb848924b250b7ab78803dc5dd64f9a3b
3
+ size 845457
tokenizer_config.json ADDED
@@ -0,0 +1,38 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "added_tokens_decoder": {
3
+ "0": {
4
+ "content": "</s>",
5
+ "lstrip": false,
6
+ "normalized": false,
7
+ "rstrip": false,
8
+ "single_word": false,
9
+ "special": true
10
+ },
11
+ "1": {
12
+ "content": "<unk>",
13
+ "lstrip": false,
14
+ "normalized": false,
15
+ "rstrip": false,
16
+ "single_word": false,
17
+ "special": true
18
+ },
19
+ "60812": {
20
+ "content": "<pad>",
21
+ "lstrip": false,
22
+ "normalized": false,
23
+ "rstrip": false,
24
+ "single_word": false,
25
+ "special": true
26
+ }
27
+ },
28
+ "clean_up_tokenization_spaces": false,
29
+ "eos_token": "</s>",
30
+ "model_max_length": 512,
31
+ "pad_token": "<pad>",
32
+ "separate_vocabs": false,
33
+ "source_lang": "lua",
34
+ "sp_model_kwargs": {},
35
+ "target_lang": "es",
36
+ "tokenizer_class": "MarianTokenizer",
37
+ "unk_token": "<unk>"
38
+ }
vocab.json ADDED
The diff for this file is too large to render. See raw diff