sneakyfree commited on
Commit
326998b
·
verified ·
1 Parent(s): c879ade

clone from WindyWord/translate-en-nic via local upload (ADR-039 Phase C)

Browse files
.gitattributes CHANGED
@@ -33,3 +33,7 @@ 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
+ lora/source.spm filter=lfs diff=lfs merge=lfs -text
37
+ lora/target.spm filter=lfs diff=lfs merge=lfs -text
38
+ herm0/source.spm filter=lfs diff=lfs merge=lfs -text
39
+ herm0/target.spm filter=lfs diff=lfs merge=lfs -text
README.md ADDED
@@ -0,0 +1,81 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ license: cc-by-4.0
3
+ tags:
4
+ - translation
5
+ - marian
6
+ - windyword
7
+ - english
8
+ - niger-congo
9
+ - swahili
10
+ - yoruba
11
+ - igbo
12
+ - zulu
13
+ - xhosa
14
+ language:
15
+ - en
16
+ - nic
17
+ library_name: transformers
18
+ pipeline_tag: translation
19
+ ---
20
+
21
+ # WindyWord.ai Translation — English → Niger-Congo
22
+
23
+ **Translates English → Niger-Congo (Swahili, Yoruba, Igbo, Zulu, Xhosa).**
24
+
25
+ **Quality Rating: ⭐⭐⭐⭐½ (4.5★ Premium)**
26
+
27
+ Part of the [WindyWord.ai](https://windyword.ai) translation fleet — 1,800+ proprietary language pairs.
28
+
29
+ ## Quality & Pricing Tier
30
+
31
+ - **5-star rating:** 4.5★ ⭐⭐⭐⭐½
32
+ - **Tier:** Premium
33
+ - **Composite score:** 81.2 / 100
34
+ - **Rated via:** Grand Rounds v2 — an 8-test stress battery (paragraphs, multi-paragraph, native input, domain stress, edge cases, round-trip fidelity, speed, and consistency checks)
35
+
36
+ ## Available Variants
37
+
38
+ This repository contains multiple deployment formats. Pick the one that matches your use case:
39
+
40
+ | Variant | Description |
41
+ |---|---|
42
+ | `lora/` | **WindyStandard** — our proprietary production baseline. Stable, reliable, optimized for GPU inference. |
43
+ | `lora-ct2-int8/` | **WindyStandard · CPU INT8** — CTranslate2 quantized version of WindyStandard. ~25% of the size, 2–4× faster on CPU, no measurable quality loss. |
44
+ | `herm0/` | **WindyEnhanced** — deep fine-tuned on OPUS-100, Tatoeba, and WikiMatrix parallel corpora. Measurably higher translation quality on supported pairs. |
45
+ | `herm0-ct2-int8/` | **WindyEnhanced · CPU INT8** — CTranslate2 quantized WindyEnhanced. Premium quality, CPU-efficient. |
46
+
47
+ ### Quick usage
48
+
49
+ **Transformers (PyTorch):**
50
+ ```python
51
+ from transformers import MarianMTModel, MarianTokenizer
52
+ tokenizer = MarianTokenizer.from_pretrained("WindyWord/translate-en-nic", subfolder="lora")
53
+ model = MarianMTModel.from_pretrained("WindyWord/translate-en-nic", subfolder="lora")
54
+ ```
55
+
56
+ **CTranslate2 (fast CPU inference):**
57
+ ```python
58
+ import ctranslate2
59
+ translator = ctranslate2.Translator("path/to/translate-en-nic/lora-ct2-int8")
60
+ ```
61
+
62
+ ## Commercial Use
63
+
64
+ The WindyWord.ai platform provides:
65
+ - **Mobile apps** (iOS, Android — coming soon)
66
+ - **Real-time voice-to-text-to-translation** pipeline
67
+ - **API access** with premium model quality
68
+ - **Offline deployment** support
69
+
70
+ Visit [windyword.ai](https://windyword.ai) for apps and commercial API access.
71
+
72
+ ---
73
+
74
+ ## Provenance & License
75
+
76
+ Weights derived from the OPUS-MT project ([Helsinki-NLP/opus-mt-en-nic](https://huggingface.co/Helsinki-NLP/opus-mt-en-nic)) under CC-BY-4.0. WindyStandard, WindyEnhanced, and WindyScripture variants are proprietary to WindyWord.ai, independently trained and quality-certified via our Grand Rounds v2 test battery.
77
+
78
+ Licensed CC-BY-4.0 — attribution preserved as required.
79
+
80
+ *Certified by Opus 4.6 Opus-Claw (Dr. C) on Veron-1 (RTX 5090).*
81
+ *Patient file: [clinic record](https://github.com/sneakyfree/Windy-Clinic/blob/main/translation-pairs/en-nic.json)*
herm0-ct2-int8/config.json ADDED
@@ -0,0 +1,10 @@
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "add_source_bos": false,
3
+ "add_source_eos": false,
4
+ "bos_token": "<s>",
5
+ "decoder_start_token": "</s>",
6
+ "eos_token": "</s>",
7
+ "layer_norm_epsilon": null,
8
+ "multi_query_attention": false,
9
+ "unk_token": "<unk>"
10
+ }
herm0-ct2-int8/model.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:f4a4246d4e0782b39903e83997d06cada85ff234ff55863b47f084e86b004b75
3
+ size 77776235
herm0-ct2-int8/shared_vocabulary.json ADDED
The diff for this file is too large to render. See raw diff
 
herm0/config.json ADDED
@@ -0,0 +1,56 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "_name_or_path": "/home/user1-gpu/Desktop/grants_folder/windy-pro/models/windy-pair-en-nic/lora",
3
+ "activation_dropout": 0.0,
4
+ "activation_function": "swish",
5
+ "add_bias_logits": false,
6
+ "add_final_layer_norm": false,
7
+ "architectures": [
8
+ "MarianMTModel"
9
+ ],
10
+ "attention_dropout": 0.0,
11
+ "bos_token_id": 0,
12
+ "classif_dropout": 0.0,
13
+ "classifier_dropout": 0.0,
14
+ "d_model": 512,
15
+ "decoder_attention_heads": 8,
16
+ "decoder_ffn_dim": 2048,
17
+ "decoder_layerdrop": 0.0,
18
+ "decoder_layers": 6,
19
+ "decoder_start_token_id": 61555,
20
+ "decoder_vocab_size": 61556,
21
+ "dropout": 0.1,
22
+ "encoder_attention_heads": 8,
23
+ "encoder_ffn_dim": 2048,
24
+ "encoder_layerdrop": 0.0,
25
+ "encoder_layers": 6,
26
+ "eos_token_id": 0,
27
+ "extra_pos_embeddings": 61556,
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": 61555,
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": 61556
56
+ }
herm0/generation_config.json ADDED
@@ -0,0 +1,16 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "bad_words_ids": [
3
+ [
4
+ 61555
5
+ ]
6
+ ],
7
+ "bos_token_id": 0,
8
+ "decoder_start_token_id": 61555,
9
+ "eos_token_id": 0,
10
+ "forced_eos_token_id": 0,
11
+ "max_length": 512,
12
+ "num_beams": 4,
13
+ "pad_token_id": 61555,
14
+ "renormalize_logits": true,
15
+ "transformers_version": "4.45.1"
16
+ }
herm0/model.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:4e01b19c90e0facc2f57b43d4a86976fb229a11e9e978e4112648616dcddfeea
3
+ size 302895952
herm0/source.spm ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:c7eddd566b3558e055cce7e60a53a0e7ce31cfba524cf02018d77c8181d222fd
3
+ size 819289
herm0/special_tokens_map.json ADDED
@@ -0,0 +1,23 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "eos_token": {
3
+ "content": "</s>",
4
+ "lstrip": false,
5
+ "normalized": false,
6
+ "rstrip": false,
7
+ "single_word": false
8
+ },
9
+ "pad_token": {
10
+ "content": "<pad>",
11
+ "lstrip": false,
12
+ "normalized": false,
13
+ "rstrip": false,
14
+ "single_word": false
15
+ },
16
+ "unk_token": {
17
+ "content": "<unk>",
18
+ "lstrip": false,
19
+ "normalized": false,
20
+ "rstrip": false,
21
+ "single_word": false
22
+ }
23
+ }
herm0/target.spm ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:506866763eabe6c5dd720c86f1fa62b5e1422919b63f962ba9cd73b0693b4ee6
3
+ size 784200
herm0/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
+ "61555": {
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": "eng",
34
+ "sp_model_kwargs": {},
35
+ "target_lang": "nic",
36
+ "tokenizer_class": "MarianTokenizer",
37
+ "unk_token": "<unk>"
38
+ }
herm0/vocab.json ADDED
The diff for this file is too large to render. See raw diff
 
lora-ct2-int8/config.json ADDED
@@ -0,0 +1,10 @@
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "add_source_bos": false,
3
+ "add_source_eos": false,
4
+ "bos_token": "<s>",
5
+ "decoder_start_token": "</s>",
6
+ "eos_token": "</s>",
7
+ "layer_norm_epsilon": null,
8
+ "multi_query_attention": false,
9
+ "unk_token": "<unk>"
10
+ }
lora-ct2-int8/model.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:8909e6c7754563f38d869d84732d54cd554712a6b6a54179e60ee3c77c7fda40
3
+ size 77776235
lora-ct2-int8/shared_vocabulary.json ADDED
The diff for this file is too large to render. See raw diff
 
lora/config.json ADDED
@@ -0,0 +1,56 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "_name_or_path": "Helsinki-NLP/opus-mt-en-nic",
3
+ "activation_dropout": 0.0,
4
+ "activation_function": "swish",
5
+ "add_bias_logits": false,
6
+ "add_final_layer_norm": false,
7
+ "architectures": [
8
+ "MarianMTModel"
9
+ ],
10
+ "attention_dropout": 0.0,
11
+ "bos_token_id": 0,
12
+ "classif_dropout": 0.0,
13
+ "classifier_dropout": 0.0,
14
+ "d_model": 512,
15
+ "decoder_attention_heads": 8,
16
+ "decoder_ffn_dim": 2048,
17
+ "decoder_layerdrop": 0.0,
18
+ "decoder_layers": 6,
19
+ "decoder_start_token_id": 61555,
20
+ "decoder_vocab_size": 61556,
21
+ "dropout": 0.1,
22
+ "encoder_attention_heads": 8,
23
+ "encoder_ffn_dim": 2048,
24
+ "encoder_layerdrop": 0.0,
25
+ "encoder_layers": 6,
26
+ "eos_token_id": 0,
27
+ "extra_pos_embeddings": 61556,
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": 61555,
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": 61556
56
+ }
lora/generation_config.json ADDED
@@ -0,0 +1,16 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "bad_words_ids": [
3
+ [
4
+ 61555
5
+ ]
6
+ ],
7
+ "bos_token_id": 0,
8
+ "decoder_start_token_id": 61555,
9
+ "eos_token_id": 0,
10
+ "forced_eos_token_id": 0,
11
+ "max_length": 512,
12
+ "num_beams": 4,
13
+ "pad_token_id": 61555,
14
+ "renormalize_logits": true,
15
+ "transformers_version": "4.45.1"
16
+ }
lora/model.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:5d44a041a0f483c4c22e086bfce35e444bd65868c84df0d798702ebacecc83b1
3
+ size 302895952
lora/source.spm ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:c7eddd566b3558e055cce7e60a53a0e7ce31cfba524cf02018d77c8181d222fd
3
+ size 819289
lora/special_tokens_map.json ADDED
@@ -0,0 +1,5 @@
 
 
 
 
 
 
1
+ {
2
+ "eos_token": "</s>",
3
+ "pad_token": "<pad>",
4
+ "unk_token": "<unk>"
5
+ }
lora/target.spm ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:506866763eabe6c5dd720c86f1fa62b5e1422919b63f962ba9cd73b0693b4ee6
3
+ size 784200
lora/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
+ "61555": {
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": "eng",
34
+ "sp_model_kwargs": {},
35
+ "target_lang": "nic",
36
+ "tokenizer_class": "MarianTokenizer",
37
+ "unk_token": "<unk>"
38
+ }
lora/vocab.json ADDED
The diff for this file is too large to render. See raw diff