radinplaid commited on
Commit
f0867da
·
verified ·
1 Parent(s): 8ac5440

Upload folder using huggingface_hub

Browse files
.ipynb_checkpoints/README-checkpoint.md ADDED
@@ -0,0 +1,101 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ language:
3
+ - en
4
+ - vi
5
+ tags:
6
+ - translation
7
+ license: cc-by-4.0
8
+ datasets:
9
+ - quickmt/quickmt-train.vi-en
10
+ model-index:
11
+ - name: quickmt-en-vi
12
+ results:
13
+ - task:
14
+ name: Translation eng-vie
15
+ type: translation
16
+ args: eng-vie
17
+ dataset:
18
+ name: flores101-devtest
19
+ type: flores_101
20
+ args: eng_Latn vie_Latn devtest
21
+ metrics:
22
+ - name: BLEU
23
+ type: bleu
24
+ value: 43.68
25
+ - name: CHRF
26
+ type: chrf
27
+ value: 60.75
28
+ - name: COMET
29
+ type: comet
30
+ value: 87.52
31
+ ---
32
+
33
+
34
+ # `quickmt-en-vi` Neural Machine Translation Model
35
+
36
+ `quickmt-en-vi` is a reasonably fast and reasonably accurate neural machine translation model for translation from `en` into `vi`.
37
+
38
+
39
+ ## Model Information
40
+
41
+ * Trained using [`eole`](https://github.com/eole-nlp/eole)
42
+ * 195M parameter transformer 'big' with 8 encoder layers and 2 decoder layers
43
+ * 20k sentencepiece vocabularies
44
+ * Exported for fast inference to [CTranslate2](https://github.com/OpenNMT/CTranslate2) format
45
+ * Training data: https://huggingface.co/datasets/quickmt/quickmt-train.fa-en/tree/main
46
+
47
+ See the `eole` model configuration in this repository for further details and the `eole-model` for the raw `eole` (pytorch) model.
48
+
49
+
50
+ ## Usage with `quickmt`
51
+
52
+ You must install the Nvidia cuda toolkit first, if you want to do GPU inference.
53
+
54
+ Next, install the `quickmt` python library and download the model:
55
+
56
+ ```bash
57
+ git clone https://github.com/quickmt/quickmt.git
58
+ pip install ./quickmt/
59
+
60
+ quickmt-model-download quickmt/quickmt-en-vi ./quickmt-en-vi
61
+ ```
62
+
63
+ Finally use the model in python:
64
+
65
+ ```python
66
+ from quickmt import Translator
67
+
68
+ # Auto-detects GPU, set to "cpu" to force CPU inference
69
+ t = Translator("./quickmt-en-vi/", device="auto")
70
+
71
+ # Translate - set beam size to 5 for higher quality (but slower speed)
72
+ sample_text = 'Dr. Ehud Ur, professor of medicine at Dalhousie University in Halifax, Nova Scotia and chair of the clinical and scientific division of the Canadian Diabetes Association cautioned that the research is still in its early days.'
73
+ t(sample_text, beam_size=5)
74
+ ```
75
+
76
+ > 'Tiến sĩ Ehud Ur, giáo sư y khoa tại Đại học Dalhousie ở Halifax, Nova Scotia và chủ tịch bộ phận lâm sàng và khoa học của Hiệp hội Tiểu đường Canada cảnh báo rằng nghiên cứu vẫn còn trong những ngày đầu.'
77
+ ```python
78
+ # Get alternative translations by sampling
79
+ # You can pass any cTranslate2 `translate_batch` arguments
80
+ t([sample_text], sampling_temperature=1.2, beam_size=1, sampling_topk=50, sampling_topp=0.9)
81
+ ```
82
+
83
+ > 'Tiến sĩ Ehud Ur, Giáo sư Y tại Đại học Dalhousie ở Halifax, Nova Scotia và là chủ tịch bộ phận lâm sàng và khoa học của Hiệp hội Tiểu đường Canada đã cảnh báo rằng nghiên cứu mới này vẫn còn trong những ngày đầu.'
84
+
85
+
86
+ The model is in `ctranslate2` format, and the tokenizers are `sentencepiece`, so you can use `ctranslate2` directly instead of through `quickmt`. It is also possible to get this model to work with e.g. [LibreTranslate](https://libretranslate.com/) which also uses `ctranslate2` and `sentencepiece`.
87
+
88
+
89
+ ## Metrics
90
+
91
+ `bleu` and `chrf2` are calculated with [sacrebleu](https://github.com/mjpost/sacrebleu) on the [Flores200 `devtest` test set](https://huggingface.co/datasets/facebook/flores) ("eng_Latn"->"vie_Latn"). `comet22` with the [`comet`](https://github.com/Unbabel/COMET) library and the [default model](https://huggingface.co/Unbabel/wmt22-comet-da). "Time (s)" is the time in seconds to translate (using `ctranslate2`) the flores-devtest dataset (1012 sentences) on an RTX 4070s GPU with batch size 32 (faster speed is possible with a larger batch size).
92
+
93
+ | | bleu | chrf2 | comet22 | Time (s) |
94
+ |:---------------------------------|-------:|--------:|----------:|-----------:|
95
+ | quickmt/quickmt-en-vi | 43.68 | 60.75 | 87.52 | 1.5 |
96
+ | Helsinki-NLP/opus-mt-en-vi | 27.57 | 46.45 | 76.22 | 4.67 |
97
+ | facebook/nllb-200-distilled-600M | 39.06 | 57.27 | 86.95 | 24.12 |
98
+ | facebook/nllb-200-distilled-1.3B | 41.27 | 59.04 | 88.11 | 42.3 |
99
+ | facebook/m2m100_418M | 33.95 | 52.82 | 82.53 | 20.32 |
100
+ | facebook/m2m100_1.2B | 39.46 | 57.45 | 86.56 | 38.65 |
101
+
.ipynb_checkpoints/eole-config-checkpoint.yaml ADDED
@@ -0,0 +1,96 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ## IO
2
+ save_data: data
3
+ overwrite: True
4
+ seed: 1234
5
+ report_every: 100
6
+ valid_metrics: ["BLEU"]
7
+ tensorboard: true
8
+ tensorboard_log_dir: tensorboard
9
+
10
+ ### Vocab
11
+ src_vocab: en.eole.vocab
12
+ tgt_vocab: vi.eole.vocab
13
+ src_vocab_size: 20000
14
+ tgt_vocab_size: 20000
15
+ vocab_size_multiple: 8
16
+ share_vocab: false
17
+ n_sample: 0
18
+
19
+ data:
20
+ corpus_1:
21
+ path_src: hf://quickmt/quickmt-train.vi-en/en
22
+ path_tgt: hf://quickmt/quickmt-train.vi-en/vi
23
+ path_sco: hf://quickmt/quickmt-train.vi-en/sco
24
+ valid:
25
+ path_src: valid.en
26
+ path_tgt: valid.vi
27
+
28
+ transforms: [sentencepiece, filtertoolong]
29
+ transforms_configs:
30
+ sentencepiece:
31
+ src_subword_model: "en.spm.model"
32
+ tgt_subword_model: "vi.spm.model"
33
+ filtertoolong:
34
+ src_seq_length: 256
35
+ tgt_seq_length: 256
36
+
37
+ training:
38
+ # Run configuration
39
+ model_path: quickmt-en-vi-eole-model
40
+ #train_from: model
41
+ keep_checkpoint: 4
42
+ train_steps: 100000
43
+ save_checkpoint_steps: 5000
44
+ valid_steps: 5000
45
+
46
+ # Train on a single GPU
47
+ world_size: 1
48
+ gpu_ranks: [0]
49
+
50
+ # Batching 10240
51
+ batch_type: "tokens"
52
+ batch_size: 8000
53
+ valid_batch_size: 4096
54
+ batch_size_multiple: 8
55
+ accum_count: [10]
56
+ accum_steps: [0]
57
+
58
+ # Optimizer & Compute
59
+ compute_dtype: "fp16"
60
+ optim: "adamw"
61
+ #use_amp: False
62
+ learning_rate: 2.0
63
+ warmup_steps: 4000
64
+ decay_method: "noam"
65
+ adam_beta2: 0.998
66
+
67
+ # Data loading
68
+ bucket_size: 128000
69
+ num_workers: 4
70
+ prefetch_factor: 32
71
+
72
+ # Hyperparams
73
+ dropout_steps: [0]
74
+ dropout: [0.1]
75
+ attention_dropout: [0.1]
76
+ max_grad_norm: 0
77
+ label_smoothing: 0.1
78
+ average_decay: 0.0001
79
+ param_init_method: xavier_uniform
80
+ normalization: "tokens"
81
+
82
+ model:
83
+ architecture: "transformer"
84
+ share_embeddings: false
85
+ share_decoder_embeddings: false
86
+ hidden_size: 1024
87
+ encoder:
88
+ layers: 8
89
+ decoder:
90
+ layers: 2
91
+ heads: 8
92
+ transformer_ff: 4096
93
+ embeddings:
94
+ word_vec_size: 1024
95
+ position_encoding_type: "SinusoidalInterleaved"
96
+
README.md CHANGED
@@ -1,3 +1,101 @@
1
- ---
2
- license: cc-by-4.0
3
- ---
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ language:
3
+ - en
4
+ - vi
5
+ tags:
6
+ - translation
7
+ license: cc-by-4.0
8
+ datasets:
9
+ - quickmt/quickmt-train.vi-en
10
+ model-index:
11
+ - name: quickmt-en-vi
12
+ results:
13
+ - task:
14
+ name: Translation eng-vie
15
+ type: translation
16
+ args: eng-vie
17
+ dataset:
18
+ name: flores101-devtest
19
+ type: flores_101
20
+ args: eng_Latn vie_Latn devtest
21
+ metrics:
22
+ - name: BLEU
23
+ type: bleu
24
+ value: 43.68
25
+ - name: CHRF
26
+ type: chrf
27
+ value: 60.75
28
+ - name: COMET
29
+ type: comet
30
+ value: 87.52
31
+ ---
32
+
33
+
34
+ # `quickmt-en-vi` Neural Machine Translation Model
35
+
36
+ `quickmt-en-vi` is a reasonably fast and reasonably accurate neural machine translation model for translation from `en` into `vi`.
37
+
38
+
39
+ ## Model Information
40
+
41
+ * Trained using [`eole`](https://github.com/eole-nlp/eole)
42
+ * 195M parameter transformer 'big' with 8 encoder layers and 2 decoder layers
43
+ * 20k sentencepiece vocabularies
44
+ * Exported for fast inference to [CTranslate2](https://github.com/OpenNMT/CTranslate2) format
45
+ * Training data: https://huggingface.co/datasets/quickmt/quickmt-train.fa-en/tree/main
46
+
47
+ See the `eole` model configuration in this repository for further details and the `eole-model` for the raw `eole` (pytorch) model.
48
+
49
+
50
+ ## Usage with `quickmt`
51
+
52
+ You must install the Nvidia cuda toolkit first, if you want to do GPU inference.
53
+
54
+ Next, install the `quickmt` python library and download the model:
55
+
56
+ ```bash
57
+ git clone https://github.com/quickmt/quickmt.git
58
+ pip install ./quickmt/
59
+
60
+ quickmt-model-download quickmt/quickmt-en-vi ./quickmt-en-vi
61
+ ```
62
+
63
+ Finally use the model in python:
64
+
65
+ ```python
66
+ from quickmt import Translator
67
+
68
+ # Auto-detects GPU, set to "cpu" to force CPU inference
69
+ t = Translator("./quickmt-en-vi/", device="auto")
70
+
71
+ # Translate - set beam size to 5 for higher quality (but slower speed)
72
+ sample_text = 'Dr. Ehud Ur, professor of medicine at Dalhousie University in Halifax, Nova Scotia and chair of the clinical and scientific division of the Canadian Diabetes Association cautioned that the research is still in its early days.'
73
+ t(sample_text, beam_size=5)
74
+ ```
75
+
76
+ > 'Tiến sĩ Ehud Ur, giáo sư y khoa tại Đại học Dalhousie ở Halifax, Nova Scotia và chủ tịch bộ phận lâm sàng và khoa học của Hiệp hội Tiểu đường Canada cảnh báo rằng nghiên cứu vẫn còn trong những ngày đầu.'
77
+ ```python
78
+ # Get alternative translations by sampling
79
+ # You can pass any cTranslate2 `translate_batch` arguments
80
+ t([sample_text], sampling_temperature=1.2, beam_size=1, sampling_topk=50, sampling_topp=0.9)
81
+ ```
82
+
83
+ > 'Tiến sĩ Ehud Ur, Giáo sư Y tại Đại học Dalhousie ở Halifax, Nova Scotia và là chủ tịch bộ phận lâm sàng và khoa học của Hiệp hội Tiểu đường Canada đã cảnh báo rằng nghiên cứu mới này vẫn còn trong những ngày đầu.'
84
+
85
+
86
+ The model is in `ctranslate2` format, and the tokenizers are `sentencepiece`, so you can use `ctranslate2` directly instead of through `quickmt`. It is also possible to get this model to work with e.g. [LibreTranslate](https://libretranslate.com/) which also uses `ctranslate2` and `sentencepiece`.
87
+
88
+
89
+ ## Metrics
90
+
91
+ `bleu` and `chrf2` are calculated with [sacrebleu](https://github.com/mjpost/sacrebleu) on the [Flores200 `devtest` test set](https://huggingface.co/datasets/facebook/flores) ("eng_Latn"->"vie_Latn"). `comet22` with the [`comet`](https://github.com/Unbabel/COMET) library and the [default model](https://huggingface.co/Unbabel/wmt22-comet-da). "Time (s)" is the time in seconds to translate (using `ctranslate2`) the flores-devtest dataset (1012 sentences) on an RTX 4070s GPU with batch size 32 (faster speed is possible with a larger batch size).
92
+
93
+ | | bleu | chrf2 | comet22 | Time (s) |
94
+ |:---------------------------------|-------:|--------:|----------:|-----------:|
95
+ | quickmt/quickmt-en-vi | 43.68 | 60.75 | 87.52 | 1.5 |
96
+ | Helsinki-NLP/opus-mt-en-vi | 27.57 | 46.45 | 76.22 | 4.67 |
97
+ | facebook/nllb-200-distilled-600M | 39.06 | 57.27 | 86.95 | 24.12 |
98
+ | facebook/nllb-200-distilled-1.3B | 41.27 | 59.04 | 88.11 | 42.3 |
99
+ | facebook/m2m100_418M | 33.95 | 52.82 | 82.53 | 20.32 |
100
+ | facebook/m2m100_1.2B | 39.46 | 57.45 | 86.56 | 38.65 |
101
+
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": 1e-06,
8
+ "multi_query_attention": false,
9
+ "unk_token": "<unk>"
10
+ }
eole-config.yaml ADDED
@@ -0,0 +1,96 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ## IO
2
+ save_data: data
3
+ overwrite: True
4
+ seed: 1234
5
+ report_every: 100
6
+ valid_metrics: ["BLEU"]
7
+ tensorboard: true
8
+ tensorboard_log_dir: tensorboard
9
+
10
+ ### Vocab
11
+ src_vocab: en.eole.vocab
12
+ tgt_vocab: vi.eole.vocab
13
+ src_vocab_size: 20000
14
+ tgt_vocab_size: 20000
15
+ vocab_size_multiple: 8
16
+ share_vocab: false
17
+ n_sample: 0
18
+
19
+ data:
20
+ corpus_1:
21
+ path_src: hf://quickmt/quickmt-train.vi-en/en
22
+ path_tgt: hf://quickmt/quickmt-train.vi-en/vi
23
+ path_sco: hf://quickmt/quickmt-train.vi-en/sco
24
+ valid:
25
+ path_src: valid.en
26
+ path_tgt: valid.vi
27
+
28
+ transforms: [sentencepiece, filtertoolong]
29
+ transforms_configs:
30
+ sentencepiece:
31
+ src_subword_model: "en.spm.model"
32
+ tgt_subword_model: "vi.spm.model"
33
+ filtertoolong:
34
+ src_seq_length: 256
35
+ tgt_seq_length: 256
36
+
37
+ training:
38
+ # Run configuration
39
+ model_path: quickmt-en-vi-eole-model
40
+ #train_from: model
41
+ keep_checkpoint: 4
42
+ train_steps: 100000
43
+ save_checkpoint_steps: 5000
44
+ valid_steps: 5000
45
+
46
+ # Train on a single GPU
47
+ world_size: 1
48
+ gpu_ranks: [0]
49
+
50
+ # Batching 10240
51
+ batch_type: "tokens"
52
+ batch_size: 8000
53
+ valid_batch_size: 4096
54
+ batch_size_multiple: 8
55
+ accum_count: [10]
56
+ accum_steps: [0]
57
+
58
+ # Optimizer & Compute
59
+ compute_dtype: "fp16"
60
+ optim: "adamw"
61
+ #use_amp: False
62
+ learning_rate: 2.0
63
+ warmup_steps: 4000
64
+ decay_method: "noam"
65
+ adam_beta2: 0.998
66
+
67
+ # Data loading
68
+ bucket_size: 128000
69
+ num_workers: 4
70
+ prefetch_factor: 32
71
+
72
+ # Hyperparams
73
+ dropout_steps: [0]
74
+ dropout: [0.1]
75
+ attention_dropout: [0.1]
76
+ max_grad_norm: 0
77
+ label_smoothing: 0.1
78
+ average_decay: 0.0001
79
+ param_init_method: xavier_uniform
80
+ normalization: "tokens"
81
+
82
+ model:
83
+ architecture: "transformer"
84
+ share_embeddings: false
85
+ share_decoder_embeddings: false
86
+ hidden_size: 1024
87
+ encoder:
88
+ layers: 8
89
+ decoder:
90
+ layers: 2
91
+ heads: 8
92
+ transformer_ff: 4096
93
+ embeddings:
94
+ word_vec_size: 1024
95
+ position_encoding_type: "SinusoidalInterleaved"
96
+
eole-model/config.json ADDED
@@ -0,0 +1,132 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "tgt_vocab": "vi.eole.vocab",
3
+ "vocab_size_multiple": 8,
4
+ "src_vocab": "en.eole.vocab",
5
+ "report_every": 100,
6
+ "tensorboard": true,
7
+ "transforms": [
8
+ "sentencepiece",
9
+ "filtertoolong"
10
+ ],
11
+ "share_vocab": false,
12
+ "n_sample": 0,
13
+ "tgt_vocab_size": 20000,
14
+ "src_vocab_size": 20000,
15
+ "tensorboard_log_dir_dated": "tensorboard/Jul-11_15-14-32",
16
+ "seed": 1234,
17
+ "valid_metrics": [
18
+ "BLEU"
19
+ ],
20
+ "overwrite": true,
21
+ "tensorboard_log_dir": "tensorboard",
22
+ "save_data": "data",
23
+ "training": {
24
+ "bucket_size": 128000,
25
+ "num_workers": 0,
26
+ "batch_type": "tokens",
27
+ "save_checkpoint_steps": 5000,
28
+ "keep_checkpoint": 4,
29
+ "accum_count": [
30
+ 10
31
+ ],
32
+ "decay_method": "noam",
33
+ "param_init_method": "xavier_uniform",
34
+ "adam_beta2": 0.998,
35
+ "gpu_ranks": [
36
+ 0
37
+ ],
38
+ "world_size": 1,
39
+ "valid_batch_size": 4096,
40
+ "max_grad_norm": 0.0,
41
+ "prefetch_factor": 32,
42
+ "accum_steps": [
43
+ 0
44
+ ],
45
+ "warmup_steps": 4000,
46
+ "optim": "adamw",
47
+ "compute_dtype": "torch.float16",
48
+ "dropout_steps": [
49
+ 0
50
+ ],
51
+ "valid_steps": 5000,
52
+ "normalization": "tokens",
53
+ "attention_dropout": [
54
+ 0.1
55
+ ],
56
+ "model_path": "quickmt-en-vi-eole-model",
57
+ "label_smoothing": 0.1,
58
+ "train_steps": 100000,
59
+ "batch_size_multiple": 8,
60
+ "average_decay": 0.0001,
61
+ "batch_size": 8000,
62
+ "learning_rate": 2.0,
63
+ "dropout": [
64
+ 0.1
65
+ ]
66
+ },
67
+ "transforms_configs": {
68
+ "filtertoolong": {
69
+ "src_seq_length": 256,
70
+ "tgt_seq_length": 256
71
+ },
72
+ "sentencepiece": {
73
+ "src_subword_model": "${MODEL_PATH}/en.spm.model",
74
+ "tgt_subword_model": "${MODEL_PATH}/vi.spm.model"
75
+ }
76
+ },
77
+ "data": {
78
+ "corpus_1": {
79
+ "transforms": [
80
+ "sentencepiece",
81
+ "filtertoolong"
82
+ ],
83
+ "path_src": "train.en",
84
+ "path_align": null,
85
+ "path_tgt": "train.vi"
86
+ },
87
+ "valid": {
88
+ "transforms": [
89
+ "sentencepiece",
90
+ "filtertoolong"
91
+ ],
92
+ "path_src": "valid.en",
93
+ "path_align": null,
94
+ "path_tgt": "valid.vi"
95
+ }
96
+ },
97
+ "model": {
98
+ "heads": 8,
99
+ "hidden_size": 1024,
100
+ "position_encoding_type": "SinusoidalInterleaved",
101
+ "share_embeddings": false,
102
+ "transformer_ff": 4096,
103
+ "share_decoder_embeddings": false,
104
+ "architecture": "transformer",
105
+ "decoder": {
106
+ "decoder_type": "transformer",
107
+ "hidden_size": 1024,
108
+ "heads": 8,
109
+ "layers": 2,
110
+ "position_encoding_type": "SinusoidalInterleaved",
111
+ "transformer_ff": 4096,
112
+ "tgt_word_vec_size": 1024,
113
+ "n_positions": null
114
+ },
115
+ "encoder": {
116
+ "hidden_size": 1024,
117
+ "heads": 8,
118
+ "encoder_type": "transformer",
119
+ "layers": 8,
120
+ "position_encoding_type": "SinusoidalInterleaved",
121
+ "src_word_vec_size": 1024,
122
+ "transformer_ff": 4096,
123
+ "n_positions": null
124
+ },
125
+ "embeddings": {
126
+ "tgt_word_vec_size": 1024,
127
+ "src_word_vec_size": 1024,
128
+ "word_vec_size": 1024,
129
+ "position_encoding_type": "SinusoidalInterleaved"
130
+ }
131
+ }
132
+ }
eole-model/en.spm.model ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:82efd76a945ec4574b2ab3d2476b0043a9737c8dbe693cd20a7fa036d273c0eb
3
+ size 586058
eole-model/model.00.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:e5ef7d951c721c41fc83116194400cd7a70fa072c1a29862598384036d6c3098
3
+ size 823882912
eole-model/vi.spm.model ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:03be7f771990d2bee00d7ff09219baad95b53fef1dcd387b3048c156d665e046
3
+ size 553521
eole-model/vocab.json ADDED
The diff for this file is too large to render. See raw diff
 
model.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:4aa5184d9f3788fb1dde788b14acfd60741b3e0cefc24c4d9e771e8242e177e8
3
+ size 401699775
source_vocabulary.json ADDED
The diff for this file is too large to render. See raw diff
 
src.spm.model ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:82efd76a945ec4574b2ab3d2476b0043a9737c8dbe693cd20a7fa036d273c0eb
3
+ size 586058
target_vocabulary.json ADDED
The diff for this file is too large to render. See raw diff
 
tgt.spm.model ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:03be7f771990d2bee00d7ff09219baad95b53fef1dcd387b3048c156d665e046
3
+ size 553521