shashankvmaiya commited on
Commit
0728fcc
·
verified ·
1 Parent(s): c97351c

Upload SFT model: 26_09_08_sft_email_v4_v3

Browse files
This view is limited to 50 files because it contains too many changes.   See raw diff
Files changed (50) hide show
  1. .gitattributes +3 -0
  2. 26_09_08_sft_email_v4_v3/config.yaml +267 -0
  3. 26_09_08_sft_email_v4_v3/config_verbose.yaml +910 -0
  4. 26_09_08_sft_email_v4_v3/configure_fastllm_model_config.py +107 -0
  5. 26_09_08_sft_email_v4_v3/dataset_cache/__mnt__queue1__shashank__exp__data__26_09_04_sft_email_v3__fastllm__shard_0_0.fast_llm_dataset_ns_2019_sl_32768_s_784569_shuffled_cumsum.npy +3 -0
  6. 26_09_08_sft_email_v4_v3/dataset_cache/__mnt__queue1__shashank__exp__data__26_09_04_sft_email_v3__fastllm__shard_0_0.fast_llm_dataset_ns_2019_sl_32768_s_784569_shuffling.npy +3 -0
  7. 26_09_08_sft_email_v4_v3/dataset_cache/__mnt__queue1__shashank__exp__data__26_09_04_sft_email_v3__fastllm__shard_0_0.yaml +20 -0
  8. 26_09_08_sft_email_v4_v3/dataset_cache/__mnt__queue1__shashank__exp__data__26_09_08_sft_email_v4__fastllm__shard_0_0.fast_llm_dataset_ns_4417_sl_32768_s_785266_shuffled_cumsum.npy +3 -0
  9. 26_09_08_sft_email_v4_v3/dataset_cache/__mnt__queue1__shashank__exp__data__26_09_08_sft_email_v4__fastllm__shard_0_0.fast_llm_dataset_ns_4417_sl_32768_s_785266_shuffling.npy +3 -0
  10. 26_09_08_sft_email_v4_v3/dataset_cache/__mnt__queue1__shashank__exp__data__26_09_08_sft_email_v4__fastllm__shard_0_0.yaml +20 -0
  11. 26_09_08_sft_email_v4_v3/dataset_cache/__mnt__queue1__shruthan__data__gemma_sft_replay__10k__fastllm__shard_0_0.fast_llm_dataset_ns_7008_sl_32768_s_785963_shuffled_cumsum.npy +3 -0
  12. 26_09_08_sft_email_v4_v3/dataset_cache/__mnt__queue1__shruthan__data__gemma_sft_replay__10k__fastllm__shard_0_0.fast_llm_dataset_ns_7008_sl_32768_s_785963_shuffling.npy +3 -0
  13. 26_09_08_sft_email_v4_v3/dataset_cache/__mnt__queue1__shruthan__data__gemma_sft_replay__10k__fastllm__shard_0_0.yaml +20 -0
  14. 26_09_08_sft_email_v4_v3/export/gemma4/140/chat_template.jinja +390 -0
  15. 26_09_08_sft_email_v4_v3/export/gemma4/140/config.json +83 -0
  16. 26_09_08_sft_email_v4_v3/export/gemma4/140/generation_config.json +14 -0
  17. 26_09_08_sft_email_v4_v3/export/gemma4/140/model.safetensors.index.json +1053 -0
  18. 26_09_08_sft_email_v4_v3/export/gemma4/140/model_0.safetensors +3 -0
  19. 26_09_08_sft_email_v4_v3/export/gemma4/140/model_1.safetensors +3 -0
  20. 26_09_08_sft_email_v4_v3/export/gemma4/140/model_2.safetensors +3 -0
  21. 26_09_08_sft_email_v4_v3/export/gemma4/140/model_3.safetensors +3 -0
  22. 26_09_08_sft_email_v4_v3/export/gemma4/140/model_4.safetensors +3 -0
  23. 26_09_08_sft_email_v4_v3/export/gemma4/140/model_5.safetensors +3 -0
  24. 26_09_08_sft_email_v4_v3/export/gemma4/140/ok +0 -0
  25. 26_09_08_sft_email_v4_v3/export/gemma4/140/tokenizer.json +3 -0
  26. 26_09_08_sft_email_v4_v3/export/gemma4/140/tokenizer_config.json +74 -0
  27. 26_09_08_sft_email_v4_v3/export/gemma4/210/chat_template.jinja +390 -0
  28. 26_09_08_sft_email_v4_v3/export/gemma4/210/config.json +83 -0
  29. 26_09_08_sft_email_v4_v3/export/gemma4/210/generation_config.json +14 -0
  30. 26_09_08_sft_email_v4_v3/export/gemma4/210/model.safetensors.index.json +1053 -0
  31. 26_09_08_sft_email_v4_v3/export/gemma4/210/model_0.safetensors +3 -0
  32. 26_09_08_sft_email_v4_v3/export/gemma4/210/model_1.safetensors +3 -0
  33. 26_09_08_sft_email_v4_v3/export/gemma4/210/model_2.safetensors +3 -0
  34. 26_09_08_sft_email_v4_v3/export/gemma4/210/model_3.safetensors +3 -0
  35. 26_09_08_sft_email_v4_v3/export/gemma4/210/model_4.safetensors +3 -0
  36. 26_09_08_sft_email_v4_v3/export/gemma4/210/model_5.safetensors +3 -0
  37. 26_09_08_sft_email_v4_v3/export/gemma4/210/ok +0 -0
  38. 26_09_08_sft_email_v4_v3/export/gemma4/210/tokenizer.json +3 -0
  39. 26_09_08_sft_email_v4_v3/export/gemma4/210/tokenizer_config.json +74 -0
  40. 26_09_08_sft_email_v4_v3/export/gemma4/70/chat_template.jinja +390 -0
  41. 26_09_08_sft_email_v4_v3/export/gemma4/70/config.json +83 -0
  42. 26_09_08_sft_email_v4_v3/export/gemma4/70/generation_config.json +14 -0
  43. 26_09_08_sft_email_v4_v3/export/gemma4/70/model.safetensors.index.json +1053 -0
  44. 26_09_08_sft_email_v4_v3/export/gemma4/70/model_0.safetensors +3 -0
  45. 26_09_08_sft_email_v4_v3/export/gemma4/70/model_1.safetensors +3 -0
  46. 26_09_08_sft_email_v4_v3/export/gemma4/70/model_2.safetensors +3 -0
  47. 26_09_08_sft_email_v4_v3/export/gemma4/70/model_3.safetensors +3 -0
  48. 26_09_08_sft_email_v4_v3/export/gemma4/70/model_4.safetensors +3 -0
  49. 26_09_08_sft_email_v4_v3/export/gemma4/70/model_5.safetensors +3 -0
  50. 26_09_08_sft_email_v4_v3/export/gemma4/70/ok +0 -0
.gitattributes CHANGED
@@ -56,3 +56,6 @@ saved_model/**/* filter=lfs diff=lfs merge=lfs -text
56
  26_09_08_sft_email_v4/export/gemma4/120/tokenizer.json filter=lfs diff=lfs merge=lfs -text
57
  26_09_08_sft_email_v4/export/gemma4/180/tokenizer.json filter=lfs diff=lfs merge=lfs -text
58
  26_09_08_sft_email_v4/export/gemma4/60/tokenizer.json filter=lfs diff=lfs merge=lfs -text
 
 
 
 
56
  26_09_08_sft_email_v4/export/gemma4/120/tokenizer.json filter=lfs diff=lfs merge=lfs -text
57
  26_09_08_sft_email_v4/export/gemma4/180/tokenizer.json filter=lfs diff=lfs merge=lfs -text
58
  26_09_08_sft_email_v4/export/gemma4/60/tokenizer.json filter=lfs diff=lfs merge=lfs -text
59
+ 26_09_08_sft_email_v4_v3/export/gemma4/140/tokenizer.json filter=lfs diff=lfs merge=lfs -text
60
+ 26_09_08_sft_email_v4_v3/export/gemma4/210/tokenizer.json filter=lfs diff=lfs merge=lfs -text
61
+ 26_09_08_sft_email_v4_v3/export/gemma4/70/tokenizer.json filter=lfs diff=lfs merge=lfs -text
26_09_08_sft_email_v4_v3/config.yaml ADDED
@@ -0,0 +1,267 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ data:
2
+ datasets:
3
+ training:
4
+ datasets:
5
+ - path: /mnt/queue1/shashank/exp/data/26_09_04_sft_email_v3/fastllm/fast_llm_config.yaml
6
+ type: file
7
+ - path: /mnt/queue1/shashank/exp/data/26_09_08_sft_email_v4/fastllm/fast_llm_config.yaml
8
+ type: file
9
+ - path: /mnt/queue1/shruthan/data/gemma_sft_replay/10k/fastllm/fast_llm_config.yaml
10
+ type: file
11
+ name: gemma_replay_and_automation_bench
12
+ type: blended
13
+ weights:
14
+ - 0.15008542238000852
15
+ - 0.3285671651047079
16
+ - 0.5213474125152836
17
+ maximum_document_length: 32768
18
+ micro_batch_size: 32768
19
+ truncate_documents: false
20
+ model:
21
+ base_model:
22
+ decoder:
23
+ blocks:
24
+ full_attention:
25
+ mixer:
26
+ add_linear_biases: false
27
+ dropout: 0.0
28
+ head_groups: 2
29
+ head_size: 512
30
+ heads: 16
31
+ implementation: sdpa
32
+ key_norm:
33
+ epsilon: 1.0e-06
34
+ type: rms_norm
35
+ query_norm:
36
+ epsilon: 1.0e-06
37
+ type: rms_norm
38
+ rotary:
39
+ partial_rotary_factor: 0.25
40
+ theta: 1000000.0
41
+ type: proportional
42
+ shared_key_value: true
43
+ softmax_scale_power: 0.0
44
+ type: attention
45
+ value_norm:
46
+ epsilon: 1.0e-06
47
+ type: fixed_rms_norm
48
+ mlp:
49
+ dense:
50
+ activation: gelu
51
+ add_linear_biases: false
52
+ gated: true
53
+ intermediate_size: 2112
54
+ post_norm:
55
+ epsilon: 1.0e-06
56
+ type: rms_norm
57
+ pre_norm:
58
+ epsilon: 1.0e-06
59
+ type: rms_norm
60
+ recompute_level: full
61
+ type: mlp
62
+ routed:
63
+ activation: gelu
64
+ add_linear_biases: false
65
+ auxiliary_loss_coefficient: 0.0
66
+ experts: 128
67
+ experts_per_token: 8
68
+ gated: true
69
+ intermediate_size: 704
70
+ post_norm:
71
+ epsilon: 1.0e-06
72
+ type: rms_norm
73
+ pre_norm:
74
+ epsilon: 1.0e-06
75
+ type: rms_norm
76
+ recompute_level: full
77
+ router_input_scale: 0.018844459036110227
78
+ router_normalization:
79
+ epsilon: 1.0e-06
80
+ type: fixed_rms_norm
81
+ router_per_expert_scale:
82
+ enabled: true
83
+ router_scale:
84
+ enabled: true
85
+ type: moe
86
+ type: hybrid_moe
87
+ normalization:
88
+ epsilon: 1.0e-06
89
+ type: rms_norm
90
+ output_scale:
91
+ enabled: true
92
+ lr_scale: 0.0
93
+ post_mixer_normalization:
94
+ epsilon: 1.0e-06
95
+ type: rms_norm
96
+ post_mlp_normalization:
97
+ epsilon: 1.0e-06
98
+ type: rms_norm
99
+ pre_mlp_normalization:
100
+ type: none
101
+ type: decoder
102
+ sliding_attention:
103
+ mixer:
104
+ add_linear_biases: false
105
+ dropout: 0.0
106
+ head_groups: 8
107
+ head_size: 256
108
+ heads: 16
109
+ implementation: flash
110
+ key_norm:
111
+ epsilon: 1.0e-06
112
+ type: rms_norm
113
+ query_norm:
114
+ epsilon: 1.0e-06
115
+ type: rms_norm
116
+ rotary:
117
+ theta: 10000.0
118
+ type: default
119
+ softmax_scale_power: 0.0
120
+ type: attention
121
+ value_norm:
122
+ epsilon: 1.0e-06
123
+ type: fixed_rms_norm
124
+ window_size: 1024
125
+ mlp:
126
+ dense:
127
+ activation: gelu
128
+ add_linear_biases: false
129
+ gated: true
130
+ intermediate_size: 2112
131
+ post_norm:
132
+ epsilon: 1.0e-06
133
+ type: rms_norm
134
+ pre_norm:
135
+ epsilon: 1.0e-06
136
+ type: rms_norm
137
+ recompute_level: full
138
+ type: mlp
139
+ routed:
140
+ activation: gelu
141
+ add_linear_biases: false
142
+ auxiliary_loss_coefficient: 0.0
143
+ experts: 128
144
+ experts_per_token: 8
145
+ gated: true
146
+ intermediate_size: 704
147
+ post_norm:
148
+ epsilon: 1.0e-06
149
+ type: rms_norm
150
+ pre_norm:
151
+ epsilon: 1.0e-06
152
+ type: rms_norm
153
+ recompute_level: full
154
+ router_input_scale: 0.018844459036110227
155
+ router_normalization:
156
+ epsilon: 1.0e-06
157
+ type: fixed_rms_norm
158
+ router_per_expert_scale:
159
+ enabled: true
160
+ router_scale:
161
+ enabled: true
162
+ type: moe
163
+ type: hybrid_moe
164
+ normalization:
165
+ epsilon: 1.0e-06
166
+ type: rms_norm
167
+ output_scale:
168
+ enabled: true
169
+ lr_scale: 0.0
170
+ post_mixer_normalization:
171
+ epsilon: 1.0e-06
172
+ type: rms_norm
173
+ post_mlp_normalization:
174
+ epsilon: 1.0e-06
175
+ type: rms_norm
176
+ pre_mlp_normalization:
177
+ type: none
178
+ type: decoder
179
+ num_blocks: 30
180
+ pattern:
181
+ - sliding_attention
182
+ - sliding_attention
183
+ - sliding_attention
184
+ - sliding_attention
185
+ - sliding_attention
186
+ - full_attention
187
+ - sliding_attention
188
+ - sliding_attention
189
+ - sliding_attention
190
+ - sliding_attention
191
+ - sliding_attention
192
+ - full_attention
193
+ - sliding_attention
194
+ - sliding_attention
195
+ - sliding_attention
196
+ - sliding_attention
197
+ - sliding_attention
198
+ - full_attention
199
+ - sliding_attention
200
+ - sliding_attention
201
+ - sliding_attention
202
+ - sliding_attention
203
+ - sliding_attention
204
+ - full_attention
205
+ - sliding_attention
206
+ - sliding_attention
207
+ - sliding_attention
208
+ - sliding_attention
209
+ - sliding_attention
210
+ - full_attention
211
+ type: pattern
212
+ embeddings:
213
+ embedding_scale: 53.0659966456864
214
+ vocab_parallel: false
215
+ vocab_size: 262144
216
+ head:
217
+ cross_entropy_splits: 8
218
+ final_logit_softcap: 30.0
219
+ normalization:
220
+ epsilon: 1.0e-06
221
+ type: rms_norm
222
+ hidden_size: 2816
223
+ peft:
224
+ type: none
225
+ tied_embedding_weight: true
226
+ distributed:
227
+ compute_dtype: bfloat16
228
+ local_world_size: 8
229
+ rank: 0
230
+ sequence_data_parallel: 4
231
+ sequence_tensor_parallel: true
232
+ tensor_parallel: 2
233
+ timeout: 3600.0
234
+ world_size: 32
235
+ multi_stage:
236
+ zero_stage: 3
237
+ type: gpt
238
+ optimizer:
239
+ learning_rate:
240
+ base: 2.0e-05
241
+ decay_iterations: 210
242
+ decay_style: cosine
243
+ warmup_iterations: 7
244
+ weight_decay: 0.01
245
+ pretrained:
246
+ format: gemma4
247
+ load_config: model
248
+ model_weights: true
249
+ path: /mnt/queue1/shruthan/models/gemma-4-26B-A4B-it-causal-lm
250
+ run:
251
+ experiment_dir: /mnt/queue1/shashank/exp/sft/26_09_08_sft_email_v4_v3
252
+ schedule:
253
+ breadth_first_micro_batches: 1
254
+ depth_first_micro_batches: 16
255
+ training:
256
+ evaluators: {}
257
+ export:
258
+ format: gemma4
259
+ interval: 70
260
+ logs:
261
+ interval: 1
262
+ num_workers: 0
263
+ train_iters: 210
264
+ wandb:
265
+ entity_name: corellm
266
+ project_name: gemma-sft
267
+ type: train_gpt
26_09_08_sft_email_v4_v3/config_verbose.yaml ADDED
@@ -0,0 +1,910 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ callbacks: {}
2
+ data:
3
+ data_sample_warn_time_ms: 1000.0
4
+ datasets:
5
+ training:
6
+ datasets:
7
+ - path: /mnt/queue1/shashank/exp/data/26_09_04_sft_email_v3/fastllm/fast_llm_config.yaml
8
+ type: file
9
+ - path: /mnt/queue1/shashank/exp/data/26_09_08_sft_email_v4/fastllm/fast_llm_config.yaml
10
+ type: file
11
+ - path: /mnt/queue1/shruthan/data/gemma_sft_replay/10k/fastllm/fast_llm_config.yaml
12
+ type: file
13
+ name: gemma_replay_and_automation_bench
14
+ type: blended
15
+ weights:
16
+ - 0.15008542238000852
17
+ - 0.3285671651047079
18
+ - 0.5213474125152836
19
+ gpu: true
20
+ maximum_document_length: 32768
21
+ micro_batch_size: 32768
22
+ multiprocessing_context: spawn
23
+ seed: 784569
24
+ shuffle: epoch
25
+ truncate_documents: false
26
+ type: null
27
+ model:
28
+ base_model:
29
+ decoder:
30
+ blocks:
31
+ full_attention:
32
+ distillation_loss_weight: 1.0
33
+ distillation_model: null
34
+ dropout: 0.0
35
+ lr_scale: null
36
+ mixer:
37
+ add_linear_biases: false
38
+ causal: true
39
+ dense_layer:
40
+ apply_peft: null
41
+ bias:
42
+ enabled: null
43
+ initialization:
44
+ type: null
45
+ lr_scale: null
46
+ type: null
47
+ lr_scale: null
48
+ type: null
49
+ weight:
50
+ initialization:
51
+ type: null
52
+ lr_scale: null
53
+ type: null
54
+ dropout: 0.0
55
+ head_groups: 2
56
+ head_size: 512
57
+ heads: 16
58
+ implementation: sdpa
59
+ key_layer:
60
+ apply_peft: null
61
+ bias:
62
+ enabled: null
63
+ initialization:
64
+ type: null
65
+ lr_scale: null
66
+ type: null
67
+ lr_scale: null
68
+ type: null
69
+ weight:
70
+ initialization:
71
+ type: null
72
+ lr_scale: null
73
+ type: null
74
+ key_norm:
75
+ epsilon: 1.0e-06
76
+ implementation: auto
77
+ lr_scale: null
78
+ type: rms_norm
79
+ weight:
80
+ initialization:
81
+ type: null
82
+ lr_scale: null
83
+ type: null
84
+ zero_centered: false
85
+ lr_scale: null
86
+ query_layer:
87
+ apply_peft: null
88
+ bias:
89
+ enabled: null
90
+ initialization:
91
+ type: null
92
+ lr_scale: null
93
+ type: null
94
+ lr_scale: null
95
+ type: null
96
+ weight:
97
+ initialization:
98
+ type: null
99
+ lr_scale: null
100
+ type: null
101
+ query_norm:
102
+ epsilon: 1.0e-06
103
+ implementation: auto
104
+ lr_scale: null
105
+ type: rms_norm
106
+ weight:
107
+ initialization:
108
+ type: null
109
+ lr_scale: null
110
+ type: null
111
+ zero_centered: false
112
+ rotary:
113
+ partial_rotary_factor: 0.25
114
+ theta: 1000000.0
115
+ type: proportional
116
+ shared_key_value: true
117
+ softmax_scale_power: 0.0
118
+ type: attention
119
+ use_flash_attention: true
120
+ value_layer:
121
+ apply_peft: null
122
+ bias:
123
+ enabled: null
124
+ initialization:
125
+ type: null
126
+ lr_scale: null
127
+ type: null
128
+ lr_scale: null
129
+ type: null
130
+ weight:
131
+ initialization:
132
+ type: null
133
+ lr_scale: null
134
+ type: null
135
+ value_norm:
136
+ epsilon: 1.0e-06
137
+ lr_scale: null
138
+ type: fixed_rms_norm
139
+ window_size: null
140
+ mlp:
141
+ dense:
142
+ activation: gelu
143
+ add_linear_biases: false
144
+ gated: true
145
+ intermediate_size: 2112
146
+ layer_1:
147
+ apply_peft: null
148
+ bias:
149
+ enabled: null
150
+ initialization:
151
+ type: null
152
+ lr_scale: null
153
+ type: null
154
+ lr_scale: null
155
+ type: null
156
+ weight:
157
+ initialization:
158
+ type: null
159
+ lr_scale: null
160
+ type: null
161
+ layer_2:
162
+ apply_peft: null
163
+ bias:
164
+ enabled: null
165
+ initialization:
166
+ type: null
167
+ lr_scale: null
168
+ type: null
169
+ lr_scale: null
170
+ type: null
171
+ weight:
172
+ initialization:
173
+ type: null
174
+ lr_scale: null
175
+ type: null
176
+ lr_scale: null
177
+ post_norm:
178
+ epsilon: 1.0e-06
179
+ implementation: auto
180
+ lr_scale: null
181
+ type: rms_norm
182
+ weight:
183
+ initialization:
184
+ type: null
185
+ lr_scale: null
186
+ type: null
187
+ zero_centered: false
188
+ pre_norm:
189
+ epsilon: 1.0e-06
190
+ implementation: auto
191
+ lr_scale: null
192
+ type: rms_norm
193
+ weight:
194
+ initialization:
195
+ type: null
196
+ lr_scale: null
197
+ type: null
198
+ zero_centered: false
199
+ recompute_level: full
200
+ type: mlp
201
+ lr_scale: null
202
+ post_norm: null
203
+ pre_norm: null
204
+ routed:
205
+ activation: gelu
206
+ add_linear_biases: false
207
+ auxiliary_loss_coefficient: 0.0
208
+ dropless_dynamic_shape: false
209
+ experts: 128
210
+ experts_per_token: 8
211
+ gated: true
212
+ implementation: auto
213
+ intermediate_size: 704
214
+ jitter_eps: 0.0
215
+ layer_1:
216
+ apply_peft: null
217
+ bias:
218
+ enabled: null
219
+ initialization:
220
+ type: null
221
+ lr_scale: null
222
+ type: null
223
+ lr_scale: null
224
+ type: null
225
+ weight:
226
+ initialization:
227
+ type: null
228
+ lr_scale: null
229
+ type: null
230
+ layer_2:
231
+ apply_peft: null
232
+ bias:
233
+ enabled: null
234
+ initialization:
235
+ type: null
236
+ lr_scale: null
237
+ type: null
238
+ lr_scale: null
239
+ type: null
240
+ weight:
241
+ initialization:
242
+ type: null
243
+ lr_scale: null
244
+ type: null
245
+ lr_scale: null
246
+ post_norm:
247
+ epsilon: 1.0e-06
248
+ implementation: auto
249
+ lr_scale: null
250
+ type: rms_norm
251
+ weight:
252
+ initialization:
253
+ type: null
254
+ lr_scale: null
255
+ type: null
256
+ zero_centered: false
257
+ pre_norm:
258
+ epsilon: 1.0e-06
259
+ implementation: auto
260
+ lr_scale: null
261
+ type: rms_norm
262
+ weight:
263
+ initialization:
264
+ type: null
265
+ lr_scale: null
266
+ type: null
267
+ zero_centered: false
268
+ recompute_level: full
269
+ router:
270
+ apply_peft: null
271
+ lr_scale: null
272
+ type: null
273
+ weight:
274
+ initialization:
275
+ type: null
276
+ lr_scale: null
277
+ type: null
278
+ router_input_scale: 0.018844459036110227
279
+ router_normalization:
280
+ epsilon: 1.0e-06
281
+ lr_scale: null
282
+ type: fixed_rms_norm
283
+ router_per_expert_scale:
284
+ enabled: true
285
+ initialization:
286
+ type: null
287
+ lr_scale: null
288
+ type: null
289
+ router_scale:
290
+ enabled: true
291
+ initialization:
292
+ type: null
293
+ lr_scale: null
294
+ type: null
295
+ routing: aux_loss
296
+ shared_experts: 0
297
+ type: moe
298
+ z_loss_coefficient: 0.0
299
+ type: hybrid_moe
300
+ normalization:
301
+ epsilon: 1.0e-06
302
+ implementation: auto
303
+ lr_scale: null
304
+ type: rms_norm
305
+ weight:
306
+ initialization:
307
+ type: null
308
+ lr_scale: null
309
+ type: null
310
+ zero_centered: false
311
+ output_scale:
312
+ enabled: true
313
+ initialization:
314
+ type: null
315
+ lr_scale: 0.0
316
+ type: null
317
+ post_mixer_normalization:
318
+ epsilon: 1.0e-06
319
+ implementation: auto
320
+ lr_scale: null
321
+ type: rms_norm
322
+ weight:
323
+ initialization:
324
+ type: null
325
+ lr_scale: null
326
+ type: null
327
+ zero_centered: false
328
+ post_mlp_normalization:
329
+ epsilon: 1.0e-06
330
+ implementation: auto
331
+ lr_scale: null
332
+ type: rms_norm
333
+ weight:
334
+ initialization:
335
+ type: null
336
+ lr_scale: null
337
+ type: null
338
+ zero_centered: false
339
+ pre_mixer_normalization: null
340
+ pre_mlp_normalization:
341
+ lr_scale: null
342
+ type: none
343
+ type: decoder
344
+ sliding_attention:
345
+ distillation_loss_weight: 1.0
346
+ distillation_model: null
347
+ dropout: 0.0
348
+ lr_scale: null
349
+ mixer:
350
+ add_linear_biases: false
351
+ causal: true
352
+ dense_layer:
353
+ apply_peft: null
354
+ bias:
355
+ enabled: null
356
+ initialization:
357
+ type: null
358
+ lr_scale: null
359
+ type: null
360
+ lr_scale: null
361
+ type: null
362
+ weight:
363
+ initialization:
364
+ type: null
365
+ lr_scale: null
366
+ type: null
367
+ dropout: 0.0
368
+ head_groups: 8
369
+ head_size: 256
370
+ heads: 16
371
+ implementation: flash
372
+ key_layer:
373
+ apply_peft: null
374
+ bias:
375
+ enabled: null
376
+ initialization:
377
+ type: null
378
+ lr_scale: null
379
+ type: null
380
+ lr_scale: null
381
+ type: null
382
+ weight:
383
+ initialization:
384
+ type: null
385
+ lr_scale: null
386
+ type: null
387
+ key_norm:
388
+ epsilon: 1.0e-06
389
+ implementation: auto
390
+ lr_scale: null
391
+ type: rms_norm
392
+ weight:
393
+ initialization:
394
+ type: null
395
+ lr_scale: null
396
+ type: null
397
+ zero_centered: false
398
+ lr_scale: null
399
+ query_layer:
400
+ apply_peft: null
401
+ bias:
402
+ enabled: null
403
+ initialization:
404
+ type: null
405
+ lr_scale: null
406
+ type: null
407
+ lr_scale: null
408
+ type: null
409
+ weight:
410
+ initialization:
411
+ type: null
412
+ lr_scale: null
413
+ type: null
414
+ query_norm:
415
+ epsilon: 1.0e-06
416
+ implementation: auto
417
+ lr_scale: null
418
+ type: rms_norm
419
+ weight:
420
+ initialization:
421
+ type: null
422
+ lr_scale: null
423
+ type: null
424
+ zero_centered: false
425
+ rotary:
426
+ theta: 10000.0
427
+ type: default
428
+ shared_key_value: false
429
+ softmax_scale_power: 0.0
430
+ type: attention
431
+ use_flash_attention: true
432
+ value_layer:
433
+ apply_peft: null
434
+ bias:
435
+ enabled: null
436
+ initialization:
437
+ type: null
438
+ lr_scale: null
439
+ type: null
440
+ lr_scale: null
441
+ type: null
442
+ weight:
443
+ initialization:
444
+ type: null
445
+ lr_scale: null
446
+ type: null
447
+ value_norm:
448
+ epsilon: 1.0e-06
449
+ lr_scale: null
450
+ type: fixed_rms_norm
451
+ window_size: 1024
452
+ mlp:
453
+ dense:
454
+ activation: gelu
455
+ add_linear_biases: false
456
+ gated: true
457
+ intermediate_size: 2112
458
+ layer_1:
459
+ apply_peft: null
460
+ bias:
461
+ enabled: null
462
+ initialization:
463
+ type: null
464
+ lr_scale: null
465
+ type: null
466
+ lr_scale: null
467
+ type: null
468
+ weight:
469
+ initialization:
470
+ type: null
471
+ lr_scale: null
472
+ type: null
473
+ layer_2:
474
+ apply_peft: null
475
+ bias:
476
+ enabled: null
477
+ initialization:
478
+ type: null
479
+ lr_scale: null
480
+ type: null
481
+ lr_scale: null
482
+ type: null
483
+ weight:
484
+ initialization:
485
+ type: null
486
+ lr_scale: null
487
+ type: null
488
+ lr_scale: null
489
+ post_norm:
490
+ epsilon: 1.0e-06
491
+ implementation: auto
492
+ lr_scale: null
493
+ type: rms_norm
494
+ weight:
495
+ initialization:
496
+ type: null
497
+ lr_scale: null
498
+ type: null
499
+ zero_centered: false
500
+ pre_norm:
501
+ epsilon: 1.0e-06
502
+ implementation: auto
503
+ lr_scale: null
504
+ type: rms_norm
505
+ weight:
506
+ initialization:
507
+ type: null
508
+ lr_scale: null
509
+ type: null
510
+ zero_centered: false
511
+ recompute_level: full
512
+ type: mlp
513
+ lr_scale: null
514
+ post_norm: null
515
+ pre_norm: null
516
+ routed:
517
+ activation: gelu
518
+ add_linear_biases: false
519
+ auxiliary_loss_coefficient: 0.0
520
+ dropless_dynamic_shape: false
521
+ experts: 128
522
+ experts_per_token: 8
523
+ gated: true
524
+ implementation: auto
525
+ intermediate_size: 704
526
+ jitter_eps: 0.0
527
+ layer_1:
528
+ apply_peft: null
529
+ bias:
530
+ enabled: null
531
+ initialization:
532
+ type: null
533
+ lr_scale: null
534
+ type: null
535
+ lr_scale: null
536
+ type: null
537
+ weight:
538
+ initialization:
539
+ type: null
540
+ lr_scale: null
541
+ type: null
542
+ layer_2:
543
+ apply_peft: null
544
+ bias:
545
+ enabled: null
546
+ initialization:
547
+ type: null
548
+ lr_scale: null
549
+ type: null
550
+ lr_scale: null
551
+ type: null
552
+ weight:
553
+ initialization:
554
+ type: null
555
+ lr_scale: null
556
+ type: null
557
+ lr_scale: null
558
+ post_norm:
559
+ epsilon: 1.0e-06
560
+ implementation: auto
561
+ lr_scale: null
562
+ type: rms_norm
563
+ weight:
564
+ initialization:
565
+ type: null
566
+ lr_scale: null
567
+ type: null
568
+ zero_centered: false
569
+ pre_norm:
570
+ epsilon: 1.0e-06
571
+ implementation: auto
572
+ lr_scale: null
573
+ type: rms_norm
574
+ weight:
575
+ initialization:
576
+ type: null
577
+ lr_scale: null
578
+ type: null
579
+ zero_centered: false
580
+ recompute_level: full
581
+ router:
582
+ apply_peft: null
583
+ lr_scale: null
584
+ type: null
585
+ weight:
586
+ initialization:
587
+ type: null
588
+ lr_scale: null
589
+ type: null
590
+ router_input_scale: 0.018844459036110227
591
+ router_normalization:
592
+ epsilon: 1.0e-06
593
+ lr_scale: null
594
+ type: fixed_rms_norm
595
+ router_per_expert_scale:
596
+ enabled: true
597
+ initialization:
598
+ type: null
599
+ lr_scale: null
600
+ type: null
601
+ router_scale:
602
+ enabled: true
603
+ initialization:
604
+ type: null
605
+ lr_scale: null
606
+ type: null
607
+ routing: aux_loss
608
+ shared_experts: 0
609
+ type: moe
610
+ z_loss_coefficient: 0.0
611
+ type: hybrid_moe
612
+ normalization:
613
+ epsilon: 1.0e-06
614
+ implementation: auto
615
+ lr_scale: null
616
+ type: rms_norm
617
+ weight:
618
+ initialization:
619
+ type: null
620
+ lr_scale: null
621
+ type: null
622
+ zero_centered: false
623
+ output_scale:
624
+ enabled: true
625
+ initialization:
626
+ type: null
627
+ lr_scale: 0.0
628
+ type: null
629
+ post_mixer_normalization:
630
+ epsilon: 1.0e-06
631
+ implementation: auto
632
+ lr_scale: null
633
+ type: rms_norm
634
+ weight:
635
+ initialization:
636
+ type: null
637
+ lr_scale: null
638
+ type: null
639
+ zero_centered: false
640
+ post_mlp_normalization:
641
+ epsilon: 1.0e-06
642
+ implementation: auto
643
+ lr_scale: null
644
+ type: rms_norm
645
+ weight:
646
+ initialization:
647
+ type: null
648
+ lr_scale: null
649
+ type: null
650
+ zero_centered: false
651
+ pre_mixer_normalization: null
652
+ pre_mlp_normalization:
653
+ lr_scale: null
654
+ type: none
655
+ type: decoder
656
+ lr_scale: null
657
+ num_blocks: 30
658
+ pattern:
659
+ - sliding_attention
660
+ - sliding_attention
661
+ - sliding_attention
662
+ - sliding_attention
663
+ - sliding_attention
664
+ - full_attention
665
+ - sliding_attention
666
+ - sliding_attention
667
+ - sliding_attention
668
+ - sliding_attention
669
+ - sliding_attention
670
+ - full_attention
671
+ - sliding_attention
672
+ - sliding_attention
673
+ - sliding_attention
674
+ - sliding_attention
675
+ - sliding_attention
676
+ - full_attention
677
+ - sliding_attention
678
+ - sliding_attention
679
+ - sliding_attention
680
+ - sliding_attention
681
+ - sliding_attention
682
+ - full_attention
683
+ - sliding_attention
684
+ - sliding_attention
685
+ - sliding_attention
686
+ - sliding_attention
687
+ - sliding_attention
688
+ - full_attention
689
+ type: pattern
690
+ embeddings:
691
+ dropout: 0.0
692
+ embedding_scale: 53.0659966456864
693
+ full_precision_residual: false
694
+ lr_scale: null
695
+ num_position_embeddings: 2048
696
+ position_embeddings:
697
+ enabled: null
698
+ initialization:
699
+ type: null
700
+ lr_scale: null
701
+ type: null
702
+ type: null
703
+ vocab_parallel: false
704
+ vocab_size: 262144
705
+ word_embeddings:
706
+ initialization:
707
+ type: null
708
+ lr_scale: null
709
+ type: null
710
+ head:
711
+ cross_entropy_splits: 8
712
+ final_logit_softcap: 30.0
713
+ logits_scale_factor: 1.0
714
+ losses: {}
715
+ lr_scale: null
716
+ normalization:
717
+ epsilon: 1.0e-06
718
+ implementation: auto
719
+ lr_scale: null
720
+ type: rms_norm
721
+ weight:
722
+ initialization:
723
+ type: null
724
+ lr_scale: null
725
+ type: null
726
+ zero_centered: false
727
+ output_weight:
728
+ initialization:
729
+ type: null
730
+ lr_scale: null
731
+ type: null
732
+ prediction_heads: 1
733
+ prediction_loss_coefficient: null
734
+ type: null
735
+ hidden_size: 2816
736
+ lr_scale: null
737
+ peft:
738
+ type: none
739
+ tied_embedding_weight: true
740
+ type: null
741
+ use_megatron_initialization: false
742
+ distributed:
743
+ backend: nccl
744
+ compute_dtype: bfloat16
745
+ dp_seed_shift: 317767863445754100075399033823
746
+ force_cpu_initialization: false
747
+ inference_seed_shift: 220111337975202516901860145957
748
+ local_world_size: 8
749
+ optimization_dtype: float32
750
+ pipeline_first: false
751
+ pipeline_parallel: 1
752
+ pp_gen_init_seed_shift: 631112027069964424381239824623
753
+ pp_gen_seed_shift: 500460795349110443334056239993
754
+ pp_seed_shift: 811026271858507938190098775099
755
+ rank: 0
756
+ reproducible_init: false
757
+ sample_seed_shift: 751127116949963770353413160199
758
+ seed: 1234
759
+ sequence_data_parallel: 4
760
+ sequence_tensor_parallel: true
761
+ tensor_parallel: 2
762
+ timeout: 3600.0
763
+ tp_gen_init_seed_shift: 894750739684993243926471979237
764
+ tp_gen_seed_shift: 278779420836085904093221202933
765
+ tp_seed_shift: 705275193289568515128435800471
766
+ train_seed_shift: 938219878163699459065752841447
767
+ type: null
768
+ use_cuda: true
769
+ valid_seed_shift: 683552447587140661489672773353
770
+ world_size: 32
771
+ multi_stage:
772
+ debug_activation_memory: false
773
+ debug_all_param_gradients: 0
774
+ debug_global_tensors: true
775
+ debug_layer_gradients: 0
776
+ debug_layer_outputs: 0
777
+ debug_param_gradients: 0
778
+ debug_param_init: 0
779
+ debug_param_update: 0
780
+ debug_tensor_parallel: false
781
+ full_precision_gradients: true
782
+ layers_per_stage: 1.0
783
+ num_grad_buffers: 2
784
+ num_weight_buffers: 2
785
+ pipeline_delay: 0.0
786
+ store_frozen_weights_in_optimization_precision: true
787
+ type: null
788
+ zero_stage: 3
789
+ type: gpt
790
+ optimizer:
791
+ beta_1: 0.9
792
+ beta_2: 0.999
793
+ default_learning_rate_scale: 1.0
794
+ epsilon: 1.0e-08
795
+ gradient_norm_clipping: 1.0
796
+ gradient_scaler:
797
+ constant: null
798
+ hysteresis: 2
799
+ initial: 65536.0
800
+ minimum: 1.0
801
+ type: null
802
+ window: 1000
803
+ learning_rate:
804
+ base: 2.0e-05
805
+ decay_iterations: 210
806
+ decay_power: 1.0
807
+ decay_style: cosine
808
+ minimum: 0.0
809
+ type: null
810
+ warmup_iterations: 7
811
+ type: null
812
+ weight_decay: 0.01
813
+ pretrained:
814
+ format: gemma4
815
+ load_config: model
816
+ model_weights: true
817
+ optimizer_state: false
818
+ path: /mnt/queue1/shruthan/models/gemma-4-26B-A4B-it-causal-lm
819
+ timeout: null
820
+ type: null
821
+ profiling:
822
+ averages: false
823
+ cpu: false
824
+ cuda: false
825
+ cycles: 1
826
+ export: false
827
+ log: false
828
+ ranks: []
829
+ skip: 1
830
+ table_width: 80
831
+ trace: false
832
+ type: null
833
+ wait: 0
834
+ warmup: 1
835
+ reference_models: {}
836
+ run:
837
+ enable_all_loggers: false
838
+ enable_triton_kernels: true
839
+ experiment_dir: /mnt/queue1/shashank/exp/sft/26_09_08_sft_email_v4_v3
840
+ experiment_name: null
841
+ log_timestamps: true
842
+ model_debug_level: 0
843
+ structured_logs: true
844
+ tensor_logs:
845
+ full_tensors: false
846
+ max_elements: 8
847
+ save: false
848
+ show: true
849
+ type: null
850
+ torch_dynamo_enable: true
851
+ triton_linear_kernels: false
852
+ type: null
853
+ schedule:
854
+ breadth_first_micro_batches: 1
855
+ data_batch_warn_time_ms: 1000.0
856
+ data_overlap: true
857
+ debug_schedule: false
858
+ debug_send_recv: false
859
+ depth_first_micro_batches: 16
860
+ micro_batch_splits: 1
861
+ pipeline_overlap: true
862
+ profile_schedule: false
863
+ skip_step: false
864
+ throttle_cpu: true
865
+ throttle_cpu_delay: 1
866
+ throttle_cpu_rate: 1
867
+ type: null
868
+ training:
869
+ checkpoint:
870
+ interval: null
871
+ keep: 5
872
+ keep_every: null
873
+ offset: 0
874
+ type: null
875
+ evaluators: {}
876
+ export:
877
+ data_type: null
878
+ format: gemma4
879
+ interval: 70
880
+ keep: null
881
+ keep_every: null
882
+ model_weights: true
883
+ offset: 0
884
+ optimizer_state: false
885
+ parameters_per_file: 4294967296
886
+ type: null
887
+ logs:
888
+ interval: 1
889
+ offset: 0
890
+ type: null
891
+ num_workers: 0
892
+ prefetch_factor: null
893
+ shutdown:
894
+ interval: null
895
+ offset: 0
896
+ type: null
897
+ timeout: 3600.0
898
+ train_iters: 210
899
+ type: null
900
+ wandb:
901
+ alert:
902
+ interval: null
903
+ offset: 0
904
+ status_updates: null
905
+ type: null
906
+ entity_name: corellm
907
+ group_name: default
908
+ project_name: gemma-sft
909
+ type: null
910
+ type: train_gpt
26_09_08_sft_email_v4_v3/configure_fastllm_model_config.py ADDED
@@ -0,0 +1,107 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ #!/usr/bin/env python3
2
+ """Fill in the data-dependent training knobs of a fastllm model_config.yaml.
3
+
4
+ DATASETS (below) lists the sources to blend, each a `fast_llm_config.yaml` written by the
5
+ `fast-llm prepare gpt_memmap` tokenization step (that file carries the source's real
6
+ `metadata.num_tokens`). This script writes that list into model_config.yaml's
7
+ data.datasets.training.datasets and derives the values that depend on their token counts:
8
+
9
+ data.datasets.training.datasets DATASETS, as {type: file, path: ...} entries
10
+ data.datasets.training.weights token count of each source (token-proportional blend)
11
+ schedule.depth_first_micro_batches solved from TARGET_GLOBAL_BATCH_SIZE / NUM_NODES
12
+ training.train_iters NUM_EPOCHS * num_steps_per_epoch
13
+ training.checkpoint.interval num_steps_per_epoch
14
+ training.export.interval num_steps_per_epoch
15
+ optimizer.learning_rate.warmup_iterations num_steps_per_epoch // 10
16
+ optimizer.learning_rate.decay_iterations training.train_iters
17
+
18
+ where, with TP=2 and SDP=4 already fixed in the model config, a single node contributes
19
+ `depth_first_micro_batches` sequences per optimizer step (SDP/TP split one sequence across
20
+ ranks rather than processing several in parallel), so:
21
+
22
+ global_batch_size = NUM_NODES * depth_first_micro_batches
23
+ num_steps_per_epoch = ceil(EXTRA_STEPS_FRACTION-padded total_tokens / (global_batch_size * seq_len)),
24
+ then rounded up to the next multiple of 10
25
+
26
+ seq_len is read from the model config's data.maximum_document_length. total_tokens is the sum
27
+ of every source's num_tokens. The 5% padding accounts for packing-efficiency slack -- exact
28
+ step counts are not expected to land precisely on an epoch boundary.
29
+
30
+ All run configuration lives in the CONFIGURATION block below -- edit it directly rather than
31
+ passing command-line arguments.
32
+ """
33
+
34
+ from __future__ import annotations
35
+
36
+ import math
37
+ from pathlib import Path
38
+
39
+ import yaml
40
+
41
+ # -----------------------------------------------------------------------------
42
+ # Configuration -- edit these instead of passing CLI arguments.
43
+ # -----------------------------------------------------------------------------
44
+
45
+ MODEL_CONFIG_PATH = Path("/mnt/queue1/shashank/exp/sft/26_09_08_sft_email_v4_v3/model_config.yaml")
46
+
47
+ # fast_llm_config.yaml path for each source to blend into training
48
+ DATASETS = [
49
+ "/mnt/queue1/shashank/exp/data/26_09_04_sft_email_v3/fastllm/fast_llm_config.yaml",
50
+ "/mnt/queue1/shashank/exp/data/26_09_08_sft_email_v4/fastllm/fast_llm_config.yaml",
51
+ "/mnt/queue1/shruthan/data/gemma_sft_replay/10k/fastllm/fast_llm_config.yaml",
52
+ ]
53
+
54
+ NUM_NODES = 4
55
+ TARGET_GLOBAL_BATCH_SIZE = 64
56
+ NUM_EPOCHS = 3
57
+ EXTRA_STEPS_FRACTION = 0.05 # padding for packing-efficiency slack
58
+
59
+
60
+ def load_yaml(path: Path) -> dict:
61
+ with path.open("r", encoding="utf-8") as f:
62
+ return yaml.safe_load(f)
63
+
64
+
65
+ def source_num_tokens(fast_llm_config_path: str) -> int:
66
+ source_config = load_yaml(Path(fast_llm_config_path))
67
+ return source_config["metadata"]["num_tokens"]
68
+
69
+
70
+ def main() -> int:
71
+ config = load_yaml(MODEL_CONFIG_PATH)
72
+
73
+ seq_len = config["data"]["maximum_document_length"]
74
+
75
+ token_counts = [source_num_tokens(path) for path in DATASETS]
76
+ total_tokens = sum(token_counts)
77
+
78
+ depth_first_micro_batches = max(1, round(TARGET_GLOBAL_BATCH_SIZE / NUM_NODES))
79
+ global_batch_size = NUM_NODES * depth_first_micro_batches
80
+
81
+ num_steps_per_epoch = math.ceil((1.0 + EXTRA_STEPS_FRACTION) * total_tokens / (global_batch_size * seq_len))
82
+ num_steps_per_epoch = math.ceil(num_steps_per_epoch / 10) * 10
83
+ train_iters = NUM_EPOCHS * num_steps_per_epoch
84
+ warmup_iterations = num_steps_per_epoch // 10
85
+
86
+ config["data"]["datasets"]["training"]["datasets"] = [{"type": "file", "path": path} for path in DATASETS]
87
+ config["data"]["datasets"]["training"]["weights"] = token_counts
88
+ config["schedule"]["depth_first_micro_batches"] = depth_first_micro_batches
89
+ config["training"]["train_iters"] = train_iters
90
+ if "checkpoint" in config["training"]:
91
+ config["training"]["checkpoint"]["interval"] = num_steps_per_epoch
92
+ config["training"]["export"]["interval"] = num_steps_per_epoch
93
+ config["optimizer"]["learning_rate"]["warmup_iterations"] = warmup_iterations
94
+ config["optimizer"]["learning_rate"]["decay_iterations"] = train_iters
95
+
96
+ with MODEL_CONFIG_PATH.open("w", encoding="utf-8") as f:
97
+ yaml.safe_dump(config, f, sort_keys=False)
98
+
99
+ print(f"weights: {token_counts} (total_tokens={total_tokens}, seq_len={seq_len})")
100
+ print(f"global_batch_size={global_batch_size} depth_first_micro_batches={depth_first_micro_batches}")
101
+ print(f"num_steps_per_epoch={num_steps_per_epoch} train_iters={train_iters} warmup_iterations={warmup_iterations}")
102
+ print(f"Updated {MODEL_CONFIG_PATH}")
103
+ return 0
104
+
105
+
106
+ if __name__ == "__main__":
107
+ raise SystemExit(main())
26_09_08_sft_email_v4_v3/dataset_cache/__mnt__queue1__shashank__exp__data__26_09_04_sft_email_v3__fastllm__shard_0_0.fast_llm_dataset_ns_2019_sl_32768_s_784569_shuffled_cumsum.npy ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:0f78708060f6aca29e7c433ff174ad0b6a4c9d233f2ced9e56368a030a0ad1ea
3
+ size 10504
26_09_08_sft_email_v4_v3/dataset_cache/__mnt__queue1__shashank__exp__data__26_09_04_sft_email_v3__fastllm__shard_0_0.fast_llm_dataset_ns_2019_sl_32768_s_784569_shuffling.npy ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:1dddd9262b742465744ed1deceacdbf3468f0d932dd78c7e2eba3e5ccb4d7c14
3
+ size 26088
26_09_08_sft_email_v4_v3/dataset_cache/__mnt__queue1__shashank__exp__data__26_09_04_sft_email_v3__fastllm__shard_0_0.yaml ADDED
@@ -0,0 +1,20 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ config:
2
+ dataset_name: training
3
+ gpu: true
4
+ maximum_document_length: 32768
5
+ micro_batch_size: 32768
6
+ predicted_tokens: 1
7
+ shuffle: epoch
8
+ token_cumsum_rate: 10
9
+ truncate_documents: false
10
+ type: null
11
+ world_size: 32
12
+ dataset:
13
+ documents_per_epoch: 3947
14
+ name: __mnt__queue1__shashank__exp__data__26_09_04_sft_email_v3__fastllm__shard_0_0.fast_llm_dataset
15
+ tokens_per_epoch: 17841257
16
+ num_samples: 2019
17
+ sequence_length: 32768
18
+ truncate_documents: false
19
+ unshuffled_epochs: 0
20
+ unshuffled_tokens: 0
26_09_08_sft_email_v4_v3/dataset_cache/__mnt__queue1__shashank__exp__data__26_09_08_sft_email_v4__fastllm__shard_0_0.fast_llm_dataset_ns_4417_sl_32768_s_785266_shuffled_cumsum.npy ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:2b9ad75b4d0f5efc77c639274e4a7b412579961751e10483af37177e20337117
3
+ size 17920
26_09_08_sft_email_v4_v3/dataset_cache/__mnt__queue1__shashank__exp__data__26_09_08_sft_email_v4__fastllm__shard_0_0.fast_llm_dataset_ns_4417_sl_32768_s_785266_shuffling.npy ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:e96c8ba14574954551a37b3f1dd22b01ea54109124dc2369201e70ec7393a642
3
+ size 44628
26_09_08_sft_email_v4_v3/dataset_cache/__mnt__queue1__shashank__exp__data__26_09_08_sft_email_v4__fastllm__shard_0_0.yaml ADDED
@@ -0,0 +1,20 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ config:
2
+ dataset_name: training
3
+ gpu: true
4
+ maximum_document_length: 32768
5
+ micro_batch_size: 32768
6
+ predicted_tokens: 1
7
+ shuffle: epoch
8
+ token_cumsum_rate: 10
9
+ truncate_documents: false
10
+ type: null
11
+ world_size: 32
12
+ dataset:
13
+ documents_per_epoch: 7626
14
+ name: __mnt__queue1__shashank__exp__data__26_09_08_sft_email_v4__fastllm__shard_0_0.fast_llm_dataset
15
+ tokens_per_epoch: 43465496
16
+ num_samples: 4417
17
+ sequence_length: 32768
18
+ truncate_documents: false
19
+ unshuffled_epochs: 0
20
+ unshuffled_tokens: 0
26_09_08_sft_email_v4_v3/dataset_cache/__mnt__queue1__shruthan__data__gemma_sft_replay__10k__fastllm__shard_0_0.fast_llm_dataset_ns_7008_sl_32768_s_785963_shuffled_cumsum.npy ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:7a682d417f335f5a4d4337a84cd615ec9622ed55d00c80b7930e2454209420cf
3
+ size 22688
26_09_08_sft_email_v4_v3/dataset_cache/__mnt__queue1__shruthan__data__gemma_sft_replay__10k__fastllm__shard_0_0.fast_llm_dataset_ns_7008_sl_32768_s_785963_shuffling.npy ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:0a52f9c807bdc37b3c62c6b8ffcb6a56db72b332f03027dfd48fed767a441c39
3
+ size 56548
26_09_08_sft_email_v4_v3/dataset_cache/__mnt__queue1__shruthan__data__gemma_sft_replay__10k__fastllm__shard_0_0.yaml ADDED
@@ -0,0 +1,20 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ config:
2
+ dataset_name: training
3
+ gpu: true
4
+ maximum_document_length: 32768
5
+ micro_batch_size: 32768
6
+ predicted_tokens: 1
7
+ shuffle: epoch
8
+ token_cumsum_rate: 10
9
+ truncate_documents: false
10
+ type: null
11
+ world_size: 32
12
+ dataset:
13
+ documents_per_epoch: 10000
14
+ name: __mnt__queue1__shruthan__data__gemma_sft_replay__10k__fastllm__shard_0_0.fast_llm_dataset
15
+ tokens_per_epoch: 67917533
16
+ num_samples: 7008
17
+ sequence_length: 32768
18
+ truncate_documents: false
19
+ unshuffled_epochs: 0
20
+ unshuffled_tokens: 0
26_09_08_sft_email_v4_v3/export/gemma4/140/chat_template.jinja ADDED
@@ -0,0 +1,390 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {#
2
+ Template: Google Gemma 4 Canonical Chat Template
3
+ Author: Google Gemma Engineering Team
4
+ Published: 2026-07-09
5
+ Context: Fixed tool-calling loops, turn closures, and thinking content-ordering.
6
+ #}
7
+ {%- macro format_parameters(properties, required, filter_keys=false) -%}
8
+ {%- set standard_keys = ['properties', 'required', 'nullable'] -%}
9
+ {%- set ns = namespace(found_first=false) -%}
10
+ {%- for key, value in properties | dictsort -%}
11
+ {%- set add_comma = false -%}
12
+ {%- if not filter_keys or key not in standard_keys -%}
13
+ {%- if ns.found_first %},{% endif -%}
14
+ {%- set ns.found_first = true -%}
15
+ {{ key }}:{
16
+ {%- if value['description'] -%}
17
+ description:<|"|>{{ value['description'] }}<|"|>
18
+ {%- set add_comma = true -%}
19
+ {%- endif -%}
20
+ {%- if value['type'] | upper == 'STRING' -%}
21
+ {%- if value['enum'] -%}
22
+ {%- if add_comma %},{%- else -%} {%- set add_comma = true -%} {% endif -%}
23
+ enum:{{ format_argument(value['enum']) }}
24
+ {%- endif -%}
25
+ {%- elif value['type'] | upper == 'ARRAY' -%}
26
+ {%- if value['items'] is mapping and value['items'] -%}
27
+ {%- if add_comma %},{%- else -%} {%- set add_comma = true -%} {% endif -%}
28
+ items:{
29
+ {%- set ns_items = namespace(found_first=false) -%}
30
+ {%- for item_key, item_value in value['items'] | dictsort -%}
31
+ {%- if item_value is not none -%}
32
+ {%- if ns_items.found_first %},{% endif -%}
33
+ {%- set ns_items.found_first = true -%}
34
+ {%- if item_key == 'properties' -%}
35
+ properties:{
36
+ {%- if item_value is mapping -%}
37
+ {{- format_parameters(item_value, value['items']['required'] | default([])) -}}
38
+ {%- endif -%}
39
+ }
40
+ {%- elif item_key == 'required' -%}
41
+ required:[
42
+ {%- for req_item in item_value -%}
43
+ <|"|>{{- req_item -}}<|"|>
44
+ {%- if not loop.last %},{% endif -%}
45
+ {%- endfor -%}
46
+ ]
47
+ {%- elif item_key == 'type' -%}
48
+ {%- if item_value is string -%}
49
+ type:{{ format_argument(item_value | upper) }}
50
+ {%- else -%}
51
+ type:{{ format_argument(item_value | map('upper') | list) }}
52
+ {%- endif -%}
53
+ {%- else -%}
54
+ {{ item_key }}:{{ format_argument(item_value) }}
55
+ {%- endif -%}
56
+ {%- endif -%}
57
+ {%- endfor -%}
58
+ }
59
+ {%- endif -%}
60
+ {%- endif -%}
61
+ {%- if value['nullable'] %}
62
+ {%- if add_comma %},{%- else -%} {%- set add_comma = true -%} {% endif -%}
63
+ nullable:true
64
+ {%- endif -%}
65
+ {%- if value['type'] | upper == 'OBJECT' -%}
66
+ {%- if value['properties'] is defined and value['properties'] is mapping -%}
67
+ {%- if add_comma %},{%- else -%} {%- set add_comma = true -%} {% endif -%}
68
+ properties:{
69
+ {{- format_parameters(value['properties'], value['required'] | default([])) -}}
70
+ }
71
+ {%- elif value is mapping -%}
72
+ {%- if add_comma %},{%- else -%} {%- set add_comma = true -%} {% endif -%}
73
+ properties:{
74
+ {{- format_parameters(value, value['required'] | default([]), filter_keys=true) -}}
75
+ }
76
+ {%- endif -%}
77
+ {%- if value['required'] -%}
78
+ {%- if add_comma %},{%- else -%} {%- set add_comma = true -%} {% endif -%}
79
+ required:[
80
+ {%- for item in value['required'] | default([]) -%}
81
+ <|"|>{{- item -}}<|"|>
82
+ {%- if not loop.last %},{% endif -%}
83
+ {%- endfor -%}
84
+ ]
85
+ {%- endif -%}
86
+ {%- endif -%}
87
+ {%- if add_comma %},{%- else -%} {%- set add_comma = true -%} {% endif -%}
88
+ type:<|"|>{{ value['type'] | upper }}<|"|>}
89
+ {%- endif -%}
90
+ {%- endfor -%}
91
+ {%- endmacro -%}
92
+ {%- macro format_function_declaration(tool_data) -%}
93
+ declaration:{{- tool_data['function']['name'] -}}{description:<|"|>{{- tool_data['function']['description'] -}}<|"|>
94
+ {%- set params = tool_data['function']['parameters'] -%}
95
+ {%- if params -%}
96
+ ,parameters:{
97
+ {%- if params['properties'] -%}
98
+ properties:{ {{- format_parameters(params['properties'], params['required']) -}} },
99
+ {%- endif -%}
100
+ {%- if params['required'] -%}
101
+ required:[
102
+ {%- for item in params['required'] -%}
103
+ <|"|>{{- item -}}<|"|>
104
+ {{- ',' if not loop.last -}}
105
+ {%- endfor -%}
106
+ ],
107
+ {%- endif -%}
108
+ {%- if params['type'] -%}
109
+ type:<|"|>{{- params['type'] | upper -}}<|"|>}
110
+ {%- endif -%}
111
+ {%- endif -%}
112
+ {%- if 'response' in tool_data['function'] -%}
113
+ {%- set response_declaration = tool_data['function']['response'] -%}
114
+ ,response:{
115
+ {%- if response_declaration['description'] -%}
116
+ description:<|"|>{{- response_declaration['description'] -}}<|"|>,
117
+ {%- endif -%}
118
+ {%- if response_declaration['type'] | upper == 'OBJECT' -%}
119
+ type:<|"|>{{- response_declaration['type'] | upper -}}<|"|>}
120
+ {%- endif -%}
121
+ {%- endif -%}
122
+ }
123
+ {%- endmacro -%}
124
+ {%- macro format_argument(argument, escape_keys=True) -%}
125
+ {%- if argument is none -%}
126
+ {{- 'null' -}}
127
+ {%- elif argument is string -%}
128
+ {{- '<|"|>' + argument + '<|"|>' -}}
129
+ {%- elif argument is boolean -%}
130
+ {{- 'true' if argument else 'false' -}}
131
+ {%- elif argument is mapping -%}
132
+ {{- '{' -}}
133
+ {%- set ns = namespace(found_first=false) -%}
134
+ {%- for key, value in argument | dictsort -%}
135
+ {%- if ns.found_first %},{% endif -%}
136
+ {%- set ns.found_first = true -%}
137
+ {%- if escape_keys -%}
138
+ {{- '<|"|>' + key + '<|"|>' -}}
139
+ {%- else -%}
140
+ {{- key -}}
141
+ {%- endif -%}
142
+ :{{- format_argument(value, escape_keys=escape_keys) -}}
143
+ {%- endfor -%}
144
+ {{- '}' -}}
145
+ {%- elif argument is sequence -%}
146
+ {{- '[' -}}
147
+ {%- for item in argument -%}
148
+ {{- format_argument(item, escape_keys=escape_keys) -}}
149
+ {%- if not loop.last %},{% endif -%}
150
+ {%- endfor -%}
151
+ {{- ']' -}}
152
+ {%- else -%}
153
+ {{- argument -}}
154
+ {%- endif -%}
155
+ {%- endmacro -%}
156
+ {%- macro strip_thinking(text) -%}
157
+ {%- set ns = namespace(result='') -%}
158
+ {%- for part in text.split('<channel|>') -%}
159
+ {%- if '<|channel>' in part -%}
160
+ {%- set ns.result = ns.result + part.split('<|channel>')[0] -%}
161
+ {%- else -%}
162
+ {%- set ns.result = ns.result + part -%}
163
+ {%- endif -%}
164
+ {%- endfor -%}
165
+ {{- ns.result | trim -}}
166
+ {%- endmacro -%}
167
+
168
+ {%- macro format_tool_response_block(tool_name, response) -%}
169
+ {{- '<|tool_response>' -}}
170
+ {%- if response is mapping -%}
171
+ {{- 'response:' + tool_name + '{' -}}
172
+ {%- for key, value in response | dictsort -%}
173
+ {{- key -}}:{{- format_argument(value, escape_keys=False) -}}
174
+ {%- if not loop.last %},{% endif -%}
175
+ {%- endfor -%}
176
+ {{- '}' -}}
177
+ {%- else -%}
178
+ {{- 'response:' + tool_name + '{value:' + format_argument(response, escape_keys=False) + '}' -}}
179
+ {%- endif -%}
180
+ {{- '<tool_response|>' -}}
181
+ {%- endmacro -%}
182
+
183
+ {#- ===== SETUP ===== -#}
184
+ {%- set ns = namespace(prev_message_type=None, prev_non_tool_role=None) -%}
185
+ {%- set loop_messages = messages -%}
186
+ {%- set enable_thinking = enable_thinking | default(false) -%}
187
+ {%- set preserve_thinking = preserve_thinking | default(false) -%}
188
+ {{- bos_token -}}
189
+ {#- Handle System/Tool Definitions Block -#}
190
+ {%- if enable_thinking or tools or (messages and messages[0]['role'] in ['system', 'developer']) -%}
191
+ {{- '<|turn>system\n' -}}
192
+ {#- Inject Thinking token at the very top of the FIRST system turn -#}
193
+ {%- if enable_thinking -%}
194
+ {{- '<|think|>\n' -}}
195
+ {%- set ns.prev_message_type = 'think' -%}
196
+ {%- endif -%}
197
+ {%- if messages and messages[0]['role'] in ['system', 'developer'] -%}
198
+ {%- if messages[0]['content'] is string -%}
199
+ {{- messages[0]['content'] | trim -}}
200
+ {%- elif messages[0]['content'] is sequence -%}
201
+ {%- for item in messages[0]['content'] -%}
202
+ {{- item['text'] | trim + ' '-}}
203
+ {%- endfor -%}
204
+ {%- endif -%}
205
+ {%- set loop_messages = messages[1:] -%}
206
+ {%- endif -%}
207
+ {%- if tools -%}
208
+ {%- for tool in tools %}
209
+ {{- '<|tool>' -}}
210
+ {{- format_function_declaration(tool) | trim -}}
211
+ {{- '<tool|>' -}}
212
+ {%- endfor %}
213
+ {%- set ns.prev_message_type = 'tool' -%}
214
+ {%- endif -%}
215
+ {{- '<turn|>\n' -}}
216
+ {%- endif %}
217
+
218
+ {#- Pre-scan: find last user message index for reasoning guard -#}
219
+ {%- set ns_turn = namespace(last_user_idx=-1) -%}
220
+ {%- for i in range(loop_messages | length) -%}
221
+ {%- if loop_messages[i]['role'] == 'user' -%}
222
+ {%- set ns_turn.last_user_idx = i -%}
223
+ {%- endif -%}
224
+ {%- endfor -%}
225
+
226
+ {#- Loop through messages -#}
227
+ {%- for message in loop_messages -%}
228
+ {%- if message['role'] != 'tool' -%}
229
+ {%- set ns.prev_message_type = None -%}
230
+ {%- set role = 'model' if message['role'] == 'assistant' else message['role'] -%}
231
+ {#- Detect continuation using tracked state — O(1) instead of O(n) backward scan -#}
232
+ {%- set continue_same_model_turn = (role == 'model' and ns.prev_non_tool_role == 'assistant') -%}
233
+ {%- if not continue_same_model_turn -%}
234
+ {{- '<|turn>' + role + '\n' }}
235
+
236
+ {%- endif -%}
237
+
238
+ {#- Render reasoning/reasoning_content as thinking channel -#}
239
+ {%- set thinking_text = message.get('reasoning') or message.get('reasoning_content') -%}
240
+ {%- set thinking_gate = (loop.index0 > ns_turn.last_user_idx) or (preserve_thinking and message.get('tool_calls')) -%}
241
+ {%- if thinking_text and thinking_gate -%}
242
+ {{- '<|channel>thought\n' + thinking_text + '\n<channel|>' -}}
243
+ {%- endif -%}
244
+
245
+ {%- if message.get('tool_calls') -%}
246
+ {%- for tool_call in message.get('tool_calls') -%}
247
+ {%- set function = tool_call['function'] -%}
248
+ {{- '<|tool_call>call:' + function['name'] + '{' -}}
249
+ {%- if function['arguments'] is mapping -%}
250
+ {%- set ns_args = namespace(found_first=false) -%}
251
+ {%- for key, value in function['arguments'] | dictsort -%}
252
+ {%- if ns_args.found_first %},{% endif -%}
253
+ {%- set ns_args.found_first = true -%}
254
+ {{- key -}}:{{- format_argument(value, escape_keys=False) -}}
255
+ {%- endfor -%}
256
+ {%- elif function['arguments'] is none -%}
257
+ {%- else -%}
258
+ {{- raise_exception(
259
+ "chat_template: tool_calls[].function.arguments must be a "
260
+ "JSON object (mapping), not a string. Deserialize arguments "
261
+ "before passing to the template."
262
+ ) -}}
263
+ {%- endif -%}
264
+ {{- '}<tool_call|>' -}}
265
+ {%- endfor -%}
266
+ {%- set ns.prev_message_type = 'tool_call' -%}
267
+ {%- endif -%}
268
+
269
+ {%- set ns_tr_out = namespace(flag=false) -%}
270
+ {%- if message.get('tool_responses') -%}
271
+ {#- Legacy: tool_responses embedded on the assistant message (Google/Gemma native) -#}
272
+ {%- for tool_response in message.get('tool_responses') -%}
273
+ {{- format_tool_response_block(tool_response['name'] | default('unknown', true), tool_response['response']) -}}
274
+ {%- set ns_tr_out.flag = true -%}
275
+ {%- set ns.prev_message_type = 'tool_response' -%}
276
+ {%- endfor -%}
277
+ {%- elif message.get('tool_calls') -%}
278
+ {#- OpenAI Chat Completions: forward-scan consecutive role:tool messages -#}
279
+ {%- set ns_tool_scan = namespace(stopped=false) -%}
280
+ {%- for k in range(loop.index0 + 1, loop_messages | length) -%}
281
+ {%- if ns_tool_scan.stopped -%}
282
+ {%- elif loop_messages[k]['role'] != 'tool' -%}
283
+ {%- set ns_tool_scan.stopped = true -%}
284
+ {%- else -%}
285
+ {%- set follow = loop_messages[k] -%}
286
+ {#- Resolve tool_call_id to function name -#}
287
+ {%- set ns_tname = namespace(name=follow.get('name') or 'unknown') -%}
288
+ {%- for tc in message.get('tool_calls') -%}
289
+ {%- if tc.get('id') == follow.get('tool_call_id') -%}
290
+ {%- set ns_tname.name = tc['function']['name'] -%}
291
+ {%- endif -%}
292
+ {%- endfor -%}
293
+ {#- Handle content as string or content-parts array -#}
294
+ {%- set tool_body = follow.get('content') -%}
295
+ {%- if tool_body is string -%}
296
+ {{- format_tool_response_block(ns_tname.name, tool_body) -}}
297
+ {%- elif tool_body is sequence and tool_body is not string -%}
298
+ {%- set ns_txt = namespace(s='') -%}
299
+ {%- for part in tool_body -%}
300
+ {%- if part.get('type') == 'text' -%}
301
+ {%- set ns_txt.s = ns_txt.s + (part.get('text') | default('')) -%}
302
+ {%- endif -%}
303
+ {%- endfor -%}
304
+ {{- format_tool_response_block(ns_tname.name, ns_txt.s) -}}
305
+ {%- for part in tool_body -%}
306
+ {%- if part.get('type') in ['image', 'image_url'] -%}
307
+ {{- '<|image|>' -}}
308
+ {%- elif part.get('type') in ['audio', 'input_audio'] -%}
309
+ {{- '<|audio|>' -}}
310
+ {%- elif part.get('type') == 'video' -%}
311
+ {{- '<|video|>' -}}
312
+ {%- endif -%}
313
+ {%- endfor -%}
314
+ {%- else -%}
315
+ {{- format_tool_response_block(ns_tname.name, tool_body) -}}
316
+ {%- endif -%}
317
+ {%- set ns_tr_out.flag = true -%}
318
+ {%- set ns.prev_message_type = 'tool_response' -%}
319
+ {%- endif -%}
320
+ {%- endfor -%}
321
+ {%- endif -%}
322
+
323
+ {%- set captured_content -%}
324
+ {%- if message.get('content') is string -%}
325
+ {%- if role == 'model' -%}
326
+ {{- strip_thinking(message['content']) -}}
327
+ {%- else -%}
328
+ {{- message['content'] | trim -}}
329
+ {%- endif -%}
330
+ {%- elif message.get('content') is sequence -%}
331
+ {%- for item in message['content'] -%}
332
+ {%- if item.get('type') == 'text' -%}
333
+ {%- if role == 'model' -%}
334
+ {{- strip_thinking(item['text']) -}}
335
+ {%- else -%}
336
+ {{- item['text'] | trim -}}
337
+ {%- endif -%}
338
+ {%- elif item.get('type') in ['image', 'image_url'] -%}
339
+ {{- '<|image|>' -}}
340
+ {%- elif item.get('type') in ['audio', 'input_audio'] -%}
341
+ {{- '<|audio|>' -}}
342
+ {%- elif item.get('type') == 'video' -%}
343
+ {{- '<|video|>' -}}
344
+ {%- endif -%}
345
+ {%- endfor -%}
346
+ {%- endif -%}
347
+ {%- endset -%}
348
+
349
+ {{- captured_content -}}
350
+ {%- set has_content = captured_content | trim | length > 0 -%}
351
+
352
+ {#- Forward-scan: find next non-tool message role for continuation detection -#}
353
+ {%- set next_nt = namespace(role=None, found=false) -%}
354
+ {%- for j in range(loop.index0 + 1, loop_messages | length) -%}
355
+ {%- if not next_nt.found -%}
356
+ {%- if loop_messages[j]['role'] != 'tool' -%}
357
+ {%- set next_nt.role = loop_messages[j]['role'] -%}
358
+ {%- set next_nt.found = true -%}
359
+ {%- endif -%}
360
+ {%- endif -%}
361
+ {%- endfor -%}
362
+
363
+ {%- set continues_into_next = (
364
+ role == 'model'
365
+ and next_nt.role == 'assistant'
366
+ and (not message.get('tool_calls') or ns_tr_out.flag)
367
+ ) -%}
368
+
369
+ {%- if ns.prev_message_type == 'tool_call' and not ns_tr_out.flag -%}
370
+ {{- '<|tool_response>' -}}
371
+ {%- elif continues_into_next -%}
372
+ {%- elif not (ns_tr_out.flag and not has_content and not next_nt.found) -%}
373
+ {{- '<turn|>\n' -}}
374
+ {%- endif -%}
375
+
376
+ {#- Track previous non-tool role for next iteration (avoids O(n) backward scan) -#}
377
+ {%- set ns.prev_non_tool_role = message['role'] -%}
378
+ {%- endif -%}
379
+ {%- endfor -%}
380
+
381
+ {%- if add_generation_prompt -%}
382
+ {%- if ns.prev_message_type != 'tool_response' and ns.prev_message_type != 'tool_call' -%}
383
+ {{- '<|turn>model\n' -}}
384
+ {%- if not enable_thinking -%}
385
+ {{- '<|channel>thought\n<channel|>' -}}
386
+ {%- endif -%}
387
+ {%- elif ns.prev_message_type == 'tool_response' and enable_thinking -%}
388
+ {{- '<|channel>thought\n' -}}
389
+ {%- endif -%}
390
+ {%- endif -%}
26_09_08_sft_email_v4_v3/export/gemma4/140/config.json ADDED
@@ -0,0 +1,83 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "attention_bias": false,
3
+ "attention_dropout": 0.0,
4
+ "attention_k_eq_v": true,
5
+ "bos_token_id": 2,
6
+ "dtype": "bfloat16",
7
+ "enable_moe_block": true,
8
+ "eos_token_id": 1,
9
+ "final_logit_softcapping": 30.0,
10
+ "global_head_dim": 512,
11
+ "head_dim": 256,
12
+ "hidden_activation": "gelu_pytorch_tanh",
13
+ "hidden_size": 2816,
14
+ "hidden_size_per_layer_input": 0,
15
+ "initializer_range": 0.02,
16
+ "intermediate_size": 2112,
17
+ "layer_types": [
18
+ "sliding_attention",
19
+ "sliding_attention",
20
+ "sliding_attention",
21
+ "sliding_attention",
22
+ "sliding_attention",
23
+ "full_attention",
24
+ "sliding_attention",
25
+ "sliding_attention",
26
+ "sliding_attention",
27
+ "sliding_attention",
28
+ "sliding_attention",
29
+ "full_attention",
30
+ "sliding_attention",
31
+ "sliding_attention",
32
+ "sliding_attention",
33
+ "sliding_attention",
34
+ "sliding_attention",
35
+ "full_attention",
36
+ "sliding_attention",
37
+ "sliding_attention",
38
+ "sliding_attention",
39
+ "sliding_attention",
40
+ "sliding_attention",
41
+ "full_attention",
42
+ "sliding_attention",
43
+ "sliding_attention",
44
+ "sliding_attention",
45
+ "sliding_attention",
46
+ "sliding_attention",
47
+ "full_attention"
48
+ ],
49
+ "max_position_embeddings": 262144,
50
+ "model_type": "gemma4_text",
51
+ "moe_intermediate_size": 704,
52
+ "num_attention_heads": 16,
53
+ "num_experts": 128,
54
+ "num_global_key_value_heads": 2,
55
+ "num_hidden_layers": 30,
56
+ "num_key_value_heads": 8,
57
+ "num_kv_shared_layers": 0,
58
+ "pad_token_id": 0,
59
+ "rms_norm_eps": 1e-06,
60
+ "rope_parameters": {
61
+ "full_attention": {
62
+ "partial_rotary_factor": 0.25,
63
+ "rope_theta": 1000000.0,
64
+ "rope_type": "proportional"
65
+ },
66
+ "sliding_attention": {
67
+ "rope_theta": 10000.0,
68
+ "rope_type": "default"
69
+ }
70
+ },
71
+ "sliding_window": 1024,
72
+ "tie_word_embeddings": true,
73
+ "top_k_experts": 8,
74
+ "use_bidirectional_attention": "vision",
75
+ "use_cache": true,
76
+ "use_double_wide_mlp": false,
77
+ "vocab_size": 262144,
78
+ "vocab_size_per_layer_input": 262144,
79
+ "architectures": [
80
+ "Gemma4ForCausalLM"
81
+ ],
82
+ "transformers_version": "5.5.0.dev0"
83
+ }
26_09_08_sft_email_v4_v3/export/gemma4/140/generation_config.json ADDED
@@ -0,0 +1,14 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "bos_token_id": 2,
3
+ "do_sample": true,
4
+ "eos_token_id": [
5
+ 1,
6
+ 106,
7
+ 50
8
+ ],
9
+ "pad_token_id": 0,
10
+ "temperature": 1.0,
11
+ "top_k": 64,
12
+ "top_p": 0.95,
13
+ "transformers_version": "5.5.0.dev0"
14
+ }
26_09_08_sft_email_v4_v3/export/gemma4/140/model.safetensors.index.json ADDED
@@ -0,0 +1,1053 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "metadata": {
3
+ "fast_llm_metadata": {
4
+ "fast_llm_version": "0.4.0",
5
+ "model": "gpt",
6
+ "format": "gemma4",
7
+ "config": {
8
+ "type": "gpt",
9
+ "base_model": {
10
+ "decoder": {
11
+ "type": "pattern",
12
+ "blocks": {
13
+ "full_attention": {
14
+ "type": "decoder",
15
+ "mixer": {
16
+ "type": "attention",
17
+ "rotary": {
18
+ "type": "proportional",
19
+ "theta": 1000000.0,
20
+ "partial_rotary_factor": 0.25
21
+ },
22
+ "heads": 16,
23
+ "head_groups": 2,
24
+ "head_size": 512,
25
+ "add_linear_biases": false,
26
+ "dropout": 0.0,
27
+ "softmax_scale_power": 0.0,
28
+ "implementation": "sdpa",
29
+ "query_norm": {
30
+ "type": "rms_norm",
31
+ "epsilon": 1e-06
32
+ },
33
+ "key_norm": {
34
+ "type": "rms_norm",
35
+ "epsilon": 1e-06
36
+ },
37
+ "value_norm": {
38
+ "type": "fixed_rms_norm",
39
+ "epsilon": 1e-06
40
+ },
41
+ "shared_key_value": true
42
+ },
43
+ "mlp": {
44
+ "type": "hybrid_moe",
45
+ "dense": {
46
+ "type": "mlp",
47
+ "pre_norm": {
48
+ "type": "rms_norm",
49
+ "epsilon": 1e-06
50
+ },
51
+ "post_norm": {
52
+ "type": "rms_norm",
53
+ "epsilon": 1e-06
54
+ },
55
+ "intermediate_size": 2112,
56
+ "add_linear_biases": false,
57
+ "gated": true,
58
+ "activation": "gelu",
59
+ "recompute_level": "full"
60
+ },
61
+ "routed": {
62
+ "type": "moe",
63
+ "pre_norm": {
64
+ "type": "rms_norm",
65
+ "epsilon": 1e-06
66
+ },
67
+ "post_norm": {
68
+ "type": "rms_norm",
69
+ "epsilon": 1e-06
70
+ },
71
+ "intermediate_size": 704,
72
+ "add_linear_biases": false,
73
+ "gated": true,
74
+ "activation": "gelu",
75
+ "recompute_level": "full",
76
+ "router_normalization": {
77
+ "type": "fixed_rms_norm",
78
+ "epsilon": 1e-06
79
+ },
80
+ "router_scale": {
81
+ "enabled": true
82
+ },
83
+ "router_input_scale": 0.018844459036110227,
84
+ "router_per_expert_scale": {
85
+ "enabled": true
86
+ },
87
+ "experts": 128,
88
+ "experts_per_token": 8,
89
+ "auxiliary_loss_coefficient": 0.0
90
+ }
91
+ },
92
+ "normalization": {
93
+ "type": "rms_norm",
94
+ "epsilon": 1e-06
95
+ },
96
+ "pre_mlp_normalization": {
97
+ "type": "none"
98
+ },
99
+ "post_mixer_normalization": {
100
+ "type": "rms_norm",
101
+ "epsilon": 1e-06
102
+ },
103
+ "post_mlp_normalization": {
104
+ "type": "rms_norm",
105
+ "epsilon": 1e-06
106
+ },
107
+ "output_scale": {
108
+ "lr_scale": 0.0,
109
+ "enabled": true
110
+ }
111
+ },
112
+ "sliding_attention": {
113
+ "type": "decoder",
114
+ "mixer": {
115
+ "type": "attention",
116
+ "rotary": {
117
+ "type": "default",
118
+ "theta": 10000.0
119
+ },
120
+ "heads": 16,
121
+ "head_groups": 8,
122
+ "head_size": 256,
123
+ "add_linear_biases": false,
124
+ "dropout": 0.0,
125
+ "window_size": 1024,
126
+ "softmax_scale_power": 0.0,
127
+ "implementation": "flash",
128
+ "query_norm": {
129
+ "type": "rms_norm",
130
+ "epsilon": 1e-06
131
+ },
132
+ "key_norm": {
133
+ "type": "rms_norm",
134
+ "epsilon": 1e-06
135
+ },
136
+ "value_norm": {
137
+ "type": "fixed_rms_norm",
138
+ "epsilon": 1e-06
139
+ }
140
+ },
141
+ "mlp": {
142
+ "type": "hybrid_moe",
143
+ "dense": {
144
+ "type": "mlp",
145
+ "pre_norm": {
146
+ "type": "rms_norm",
147
+ "epsilon": 1e-06
148
+ },
149
+ "post_norm": {
150
+ "type": "rms_norm",
151
+ "epsilon": 1e-06
152
+ },
153
+ "intermediate_size": 2112,
154
+ "add_linear_biases": false,
155
+ "gated": true,
156
+ "activation": "gelu",
157
+ "recompute_level": "full"
158
+ },
159
+ "routed": {
160
+ "type": "moe",
161
+ "pre_norm": {
162
+ "type": "rms_norm",
163
+ "epsilon": 1e-06
164
+ },
165
+ "post_norm": {
166
+ "type": "rms_norm",
167
+ "epsilon": 1e-06
168
+ },
169
+ "intermediate_size": 704,
170
+ "add_linear_biases": false,
171
+ "gated": true,
172
+ "activation": "gelu",
173
+ "recompute_level": "full",
174
+ "router_normalization": {
175
+ "type": "fixed_rms_norm",
176
+ "epsilon": 1e-06
177
+ },
178
+ "router_scale": {
179
+ "enabled": true
180
+ },
181
+ "router_input_scale": 0.018844459036110227,
182
+ "router_per_expert_scale": {
183
+ "enabled": true
184
+ },
185
+ "experts": 128,
186
+ "experts_per_token": 8,
187
+ "auxiliary_loss_coefficient": 0.0
188
+ }
189
+ },
190
+ "normalization": {
191
+ "type": "rms_norm",
192
+ "epsilon": 1e-06
193
+ },
194
+ "pre_mlp_normalization": {
195
+ "type": "none"
196
+ },
197
+ "post_mixer_normalization": {
198
+ "type": "rms_norm",
199
+ "epsilon": 1e-06
200
+ },
201
+ "post_mlp_normalization": {
202
+ "type": "rms_norm",
203
+ "epsilon": 1e-06
204
+ },
205
+ "output_scale": {
206
+ "lr_scale": 0.0,
207
+ "enabled": true
208
+ }
209
+ }
210
+ },
211
+ "pattern": [
212
+ "sliding_attention",
213
+ "sliding_attention",
214
+ "sliding_attention",
215
+ "sliding_attention",
216
+ "sliding_attention",
217
+ "full_attention",
218
+ "sliding_attention",
219
+ "sliding_attention",
220
+ "sliding_attention",
221
+ "sliding_attention",
222
+ "sliding_attention",
223
+ "full_attention",
224
+ "sliding_attention",
225
+ "sliding_attention",
226
+ "sliding_attention",
227
+ "sliding_attention",
228
+ "sliding_attention",
229
+ "full_attention",
230
+ "sliding_attention",
231
+ "sliding_attention",
232
+ "sliding_attention",
233
+ "sliding_attention",
234
+ "sliding_attention",
235
+ "full_attention",
236
+ "sliding_attention",
237
+ "sliding_attention",
238
+ "sliding_attention",
239
+ "sliding_attention",
240
+ "sliding_attention",
241
+ "full_attention"
242
+ ],
243
+ "num_blocks": 30
244
+ },
245
+ "embeddings": {
246
+ "vocab_size": 262144,
247
+ "vocab_parallel": false,
248
+ "embedding_scale": 53.0659966456864
249
+ },
250
+ "head": {
251
+ "normalization": {
252
+ "type": "rms_norm",
253
+ "epsilon": 1e-06
254
+ },
255
+ "cross_entropy_splits": 8,
256
+ "final_logit_softcap": 30.0
257
+ },
258
+ "tied_embedding_weight": true,
259
+ "hidden_size": 2816,
260
+ "peft": {
261
+ "type": "none"
262
+ }
263
+ },
264
+ "multi_stage": {
265
+ "zero_stage": 3
266
+ },
267
+ "distributed": {
268
+ "tensor_parallel": 2,
269
+ "sequence_tensor_parallel": true,
270
+ "sequence_data_parallel": 4,
271
+ "world_size": 32,
272
+ "rank": 0,
273
+ "local_world_size": 8,
274
+ "timeout": 3600.0,
275
+ "compute_dtype": "bfloat16"
276
+ }
277
+ },
278
+ "shards": [
279
+ "weights"
280
+ ],
281
+ "metadata": {
282
+ "optimizer": {
283
+ "current_step": 140,
284
+ "grad_scaler": {
285
+ "type": "NoopGradScaler"
286
+ }
287
+ },
288
+ "completed_steps": 140,
289
+ "metrics": {
290
+ "training": {
291
+ "batch_size": 2097152,
292
+ "load_balancing_loss": 828.73388671875,
293
+ "lm_head_loss": 0.11952575296163559,
294
+ "total_steps": 210,
295
+ "completed_steps": 140,
296
+ "consumed_tokens": 293601280,
297
+ "percent_done": 66.66666666666667,
298
+ "step_time_ms": 26989.178344607353,
299
+ "step_time_average_ms": 30017.633229094958,
300
+ "remaining_time": 2101.234326036647,
301
+ "completion_time": 1788873030.2734404,
302
+ "skipped_iters": 0,
303
+ "nan_iters": 0,
304
+ "model_tflops": 62205.328686694214,
305
+ "hardware_tflops": 77174.52198293927,
306
+ "tokens_per_sec_per_gpu": 2428.232499826902,
307
+ "run": 0,
308
+ "grad_norm": 2.5687570571899414,
309
+ "learning_rate": 5.3159155930020984e-06,
310
+ "loss_scale": 1.0,
311
+ "reserved": 55562.0,
312
+ "allocated": 21478.49755859375,
313
+ "max_allocated": 54799.8583984375,
314
+ "max_reserved": 55562.0,
315
+ "global_max_reserved": 74782.0
316
+ }
317
+ }
318
+ }
319
+ },
320
+ "model_config": {
321
+ "vocab_size": 262144,
322
+ "num_attention_heads": 16,
323
+ "num_key_value_heads": 8,
324
+ "head_dim": 256,
325
+ "global_head_dim": 512,
326
+ "num_global_key_value_heads": 2,
327
+ "attention_bias": false,
328
+ "attention_dropout": 0.0,
329
+ "sliding_window": 1024,
330
+ "rms_norm_eps": 1e-06,
331
+ "attention_k_eq_v": true,
332
+ "rope_parameters": {
333
+ "sliding_attention": {
334
+ "rope_type": "default",
335
+ "rope_theta": 10000.0
336
+ },
337
+ "full_attention": {
338
+ "rope_type": "proportional",
339
+ "rope_theta": 1000000.0,
340
+ "partial_rotary_factor": 0.25
341
+ }
342
+ },
343
+ "intermediate_size": 2112,
344
+ "hidden_activation": "gelu_pytorch_tanh",
345
+ "num_experts": 128,
346
+ "top_k_experts": 8,
347
+ "moe_intermediate_size": 704,
348
+ "enable_moe_block": true,
349
+ "num_hidden_layers": 30,
350
+ "layer_types": [
351
+ "sliding_attention",
352
+ "sliding_attention",
353
+ "sliding_attention",
354
+ "sliding_attention",
355
+ "sliding_attention",
356
+ "full_attention",
357
+ "sliding_attention",
358
+ "sliding_attention",
359
+ "sliding_attention",
360
+ "sliding_attention",
361
+ "sliding_attention",
362
+ "full_attention",
363
+ "sliding_attention",
364
+ "sliding_attention",
365
+ "sliding_attention",
366
+ "sliding_attention",
367
+ "sliding_attention",
368
+ "full_attention",
369
+ "sliding_attention",
370
+ "sliding_attention",
371
+ "sliding_attention",
372
+ "sliding_attention",
373
+ "sliding_attention",
374
+ "full_attention",
375
+ "sliding_attention",
376
+ "sliding_attention",
377
+ "sliding_attention",
378
+ "sliding_attention",
379
+ "sliding_attention",
380
+ "full_attention"
381
+ ],
382
+ "final_logit_softcapping": 30.0,
383
+ "tie_word_embeddings": true,
384
+ "hidden_size": 2816,
385
+ "hidden_size_per_layer_input": 0,
386
+ "use_bidirectional_attention": null,
387
+ "model_type": "gemma4_text",
388
+ "architectures": [
389
+ "Gemma4ForCausalLM"
390
+ ]
391
+ },
392
+ "format": "pt"
393
+ },
394
+ "weight_map": {
395
+ "model.embed_tokens.weight": "model_0.safetensors",
396
+ "model.layers.0.input_layernorm.weight": "model_0.safetensors",
397
+ "model.layers.0.post_attention_layernorm.weight": "model_0.safetensors",
398
+ "model.layers.0.post_feedforward_layernorm.weight": "model_0.safetensors",
399
+ "model.layers.0.self_attn.q_norm.weight": "model_0.safetensors",
400
+ "model.layers.0.self_attn.k_norm.weight": "model_0.safetensors",
401
+ "model.layers.0.pre_feedforward_layernorm.weight": "model_0.safetensors",
402
+ "model.layers.0.post_feedforward_layernorm_1.weight": "model_0.safetensors",
403
+ "model.layers.0.router.scale": "model_0.safetensors",
404
+ "model.layers.0.router.per_expert_scale": "model_0.safetensors",
405
+ "model.layers.0.pre_feedforward_layernorm_2.weight": "model_0.safetensors",
406
+ "model.layers.0.post_feedforward_layernorm_2.weight": "model_0.safetensors",
407
+ "model.layers.0.router.proj.weight": "model_0.safetensors",
408
+ "model.layers.0.self_attn.q_proj.weight": "model_0.safetensors",
409
+ "model.layers.0.self_attn.k_proj.weight": "model_0.safetensors",
410
+ "model.layers.0.self_attn.v_proj.weight": "model_0.safetensors",
411
+ "model.layers.0.self_attn.o_proj.weight": "model_0.safetensors",
412
+ "model.layers.0.mlp.gate_proj.weight": "model_0.safetensors",
413
+ "model.layers.0.mlp.up_proj.weight": "model_0.safetensors",
414
+ "model.layers.0.mlp.down_proj.weight": "model_0.safetensors",
415
+ "model.layers.0.experts.gate_up_proj": "model_0.safetensors",
416
+ "model.layers.0.experts.down_proj": "model_0.safetensors",
417
+ "model.layers.0.layer_scalar": "model_0.safetensors",
418
+ "model.layers.1.input_layernorm.weight": "model_0.safetensors",
419
+ "model.layers.1.post_attention_layernorm.weight": "model_0.safetensors",
420
+ "model.layers.1.post_feedforward_layernorm.weight": "model_0.safetensors",
421
+ "model.layers.1.self_attn.q_norm.weight": "model_0.safetensors",
422
+ "model.layers.1.self_attn.k_norm.weight": "model_0.safetensors",
423
+ "model.layers.1.pre_feedforward_layernorm.weight": "model_0.safetensors",
424
+ "model.layers.1.post_feedforward_layernorm_1.weight": "model_0.safetensors",
425
+ "model.layers.1.router.scale": "model_0.safetensors",
426
+ "model.layers.1.router.per_expert_scale": "model_0.safetensors",
427
+ "model.layers.1.pre_feedforward_layernorm_2.weight": "model_0.safetensors",
428
+ "model.layers.1.post_feedforward_layernorm_2.weight": "model_0.safetensors",
429
+ "model.layers.1.router.proj.weight": "model_0.safetensors",
430
+ "model.layers.1.self_attn.q_proj.weight": "model_0.safetensors",
431
+ "model.layers.1.self_attn.k_proj.weight": "model_0.safetensors",
432
+ "model.layers.1.self_attn.v_proj.weight": "model_0.safetensors",
433
+ "model.layers.1.self_attn.o_proj.weight": "model_0.safetensors",
434
+ "model.layers.1.mlp.gate_proj.weight": "model_0.safetensors",
435
+ "model.layers.1.mlp.up_proj.weight": "model_0.safetensors",
436
+ "model.layers.1.mlp.down_proj.weight": "model_0.safetensors",
437
+ "model.layers.1.experts.gate_up_proj": "model_0.safetensors",
438
+ "model.layers.1.experts.down_proj": "model_0.safetensors",
439
+ "model.layers.1.layer_scalar": "model_0.safetensors",
440
+ "model.layers.2.input_layernorm.weight": "model_0.safetensors",
441
+ "model.layers.2.post_attention_layernorm.weight": "model_0.safetensors",
442
+ "model.layers.2.post_feedforward_layernorm.weight": "model_0.safetensors",
443
+ "model.layers.2.self_attn.q_norm.weight": "model_0.safetensors",
444
+ "model.layers.2.self_attn.k_norm.weight": "model_0.safetensors",
445
+ "model.layers.2.pre_feedforward_layernorm.weight": "model_0.safetensors",
446
+ "model.layers.2.post_feedforward_layernorm_1.weight": "model_0.safetensors",
447
+ "model.layers.2.router.scale": "model_0.safetensors",
448
+ "model.layers.2.router.per_expert_scale": "model_0.safetensors",
449
+ "model.layers.2.pre_feedforward_layernorm_2.weight": "model_0.safetensors",
450
+ "model.layers.2.post_feedforward_layernorm_2.weight": "model_0.safetensors",
451
+ "model.layers.2.router.proj.weight": "model_0.safetensors",
452
+ "model.layers.2.self_attn.q_proj.weight": "model_0.safetensors",
453
+ "model.layers.2.self_attn.k_proj.weight": "model_0.safetensors",
454
+ "model.layers.2.self_attn.v_proj.weight": "model_0.safetensors",
455
+ "model.layers.2.self_attn.o_proj.weight": "model_0.safetensors",
456
+ "model.layers.2.mlp.gate_proj.weight": "model_0.safetensors",
457
+ "model.layers.2.mlp.up_proj.weight": "model_0.safetensors",
458
+ "model.layers.2.mlp.down_proj.weight": "model_0.safetensors",
459
+ "model.layers.2.experts.gate_up_proj": "model_0.safetensors",
460
+ "model.layers.2.experts.down_proj": "model_0.safetensors",
461
+ "model.layers.2.layer_scalar": "model_0.safetensors",
462
+ "model.layers.3.input_layernorm.weight": "model_0.safetensors",
463
+ "model.layers.3.post_attention_layernorm.weight": "model_0.safetensors",
464
+ "model.layers.3.post_feedforward_layernorm.weight": "model_0.safetensors",
465
+ "model.layers.3.self_attn.q_norm.weight": "model_0.safetensors",
466
+ "model.layers.3.self_attn.k_norm.weight": "model_0.safetensors",
467
+ "model.layers.3.pre_feedforward_layernorm.weight": "model_0.safetensors",
468
+ "model.layers.3.post_feedforward_layernorm_1.weight": "model_0.safetensors",
469
+ "model.layers.3.router.scale": "model_0.safetensors",
470
+ "model.layers.3.router.per_expert_scale": "model_0.safetensors",
471
+ "model.layers.3.pre_feedforward_layernorm_2.weight": "model_0.safetensors",
472
+ "model.layers.3.post_feedforward_layernorm_2.weight": "model_0.safetensors",
473
+ "model.layers.3.router.proj.weight": "model_0.safetensors",
474
+ "model.layers.3.self_attn.q_proj.weight": "model_0.safetensors",
475
+ "model.layers.3.self_attn.k_proj.weight": "model_0.safetensors",
476
+ "model.layers.3.self_attn.v_proj.weight": "model_0.safetensors",
477
+ "model.layers.3.self_attn.o_proj.weight": "model_0.safetensors",
478
+ "model.layers.3.mlp.gate_proj.weight": "model_0.safetensors",
479
+ "model.layers.3.mlp.up_proj.weight": "model_0.safetensors",
480
+ "model.layers.3.mlp.down_proj.weight": "model_0.safetensors",
481
+ "model.layers.3.experts.gate_up_proj": "model_0.safetensors",
482
+ "model.layers.3.experts.down_proj": "model_0.safetensors",
483
+ "model.layers.3.layer_scalar": "model_0.safetensors",
484
+ "model.layers.4.input_layernorm.weight": "model_0.safetensors",
485
+ "model.layers.4.post_attention_layernorm.weight": "model_0.safetensors",
486
+ "model.layers.4.post_feedforward_layernorm.weight": "model_0.safetensors",
487
+ "model.layers.4.self_attn.q_norm.weight": "model_0.safetensors",
488
+ "model.layers.4.self_attn.k_norm.weight": "model_0.safetensors",
489
+ "model.layers.4.pre_feedforward_layernorm.weight": "model_0.safetensors",
490
+ "model.layers.4.post_feedforward_layernorm_1.weight": "model_0.safetensors",
491
+ "model.layers.4.router.scale": "model_0.safetensors",
492
+ "model.layers.4.router.per_expert_scale": "model_0.safetensors",
493
+ "model.layers.4.pre_feedforward_layernorm_2.weight": "model_0.safetensors",
494
+ "model.layers.4.post_feedforward_layernorm_2.weight": "model_0.safetensors",
495
+ "model.layers.4.router.proj.weight": "model_0.safetensors",
496
+ "model.layers.4.self_attn.q_proj.weight": "model_0.safetensors",
497
+ "model.layers.4.self_attn.k_proj.weight": "model_0.safetensors",
498
+ "model.layers.4.self_attn.v_proj.weight": "model_0.safetensors",
499
+ "model.layers.4.self_attn.o_proj.weight": "model_0.safetensors",
500
+ "model.layers.4.mlp.gate_proj.weight": "model_0.safetensors",
501
+ "model.layers.4.mlp.up_proj.weight": "model_0.safetensors",
502
+ "model.layers.4.mlp.down_proj.weight": "model_0.safetensors",
503
+ "model.layers.4.experts.gate_up_proj": "model_0.safetensors",
504
+ "model.layers.4.experts.down_proj": "model_1.safetensors",
505
+ "model.layers.4.layer_scalar": "model_1.safetensors",
506
+ "model.layers.5.input_layernorm.weight": "model_1.safetensors",
507
+ "model.layers.5.post_attention_layernorm.weight": "model_1.safetensors",
508
+ "model.layers.5.post_feedforward_layernorm.weight": "model_1.safetensors",
509
+ "model.layers.5.self_attn.q_norm.weight": "model_1.safetensors",
510
+ "model.layers.5.self_attn.k_norm.weight": "model_1.safetensors",
511
+ "model.layers.5.pre_feedforward_layernorm.weight": "model_1.safetensors",
512
+ "model.layers.5.post_feedforward_layernorm_1.weight": "model_1.safetensors",
513
+ "model.layers.5.router.scale": "model_1.safetensors",
514
+ "model.layers.5.router.per_expert_scale": "model_1.safetensors",
515
+ "model.layers.5.pre_feedforward_layernorm_2.weight": "model_1.safetensors",
516
+ "model.layers.5.post_feedforward_layernorm_2.weight": "model_1.safetensors",
517
+ "model.layers.5.router.proj.weight": "model_1.safetensors",
518
+ "model.layers.5.self_attn.q_proj.weight": "model_1.safetensors",
519
+ "model.layers.5.self_attn.k_proj.weight": "model_1.safetensors",
520
+ "model.layers.5.self_attn.o_proj.weight": "model_1.safetensors",
521
+ "model.layers.5.mlp.gate_proj.weight": "model_1.safetensors",
522
+ "model.layers.5.mlp.up_proj.weight": "model_1.safetensors",
523
+ "model.layers.5.mlp.down_proj.weight": "model_1.safetensors",
524
+ "model.layers.5.experts.gate_up_proj": "model_1.safetensors",
525
+ "model.layers.5.experts.down_proj": "model_1.safetensors",
526
+ "model.layers.5.layer_scalar": "model_1.safetensors",
527
+ "model.layers.6.input_layernorm.weight": "model_1.safetensors",
528
+ "model.layers.6.post_attention_layernorm.weight": "model_1.safetensors",
529
+ "model.layers.6.post_feedforward_layernorm.weight": "model_1.safetensors",
530
+ "model.layers.6.self_attn.q_norm.weight": "model_1.safetensors",
531
+ "model.layers.6.self_attn.k_norm.weight": "model_1.safetensors",
532
+ "model.layers.6.pre_feedforward_layernorm.weight": "model_1.safetensors",
533
+ "model.layers.6.post_feedforward_layernorm_1.weight": "model_1.safetensors",
534
+ "model.layers.6.router.scale": "model_1.safetensors",
535
+ "model.layers.6.router.per_expert_scale": "model_1.safetensors",
536
+ "model.layers.6.pre_feedforward_layernorm_2.weight": "model_1.safetensors",
537
+ "model.layers.6.post_feedforward_layernorm_2.weight": "model_1.safetensors",
538
+ "model.layers.6.router.proj.weight": "model_1.safetensors",
539
+ "model.layers.6.self_attn.q_proj.weight": "model_1.safetensors",
540
+ "model.layers.6.self_attn.k_proj.weight": "model_1.safetensors",
541
+ "model.layers.6.self_attn.v_proj.weight": "model_1.safetensors",
542
+ "model.layers.6.self_attn.o_proj.weight": "model_1.safetensors",
543
+ "model.layers.6.mlp.gate_proj.weight": "model_1.safetensors",
544
+ "model.layers.6.mlp.up_proj.weight": "model_1.safetensors",
545
+ "model.layers.6.mlp.down_proj.weight": "model_1.safetensors",
546
+ "model.layers.6.experts.gate_up_proj": "model_1.safetensors",
547
+ "model.layers.6.experts.down_proj": "model_1.safetensors",
548
+ "model.layers.6.layer_scalar": "model_1.safetensors",
549
+ "model.layers.7.input_layernorm.weight": "model_1.safetensors",
550
+ "model.layers.7.post_attention_layernorm.weight": "model_1.safetensors",
551
+ "model.layers.7.post_feedforward_layernorm.weight": "model_1.safetensors",
552
+ "model.layers.7.self_attn.q_norm.weight": "model_1.safetensors",
553
+ "model.layers.7.self_attn.k_norm.weight": "model_1.safetensors",
554
+ "model.layers.7.pre_feedforward_layernorm.weight": "model_1.safetensors",
555
+ "model.layers.7.post_feedforward_layernorm_1.weight": "model_1.safetensors",
556
+ "model.layers.7.router.scale": "model_1.safetensors",
557
+ "model.layers.7.router.per_expert_scale": "model_1.safetensors",
558
+ "model.layers.7.pre_feedforward_layernorm_2.weight": "model_1.safetensors",
559
+ "model.layers.7.post_feedforward_layernorm_2.weight": "model_1.safetensors",
560
+ "model.layers.7.router.proj.weight": "model_1.safetensors",
561
+ "model.layers.7.self_attn.q_proj.weight": "model_1.safetensors",
562
+ "model.layers.7.self_attn.k_proj.weight": "model_1.safetensors",
563
+ "model.layers.7.self_attn.v_proj.weight": "model_1.safetensors",
564
+ "model.layers.7.self_attn.o_proj.weight": "model_1.safetensors",
565
+ "model.layers.7.mlp.gate_proj.weight": "model_1.safetensors",
566
+ "model.layers.7.mlp.up_proj.weight": "model_1.safetensors",
567
+ "model.layers.7.mlp.down_proj.weight": "model_1.safetensors",
568
+ "model.layers.7.experts.gate_up_proj": "model_1.safetensors",
569
+ "model.layers.7.experts.down_proj": "model_1.safetensors",
570
+ "model.layers.7.layer_scalar": "model_1.safetensors",
571
+ "model.layers.8.input_layernorm.weight": "model_1.safetensors",
572
+ "model.layers.8.post_attention_layernorm.weight": "model_1.safetensors",
573
+ "model.layers.8.post_feedforward_layernorm.weight": "model_1.safetensors",
574
+ "model.layers.8.self_attn.q_norm.weight": "model_1.safetensors",
575
+ "model.layers.8.self_attn.k_norm.weight": "model_1.safetensors",
576
+ "model.layers.8.pre_feedforward_layernorm.weight": "model_1.safetensors",
577
+ "model.layers.8.post_feedforward_layernorm_1.weight": "model_1.safetensors",
578
+ "model.layers.8.router.scale": "model_1.safetensors",
579
+ "model.layers.8.router.per_expert_scale": "model_1.safetensors",
580
+ "model.layers.8.pre_feedforward_layernorm_2.weight": "model_1.safetensors",
581
+ "model.layers.8.post_feedforward_layernorm_2.weight": "model_1.safetensors",
582
+ "model.layers.8.router.proj.weight": "model_1.safetensors",
583
+ "model.layers.8.self_attn.q_proj.weight": "model_1.safetensors",
584
+ "model.layers.8.self_attn.k_proj.weight": "model_1.safetensors",
585
+ "model.layers.8.self_attn.v_proj.weight": "model_1.safetensors",
586
+ "model.layers.8.self_attn.o_proj.weight": "model_1.safetensors",
587
+ "model.layers.8.mlp.gate_proj.weight": "model_1.safetensors",
588
+ "model.layers.8.mlp.up_proj.weight": "model_1.safetensors",
589
+ "model.layers.8.mlp.down_proj.weight": "model_1.safetensors",
590
+ "model.layers.8.experts.gate_up_proj": "model_1.safetensors",
591
+ "model.layers.8.experts.down_proj": "model_1.safetensors",
592
+ "model.layers.8.layer_scalar": "model_1.safetensors",
593
+ "model.layers.9.input_layernorm.weight": "model_1.safetensors",
594
+ "model.layers.9.post_attention_layernorm.weight": "model_1.safetensors",
595
+ "model.layers.9.post_feedforward_layernorm.weight": "model_1.safetensors",
596
+ "model.layers.9.self_attn.q_norm.weight": "model_1.safetensors",
597
+ "model.layers.9.self_attn.k_norm.weight": "model_1.safetensors",
598
+ "model.layers.9.pre_feedforward_layernorm.weight": "model_1.safetensors",
599
+ "model.layers.9.post_feedforward_layernorm_1.weight": "model_1.safetensors",
600
+ "model.layers.9.router.scale": "model_1.safetensors",
601
+ "model.layers.9.router.per_expert_scale": "model_1.safetensors",
602
+ "model.layers.9.pre_feedforward_layernorm_2.weight": "model_1.safetensors",
603
+ "model.layers.9.post_feedforward_layernorm_2.weight": "model_1.safetensors",
604
+ "model.layers.9.router.proj.weight": "model_1.safetensors",
605
+ "model.layers.9.self_attn.q_proj.weight": "model_1.safetensors",
606
+ "model.layers.9.self_attn.k_proj.weight": "model_1.safetensors",
607
+ "model.layers.9.self_attn.v_proj.weight": "model_1.safetensors",
608
+ "model.layers.9.self_attn.o_proj.weight": "model_1.safetensors",
609
+ "model.layers.9.mlp.gate_proj.weight": "model_1.safetensors",
610
+ "model.layers.9.mlp.up_proj.weight": "model_1.safetensors",
611
+ "model.layers.9.mlp.down_proj.weight": "model_1.safetensors",
612
+ "model.layers.9.experts.gate_up_proj": "model_1.safetensors",
613
+ "model.layers.9.experts.down_proj": "model_1.safetensors",
614
+ "model.layers.9.layer_scalar": "model_2.safetensors",
615
+ "model.layers.10.input_layernorm.weight": "model_2.safetensors",
616
+ "model.layers.10.post_attention_layernorm.weight": "model_2.safetensors",
617
+ "model.layers.10.post_feedforward_layernorm.weight": "model_2.safetensors",
618
+ "model.layers.10.self_attn.q_norm.weight": "model_2.safetensors",
619
+ "model.layers.10.self_attn.k_norm.weight": "model_2.safetensors",
620
+ "model.layers.10.pre_feedforward_layernorm.weight": "model_2.safetensors",
621
+ "model.layers.10.post_feedforward_layernorm_1.weight": "model_2.safetensors",
622
+ "model.layers.10.router.scale": "model_2.safetensors",
623
+ "model.layers.10.router.per_expert_scale": "model_2.safetensors",
624
+ "model.layers.10.pre_feedforward_layernorm_2.weight": "model_2.safetensors",
625
+ "model.layers.10.post_feedforward_layernorm_2.weight": "model_2.safetensors",
626
+ "model.layers.10.router.proj.weight": "model_2.safetensors",
627
+ "model.layers.10.self_attn.q_proj.weight": "model_2.safetensors",
628
+ "model.layers.10.self_attn.k_proj.weight": "model_2.safetensors",
629
+ "model.layers.10.self_attn.v_proj.weight": "model_2.safetensors",
630
+ "model.layers.10.self_attn.o_proj.weight": "model_2.safetensors",
631
+ "model.layers.10.mlp.gate_proj.weight": "model_2.safetensors",
632
+ "model.layers.10.mlp.up_proj.weight": "model_2.safetensors",
633
+ "model.layers.10.mlp.down_proj.weight": "model_2.safetensors",
634
+ "model.layers.10.experts.gate_up_proj": "model_2.safetensors",
635
+ "model.layers.10.experts.down_proj": "model_2.safetensors",
636
+ "model.layers.10.layer_scalar": "model_2.safetensors",
637
+ "model.layers.11.input_layernorm.weight": "model_2.safetensors",
638
+ "model.layers.11.post_attention_layernorm.weight": "model_2.safetensors",
639
+ "model.layers.11.post_feedforward_layernorm.weight": "model_2.safetensors",
640
+ "model.layers.11.self_attn.q_norm.weight": "model_2.safetensors",
641
+ "model.layers.11.self_attn.k_norm.weight": "model_2.safetensors",
642
+ "model.layers.11.pre_feedforward_layernorm.weight": "model_2.safetensors",
643
+ "model.layers.11.post_feedforward_layernorm_1.weight": "model_2.safetensors",
644
+ "model.layers.11.router.scale": "model_2.safetensors",
645
+ "model.layers.11.router.per_expert_scale": "model_2.safetensors",
646
+ "model.layers.11.pre_feedforward_layernorm_2.weight": "model_2.safetensors",
647
+ "model.layers.11.post_feedforward_layernorm_2.weight": "model_2.safetensors",
648
+ "model.layers.11.router.proj.weight": "model_2.safetensors",
649
+ "model.layers.11.self_attn.q_proj.weight": "model_2.safetensors",
650
+ "model.layers.11.self_attn.k_proj.weight": "model_2.safetensors",
651
+ "model.layers.11.self_attn.o_proj.weight": "model_2.safetensors",
652
+ "model.layers.11.mlp.gate_proj.weight": "model_2.safetensors",
653
+ "model.layers.11.mlp.up_proj.weight": "model_2.safetensors",
654
+ "model.layers.11.mlp.down_proj.weight": "model_2.safetensors",
655
+ "model.layers.11.experts.gate_up_proj": "model_2.safetensors",
656
+ "model.layers.11.experts.down_proj": "model_2.safetensors",
657
+ "model.layers.11.layer_scalar": "model_2.safetensors",
658
+ "model.layers.12.input_layernorm.weight": "model_2.safetensors",
659
+ "model.layers.12.post_attention_layernorm.weight": "model_2.safetensors",
660
+ "model.layers.12.post_feedforward_layernorm.weight": "model_2.safetensors",
661
+ "model.layers.12.self_attn.q_norm.weight": "model_2.safetensors",
662
+ "model.layers.12.self_attn.k_norm.weight": "model_2.safetensors",
663
+ "model.layers.12.pre_feedforward_layernorm.weight": "model_2.safetensors",
664
+ "model.layers.12.post_feedforward_layernorm_1.weight": "model_2.safetensors",
665
+ "model.layers.12.router.scale": "model_2.safetensors",
666
+ "model.layers.12.router.per_expert_scale": "model_2.safetensors",
667
+ "model.layers.12.pre_feedforward_layernorm_2.weight": "model_2.safetensors",
668
+ "model.layers.12.post_feedforward_layernorm_2.weight": "model_2.safetensors",
669
+ "model.layers.12.router.proj.weight": "model_2.safetensors",
670
+ "model.layers.12.self_attn.q_proj.weight": "model_2.safetensors",
671
+ "model.layers.12.self_attn.k_proj.weight": "model_2.safetensors",
672
+ "model.layers.12.self_attn.v_proj.weight": "model_2.safetensors",
673
+ "model.layers.12.self_attn.o_proj.weight": "model_2.safetensors",
674
+ "model.layers.12.mlp.gate_proj.weight": "model_2.safetensors",
675
+ "model.layers.12.mlp.up_proj.weight": "model_2.safetensors",
676
+ "model.layers.12.mlp.down_proj.weight": "model_2.safetensors",
677
+ "model.layers.12.experts.gate_up_proj": "model_2.safetensors",
678
+ "model.layers.12.experts.down_proj": "model_2.safetensors",
679
+ "model.layers.12.layer_scalar": "model_2.safetensors",
680
+ "model.layers.13.input_layernorm.weight": "model_2.safetensors",
681
+ "model.layers.13.post_attention_layernorm.weight": "model_2.safetensors",
682
+ "model.layers.13.post_feedforward_layernorm.weight": "model_2.safetensors",
683
+ "model.layers.13.self_attn.q_norm.weight": "model_2.safetensors",
684
+ "model.layers.13.self_attn.k_norm.weight": "model_2.safetensors",
685
+ "model.layers.13.pre_feedforward_layernorm.weight": "model_2.safetensors",
686
+ "model.layers.13.post_feedforward_layernorm_1.weight": "model_2.safetensors",
687
+ "model.layers.13.router.scale": "model_2.safetensors",
688
+ "model.layers.13.router.per_expert_scale": "model_2.safetensors",
689
+ "model.layers.13.pre_feedforward_layernorm_2.weight": "model_2.safetensors",
690
+ "model.layers.13.post_feedforward_layernorm_2.weight": "model_2.safetensors",
691
+ "model.layers.13.router.proj.weight": "model_2.safetensors",
692
+ "model.layers.13.self_attn.q_proj.weight": "model_2.safetensors",
693
+ "model.layers.13.self_attn.k_proj.weight": "model_2.safetensors",
694
+ "model.layers.13.self_attn.v_proj.weight": "model_2.safetensors",
695
+ "model.layers.13.self_attn.o_proj.weight": "model_2.safetensors",
696
+ "model.layers.13.mlp.gate_proj.weight": "model_2.safetensors",
697
+ "model.layers.13.mlp.up_proj.weight": "model_2.safetensors",
698
+ "model.layers.13.mlp.down_proj.weight": "model_2.safetensors",
699
+ "model.layers.13.experts.gate_up_proj": "model_2.safetensors",
700
+ "model.layers.13.experts.down_proj": "model_2.safetensors",
701
+ "model.layers.13.layer_scalar": "model_2.safetensors",
702
+ "model.layers.14.input_layernorm.weight": "model_2.safetensors",
703
+ "model.layers.14.post_attention_layernorm.weight": "model_2.safetensors",
704
+ "model.layers.14.post_feedforward_layernorm.weight": "model_2.safetensors",
705
+ "model.layers.14.self_attn.q_norm.weight": "model_2.safetensors",
706
+ "model.layers.14.self_attn.k_norm.weight": "model_2.safetensors",
707
+ "model.layers.14.pre_feedforward_layernorm.weight": "model_2.safetensors",
708
+ "model.layers.14.post_feedforward_layernorm_1.weight": "model_2.safetensors",
709
+ "model.layers.14.router.scale": "model_2.safetensors",
710
+ "model.layers.14.router.per_expert_scale": "model_2.safetensors",
711
+ "model.layers.14.pre_feedforward_layernorm_2.weight": "model_2.safetensors",
712
+ "model.layers.14.post_feedforward_layernorm_2.weight": "model_2.safetensors",
713
+ "model.layers.14.router.proj.weight": "model_2.safetensors",
714
+ "model.layers.14.self_attn.q_proj.weight": "model_2.safetensors",
715
+ "model.layers.14.self_attn.k_proj.weight": "model_2.safetensors",
716
+ "model.layers.14.self_attn.v_proj.weight": "model_2.safetensors",
717
+ "model.layers.14.self_attn.o_proj.weight": "model_2.safetensors",
718
+ "model.layers.14.mlp.gate_proj.weight": "model_2.safetensors",
719
+ "model.layers.14.mlp.up_proj.weight": "model_2.safetensors",
720
+ "model.layers.14.mlp.down_proj.weight": "model_2.safetensors",
721
+ "model.layers.14.experts.gate_up_proj": "model_2.safetensors",
722
+ "model.layers.14.experts.down_proj": "model_2.safetensors",
723
+ "model.layers.14.layer_scalar": "model_2.safetensors",
724
+ "model.layers.15.input_layernorm.weight": "model_2.safetensors",
725
+ "model.layers.15.post_attention_layernorm.weight": "model_2.safetensors",
726
+ "model.layers.15.post_feedforward_layernorm.weight": "model_2.safetensors",
727
+ "model.layers.15.self_attn.q_norm.weight": "model_2.safetensors",
728
+ "model.layers.15.self_attn.k_norm.weight": "model_2.safetensors",
729
+ "model.layers.15.pre_feedforward_layernorm.weight": "model_2.safetensors",
730
+ "model.layers.15.post_feedforward_layernorm_1.weight": "model_2.safetensors",
731
+ "model.layers.15.router.scale": "model_2.safetensors",
732
+ "model.layers.15.router.per_expert_scale": "model_2.safetensors",
733
+ "model.layers.15.pre_feedforward_layernorm_2.weight": "model_2.safetensors",
734
+ "model.layers.15.post_feedforward_layernorm_2.weight": "model_2.safetensors",
735
+ "model.layers.15.router.proj.weight": "model_2.safetensors",
736
+ "model.layers.15.self_attn.q_proj.weight": "model_2.safetensors",
737
+ "model.layers.15.self_attn.k_proj.weight": "model_2.safetensors",
738
+ "model.layers.15.self_attn.v_proj.weight": "model_2.safetensors",
739
+ "model.layers.15.self_attn.o_proj.weight": "model_2.safetensors",
740
+ "model.layers.15.mlp.gate_proj.weight": "model_2.safetensors",
741
+ "model.layers.15.mlp.up_proj.weight": "model_2.safetensors",
742
+ "model.layers.15.mlp.down_proj.weight": "model_2.safetensors",
743
+ "model.layers.15.experts.gate_up_proj": "model_2.safetensors",
744
+ "model.layers.15.experts.down_proj": "model_3.safetensors",
745
+ "model.layers.15.layer_scalar": "model_3.safetensors",
746
+ "model.layers.16.input_layernorm.weight": "model_3.safetensors",
747
+ "model.layers.16.post_attention_layernorm.weight": "model_3.safetensors",
748
+ "model.layers.16.post_feedforward_layernorm.weight": "model_3.safetensors",
749
+ "model.layers.16.self_attn.q_norm.weight": "model_3.safetensors",
750
+ "model.layers.16.self_attn.k_norm.weight": "model_3.safetensors",
751
+ "model.layers.16.pre_feedforward_layernorm.weight": "model_3.safetensors",
752
+ "model.layers.16.post_feedforward_layernorm_1.weight": "model_3.safetensors",
753
+ "model.layers.16.router.scale": "model_3.safetensors",
754
+ "model.layers.16.router.per_expert_scale": "model_3.safetensors",
755
+ "model.layers.16.pre_feedforward_layernorm_2.weight": "model_3.safetensors",
756
+ "model.layers.16.post_feedforward_layernorm_2.weight": "model_3.safetensors",
757
+ "model.layers.16.router.proj.weight": "model_3.safetensors",
758
+ "model.layers.16.self_attn.q_proj.weight": "model_3.safetensors",
759
+ "model.layers.16.self_attn.k_proj.weight": "model_3.safetensors",
760
+ "model.layers.16.self_attn.v_proj.weight": "model_3.safetensors",
761
+ "model.layers.16.self_attn.o_proj.weight": "model_3.safetensors",
762
+ "model.layers.16.mlp.gate_proj.weight": "model_3.safetensors",
763
+ "model.layers.16.mlp.up_proj.weight": "model_3.safetensors",
764
+ "model.layers.16.mlp.down_proj.weight": "model_3.safetensors",
765
+ "model.layers.16.experts.gate_up_proj": "model_3.safetensors",
766
+ "model.layers.16.experts.down_proj": "model_3.safetensors",
767
+ "model.layers.16.layer_scalar": "model_3.safetensors",
768
+ "model.layers.17.input_layernorm.weight": "model_3.safetensors",
769
+ "model.layers.17.post_attention_layernorm.weight": "model_3.safetensors",
770
+ "model.layers.17.post_feedforward_layernorm.weight": "model_3.safetensors",
771
+ "model.layers.17.self_attn.q_norm.weight": "model_3.safetensors",
772
+ "model.layers.17.self_attn.k_norm.weight": "model_3.safetensors",
773
+ "model.layers.17.pre_feedforward_layernorm.weight": "model_3.safetensors",
774
+ "model.layers.17.post_feedforward_layernorm_1.weight": "model_3.safetensors",
775
+ "model.layers.17.router.scale": "model_3.safetensors",
776
+ "model.layers.17.router.per_expert_scale": "model_3.safetensors",
777
+ "model.layers.17.pre_feedforward_layernorm_2.weight": "model_3.safetensors",
778
+ "model.layers.17.post_feedforward_layernorm_2.weight": "model_3.safetensors",
779
+ "model.layers.17.router.proj.weight": "model_3.safetensors",
780
+ "model.layers.17.self_attn.q_proj.weight": "model_3.safetensors",
781
+ "model.layers.17.self_attn.k_proj.weight": "model_3.safetensors",
782
+ "model.layers.17.self_attn.o_proj.weight": "model_3.safetensors",
783
+ "model.layers.17.mlp.gate_proj.weight": "model_3.safetensors",
784
+ "model.layers.17.mlp.up_proj.weight": "model_3.safetensors",
785
+ "model.layers.17.mlp.down_proj.weight": "model_3.safetensors",
786
+ "model.layers.17.experts.gate_up_proj": "model_3.safetensors",
787
+ "model.layers.17.experts.down_proj": "model_3.safetensors",
788
+ "model.layers.17.layer_scalar": "model_3.safetensors",
789
+ "model.layers.18.input_layernorm.weight": "model_3.safetensors",
790
+ "model.layers.18.post_attention_layernorm.weight": "model_3.safetensors",
791
+ "model.layers.18.post_feedforward_layernorm.weight": "model_3.safetensors",
792
+ "model.layers.18.self_attn.q_norm.weight": "model_3.safetensors",
793
+ "model.layers.18.self_attn.k_norm.weight": "model_3.safetensors",
794
+ "model.layers.18.pre_feedforward_layernorm.weight": "model_3.safetensors",
795
+ "model.layers.18.post_feedforward_layernorm_1.weight": "model_3.safetensors",
796
+ "model.layers.18.router.scale": "model_3.safetensors",
797
+ "model.layers.18.router.per_expert_scale": "model_3.safetensors",
798
+ "model.layers.18.pre_feedforward_layernorm_2.weight": "model_3.safetensors",
799
+ "model.layers.18.post_feedforward_layernorm_2.weight": "model_3.safetensors",
800
+ "model.layers.18.router.proj.weight": "model_3.safetensors",
801
+ "model.layers.18.self_attn.q_proj.weight": "model_3.safetensors",
802
+ "model.layers.18.self_attn.k_proj.weight": "model_3.safetensors",
803
+ "model.layers.18.self_attn.v_proj.weight": "model_3.safetensors",
804
+ "model.layers.18.self_attn.o_proj.weight": "model_3.safetensors",
805
+ "model.layers.18.mlp.gate_proj.weight": "model_3.safetensors",
806
+ "model.layers.18.mlp.up_proj.weight": "model_3.safetensors",
807
+ "model.layers.18.mlp.down_proj.weight": "model_3.safetensors",
808
+ "model.layers.18.experts.gate_up_proj": "model_3.safetensors",
809
+ "model.layers.18.experts.down_proj": "model_3.safetensors",
810
+ "model.layers.18.layer_scalar": "model_3.safetensors",
811
+ "model.layers.19.input_layernorm.weight": "model_3.safetensors",
812
+ "model.layers.19.post_attention_layernorm.weight": "model_3.safetensors",
813
+ "model.layers.19.post_feedforward_layernorm.weight": "model_3.safetensors",
814
+ "model.layers.19.self_attn.q_norm.weight": "model_3.safetensors",
815
+ "model.layers.19.self_attn.k_norm.weight": "model_3.safetensors",
816
+ "model.layers.19.pre_feedforward_layernorm.weight": "model_3.safetensors",
817
+ "model.layers.19.post_feedforward_layernorm_1.weight": "model_3.safetensors",
818
+ "model.layers.19.router.scale": "model_3.safetensors",
819
+ "model.layers.19.router.per_expert_scale": "model_3.safetensors",
820
+ "model.layers.19.pre_feedforward_layernorm_2.weight": "model_3.safetensors",
821
+ "model.layers.19.post_feedforward_layernorm_2.weight": "model_3.safetensors",
822
+ "model.layers.19.router.proj.weight": "model_3.safetensors",
823
+ "model.layers.19.self_attn.q_proj.weight": "model_3.safetensors",
824
+ "model.layers.19.self_attn.k_proj.weight": "model_3.safetensors",
825
+ "model.layers.19.self_attn.v_proj.weight": "model_3.safetensors",
826
+ "model.layers.19.self_attn.o_proj.weight": "model_3.safetensors",
827
+ "model.layers.19.mlp.gate_proj.weight": "model_3.safetensors",
828
+ "model.layers.19.mlp.up_proj.weight": "model_3.safetensors",
829
+ "model.layers.19.mlp.down_proj.weight": "model_3.safetensors",
830
+ "model.layers.19.experts.gate_up_proj": "model_3.safetensors",
831
+ "model.layers.19.experts.down_proj": "model_3.safetensors",
832
+ "model.layers.19.layer_scalar": "model_3.safetensors",
833
+ "model.layers.20.input_layernorm.weight": "model_3.safetensors",
834
+ "model.layers.20.post_attention_layernorm.weight": "model_3.safetensors",
835
+ "model.layers.20.post_feedforward_layernorm.weight": "model_3.safetensors",
836
+ "model.layers.20.self_attn.q_norm.weight": "model_3.safetensors",
837
+ "model.layers.20.self_attn.k_norm.weight": "model_3.safetensors",
838
+ "model.layers.20.pre_feedforward_layernorm.weight": "model_3.safetensors",
839
+ "model.layers.20.post_feedforward_layernorm_1.weight": "model_3.safetensors",
840
+ "model.layers.20.router.scale": "model_3.safetensors",
841
+ "model.layers.20.router.per_expert_scale": "model_3.safetensors",
842
+ "model.layers.20.pre_feedforward_layernorm_2.weight": "model_3.safetensors",
843
+ "model.layers.20.post_feedforward_layernorm_2.weight": "model_3.safetensors",
844
+ "model.layers.20.router.proj.weight": "model_3.safetensors",
845
+ "model.layers.20.self_attn.q_proj.weight": "model_3.safetensors",
846
+ "model.layers.20.self_attn.k_proj.weight": "model_3.safetensors",
847
+ "model.layers.20.self_attn.v_proj.weight": "model_3.safetensors",
848
+ "model.layers.20.self_attn.o_proj.weight": "model_3.safetensors",
849
+ "model.layers.20.mlp.gate_proj.weight": "model_3.safetensors",
850
+ "model.layers.20.mlp.up_proj.weight": "model_3.safetensors",
851
+ "model.layers.20.mlp.down_proj.weight": "model_3.safetensors",
852
+ "model.layers.20.experts.gate_up_proj": "model_3.safetensors",
853
+ "model.layers.20.experts.down_proj": "model_3.safetensors",
854
+ "model.layers.20.layer_scalar": "model_4.safetensors",
855
+ "model.layers.21.input_layernorm.weight": "model_4.safetensors",
856
+ "model.layers.21.post_attention_layernorm.weight": "model_4.safetensors",
857
+ "model.layers.21.post_feedforward_layernorm.weight": "model_4.safetensors",
858
+ "model.layers.21.self_attn.q_norm.weight": "model_4.safetensors",
859
+ "model.layers.21.self_attn.k_norm.weight": "model_4.safetensors",
860
+ "model.layers.21.pre_feedforward_layernorm.weight": "model_4.safetensors",
861
+ "model.layers.21.post_feedforward_layernorm_1.weight": "model_4.safetensors",
862
+ "model.layers.21.router.scale": "model_4.safetensors",
863
+ "model.layers.21.router.per_expert_scale": "model_4.safetensors",
864
+ "model.layers.21.pre_feedforward_layernorm_2.weight": "model_4.safetensors",
865
+ "model.layers.21.post_feedforward_layernorm_2.weight": "model_4.safetensors",
866
+ "model.layers.21.router.proj.weight": "model_4.safetensors",
867
+ "model.layers.21.self_attn.q_proj.weight": "model_4.safetensors",
868
+ "model.layers.21.self_attn.k_proj.weight": "model_4.safetensors",
869
+ "model.layers.21.self_attn.v_proj.weight": "model_4.safetensors",
870
+ "model.layers.21.self_attn.o_proj.weight": "model_4.safetensors",
871
+ "model.layers.21.mlp.gate_proj.weight": "model_4.safetensors",
872
+ "model.layers.21.mlp.up_proj.weight": "model_4.safetensors",
873
+ "model.layers.21.mlp.down_proj.weight": "model_4.safetensors",
874
+ "model.layers.21.experts.gate_up_proj": "model_4.safetensors",
875
+ "model.layers.21.experts.down_proj": "model_4.safetensors",
876
+ "model.layers.21.layer_scalar": "model_4.safetensors",
877
+ "model.layers.22.input_layernorm.weight": "model_4.safetensors",
878
+ "model.layers.22.post_attention_layernorm.weight": "model_4.safetensors",
879
+ "model.layers.22.post_feedforward_layernorm.weight": "model_4.safetensors",
880
+ "model.layers.22.self_attn.q_norm.weight": "model_4.safetensors",
881
+ "model.layers.22.self_attn.k_norm.weight": "model_4.safetensors",
882
+ "model.layers.22.pre_feedforward_layernorm.weight": "model_4.safetensors",
883
+ "model.layers.22.post_feedforward_layernorm_1.weight": "model_4.safetensors",
884
+ "model.layers.22.router.scale": "model_4.safetensors",
885
+ "model.layers.22.router.per_expert_scale": "model_4.safetensors",
886
+ "model.layers.22.pre_feedforward_layernorm_2.weight": "model_4.safetensors",
887
+ "model.layers.22.post_feedforward_layernorm_2.weight": "model_4.safetensors",
888
+ "model.layers.22.router.proj.weight": "model_4.safetensors",
889
+ "model.layers.22.self_attn.q_proj.weight": "model_4.safetensors",
890
+ "model.layers.22.self_attn.k_proj.weight": "model_4.safetensors",
891
+ "model.layers.22.self_attn.v_proj.weight": "model_4.safetensors",
892
+ "model.layers.22.self_attn.o_proj.weight": "model_4.safetensors",
893
+ "model.layers.22.mlp.gate_proj.weight": "model_4.safetensors",
894
+ "model.layers.22.mlp.up_proj.weight": "model_4.safetensors",
895
+ "model.layers.22.mlp.down_proj.weight": "model_4.safetensors",
896
+ "model.layers.22.experts.gate_up_proj": "model_4.safetensors",
897
+ "model.layers.22.experts.down_proj": "model_4.safetensors",
898
+ "model.layers.22.layer_scalar": "model_4.safetensors",
899
+ "model.layers.23.input_layernorm.weight": "model_4.safetensors",
900
+ "model.layers.23.post_attention_layernorm.weight": "model_4.safetensors",
901
+ "model.layers.23.post_feedforward_layernorm.weight": "model_4.safetensors",
902
+ "model.layers.23.self_attn.q_norm.weight": "model_4.safetensors",
903
+ "model.layers.23.self_attn.k_norm.weight": "model_4.safetensors",
904
+ "model.layers.23.pre_feedforward_layernorm.weight": "model_4.safetensors",
905
+ "model.layers.23.post_feedforward_layernorm_1.weight": "model_4.safetensors",
906
+ "model.layers.23.router.scale": "model_4.safetensors",
907
+ "model.layers.23.router.per_expert_scale": "model_4.safetensors",
908
+ "model.layers.23.pre_feedforward_layernorm_2.weight": "model_4.safetensors",
909
+ "model.layers.23.post_feedforward_layernorm_2.weight": "model_4.safetensors",
910
+ "model.layers.23.router.proj.weight": "model_4.safetensors",
911
+ "model.layers.23.self_attn.q_proj.weight": "model_4.safetensors",
912
+ "model.layers.23.self_attn.k_proj.weight": "model_4.safetensors",
913
+ "model.layers.23.self_attn.o_proj.weight": "model_4.safetensors",
914
+ "model.layers.23.mlp.gate_proj.weight": "model_4.safetensors",
915
+ "model.layers.23.mlp.up_proj.weight": "model_4.safetensors",
916
+ "model.layers.23.mlp.down_proj.weight": "model_4.safetensors",
917
+ "model.layers.23.experts.gate_up_proj": "model_4.safetensors",
918
+ "model.layers.23.experts.down_proj": "model_4.safetensors",
919
+ "model.layers.23.layer_scalar": "model_4.safetensors",
920
+ "model.layers.24.input_layernorm.weight": "model_4.safetensors",
921
+ "model.layers.24.post_attention_layernorm.weight": "model_4.safetensors",
922
+ "model.layers.24.post_feedforward_layernorm.weight": "model_4.safetensors",
923
+ "model.layers.24.self_attn.q_norm.weight": "model_4.safetensors",
924
+ "model.layers.24.self_attn.k_norm.weight": "model_4.safetensors",
925
+ "model.layers.24.pre_feedforward_layernorm.weight": "model_4.safetensors",
926
+ "model.layers.24.post_feedforward_layernorm_1.weight": "model_4.safetensors",
927
+ "model.layers.24.router.scale": "model_4.safetensors",
928
+ "model.layers.24.router.per_expert_scale": "model_4.safetensors",
929
+ "model.layers.24.pre_feedforward_layernorm_2.weight": "model_4.safetensors",
930
+ "model.layers.24.post_feedforward_layernorm_2.weight": "model_4.safetensors",
931
+ "model.layers.24.router.proj.weight": "model_4.safetensors",
932
+ "model.layers.24.self_attn.q_proj.weight": "model_4.safetensors",
933
+ "model.layers.24.self_attn.k_proj.weight": "model_4.safetensors",
934
+ "model.layers.24.self_attn.v_proj.weight": "model_4.safetensors",
935
+ "model.layers.24.self_attn.o_proj.weight": "model_4.safetensors",
936
+ "model.layers.24.mlp.gate_proj.weight": "model_4.safetensors",
937
+ "model.layers.24.mlp.up_proj.weight": "model_4.safetensors",
938
+ "model.layers.24.mlp.down_proj.weight": "model_4.safetensors",
939
+ "model.layers.24.experts.gate_up_proj": "model_4.safetensors",
940
+ "model.layers.24.experts.down_proj": "model_4.safetensors",
941
+ "model.layers.24.layer_scalar": "model_4.safetensors",
942
+ "model.layers.25.input_layernorm.weight": "model_4.safetensors",
943
+ "model.layers.25.post_attention_layernorm.weight": "model_4.safetensors",
944
+ "model.layers.25.post_feedforward_layernorm.weight": "model_4.safetensors",
945
+ "model.layers.25.self_attn.q_norm.weight": "model_4.safetensors",
946
+ "model.layers.25.self_attn.k_norm.weight": "model_4.safetensors",
947
+ "model.layers.25.pre_feedforward_layernorm.weight": "model_4.safetensors",
948
+ "model.layers.25.post_feedforward_layernorm_1.weight": "model_4.safetensors",
949
+ "model.layers.25.router.scale": "model_4.safetensors",
950
+ "model.layers.25.router.per_expert_scale": "model_4.safetensors",
951
+ "model.layers.25.pre_feedforward_layernorm_2.weight": "model_4.safetensors",
952
+ "model.layers.25.post_feedforward_layernorm_2.weight": "model_4.safetensors",
953
+ "model.layers.25.router.proj.weight": "model_4.safetensors",
954
+ "model.layers.25.self_attn.q_proj.weight": "model_4.safetensors",
955
+ "model.layers.25.self_attn.k_proj.weight": "model_4.safetensors",
956
+ "model.layers.25.self_attn.v_proj.weight": "model_4.safetensors",
957
+ "model.layers.25.self_attn.o_proj.weight": "model_4.safetensors",
958
+ "model.layers.25.mlp.gate_proj.weight": "model_4.safetensors",
959
+ "model.layers.25.mlp.up_proj.weight": "model_4.safetensors",
960
+ "model.layers.25.mlp.down_proj.weight": "model_4.safetensors",
961
+ "model.layers.25.experts.gate_up_proj": "model_4.safetensors",
962
+ "model.layers.25.experts.down_proj": "model_4.safetensors",
963
+ "model.layers.25.layer_scalar": "model_4.safetensors",
964
+ "model.layers.26.input_layernorm.weight": "model_4.safetensors",
965
+ "model.layers.26.post_attention_layernorm.weight": "model_4.safetensors",
966
+ "model.layers.26.post_feedforward_layernorm.weight": "model_4.safetensors",
967
+ "model.layers.26.self_attn.q_norm.weight": "model_4.safetensors",
968
+ "model.layers.26.self_attn.k_norm.weight": "model_4.safetensors",
969
+ "model.layers.26.pre_feedforward_layernorm.weight": "model_4.safetensors",
970
+ "model.layers.26.post_feedforward_layernorm_1.weight": "model_4.safetensors",
971
+ "model.layers.26.router.scale": "model_4.safetensors",
972
+ "model.layers.26.router.per_expert_scale": "model_4.safetensors",
973
+ "model.layers.26.pre_feedforward_layernorm_2.weight": "model_4.safetensors",
974
+ "model.layers.26.post_feedforward_layernorm_2.weight": "model_4.safetensors",
975
+ "model.layers.26.router.proj.weight": "model_4.safetensors",
976
+ "model.layers.26.self_attn.q_proj.weight": "model_4.safetensors",
977
+ "model.layers.26.self_attn.k_proj.weight": "model_4.safetensors",
978
+ "model.layers.26.self_attn.v_proj.weight": "model_4.safetensors",
979
+ "model.layers.26.self_attn.o_proj.weight": "model_4.safetensors",
980
+ "model.layers.26.mlp.gate_proj.weight": "model_4.safetensors",
981
+ "model.layers.26.mlp.up_proj.weight": "model_4.safetensors",
982
+ "model.layers.26.mlp.down_proj.weight": "model_4.safetensors",
983
+ "model.layers.26.experts.gate_up_proj": "model_4.safetensors",
984
+ "model.layers.26.experts.down_proj": "model_5.safetensors",
985
+ "model.layers.26.layer_scalar": "model_5.safetensors",
986
+ "model.layers.27.input_layernorm.weight": "model_5.safetensors",
987
+ "model.layers.27.post_attention_layernorm.weight": "model_5.safetensors",
988
+ "model.layers.27.post_feedforward_layernorm.weight": "model_5.safetensors",
989
+ "model.layers.27.self_attn.q_norm.weight": "model_5.safetensors",
990
+ "model.layers.27.self_attn.k_norm.weight": "model_5.safetensors",
991
+ "model.layers.27.pre_feedforward_layernorm.weight": "model_5.safetensors",
992
+ "model.layers.27.post_feedforward_layernorm_1.weight": "model_5.safetensors",
993
+ "model.layers.27.router.scale": "model_5.safetensors",
994
+ "model.layers.27.router.per_expert_scale": "model_5.safetensors",
995
+ "model.layers.27.pre_feedforward_layernorm_2.weight": "model_5.safetensors",
996
+ "model.layers.27.post_feedforward_layernorm_2.weight": "model_5.safetensors",
997
+ "model.layers.27.router.proj.weight": "model_5.safetensors",
998
+ "model.layers.27.self_attn.q_proj.weight": "model_5.safetensors",
999
+ "model.layers.27.self_attn.k_proj.weight": "model_5.safetensors",
1000
+ "model.layers.27.self_attn.v_proj.weight": "model_5.safetensors",
1001
+ "model.layers.27.self_attn.o_proj.weight": "model_5.safetensors",
1002
+ "model.layers.27.mlp.gate_proj.weight": "model_5.safetensors",
1003
+ "model.layers.27.mlp.up_proj.weight": "model_5.safetensors",
1004
+ "model.layers.27.mlp.down_proj.weight": "model_5.safetensors",
1005
+ "model.layers.27.experts.gate_up_proj": "model_5.safetensors",
1006
+ "model.layers.27.experts.down_proj": "model_5.safetensors",
1007
+ "model.layers.27.layer_scalar": "model_5.safetensors",
1008
+ "model.layers.28.input_layernorm.weight": "model_5.safetensors",
1009
+ "model.layers.28.post_attention_layernorm.weight": "model_5.safetensors",
1010
+ "model.layers.28.post_feedforward_layernorm.weight": "model_5.safetensors",
1011
+ "model.layers.28.self_attn.q_norm.weight": "model_5.safetensors",
1012
+ "model.layers.28.self_attn.k_norm.weight": "model_5.safetensors",
1013
+ "model.layers.28.pre_feedforward_layernorm.weight": "model_5.safetensors",
1014
+ "model.layers.28.post_feedforward_layernorm_1.weight": "model_5.safetensors",
1015
+ "model.layers.28.router.scale": "model_5.safetensors",
1016
+ "model.layers.28.router.per_expert_scale": "model_5.safetensors",
1017
+ "model.layers.28.pre_feedforward_layernorm_2.weight": "model_5.safetensors",
1018
+ "model.layers.28.post_feedforward_layernorm_2.weight": "model_5.safetensors",
1019
+ "model.layers.28.router.proj.weight": "model_5.safetensors",
1020
+ "model.layers.28.self_attn.q_proj.weight": "model_5.safetensors",
1021
+ "model.layers.28.self_attn.k_proj.weight": "model_5.safetensors",
1022
+ "model.layers.28.self_attn.v_proj.weight": "model_5.safetensors",
1023
+ "model.layers.28.self_attn.o_proj.weight": "model_5.safetensors",
1024
+ "model.layers.28.mlp.gate_proj.weight": "model_5.safetensors",
1025
+ "model.layers.28.mlp.up_proj.weight": "model_5.safetensors",
1026
+ "model.layers.28.mlp.down_proj.weight": "model_5.safetensors",
1027
+ "model.layers.28.experts.gate_up_proj": "model_5.safetensors",
1028
+ "model.layers.28.experts.down_proj": "model_5.safetensors",
1029
+ "model.layers.28.layer_scalar": "model_5.safetensors",
1030
+ "model.layers.29.input_layernorm.weight": "model_5.safetensors",
1031
+ "model.layers.29.post_attention_layernorm.weight": "model_5.safetensors",
1032
+ "model.layers.29.post_feedforward_layernorm.weight": "model_5.safetensors",
1033
+ "model.layers.29.self_attn.q_norm.weight": "model_5.safetensors",
1034
+ "model.layers.29.self_attn.k_norm.weight": "model_5.safetensors",
1035
+ "model.layers.29.pre_feedforward_layernorm.weight": "model_5.safetensors",
1036
+ "model.layers.29.post_feedforward_layernorm_1.weight": "model_5.safetensors",
1037
+ "model.layers.29.router.scale": "model_5.safetensors",
1038
+ "model.layers.29.router.per_expert_scale": "model_5.safetensors",
1039
+ "model.layers.29.pre_feedforward_layernorm_2.weight": "model_5.safetensors",
1040
+ "model.layers.29.post_feedforward_layernorm_2.weight": "model_5.safetensors",
1041
+ "model.layers.29.router.proj.weight": "model_5.safetensors",
1042
+ "model.layers.29.self_attn.q_proj.weight": "model_5.safetensors",
1043
+ "model.layers.29.self_attn.k_proj.weight": "model_5.safetensors",
1044
+ "model.layers.29.self_attn.o_proj.weight": "model_5.safetensors",
1045
+ "model.layers.29.mlp.gate_proj.weight": "model_5.safetensors",
1046
+ "model.layers.29.mlp.up_proj.weight": "model_5.safetensors",
1047
+ "model.layers.29.mlp.down_proj.weight": "model_5.safetensors",
1048
+ "model.layers.29.experts.gate_up_proj": "model_5.safetensors",
1049
+ "model.layers.29.experts.down_proj": "model_5.safetensors",
1050
+ "model.layers.29.layer_scalar": "model_5.safetensors",
1051
+ "model.norm.weight": "model_5.safetensors"
1052
+ }
1053
+ }
26_09_08_sft_email_v4_v3/export/gemma4/140/model_0.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:7277a2f42a87e19765332e8d65f5f57a4fc8cd9f4fa0dbaa4c48f5b110544a13
3
+ size 18219689440
26_09_08_sft_email_v4_v3/export/gemma4/140/model_1.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:204e8a7fe92c63083155d33933c1a6da90188f699f6e0a9836bef21c3b14098c
3
+ size 17354616396
26_09_08_sft_email_v4_v3/export/gemma4/140/model_2.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:6230bf7ac58d23004a10d04b2a8a02da00323c198337ade4ab69e97bb9355f02
3
+ size 18580955576
26_09_08_sft_email_v4_v3/export/gemma4/140/model_3.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:1d3a2cad124dd0352a5285efc72021131105b10f3fe8d1c2eaa8ab988da7133e
3
+ size 17354616508
26_09_08_sft_email_v4_v3/export/gemma4/140/model_4.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:49322496e747f7c8f2535553d59da3efef60dc07cd9181b908c6d3515b1c00eb
3
+ size 18580955560
26_09_08_sft_email_v4_v3/export/gemma4/140/model_5.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:838deccb7a04bf4e7b1dcbf8eaf043dc0b0dbbb2b775073e19e1f352ee86aaba
3
+ size 10841863008
26_09_08_sft_email_v4_v3/export/gemma4/140/ok ADDED
File without changes
26_09_08_sft_email_v4_v3/export/gemma4/140/tokenizer.json ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:cc8d3a0ce36466ccc1278bf987df5f71db1719b9ca6b4118264f45cb627bfe0f
3
+ size 32169626
26_09_08_sft_email_v4_v3/export/gemma4/140/tokenizer_config.json ADDED
@@ -0,0 +1,74 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "audio_token": "<|audio|>",
3
+ "backend": "tokenizers",
4
+ "boa_token": "<|audio>",
5
+ "boi_token": "<|image>",
6
+ "bos_token": "<bos>",
7
+ "eoa_token": "<audio|>",
8
+ "eoc_token": "<channel|>",
9
+ "eoi_token": "<image|>",
10
+ "eos_token": "<eos>",
11
+ "eot_token": "<turn|>",
12
+ "escape_token": "<|\"|>",
13
+ "etc_token": "<tool_call|>",
14
+ "etd_token": "<tool|>",
15
+ "etr_token": "<tool_response|>",
16
+ "extra_special_tokens": [
17
+ "<|video|>"
18
+ ],
19
+ "image_token": "<|image|>",
20
+ "mask_token": "<mask>",
21
+ "model_max_length": 1000000000000000019884624838656,
22
+ "pad_token": "<pad>",
23
+ "padding_side": "left",
24
+ "processor_class": "Gemma4Processor",
25
+ "response_schema": {
26
+ "type": "object",
27
+ "properties": {
28
+ "role": {
29
+ "const": "assistant"
30
+ },
31
+ "thinking": {
32
+ "type": "string"
33
+ },
34
+ "content": {
35
+ "type": "string"
36
+ },
37
+ "tool_calls": {
38
+ "x-regex-iterator": "<\\|tool_call>(.*?)<tool_call\\|>",
39
+ "type": "array",
40
+ "items": {
41
+ "type": "object",
42
+ "properties": {
43
+ "type": {
44
+ "const": "function"
45
+ },
46
+ "function": {
47
+ "type": "object",
48
+ "x-regex": "call\\:(?P<name>\\w+)(?P<arguments>\\{.*\\})",
49
+ "properties": {
50
+ "name": {
51
+ "type": "string"
52
+ },
53
+ "arguments": {
54
+ "type": "object",
55
+ "x-parser": "gemma4-tool-call",
56
+ "additionalProperties": {}
57
+ }
58
+ }
59
+ }
60
+ }
61
+ }
62
+ }
63
+ },
64
+ "x-regex": "(\\<\\|channel\\>thought\\n(?P<thinking>.*?)\\<channel\\|\\>)?(?P<tool_calls>\\<\\|tool_call\\>.*\\<tool_call\\|\\>)?(?P<content>(?:(?!\\<turn\\|\\>)(?!\\<\\|tool_response\\>).)+)?(?:\\<turn\\|\\>|\\<\\|tool_response\\>)?"
65
+ },
66
+ "soc_token": "<|channel>",
67
+ "sot_token": "<|turn>",
68
+ "stc_token": "<|tool_call>",
69
+ "std_token": "<|tool>",
70
+ "str_token": "<|tool_response>",
71
+ "think_token": "<|think|>",
72
+ "tokenizer_class": "GemmaTokenizer",
73
+ "unk_token": "<unk>"
74
+ }
26_09_08_sft_email_v4_v3/export/gemma4/210/chat_template.jinja ADDED
@@ -0,0 +1,390 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {#
2
+ Template: Google Gemma 4 Canonical Chat Template
3
+ Author: Google Gemma Engineering Team
4
+ Published: 2026-07-09
5
+ Context: Fixed tool-calling loops, turn closures, and thinking content-ordering.
6
+ #}
7
+ {%- macro format_parameters(properties, required, filter_keys=false) -%}
8
+ {%- set standard_keys = ['properties', 'required', 'nullable'] -%}
9
+ {%- set ns = namespace(found_first=false) -%}
10
+ {%- for key, value in properties | dictsort -%}
11
+ {%- set add_comma = false -%}
12
+ {%- if not filter_keys or key not in standard_keys -%}
13
+ {%- if ns.found_first %},{% endif -%}
14
+ {%- set ns.found_first = true -%}
15
+ {{ key }}:{
16
+ {%- if value['description'] -%}
17
+ description:<|"|>{{ value['description'] }}<|"|>
18
+ {%- set add_comma = true -%}
19
+ {%- endif -%}
20
+ {%- if value['type'] | upper == 'STRING' -%}
21
+ {%- if value['enum'] -%}
22
+ {%- if add_comma %},{%- else -%} {%- set add_comma = true -%} {% endif -%}
23
+ enum:{{ format_argument(value['enum']) }}
24
+ {%- endif -%}
25
+ {%- elif value['type'] | upper == 'ARRAY' -%}
26
+ {%- if value['items'] is mapping and value['items'] -%}
27
+ {%- if add_comma %},{%- else -%} {%- set add_comma = true -%} {% endif -%}
28
+ items:{
29
+ {%- set ns_items = namespace(found_first=false) -%}
30
+ {%- for item_key, item_value in value['items'] | dictsort -%}
31
+ {%- if item_value is not none -%}
32
+ {%- if ns_items.found_first %},{% endif -%}
33
+ {%- set ns_items.found_first = true -%}
34
+ {%- if item_key == 'properties' -%}
35
+ properties:{
36
+ {%- if item_value is mapping -%}
37
+ {{- format_parameters(item_value, value['items']['required'] | default([])) -}}
38
+ {%- endif -%}
39
+ }
40
+ {%- elif item_key == 'required' -%}
41
+ required:[
42
+ {%- for req_item in item_value -%}
43
+ <|"|>{{- req_item -}}<|"|>
44
+ {%- if not loop.last %},{% endif -%}
45
+ {%- endfor -%}
46
+ ]
47
+ {%- elif item_key == 'type' -%}
48
+ {%- if item_value is string -%}
49
+ type:{{ format_argument(item_value | upper) }}
50
+ {%- else -%}
51
+ type:{{ format_argument(item_value | map('upper') | list) }}
52
+ {%- endif -%}
53
+ {%- else -%}
54
+ {{ item_key }}:{{ format_argument(item_value) }}
55
+ {%- endif -%}
56
+ {%- endif -%}
57
+ {%- endfor -%}
58
+ }
59
+ {%- endif -%}
60
+ {%- endif -%}
61
+ {%- if value['nullable'] %}
62
+ {%- if add_comma %},{%- else -%} {%- set add_comma = true -%} {% endif -%}
63
+ nullable:true
64
+ {%- endif -%}
65
+ {%- if value['type'] | upper == 'OBJECT' -%}
66
+ {%- if value['properties'] is defined and value['properties'] is mapping -%}
67
+ {%- if add_comma %},{%- else -%} {%- set add_comma = true -%} {% endif -%}
68
+ properties:{
69
+ {{- format_parameters(value['properties'], value['required'] | default([])) -}}
70
+ }
71
+ {%- elif value is mapping -%}
72
+ {%- if add_comma %},{%- else -%} {%- set add_comma = true -%} {% endif -%}
73
+ properties:{
74
+ {{- format_parameters(value, value['required'] | default([]), filter_keys=true) -}}
75
+ }
76
+ {%- endif -%}
77
+ {%- if value['required'] -%}
78
+ {%- if add_comma %},{%- else -%} {%- set add_comma = true -%} {% endif -%}
79
+ required:[
80
+ {%- for item in value['required'] | default([]) -%}
81
+ <|"|>{{- item -}}<|"|>
82
+ {%- if not loop.last %},{% endif -%}
83
+ {%- endfor -%}
84
+ ]
85
+ {%- endif -%}
86
+ {%- endif -%}
87
+ {%- if add_comma %},{%- else -%} {%- set add_comma = true -%} {% endif -%}
88
+ type:<|"|>{{ value['type'] | upper }}<|"|>}
89
+ {%- endif -%}
90
+ {%- endfor -%}
91
+ {%- endmacro -%}
92
+ {%- macro format_function_declaration(tool_data) -%}
93
+ declaration:{{- tool_data['function']['name'] -}}{description:<|"|>{{- tool_data['function']['description'] -}}<|"|>
94
+ {%- set params = tool_data['function']['parameters'] -%}
95
+ {%- if params -%}
96
+ ,parameters:{
97
+ {%- if params['properties'] -%}
98
+ properties:{ {{- format_parameters(params['properties'], params['required']) -}} },
99
+ {%- endif -%}
100
+ {%- if params['required'] -%}
101
+ required:[
102
+ {%- for item in params['required'] -%}
103
+ <|"|>{{- item -}}<|"|>
104
+ {{- ',' if not loop.last -}}
105
+ {%- endfor -%}
106
+ ],
107
+ {%- endif -%}
108
+ {%- if params['type'] -%}
109
+ type:<|"|>{{- params['type'] | upper -}}<|"|>}
110
+ {%- endif -%}
111
+ {%- endif -%}
112
+ {%- if 'response' in tool_data['function'] -%}
113
+ {%- set response_declaration = tool_data['function']['response'] -%}
114
+ ,response:{
115
+ {%- if response_declaration['description'] -%}
116
+ description:<|"|>{{- response_declaration['description'] -}}<|"|>,
117
+ {%- endif -%}
118
+ {%- if response_declaration['type'] | upper == 'OBJECT' -%}
119
+ type:<|"|>{{- response_declaration['type'] | upper -}}<|"|>}
120
+ {%- endif -%}
121
+ {%- endif -%}
122
+ }
123
+ {%- endmacro -%}
124
+ {%- macro format_argument(argument, escape_keys=True) -%}
125
+ {%- if argument is none -%}
126
+ {{- 'null' -}}
127
+ {%- elif argument is string -%}
128
+ {{- '<|"|>' + argument + '<|"|>' -}}
129
+ {%- elif argument is boolean -%}
130
+ {{- 'true' if argument else 'false' -}}
131
+ {%- elif argument is mapping -%}
132
+ {{- '{' -}}
133
+ {%- set ns = namespace(found_first=false) -%}
134
+ {%- for key, value in argument | dictsort -%}
135
+ {%- if ns.found_first %},{% endif -%}
136
+ {%- set ns.found_first = true -%}
137
+ {%- if escape_keys -%}
138
+ {{- '<|"|>' + key + '<|"|>' -}}
139
+ {%- else -%}
140
+ {{- key -}}
141
+ {%- endif -%}
142
+ :{{- format_argument(value, escape_keys=escape_keys) -}}
143
+ {%- endfor -%}
144
+ {{- '}' -}}
145
+ {%- elif argument is sequence -%}
146
+ {{- '[' -}}
147
+ {%- for item in argument -%}
148
+ {{- format_argument(item, escape_keys=escape_keys) -}}
149
+ {%- if not loop.last %},{% endif -%}
150
+ {%- endfor -%}
151
+ {{- ']' -}}
152
+ {%- else -%}
153
+ {{- argument -}}
154
+ {%- endif -%}
155
+ {%- endmacro -%}
156
+ {%- macro strip_thinking(text) -%}
157
+ {%- set ns = namespace(result='') -%}
158
+ {%- for part in text.split('<channel|>') -%}
159
+ {%- if '<|channel>' in part -%}
160
+ {%- set ns.result = ns.result + part.split('<|channel>')[0] -%}
161
+ {%- else -%}
162
+ {%- set ns.result = ns.result + part -%}
163
+ {%- endif -%}
164
+ {%- endfor -%}
165
+ {{- ns.result | trim -}}
166
+ {%- endmacro -%}
167
+
168
+ {%- macro format_tool_response_block(tool_name, response) -%}
169
+ {{- '<|tool_response>' -}}
170
+ {%- if response is mapping -%}
171
+ {{- 'response:' + tool_name + '{' -}}
172
+ {%- for key, value in response | dictsort -%}
173
+ {{- key -}}:{{- format_argument(value, escape_keys=False) -}}
174
+ {%- if not loop.last %},{% endif -%}
175
+ {%- endfor -%}
176
+ {{- '}' -}}
177
+ {%- else -%}
178
+ {{- 'response:' + tool_name + '{value:' + format_argument(response, escape_keys=False) + '}' -}}
179
+ {%- endif -%}
180
+ {{- '<tool_response|>' -}}
181
+ {%- endmacro -%}
182
+
183
+ {#- ===== SETUP ===== -#}
184
+ {%- set ns = namespace(prev_message_type=None, prev_non_tool_role=None) -%}
185
+ {%- set loop_messages = messages -%}
186
+ {%- set enable_thinking = enable_thinking | default(false) -%}
187
+ {%- set preserve_thinking = preserve_thinking | default(false) -%}
188
+ {{- bos_token -}}
189
+ {#- Handle System/Tool Definitions Block -#}
190
+ {%- if enable_thinking or tools or (messages and messages[0]['role'] in ['system', 'developer']) -%}
191
+ {{- '<|turn>system\n' -}}
192
+ {#- Inject Thinking token at the very top of the FIRST system turn -#}
193
+ {%- if enable_thinking -%}
194
+ {{- '<|think|>\n' -}}
195
+ {%- set ns.prev_message_type = 'think' -%}
196
+ {%- endif -%}
197
+ {%- if messages and messages[0]['role'] in ['system', 'developer'] -%}
198
+ {%- if messages[0]['content'] is string -%}
199
+ {{- messages[0]['content'] | trim -}}
200
+ {%- elif messages[0]['content'] is sequence -%}
201
+ {%- for item in messages[0]['content'] -%}
202
+ {{- item['text'] | trim + ' '-}}
203
+ {%- endfor -%}
204
+ {%- endif -%}
205
+ {%- set loop_messages = messages[1:] -%}
206
+ {%- endif -%}
207
+ {%- if tools -%}
208
+ {%- for tool in tools %}
209
+ {{- '<|tool>' -}}
210
+ {{- format_function_declaration(tool) | trim -}}
211
+ {{- '<tool|>' -}}
212
+ {%- endfor %}
213
+ {%- set ns.prev_message_type = 'tool' -%}
214
+ {%- endif -%}
215
+ {{- '<turn|>\n' -}}
216
+ {%- endif %}
217
+
218
+ {#- Pre-scan: find last user message index for reasoning guard -#}
219
+ {%- set ns_turn = namespace(last_user_idx=-1) -%}
220
+ {%- for i in range(loop_messages | length) -%}
221
+ {%- if loop_messages[i]['role'] == 'user' -%}
222
+ {%- set ns_turn.last_user_idx = i -%}
223
+ {%- endif -%}
224
+ {%- endfor -%}
225
+
226
+ {#- Loop through messages -#}
227
+ {%- for message in loop_messages -%}
228
+ {%- if message['role'] != 'tool' -%}
229
+ {%- set ns.prev_message_type = None -%}
230
+ {%- set role = 'model' if message['role'] == 'assistant' else message['role'] -%}
231
+ {#- Detect continuation using tracked state — O(1) instead of O(n) backward scan -#}
232
+ {%- set continue_same_model_turn = (role == 'model' and ns.prev_non_tool_role == 'assistant') -%}
233
+ {%- if not continue_same_model_turn -%}
234
+ {{- '<|turn>' + role + '\n' }}
235
+
236
+ {%- endif -%}
237
+
238
+ {#- Render reasoning/reasoning_content as thinking channel -#}
239
+ {%- set thinking_text = message.get('reasoning') or message.get('reasoning_content') -%}
240
+ {%- set thinking_gate = (loop.index0 > ns_turn.last_user_idx) or (preserve_thinking and message.get('tool_calls')) -%}
241
+ {%- if thinking_text and thinking_gate -%}
242
+ {{- '<|channel>thought\n' + thinking_text + '\n<channel|>' -}}
243
+ {%- endif -%}
244
+
245
+ {%- if message.get('tool_calls') -%}
246
+ {%- for tool_call in message.get('tool_calls') -%}
247
+ {%- set function = tool_call['function'] -%}
248
+ {{- '<|tool_call>call:' + function['name'] + '{' -}}
249
+ {%- if function['arguments'] is mapping -%}
250
+ {%- set ns_args = namespace(found_first=false) -%}
251
+ {%- for key, value in function['arguments'] | dictsort -%}
252
+ {%- if ns_args.found_first %},{% endif -%}
253
+ {%- set ns_args.found_first = true -%}
254
+ {{- key -}}:{{- format_argument(value, escape_keys=False) -}}
255
+ {%- endfor -%}
256
+ {%- elif function['arguments'] is none -%}
257
+ {%- else -%}
258
+ {{- raise_exception(
259
+ "chat_template: tool_calls[].function.arguments must be a "
260
+ "JSON object (mapping), not a string. Deserialize arguments "
261
+ "before passing to the template."
262
+ ) -}}
263
+ {%- endif -%}
264
+ {{- '}<tool_call|>' -}}
265
+ {%- endfor -%}
266
+ {%- set ns.prev_message_type = 'tool_call' -%}
267
+ {%- endif -%}
268
+
269
+ {%- set ns_tr_out = namespace(flag=false) -%}
270
+ {%- if message.get('tool_responses') -%}
271
+ {#- Legacy: tool_responses embedded on the assistant message (Google/Gemma native) -#}
272
+ {%- for tool_response in message.get('tool_responses') -%}
273
+ {{- format_tool_response_block(tool_response['name'] | default('unknown', true), tool_response['response']) -}}
274
+ {%- set ns_tr_out.flag = true -%}
275
+ {%- set ns.prev_message_type = 'tool_response' -%}
276
+ {%- endfor -%}
277
+ {%- elif message.get('tool_calls') -%}
278
+ {#- OpenAI Chat Completions: forward-scan consecutive role:tool messages -#}
279
+ {%- set ns_tool_scan = namespace(stopped=false) -%}
280
+ {%- for k in range(loop.index0 + 1, loop_messages | length) -%}
281
+ {%- if ns_tool_scan.stopped -%}
282
+ {%- elif loop_messages[k]['role'] != 'tool' -%}
283
+ {%- set ns_tool_scan.stopped = true -%}
284
+ {%- else -%}
285
+ {%- set follow = loop_messages[k] -%}
286
+ {#- Resolve tool_call_id to function name -#}
287
+ {%- set ns_tname = namespace(name=follow.get('name') or 'unknown') -%}
288
+ {%- for tc in message.get('tool_calls') -%}
289
+ {%- if tc.get('id') == follow.get('tool_call_id') -%}
290
+ {%- set ns_tname.name = tc['function']['name'] -%}
291
+ {%- endif -%}
292
+ {%- endfor -%}
293
+ {#- Handle content as string or content-parts array -#}
294
+ {%- set tool_body = follow.get('content') -%}
295
+ {%- if tool_body is string -%}
296
+ {{- format_tool_response_block(ns_tname.name, tool_body) -}}
297
+ {%- elif tool_body is sequence and tool_body is not string -%}
298
+ {%- set ns_txt = namespace(s='') -%}
299
+ {%- for part in tool_body -%}
300
+ {%- if part.get('type') == 'text' -%}
301
+ {%- set ns_txt.s = ns_txt.s + (part.get('text') | default('')) -%}
302
+ {%- endif -%}
303
+ {%- endfor -%}
304
+ {{- format_tool_response_block(ns_tname.name, ns_txt.s) -}}
305
+ {%- for part in tool_body -%}
306
+ {%- if part.get('type') in ['image', 'image_url'] -%}
307
+ {{- '<|image|>' -}}
308
+ {%- elif part.get('type') in ['audio', 'input_audio'] -%}
309
+ {{- '<|audio|>' -}}
310
+ {%- elif part.get('type') == 'video' -%}
311
+ {{- '<|video|>' -}}
312
+ {%- endif -%}
313
+ {%- endfor -%}
314
+ {%- else -%}
315
+ {{- format_tool_response_block(ns_tname.name, tool_body) -}}
316
+ {%- endif -%}
317
+ {%- set ns_tr_out.flag = true -%}
318
+ {%- set ns.prev_message_type = 'tool_response' -%}
319
+ {%- endif -%}
320
+ {%- endfor -%}
321
+ {%- endif -%}
322
+
323
+ {%- set captured_content -%}
324
+ {%- if message.get('content') is string -%}
325
+ {%- if role == 'model' -%}
326
+ {{- strip_thinking(message['content']) -}}
327
+ {%- else -%}
328
+ {{- message['content'] | trim -}}
329
+ {%- endif -%}
330
+ {%- elif message.get('content') is sequence -%}
331
+ {%- for item in message['content'] -%}
332
+ {%- if item.get('type') == 'text' -%}
333
+ {%- if role == 'model' -%}
334
+ {{- strip_thinking(item['text']) -}}
335
+ {%- else -%}
336
+ {{- item['text'] | trim -}}
337
+ {%- endif -%}
338
+ {%- elif item.get('type') in ['image', 'image_url'] -%}
339
+ {{- '<|image|>' -}}
340
+ {%- elif item.get('type') in ['audio', 'input_audio'] -%}
341
+ {{- '<|audio|>' -}}
342
+ {%- elif item.get('type') == 'video' -%}
343
+ {{- '<|video|>' -}}
344
+ {%- endif -%}
345
+ {%- endfor -%}
346
+ {%- endif -%}
347
+ {%- endset -%}
348
+
349
+ {{- captured_content -}}
350
+ {%- set has_content = captured_content | trim | length > 0 -%}
351
+
352
+ {#- Forward-scan: find next non-tool message role for continuation detection -#}
353
+ {%- set next_nt = namespace(role=None, found=false) -%}
354
+ {%- for j in range(loop.index0 + 1, loop_messages | length) -%}
355
+ {%- if not next_nt.found -%}
356
+ {%- if loop_messages[j]['role'] != 'tool' -%}
357
+ {%- set next_nt.role = loop_messages[j]['role'] -%}
358
+ {%- set next_nt.found = true -%}
359
+ {%- endif -%}
360
+ {%- endif -%}
361
+ {%- endfor -%}
362
+
363
+ {%- set continues_into_next = (
364
+ role == 'model'
365
+ and next_nt.role == 'assistant'
366
+ and (not message.get('tool_calls') or ns_tr_out.flag)
367
+ ) -%}
368
+
369
+ {%- if ns.prev_message_type == 'tool_call' and not ns_tr_out.flag -%}
370
+ {{- '<|tool_response>' -}}
371
+ {%- elif continues_into_next -%}
372
+ {%- elif not (ns_tr_out.flag and not has_content and not next_nt.found) -%}
373
+ {{- '<turn|>\n' -}}
374
+ {%- endif -%}
375
+
376
+ {#- Track previous non-tool role for next iteration (avoids O(n) backward scan) -#}
377
+ {%- set ns.prev_non_tool_role = message['role'] -%}
378
+ {%- endif -%}
379
+ {%- endfor -%}
380
+
381
+ {%- if add_generation_prompt -%}
382
+ {%- if ns.prev_message_type != 'tool_response' and ns.prev_message_type != 'tool_call' -%}
383
+ {{- '<|turn>model\n' -}}
384
+ {%- if not enable_thinking -%}
385
+ {{- '<|channel>thought\n<channel|>' -}}
386
+ {%- endif -%}
387
+ {%- elif ns.prev_message_type == 'tool_response' and enable_thinking -%}
388
+ {{- '<|channel>thought\n' -}}
389
+ {%- endif -%}
390
+ {%- endif -%}
26_09_08_sft_email_v4_v3/export/gemma4/210/config.json ADDED
@@ -0,0 +1,83 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "attention_bias": false,
3
+ "attention_dropout": 0.0,
4
+ "attention_k_eq_v": true,
5
+ "bos_token_id": 2,
6
+ "dtype": "bfloat16",
7
+ "enable_moe_block": true,
8
+ "eos_token_id": 1,
9
+ "final_logit_softcapping": 30.0,
10
+ "global_head_dim": 512,
11
+ "head_dim": 256,
12
+ "hidden_activation": "gelu_pytorch_tanh",
13
+ "hidden_size": 2816,
14
+ "hidden_size_per_layer_input": 0,
15
+ "initializer_range": 0.02,
16
+ "intermediate_size": 2112,
17
+ "layer_types": [
18
+ "sliding_attention",
19
+ "sliding_attention",
20
+ "sliding_attention",
21
+ "sliding_attention",
22
+ "sliding_attention",
23
+ "full_attention",
24
+ "sliding_attention",
25
+ "sliding_attention",
26
+ "sliding_attention",
27
+ "sliding_attention",
28
+ "sliding_attention",
29
+ "full_attention",
30
+ "sliding_attention",
31
+ "sliding_attention",
32
+ "sliding_attention",
33
+ "sliding_attention",
34
+ "sliding_attention",
35
+ "full_attention",
36
+ "sliding_attention",
37
+ "sliding_attention",
38
+ "sliding_attention",
39
+ "sliding_attention",
40
+ "sliding_attention",
41
+ "full_attention",
42
+ "sliding_attention",
43
+ "sliding_attention",
44
+ "sliding_attention",
45
+ "sliding_attention",
46
+ "sliding_attention",
47
+ "full_attention"
48
+ ],
49
+ "max_position_embeddings": 262144,
50
+ "model_type": "gemma4_text",
51
+ "moe_intermediate_size": 704,
52
+ "num_attention_heads": 16,
53
+ "num_experts": 128,
54
+ "num_global_key_value_heads": 2,
55
+ "num_hidden_layers": 30,
56
+ "num_key_value_heads": 8,
57
+ "num_kv_shared_layers": 0,
58
+ "pad_token_id": 0,
59
+ "rms_norm_eps": 1e-06,
60
+ "rope_parameters": {
61
+ "full_attention": {
62
+ "partial_rotary_factor": 0.25,
63
+ "rope_theta": 1000000.0,
64
+ "rope_type": "proportional"
65
+ },
66
+ "sliding_attention": {
67
+ "rope_theta": 10000.0,
68
+ "rope_type": "default"
69
+ }
70
+ },
71
+ "sliding_window": 1024,
72
+ "tie_word_embeddings": true,
73
+ "top_k_experts": 8,
74
+ "use_bidirectional_attention": "vision",
75
+ "use_cache": true,
76
+ "use_double_wide_mlp": false,
77
+ "vocab_size": 262144,
78
+ "vocab_size_per_layer_input": 262144,
79
+ "architectures": [
80
+ "Gemma4ForCausalLM"
81
+ ],
82
+ "transformers_version": "5.5.0.dev0"
83
+ }
26_09_08_sft_email_v4_v3/export/gemma4/210/generation_config.json ADDED
@@ -0,0 +1,14 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "bos_token_id": 2,
3
+ "do_sample": true,
4
+ "eos_token_id": [
5
+ 1,
6
+ 106,
7
+ 50
8
+ ],
9
+ "pad_token_id": 0,
10
+ "temperature": 1.0,
11
+ "top_k": 64,
12
+ "top_p": 0.95,
13
+ "transformers_version": "5.5.0.dev0"
14
+ }
26_09_08_sft_email_v4_v3/export/gemma4/210/model.safetensors.index.json ADDED
@@ -0,0 +1,1053 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "metadata": {
3
+ "fast_llm_metadata": {
4
+ "fast_llm_version": "0.4.0",
5
+ "model": "gpt",
6
+ "format": "gemma4",
7
+ "config": {
8
+ "type": "gpt",
9
+ "base_model": {
10
+ "decoder": {
11
+ "type": "pattern",
12
+ "blocks": {
13
+ "full_attention": {
14
+ "type": "decoder",
15
+ "mixer": {
16
+ "type": "attention",
17
+ "rotary": {
18
+ "type": "proportional",
19
+ "theta": 1000000.0,
20
+ "partial_rotary_factor": 0.25
21
+ },
22
+ "heads": 16,
23
+ "head_groups": 2,
24
+ "head_size": 512,
25
+ "add_linear_biases": false,
26
+ "dropout": 0.0,
27
+ "softmax_scale_power": 0.0,
28
+ "implementation": "sdpa",
29
+ "query_norm": {
30
+ "type": "rms_norm",
31
+ "epsilon": 1e-06
32
+ },
33
+ "key_norm": {
34
+ "type": "rms_norm",
35
+ "epsilon": 1e-06
36
+ },
37
+ "value_norm": {
38
+ "type": "fixed_rms_norm",
39
+ "epsilon": 1e-06
40
+ },
41
+ "shared_key_value": true
42
+ },
43
+ "mlp": {
44
+ "type": "hybrid_moe",
45
+ "dense": {
46
+ "type": "mlp",
47
+ "pre_norm": {
48
+ "type": "rms_norm",
49
+ "epsilon": 1e-06
50
+ },
51
+ "post_norm": {
52
+ "type": "rms_norm",
53
+ "epsilon": 1e-06
54
+ },
55
+ "intermediate_size": 2112,
56
+ "add_linear_biases": false,
57
+ "gated": true,
58
+ "activation": "gelu",
59
+ "recompute_level": "full"
60
+ },
61
+ "routed": {
62
+ "type": "moe",
63
+ "pre_norm": {
64
+ "type": "rms_norm",
65
+ "epsilon": 1e-06
66
+ },
67
+ "post_norm": {
68
+ "type": "rms_norm",
69
+ "epsilon": 1e-06
70
+ },
71
+ "intermediate_size": 704,
72
+ "add_linear_biases": false,
73
+ "gated": true,
74
+ "activation": "gelu",
75
+ "recompute_level": "full",
76
+ "router_normalization": {
77
+ "type": "fixed_rms_norm",
78
+ "epsilon": 1e-06
79
+ },
80
+ "router_scale": {
81
+ "enabled": true
82
+ },
83
+ "router_input_scale": 0.018844459036110227,
84
+ "router_per_expert_scale": {
85
+ "enabled": true
86
+ },
87
+ "experts": 128,
88
+ "experts_per_token": 8,
89
+ "auxiliary_loss_coefficient": 0.0
90
+ }
91
+ },
92
+ "normalization": {
93
+ "type": "rms_norm",
94
+ "epsilon": 1e-06
95
+ },
96
+ "pre_mlp_normalization": {
97
+ "type": "none"
98
+ },
99
+ "post_mixer_normalization": {
100
+ "type": "rms_norm",
101
+ "epsilon": 1e-06
102
+ },
103
+ "post_mlp_normalization": {
104
+ "type": "rms_norm",
105
+ "epsilon": 1e-06
106
+ },
107
+ "output_scale": {
108
+ "lr_scale": 0.0,
109
+ "enabled": true
110
+ }
111
+ },
112
+ "sliding_attention": {
113
+ "type": "decoder",
114
+ "mixer": {
115
+ "type": "attention",
116
+ "rotary": {
117
+ "type": "default",
118
+ "theta": 10000.0
119
+ },
120
+ "heads": 16,
121
+ "head_groups": 8,
122
+ "head_size": 256,
123
+ "add_linear_biases": false,
124
+ "dropout": 0.0,
125
+ "window_size": 1024,
126
+ "softmax_scale_power": 0.0,
127
+ "implementation": "flash",
128
+ "query_norm": {
129
+ "type": "rms_norm",
130
+ "epsilon": 1e-06
131
+ },
132
+ "key_norm": {
133
+ "type": "rms_norm",
134
+ "epsilon": 1e-06
135
+ },
136
+ "value_norm": {
137
+ "type": "fixed_rms_norm",
138
+ "epsilon": 1e-06
139
+ }
140
+ },
141
+ "mlp": {
142
+ "type": "hybrid_moe",
143
+ "dense": {
144
+ "type": "mlp",
145
+ "pre_norm": {
146
+ "type": "rms_norm",
147
+ "epsilon": 1e-06
148
+ },
149
+ "post_norm": {
150
+ "type": "rms_norm",
151
+ "epsilon": 1e-06
152
+ },
153
+ "intermediate_size": 2112,
154
+ "add_linear_biases": false,
155
+ "gated": true,
156
+ "activation": "gelu",
157
+ "recompute_level": "full"
158
+ },
159
+ "routed": {
160
+ "type": "moe",
161
+ "pre_norm": {
162
+ "type": "rms_norm",
163
+ "epsilon": 1e-06
164
+ },
165
+ "post_norm": {
166
+ "type": "rms_norm",
167
+ "epsilon": 1e-06
168
+ },
169
+ "intermediate_size": 704,
170
+ "add_linear_biases": false,
171
+ "gated": true,
172
+ "activation": "gelu",
173
+ "recompute_level": "full",
174
+ "router_normalization": {
175
+ "type": "fixed_rms_norm",
176
+ "epsilon": 1e-06
177
+ },
178
+ "router_scale": {
179
+ "enabled": true
180
+ },
181
+ "router_input_scale": 0.018844459036110227,
182
+ "router_per_expert_scale": {
183
+ "enabled": true
184
+ },
185
+ "experts": 128,
186
+ "experts_per_token": 8,
187
+ "auxiliary_loss_coefficient": 0.0
188
+ }
189
+ },
190
+ "normalization": {
191
+ "type": "rms_norm",
192
+ "epsilon": 1e-06
193
+ },
194
+ "pre_mlp_normalization": {
195
+ "type": "none"
196
+ },
197
+ "post_mixer_normalization": {
198
+ "type": "rms_norm",
199
+ "epsilon": 1e-06
200
+ },
201
+ "post_mlp_normalization": {
202
+ "type": "rms_norm",
203
+ "epsilon": 1e-06
204
+ },
205
+ "output_scale": {
206
+ "lr_scale": 0.0,
207
+ "enabled": true
208
+ }
209
+ }
210
+ },
211
+ "pattern": [
212
+ "sliding_attention",
213
+ "sliding_attention",
214
+ "sliding_attention",
215
+ "sliding_attention",
216
+ "sliding_attention",
217
+ "full_attention",
218
+ "sliding_attention",
219
+ "sliding_attention",
220
+ "sliding_attention",
221
+ "sliding_attention",
222
+ "sliding_attention",
223
+ "full_attention",
224
+ "sliding_attention",
225
+ "sliding_attention",
226
+ "sliding_attention",
227
+ "sliding_attention",
228
+ "sliding_attention",
229
+ "full_attention",
230
+ "sliding_attention",
231
+ "sliding_attention",
232
+ "sliding_attention",
233
+ "sliding_attention",
234
+ "sliding_attention",
235
+ "full_attention",
236
+ "sliding_attention",
237
+ "sliding_attention",
238
+ "sliding_attention",
239
+ "sliding_attention",
240
+ "sliding_attention",
241
+ "full_attention"
242
+ ],
243
+ "num_blocks": 30
244
+ },
245
+ "embeddings": {
246
+ "vocab_size": 262144,
247
+ "vocab_parallel": false,
248
+ "embedding_scale": 53.0659966456864
249
+ },
250
+ "head": {
251
+ "normalization": {
252
+ "type": "rms_norm",
253
+ "epsilon": 1e-06
254
+ },
255
+ "cross_entropy_splits": 8,
256
+ "final_logit_softcap": 30.0
257
+ },
258
+ "tied_embedding_weight": true,
259
+ "hidden_size": 2816,
260
+ "peft": {
261
+ "type": "none"
262
+ }
263
+ },
264
+ "multi_stage": {
265
+ "zero_stage": 3
266
+ },
267
+ "distributed": {
268
+ "tensor_parallel": 2,
269
+ "sequence_tensor_parallel": true,
270
+ "sequence_data_parallel": 4,
271
+ "world_size": 32,
272
+ "rank": 0,
273
+ "local_world_size": 8,
274
+ "timeout": 3600.0,
275
+ "compute_dtype": "bfloat16"
276
+ }
277
+ },
278
+ "shards": [
279
+ "weights"
280
+ ],
281
+ "metadata": {
282
+ "optimizer": {
283
+ "current_step": 210,
284
+ "grad_scaler": {
285
+ "type": "NoopGradScaler"
286
+ }
287
+ },
288
+ "completed_steps": 210,
289
+ "metrics": {
290
+ "training": {
291
+ "batch_size": 2097152,
292
+ "load_balancing_loss": 815.46337890625,
293
+ "lm_head_loss": 0.11222395300865173,
294
+ "total_steps": 210,
295
+ "completed_steps": 210,
296
+ "consumed_tokens": 440401920,
297
+ "percent_done": 100.0,
298
+ "step_time_ms": 28241.050300188363,
299
+ "step_time_average_ms": 30303.581654688434,
300
+ "remaining_time": 0.0,
301
+ "completion_time": 1788873090.3226085,
302
+ "skipped_iters": 0,
303
+ "nan_iters": 0,
304
+ "model_tflops": 59447.884978233706,
305
+ "hardware_tflops": 73753.52245463323,
306
+ "tokens_per_sec_per_gpu": 2320.5935793245935,
307
+ "run": 0,
308
+ "grad_norm": 2.482532262802124,
309
+ "learning_rate": 0.0,
310
+ "loss_scale": 1.0,
311
+ "reserved": 55562.0,
312
+ "allocated": 21478.49755859375,
313
+ "max_allocated": 54800.1123046875,
314
+ "max_reserved": 55562.0,
315
+ "global_max_reserved": 74782.0
316
+ }
317
+ }
318
+ }
319
+ },
320
+ "model_config": {
321
+ "vocab_size": 262144,
322
+ "num_attention_heads": 16,
323
+ "num_key_value_heads": 8,
324
+ "head_dim": 256,
325
+ "global_head_dim": 512,
326
+ "num_global_key_value_heads": 2,
327
+ "attention_bias": false,
328
+ "attention_dropout": 0.0,
329
+ "sliding_window": 1024,
330
+ "rms_norm_eps": 1e-06,
331
+ "attention_k_eq_v": true,
332
+ "rope_parameters": {
333
+ "sliding_attention": {
334
+ "rope_type": "default",
335
+ "rope_theta": 10000.0
336
+ },
337
+ "full_attention": {
338
+ "rope_type": "proportional",
339
+ "rope_theta": 1000000.0,
340
+ "partial_rotary_factor": 0.25
341
+ }
342
+ },
343
+ "intermediate_size": 2112,
344
+ "hidden_activation": "gelu_pytorch_tanh",
345
+ "num_experts": 128,
346
+ "top_k_experts": 8,
347
+ "moe_intermediate_size": 704,
348
+ "enable_moe_block": true,
349
+ "num_hidden_layers": 30,
350
+ "layer_types": [
351
+ "sliding_attention",
352
+ "sliding_attention",
353
+ "sliding_attention",
354
+ "sliding_attention",
355
+ "sliding_attention",
356
+ "full_attention",
357
+ "sliding_attention",
358
+ "sliding_attention",
359
+ "sliding_attention",
360
+ "sliding_attention",
361
+ "sliding_attention",
362
+ "full_attention",
363
+ "sliding_attention",
364
+ "sliding_attention",
365
+ "sliding_attention",
366
+ "sliding_attention",
367
+ "sliding_attention",
368
+ "full_attention",
369
+ "sliding_attention",
370
+ "sliding_attention",
371
+ "sliding_attention",
372
+ "sliding_attention",
373
+ "sliding_attention",
374
+ "full_attention",
375
+ "sliding_attention",
376
+ "sliding_attention",
377
+ "sliding_attention",
378
+ "sliding_attention",
379
+ "sliding_attention",
380
+ "full_attention"
381
+ ],
382
+ "final_logit_softcapping": 30.0,
383
+ "tie_word_embeddings": true,
384
+ "hidden_size": 2816,
385
+ "hidden_size_per_layer_input": 0,
386
+ "use_bidirectional_attention": null,
387
+ "model_type": "gemma4_text",
388
+ "architectures": [
389
+ "Gemma4ForCausalLM"
390
+ ]
391
+ },
392
+ "format": "pt"
393
+ },
394
+ "weight_map": {
395
+ "model.embed_tokens.weight": "model_0.safetensors",
396
+ "model.layers.0.input_layernorm.weight": "model_0.safetensors",
397
+ "model.layers.0.post_attention_layernorm.weight": "model_0.safetensors",
398
+ "model.layers.0.post_feedforward_layernorm.weight": "model_0.safetensors",
399
+ "model.layers.0.self_attn.q_norm.weight": "model_0.safetensors",
400
+ "model.layers.0.self_attn.k_norm.weight": "model_0.safetensors",
401
+ "model.layers.0.pre_feedforward_layernorm.weight": "model_0.safetensors",
402
+ "model.layers.0.post_feedforward_layernorm_1.weight": "model_0.safetensors",
403
+ "model.layers.0.router.scale": "model_0.safetensors",
404
+ "model.layers.0.router.per_expert_scale": "model_0.safetensors",
405
+ "model.layers.0.pre_feedforward_layernorm_2.weight": "model_0.safetensors",
406
+ "model.layers.0.post_feedforward_layernorm_2.weight": "model_0.safetensors",
407
+ "model.layers.0.router.proj.weight": "model_0.safetensors",
408
+ "model.layers.0.self_attn.q_proj.weight": "model_0.safetensors",
409
+ "model.layers.0.self_attn.k_proj.weight": "model_0.safetensors",
410
+ "model.layers.0.self_attn.v_proj.weight": "model_0.safetensors",
411
+ "model.layers.0.self_attn.o_proj.weight": "model_0.safetensors",
412
+ "model.layers.0.mlp.gate_proj.weight": "model_0.safetensors",
413
+ "model.layers.0.mlp.up_proj.weight": "model_0.safetensors",
414
+ "model.layers.0.mlp.down_proj.weight": "model_0.safetensors",
415
+ "model.layers.0.experts.gate_up_proj": "model_0.safetensors",
416
+ "model.layers.0.experts.down_proj": "model_0.safetensors",
417
+ "model.layers.0.layer_scalar": "model_0.safetensors",
418
+ "model.layers.1.input_layernorm.weight": "model_0.safetensors",
419
+ "model.layers.1.post_attention_layernorm.weight": "model_0.safetensors",
420
+ "model.layers.1.post_feedforward_layernorm.weight": "model_0.safetensors",
421
+ "model.layers.1.self_attn.q_norm.weight": "model_0.safetensors",
422
+ "model.layers.1.self_attn.k_norm.weight": "model_0.safetensors",
423
+ "model.layers.1.pre_feedforward_layernorm.weight": "model_0.safetensors",
424
+ "model.layers.1.post_feedforward_layernorm_1.weight": "model_0.safetensors",
425
+ "model.layers.1.router.scale": "model_0.safetensors",
426
+ "model.layers.1.router.per_expert_scale": "model_0.safetensors",
427
+ "model.layers.1.pre_feedforward_layernorm_2.weight": "model_0.safetensors",
428
+ "model.layers.1.post_feedforward_layernorm_2.weight": "model_0.safetensors",
429
+ "model.layers.1.router.proj.weight": "model_0.safetensors",
430
+ "model.layers.1.self_attn.q_proj.weight": "model_0.safetensors",
431
+ "model.layers.1.self_attn.k_proj.weight": "model_0.safetensors",
432
+ "model.layers.1.self_attn.v_proj.weight": "model_0.safetensors",
433
+ "model.layers.1.self_attn.o_proj.weight": "model_0.safetensors",
434
+ "model.layers.1.mlp.gate_proj.weight": "model_0.safetensors",
435
+ "model.layers.1.mlp.up_proj.weight": "model_0.safetensors",
436
+ "model.layers.1.mlp.down_proj.weight": "model_0.safetensors",
437
+ "model.layers.1.experts.gate_up_proj": "model_0.safetensors",
438
+ "model.layers.1.experts.down_proj": "model_0.safetensors",
439
+ "model.layers.1.layer_scalar": "model_0.safetensors",
440
+ "model.layers.2.input_layernorm.weight": "model_0.safetensors",
441
+ "model.layers.2.post_attention_layernorm.weight": "model_0.safetensors",
442
+ "model.layers.2.post_feedforward_layernorm.weight": "model_0.safetensors",
443
+ "model.layers.2.self_attn.q_norm.weight": "model_0.safetensors",
444
+ "model.layers.2.self_attn.k_norm.weight": "model_0.safetensors",
445
+ "model.layers.2.pre_feedforward_layernorm.weight": "model_0.safetensors",
446
+ "model.layers.2.post_feedforward_layernorm_1.weight": "model_0.safetensors",
447
+ "model.layers.2.router.scale": "model_0.safetensors",
448
+ "model.layers.2.router.per_expert_scale": "model_0.safetensors",
449
+ "model.layers.2.pre_feedforward_layernorm_2.weight": "model_0.safetensors",
450
+ "model.layers.2.post_feedforward_layernorm_2.weight": "model_0.safetensors",
451
+ "model.layers.2.router.proj.weight": "model_0.safetensors",
452
+ "model.layers.2.self_attn.q_proj.weight": "model_0.safetensors",
453
+ "model.layers.2.self_attn.k_proj.weight": "model_0.safetensors",
454
+ "model.layers.2.self_attn.v_proj.weight": "model_0.safetensors",
455
+ "model.layers.2.self_attn.o_proj.weight": "model_0.safetensors",
456
+ "model.layers.2.mlp.gate_proj.weight": "model_0.safetensors",
457
+ "model.layers.2.mlp.up_proj.weight": "model_0.safetensors",
458
+ "model.layers.2.mlp.down_proj.weight": "model_0.safetensors",
459
+ "model.layers.2.experts.gate_up_proj": "model_0.safetensors",
460
+ "model.layers.2.experts.down_proj": "model_0.safetensors",
461
+ "model.layers.2.layer_scalar": "model_0.safetensors",
462
+ "model.layers.3.input_layernorm.weight": "model_0.safetensors",
463
+ "model.layers.3.post_attention_layernorm.weight": "model_0.safetensors",
464
+ "model.layers.3.post_feedforward_layernorm.weight": "model_0.safetensors",
465
+ "model.layers.3.self_attn.q_norm.weight": "model_0.safetensors",
466
+ "model.layers.3.self_attn.k_norm.weight": "model_0.safetensors",
467
+ "model.layers.3.pre_feedforward_layernorm.weight": "model_0.safetensors",
468
+ "model.layers.3.post_feedforward_layernorm_1.weight": "model_0.safetensors",
469
+ "model.layers.3.router.scale": "model_0.safetensors",
470
+ "model.layers.3.router.per_expert_scale": "model_0.safetensors",
471
+ "model.layers.3.pre_feedforward_layernorm_2.weight": "model_0.safetensors",
472
+ "model.layers.3.post_feedforward_layernorm_2.weight": "model_0.safetensors",
473
+ "model.layers.3.router.proj.weight": "model_0.safetensors",
474
+ "model.layers.3.self_attn.q_proj.weight": "model_0.safetensors",
475
+ "model.layers.3.self_attn.k_proj.weight": "model_0.safetensors",
476
+ "model.layers.3.self_attn.v_proj.weight": "model_0.safetensors",
477
+ "model.layers.3.self_attn.o_proj.weight": "model_0.safetensors",
478
+ "model.layers.3.mlp.gate_proj.weight": "model_0.safetensors",
479
+ "model.layers.3.mlp.up_proj.weight": "model_0.safetensors",
480
+ "model.layers.3.mlp.down_proj.weight": "model_0.safetensors",
481
+ "model.layers.3.experts.gate_up_proj": "model_0.safetensors",
482
+ "model.layers.3.experts.down_proj": "model_0.safetensors",
483
+ "model.layers.3.layer_scalar": "model_0.safetensors",
484
+ "model.layers.4.input_layernorm.weight": "model_0.safetensors",
485
+ "model.layers.4.post_attention_layernorm.weight": "model_0.safetensors",
486
+ "model.layers.4.post_feedforward_layernorm.weight": "model_0.safetensors",
487
+ "model.layers.4.self_attn.q_norm.weight": "model_0.safetensors",
488
+ "model.layers.4.self_attn.k_norm.weight": "model_0.safetensors",
489
+ "model.layers.4.pre_feedforward_layernorm.weight": "model_0.safetensors",
490
+ "model.layers.4.post_feedforward_layernorm_1.weight": "model_0.safetensors",
491
+ "model.layers.4.router.scale": "model_0.safetensors",
492
+ "model.layers.4.router.per_expert_scale": "model_0.safetensors",
493
+ "model.layers.4.pre_feedforward_layernorm_2.weight": "model_0.safetensors",
494
+ "model.layers.4.post_feedforward_layernorm_2.weight": "model_0.safetensors",
495
+ "model.layers.4.router.proj.weight": "model_0.safetensors",
496
+ "model.layers.4.self_attn.q_proj.weight": "model_0.safetensors",
497
+ "model.layers.4.self_attn.k_proj.weight": "model_0.safetensors",
498
+ "model.layers.4.self_attn.v_proj.weight": "model_0.safetensors",
499
+ "model.layers.4.self_attn.o_proj.weight": "model_0.safetensors",
500
+ "model.layers.4.mlp.gate_proj.weight": "model_0.safetensors",
501
+ "model.layers.4.mlp.up_proj.weight": "model_0.safetensors",
502
+ "model.layers.4.mlp.down_proj.weight": "model_0.safetensors",
503
+ "model.layers.4.experts.gate_up_proj": "model_0.safetensors",
504
+ "model.layers.4.experts.down_proj": "model_1.safetensors",
505
+ "model.layers.4.layer_scalar": "model_1.safetensors",
506
+ "model.layers.5.input_layernorm.weight": "model_1.safetensors",
507
+ "model.layers.5.post_attention_layernorm.weight": "model_1.safetensors",
508
+ "model.layers.5.post_feedforward_layernorm.weight": "model_1.safetensors",
509
+ "model.layers.5.self_attn.q_norm.weight": "model_1.safetensors",
510
+ "model.layers.5.self_attn.k_norm.weight": "model_1.safetensors",
511
+ "model.layers.5.pre_feedforward_layernorm.weight": "model_1.safetensors",
512
+ "model.layers.5.post_feedforward_layernorm_1.weight": "model_1.safetensors",
513
+ "model.layers.5.router.scale": "model_1.safetensors",
514
+ "model.layers.5.router.per_expert_scale": "model_1.safetensors",
515
+ "model.layers.5.pre_feedforward_layernorm_2.weight": "model_1.safetensors",
516
+ "model.layers.5.post_feedforward_layernorm_2.weight": "model_1.safetensors",
517
+ "model.layers.5.router.proj.weight": "model_1.safetensors",
518
+ "model.layers.5.self_attn.q_proj.weight": "model_1.safetensors",
519
+ "model.layers.5.self_attn.k_proj.weight": "model_1.safetensors",
520
+ "model.layers.5.self_attn.o_proj.weight": "model_1.safetensors",
521
+ "model.layers.5.mlp.gate_proj.weight": "model_1.safetensors",
522
+ "model.layers.5.mlp.up_proj.weight": "model_1.safetensors",
523
+ "model.layers.5.mlp.down_proj.weight": "model_1.safetensors",
524
+ "model.layers.5.experts.gate_up_proj": "model_1.safetensors",
525
+ "model.layers.5.experts.down_proj": "model_1.safetensors",
526
+ "model.layers.5.layer_scalar": "model_1.safetensors",
527
+ "model.layers.6.input_layernorm.weight": "model_1.safetensors",
528
+ "model.layers.6.post_attention_layernorm.weight": "model_1.safetensors",
529
+ "model.layers.6.post_feedforward_layernorm.weight": "model_1.safetensors",
530
+ "model.layers.6.self_attn.q_norm.weight": "model_1.safetensors",
531
+ "model.layers.6.self_attn.k_norm.weight": "model_1.safetensors",
532
+ "model.layers.6.pre_feedforward_layernorm.weight": "model_1.safetensors",
533
+ "model.layers.6.post_feedforward_layernorm_1.weight": "model_1.safetensors",
534
+ "model.layers.6.router.scale": "model_1.safetensors",
535
+ "model.layers.6.router.per_expert_scale": "model_1.safetensors",
536
+ "model.layers.6.pre_feedforward_layernorm_2.weight": "model_1.safetensors",
537
+ "model.layers.6.post_feedforward_layernorm_2.weight": "model_1.safetensors",
538
+ "model.layers.6.router.proj.weight": "model_1.safetensors",
539
+ "model.layers.6.self_attn.q_proj.weight": "model_1.safetensors",
540
+ "model.layers.6.self_attn.k_proj.weight": "model_1.safetensors",
541
+ "model.layers.6.self_attn.v_proj.weight": "model_1.safetensors",
542
+ "model.layers.6.self_attn.o_proj.weight": "model_1.safetensors",
543
+ "model.layers.6.mlp.gate_proj.weight": "model_1.safetensors",
544
+ "model.layers.6.mlp.up_proj.weight": "model_1.safetensors",
545
+ "model.layers.6.mlp.down_proj.weight": "model_1.safetensors",
546
+ "model.layers.6.experts.gate_up_proj": "model_1.safetensors",
547
+ "model.layers.6.experts.down_proj": "model_1.safetensors",
548
+ "model.layers.6.layer_scalar": "model_1.safetensors",
549
+ "model.layers.7.input_layernorm.weight": "model_1.safetensors",
550
+ "model.layers.7.post_attention_layernorm.weight": "model_1.safetensors",
551
+ "model.layers.7.post_feedforward_layernorm.weight": "model_1.safetensors",
552
+ "model.layers.7.self_attn.q_norm.weight": "model_1.safetensors",
553
+ "model.layers.7.self_attn.k_norm.weight": "model_1.safetensors",
554
+ "model.layers.7.pre_feedforward_layernorm.weight": "model_1.safetensors",
555
+ "model.layers.7.post_feedforward_layernorm_1.weight": "model_1.safetensors",
556
+ "model.layers.7.router.scale": "model_1.safetensors",
557
+ "model.layers.7.router.per_expert_scale": "model_1.safetensors",
558
+ "model.layers.7.pre_feedforward_layernorm_2.weight": "model_1.safetensors",
559
+ "model.layers.7.post_feedforward_layernorm_2.weight": "model_1.safetensors",
560
+ "model.layers.7.router.proj.weight": "model_1.safetensors",
561
+ "model.layers.7.self_attn.q_proj.weight": "model_1.safetensors",
562
+ "model.layers.7.self_attn.k_proj.weight": "model_1.safetensors",
563
+ "model.layers.7.self_attn.v_proj.weight": "model_1.safetensors",
564
+ "model.layers.7.self_attn.o_proj.weight": "model_1.safetensors",
565
+ "model.layers.7.mlp.gate_proj.weight": "model_1.safetensors",
566
+ "model.layers.7.mlp.up_proj.weight": "model_1.safetensors",
567
+ "model.layers.7.mlp.down_proj.weight": "model_1.safetensors",
568
+ "model.layers.7.experts.gate_up_proj": "model_1.safetensors",
569
+ "model.layers.7.experts.down_proj": "model_1.safetensors",
570
+ "model.layers.7.layer_scalar": "model_1.safetensors",
571
+ "model.layers.8.input_layernorm.weight": "model_1.safetensors",
572
+ "model.layers.8.post_attention_layernorm.weight": "model_1.safetensors",
573
+ "model.layers.8.post_feedforward_layernorm.weight": "model_1.safetensors",
574
+ "model.layers.8.self_attn.q_norm.weight": "model_1.safetensors",
575
+ "model.layers.8.self_attn.k_norm.weight": "model_1.safetensors",
576
+ "model.layers.8.pre_feedforward_layernorm.weight": "model_1.safetensors",
577
+ "model.layers.8.post_feedforward_layernorm_1.weight": "model_1.safetensors",
578
+ "model.layers.8.router.scale": "model_1.safetensors",
579
+ "model.layers.8.router.per_expert_scale": "model_1.safetensors",
580
+ "model.layers.8.pre_feedforward_layernorm_2.weight": "model_1.safetensors",
581
+ "model.layers.8.post_feedforward_layernorm_2.weight": "model_1.safetensors",
582
+ "model.layers.8.router.proj.weight": "model_1.safetensors",
583
+ "model.layers.8.self_attn.q_proj.weight": "model_1.safetensors",
584
+ "model.layers.8.self_attn.k_proj.weight": "model_1.safetensors",
585
+ "model.layers.8.self_attn.v_proj.weight": "model_1.safetensors",
586
+ "model.layers.8.self_attn.o_proj.weight": "model_1.safetensors",
587
+ "model.layers.8.mlp.gate_proj.weight": "model_1.safetensors",
588
+ "model.layers.8.mlp.up_proj.weight": "model_1.safetensors",
589
+ "model.layers.8.mlp.down_proj.weight": "model_1.safetensors",
590
+ "model.layers.8.experts.gate_up_proj": "model_1.safetensors",
591
+ "model.layers.8.experts.down_proj": "model_1.safetensors",
592
+ "model.layers.8.layer_scalar": "model_1.safetensors",
593
+ "model.layers.9.input_layernorm.weight": "model_1.safetensors",
594
+ "model.layers.9.post_attention_layernorm.weight": "model_1.safetensors",
595
+ "model.layers.9.post_feedforward_layernorm.weight": "model_1.safetensors",
596
+ "model.layers.9.self_attn.q_norm.weight": "model_1.safetensors",
597
+ "model.layers.9.self_attn.k_norm.weight": "model_1.safetensors",
598
+ "model.layers.9.pre_feedforward_layernorm.weight": "model_1.safetensors",
599
+ "model.layers.9.post_feedforward_layernorm_1.weight": "model_1.safetensors",
600
+ "model.layers.9.router.scale": "model_1.safetensors",
601
+ "model.layers.9.router.per_expert_scale": "model_1.safetensors",
602
+ "model.layers.9.pre_feedforward_layernorm_2.weight": "model_1.safetensors",
603
+ "model.layers.9.post_feedforward_layernorm_2.weight": "model_1.safetensors",
604
+ "model.layers.9.router.proj.weight": "model_1.safetensors",
605
+ "model.layers.9.self_attn.q_proj.weight": "model_1.safetensors",
606
+ "model.layers.9.self_attn.k_proj.weight": "model_1.safetensors",
607
+ "model.layers.9.self_attn.v_proj.weight": "model_1.safetensors",
608
+ "model.layers.9.self_attn.o_proj.weight": "model_1.safetensors",
609
+ "model.layers.9.mlp.gate_proj.weight": "model_1.safetensors",
610
+ "model.layers.9.mlp.up_proj.weight": "model_1.safetensors",
611
+ "model.layers.9.mlp.down_proj.weight": "model_1.safetensors",
612
+ "model.layers.9.experts.gate_up_proj": "model_1.safetensors",
613
+ "model.layers.9.experts.down_proj": "model_1.safetensors",
614
+ "model.layers.9.layer_scalar": "model_2.safetensors",
615
+ "model.layers.10.input_layernorm.weight": "model_2.safetensors",
616
+ "model.layers.10.post_attention_layernorm.weight": "model_2.safetensors",
617
+ "model.layers.10.post_feedforward_layernorm.weight": "model_2.safetensors",
618
+ "model.layers.10.self_attn.q_norm.weight": "model_2.safetensors",
619
+ "model.layers.10.self_attn.k_norm.weight": "model_2.safetensors",
620
+ "model.layers.10.pre_feedforward_layernorm.weight": "model_2.safetensors",
621
+ "model.layers.10.post_feedforward_layernorm_1.weight": "model_2.safetensors",
622
+ "model.layers.10.router.scale": "model_2.safetensors",
623
+ "model.layers.10.router.per_expert_scale": "model_2.safetensors",
624
+ "model.layers.10.pre_feedforward_layernorm_2.weight": "model_2.safetensors",
625
+ "model.layers.10.post_feedforward_layernorm_2.weight": "model_2.safetensors",
626
+ "model.layers.10.router.proj.weight": "model_2.safetensors",
627
+ "model.layers.10.self_attn.q_proj.weight": "model_2.safetensors",
628
+ "model.layers.10.self_attn.k_proj.weight": "model_2.safetensors",
629
+ "model.layers.10.self_attn.v_proj.weight": "model_2.safetensors",
630
+ "model.layers.10.self_attn.o_proj.weight": "model_2.safetensors",
631
+ "model.layers.10.mlp.gate_proj.weight": "model_2.safetensors",
632
+ "model.layers.10.mlp.up_proj.weight": "model_2.safetensors",
633
+ "model.layers.10.mlp.down_proj.weight": "model_2.safetensors",
634
+ "model.layers.10.experts.gate_up_proj": "model_2.safetensors",
635
+ "model.layers.10.experts.down_proj": "model_2.safetensors",
636
+ "model.layers.10.layer_scalar": "model_2.safetensors",
637
+ "model.layers.11.input_layernorm.weight": "model_2.safetensors",
638
+ "model.layers.11.post_attention_layernorm.weight": "model_2.safetensors",
639
+ "model.layers.11.post_feedforward_layernorm.weight": "model_2.safetensors",
640
+ "model.layers.11.self_attn.q_norm.weight": "model_2.safetensors",
641
+ "model.layers.11.self_attn.k_norm.weight": "model_2.safetensors",
642
+ "model.layers.11.pre_feedforward_layernorm.weight": "model_2.safetensors",
643
+ "model.layers.11.post_feedforward_layernorm_1.weight": "model_2.safetensors",
644
+ "model.layers.11.router.scale": "model_2.safetensors",
645
+ "model.layers.11.router.per_expert_scale": "model_2.safetensors",
646
+ "model.layers.11.pre_feedforward_layernorm_2.weight": "model_2.safetensors",
647
+ "model.layers.11.post_feedforward_layernorm_2.weight": "model_2.safetensors",
648
+ "model.layers.11.router.proj.weight": "model_2.safetensors",
649
+ "model.layers.11.self_attn.q_proj.weight": "model_2.safetensors",
650
+ "model.layers.11.self_attn.k_proj.weight": "model_2.safetensors",
651
+ "model.layers.11.self_attn.o_proj.weight": "model_2.safetensors",
652
+ "model.layers.11.mlp.gate_proj.weight": "model_2.safetensors",
653
+ "model.layers.11.mlp.up_proj.weight": "model_2.safetensors",
654
+ "model.layers.11.mlp.down_proj.weight": "model_2.safetensors",
655
+ "model.layers.11.experts.gate_up_proj": "model_2.safetensors",
656
+ "model.layers.11.experts.down_proj": "model_2.safetensors",
657
+ "model.layers.11.layer_scalar": "model_2.safetensors",
658
+ "model.layers.12.input_layernorm.weight": "model_2.safetensors",
659
+ "model.layers.12.post_attention_layernorm.weight": "model_2.safetensors",
660
+ "model.layers.12.post_feedforward_layernorm.weight": "model_2.safetensors",
661
+ "model.layers.12.self_attn.q_norm.weight": "model_2.safetensors",
662
+ "model.layers.12.self_attn.k_norm.weight": "model_2.safetensors",
663
+ "model.layers.12.pre_feedforward_layernorm.weight": "model_2.safetensors",
664
+ "model.layers.12.post_feedforward_layernorm_1.weight": "model_2.safetensors",
665
+ "model.layers.12.router.scale": "model_2.safetensors",
666
+ "model.layers.12.router.per_expert_scale": "model_2.safetensors",
667
+ "model.layers.12.pre_feedforward_layernorm_2.weight": "model_2.safetensors",
668
+ "model.layers.12.post_feedforward_layernorm_2.weight": "model_2.safetensors",
669
+ "model.layers.12.router.proj.weight": "model_2.safetensors",
670
+ "model.layers.12.self_attn.q_proj.weight": "model_2.safetensors",
671
+ "model.layers.12.self_attn.k_proj.weight": "model_2.safetensors",
672
+ "model.layers.12.self_attn.v_proj.weight": "model_2.safetensors",
673
+ "model.layers.12.self_attn.o_proj.weight": "model_2.safetensors",
674
+ "model.layers.12.mlp.gate_proj.weight": "model_2.safetensors",
675
+ "model.layers.12.mlp.up_proj.weight": "model_2.safetensors",
676
+ "model.layers.12.mlp.down_proj.weight": "model_2.safetensors",
677
+ "model.layers.12.experts.gate_up_proj": "model_2.safetensors",
678
+ "model.layers.12.experts.down_proj": "model_2.safetensors",
679
+ "model.layers.12.layer_scalar": "model_2.safetensors",
680
+ "model.layers.13.input_layernorm.weight": "model_2.safetensors",
681
+ "model.layers.13.post_attention_layernorm.weight": "model_2.safetensors",
682
+ "model.layers.13.post_feedforward_layernorm.weight": "model_2.safetensors",
683
+ "model.layers.13.self_attn.q_norm.weight": "model_2.safetensors",
684
+ "model.layers.13.self_attn.k_norm.weight": "model_2.safetensors",
685
+ "model.layers.13.pre_feedforward_layernorm.weight": "model_2.safetensors",
686
+ "model.layers.13.post_feedforward_layernorm_1.weight": "model_2.safetensors",
687
+ "model.layers.13.router.scale": "model_2.safetensors",
688
+ "model.layers.13.router.per_expert_scale": "model_2.safetensors",
689
+ "model.layers.13.pre_feedforward_layernorm_2.weight": "model_2.safetensors",
690
+ "model.layers.13.post_feedforward_layernorm_2.weight": "model_2.safetensors",
691
+ "model.layers.13.router.proj.weight": "model_2.safetensors",
692
+ "model.layers.13.self_attn.q_proj.weight": "model_2.safetensors",
693
+ "model.layers.13.self_attn.k_proj.weight": "model_2.safetensors",
694
+ "model.layers.13.self_attn.v_proj.weight": "model_2.safetensors",
695
+ "model.layers.13.self_attn.o_proj.weight": "model_2.safetensors",
696
+ "model.layers.13.mlp.gate_proj.weight": "model_2.safetensors",
697
+ "model.layers.13.mlp.up_proj.weight": "model_2.safetensors",
698
+ "model.layers.13.mlp.down_proj.weight": "model_2.safetensors",
699
+ "model.layers.13.experts.gate_up_proj": "model_2.safetensors",
700
+ "model.layers.13.experts.down_proj": "model_2.safetensors",
701
+ "model.layers.13.layer_scalar": "model_2.safetensors",
702
+ "model.layers.14.input_layernorm.weight": "model_2.safetensors",
703
+ "model.layers.14.post_attention_layernorm.weight": "model_2.safetensors",
704
+ "model.layers.14.post_feedforward_layernorm.weight": "model_2.safetensors",
705
+ "model.layers.14.self_attn.q_norm.weight": "model_2.safetensors",
706
+ "model.layers.14.self_attn.k_norm.weight": "model_2.safetensors",
707
+ "model.layers.14.pre_feedforward_layernorm.weight": "model_2.safetensors",
708
+ "model.layers.14.post_feedforward_layernorm_1.weight": "model_2.safetensors",
709
+ "model.layers.14.router.scale": "model_2.safetensors",
710
+ "model.layers.14.router.per_expert_scale": "model_2.safetensors",
711
+ "model.layers.14.pre_feedforward_layernorm_2.weight": "model_2.safetensors",
712
+ "model.layers.14.post_feedforward_layernorm_2.weight": "model_2.safetensors",
713
+ "model.layers.14.router.proj.weight": "model_2.safetensors",
714
+ "model.layers.14.self_attn.q_proj.weight": "model_2.safetensors",
715
+ "model.layers.14.self_attn.k_proj.weight": "model_2.safetensors",
716
+ "model.layers.14.self_attn.v_proj.weight": "model_2.safetensors",
717
+ "model.layers.14.self_attn.o_proj.weight": "model_2.safetensors",
718
+ "model.layers.14.mlp.gate_proj.weight": "model_2.safetensors",
719
+ "model.layers.14.mlp.up_proj.weight": "model_2.safetensors",
720
+ "model.layers.14.mlp.down_proj.weight": "model_2.safetensors",
721
+ "model.layers.14.experts.gate_up_proj": "model_2.safetensors",
722
+ "model.layers.14.experts.down_proj": "model_2.safetensors",
723
+ "model.layers.14.layer_scalar": "model_2.safetensors",
724
+ "model.layers.15.input_layernorm.weight": "model_2.safetensors",
725
+ "model.layers.15.post_attention_layernorm.weight": "model_2.safetensors",
726
+ "model.layers.15.post_feedforward_layernorm.weight": "model_2.safetensors",
727
+ "model.layers.15.self_attn.q_norm.weight": "model_2.safetensors",
728
+ "model.layers.15.self_attn.k_norm.weight": "model_2.safetensors",
729
+ "model.layers.15.pre_feedforward_layernorm.weight": "model_2.safetensors",
730
+ "model.layers.15.post_feedforward_layernorm_1.weight": "model_2.safetensors",
731
+ "model.layers.15.router.scale": "model_2.safetensors",
732
+ "model.layers.15.router.per_expert_scale": "model_2.safetensors",
733
+ "model.layers.15.pre_feedforward_layernorm_2.weight": "model_2.safetensors",
734
+ "model.layers.15.post_feedforward_layernorm_2.weight": "model_2.safetensors",
735
+ "model.layers.15.router.proj.weight": "model_2.safetensors",
736
+ "model.layers.15.self_attn.q_proj.weight": "model_2.safetensors",
737
+ "model.layers.15.self_attn.k_proj.weight": "model_2.safetensors",
738
+ "model.layers.15.self_attn.v_proj.weight": "model_2.safetensors",
739
+ "model.layers.15.self_attn.o_proj.weight": "model_2.safetensors",
740
+ "model.layers.15.mlp.gate_proj.weight": "model_2.safetensors",
741
+ "model.layers.15.mlp.up_proj.weight": "model_2.safetensors",
742
+ "model.layers.15.mlp.down_proj.weight": "model_2.safetensors",
743
+ "model.layers.15.experts.gate_up_proj": "model_2.safetensors",
744
+ "model.layers.15.experts.down_proj": "model_3.safetensors",
745
+ "model.layers.15.layer_scalar": "model_3.safetensors",
746
+ "model.layers.16.input_layernorm.weight": "model_3.safetensors",
747
+ "model.layers.16.post_attention_layernorm.weight": "model_3.safetensors",
748
+ "model.layers.16.post_feedforward_layernorm.weight": "model_3.safetensors",
749
+ "model.layers.16.self_attn.q_norm.weight": "model_3.safetensors",
750
+ "model.layers.16.self_attn.k_norm.weight": "model_3.safetensors",
751
+ "model.layers.16.pre_feedforward_layernorm.weight": "model_3.safetensors",
752
+ "model.layers.16.post_feedforward_layernorm_1.weight": "model_3.safetensors",
753
+ "model.layers.16.router.scale": "model_3.safetensors",
754
+ "model.layers.16.router.per_expert_scale": "model_3.safetensors",
755
+ "model.layers.16.pre_feedforward_layernorm_2.weight": "model_3.safetensors",
756
+ "model.layers.16.post_feedforward_layernorm_2.weight": "model_3.safetensors",
757
+ "model.layers.16.router.proj.weight": "model_3.safetensors",
758
+ "model.layers.16.self_attn.q_proj.weight": "model_3.safetensors",
759
+ "model.layers.16.self_attn.k_proj.weight": "model_3.safetensors",
760
+ "model.layers.16.self_attn.v_proj.weight": "model_3.safetensors",
761
+ "model.layers.16.self_attn.o_proj.weight": "model_3.safetensors",
762
+ "model.layers.16.mlp.gate_proj.weight": "model_3.safetensors",
763
+ "model.layers.16.mlp.up_proj.weight": "model_3.safetensors",
764
+ "model.layers.16.mlp.down_proj.weight": "model_3.safetensors",
765
+ "model.layers.16.experts.gate_up_proj": "model_3.safetensors",
766
+ "model.layers.16.experts.down_proj": "model_3.safetensors",
767
+ "model.layers.16.layer_scalar": "model_3.safetensors",
768
+ "model.layers.17.input_layernorm.weight": "model_3.safetensors",
769
+ "model.layers.17.post_attention_layernorm.weight": "model_3.safetensors",
770
+ "model.layers.17.post_feedforward_layernorm.weight": "model_3.safetensors",
771
+ "model.layers.17.self_attn.q_norm.weight": "model_3.safetensors",
772
+ "model.layers.17.self_attn.k_norm.weight": "model_3.safetensors",
773
+ "model.layers.17.pre_feedforward_layernorm.weight": "model_3.safetensors",
774
+ "model.layers.17.post_feedforward_layernorm_1.weight": "model_3.safetensors",
775
+ "model.layers.17.router.scale": "model_3.safetensors",
776
+ "model.layers.17.router.per_expert_scale": "model_3.safetensors",
777
+ "model.layers.17.pre_feedforward_layernorm_2.weight": "model_3.safetensors",
778
+ "model.layers.17.post_feedforward_layernorm_2.weight": "model_3.safetensors",
779
+ "model.layers.17.router.proj.weight": "model_3.safetensors",
780
+ "model.layers.17.self_attn.q_proj.weight": "model_3.safetensors",
781
+ "model.layers.17.self_attn.k_proj.weight": "model_3.safetensors",
782
+ "model.layers.17.self_attn.o_proj.weight": "model_3.safetensors",
783
+ "model.layers.17.mlp.gate_proj.weight": "model_3.safetensors",
784
+ "model.layers.17.mlp.up_proj.weight": "model_3.safetensors",
785
+ "model.layers.17.mlp.down_proj.weight": "model_3.safetensors",
786
+ "model.layers.17.experts.gate_up_proj": "model_3.safetensors",
787
+ "model.layers.17.experts.down_proj": "model_3.safetensors",
788
+ "model.layers.17.layer_scalar": "model_3.safetensors",
789
+ "model.layers.18.input_layernorm.weight": "model_3.safetensors",
790
+ "model.layers.18.post_attention_layernorm.weight": "model_3.safetensors",
791
+ "model.layers.18.post_feedforward_layernorm.weight": "model_3.safetensors",
792
+ "model.layers.18.self_attn.q_norm.weight": "model_3.safetensors",
793
+ "model.layers.18.self_attn.k_norm.weight": "model_3.safetensors",
794
+ "model.layers.18.pre_feedforward_layernorm.weight": "model_3.safetensors",
795
+ "model.layers.18.post_feedforward_layernorm_1.weight": "model_3.safetensors",
796
+ "model.layers.18.router.scale": "model_3.safetensors",
797
+ "model.layers.18.router.per_expert_scale": "model_3.safetensors",
798
+ "model.layers.18.pre_feedforward_layernorm_2.weight": "model_3.safetensors",
799
+ "model.layers.18.post_feedforward_layernorm_2.weight": "model_3.safetensors",
800
+ "model.layers.18.router.proj.weight": "model_3.safetensors",
801
+ "model.layers.18.self_attn.q_proj.weight": "model_3.safetensors",
802
+ "model.layers.18.self_attn.k_proj.weight": "model_3.safetensors",
803
+ "model.layers.18.self_attn.v_proj.weight": "model_3.safetensors",
804
+ "model.layers.18.self_attn.o_proj.weight": "model_3.safetensors",
805
+ "model.layers.18.mlp.gate_proj.weight": "model_3.safetensors",
806
+ "model.layers.18.mlp.up_proj.weight": "model_3.safetensors",
807
+ "model.layers.18.mlp.down_proj.weight": "model_3.safetensors",
808
+ "model.layers.18.experts.gate_up_proj": "model_3.safetensors",
809
+ "model.layers.18.experts.down_proj": "model_3.safetensors",
810
+ "model.layers.18.layer_scalar": "model_3.safetensors",
811
+ "model.layers.19.input_layernorm.weight": "model_3.safetensors",
812
+ "model.layers.19.post_attention_layernorm.weight": "model_3.safetensors",
813
+ "model.layers.19.post_feedforward_layernorm.weight": "model_3.safetensors",
814
+ "model.layers.19.self_attn.q_norm.weight": "model_3.safetensors",
815
+ "model.layers.19.self_attn.k_norm.weight": "model_3.safetensors",
816
+ "model.layers.19.pre_feedforward_layernorm.weight": "model_3.safetensors",
817
+ "model.layers.19.post_feedforward_layernorm_1.weight": "model_3.safetensors",
818
+ "model.layers.19.router.scale": "model_3.safetensors",
819
+ "model.layers.19.router.per_expert_scale": "model_3.safetensors",
820
+ "model.layers.19.pre_feedforward_layernorm_2.weight": "model_3.safetensors",
821
+ "model.layers.19.post_feedforward_layernorm_2.weight": "model_3.safetensors",
822
+ "model.layers.19.router.proj.weight": "model_3.safetensors",
823
+ "model.layers.19.self_attn.q_proj.weight": "model_3.safetensors",
824
+ "model.layers.19.self_attn.k_proj.weight": "model_3.safetensors",
825
+ "model.layers.19.self_attn.v_proj.weight": "model_3.safetensors",
826
+ "model.layers.19.self_attn.o_proj.weight": "model_3.safetensors",
827
+ "model.layers.19.mlp.gate_proj.weight": "model_3.safetensors",
828
+ "model.layers.19.mlp.up_proj.weight": "model_3.safetensors",
829
+ "model.layers.19.mlp.down_proj.weight": "model_3.safetensors",
830
+ "model.layers.19.experts.gate_up_proj": "model_3.safetensors",
831
+ "model.layers.19.experts.down_proj": "model_3.safetensors",
832
+ "model.layers.19.layer_scalar": "model_3.safetensors",
833
+ "model.layers.20.input_layernorm.weight": "model_3.safetensors",
834
+ "model.layers.20.post_attention_layernorm.weight": "model_3.safetensors",
835
+ "model.layers.20.post_feedforward_layernorm.weight": "model_3.safetensors",
836
+ "model.layers.20.self_attn.q_norm.weight": "model_3.safetensors",
837
+ "model.layers.20.self_attn.k_norm.weight": "model_3.safetensors",
838
+ "model.layers.20.pre_feedforward_layernorm.weight": "model_3.safetensors",
839
+ "model.layers.20.post_feedforward_layernorm_1.weight": "model_3.safetensors",
840
+ "model.layers.20.router.scale": "model_3.safetensors",
841
+ "model.layers.20.router.per_expert_scale": "model_3.safetensors",
842
+ "model.layers.20.pre_feedforward_layernorm_2.weight": "model_3.safetensors",
843
+ "model.layers.20.post_feedforward_layernorm_2.weight": "model_3.safetensors",
844
+ "model.layers.20.router.proj.weight": "model_3.safetensors",
845
+ "model.layers.20.self_attn.q_proj.weight": "model_3.safetensors",
846
+ "model.layers.20.self_attn.k_proj.weight": "model_3.safetensors",
847
+ "model.layers.20.self_attn.v_proj.weight": "model_3.safetensors",
848
+ "model.layers.20.self_attn.o_proj.weight": "model_3.safetensors",
849
+ "model.layers.20.mlp.gate_proj.weight": "model_3.safetensors",
850
+ "model.layers.20.mlp.up_proj.weight": "model_3.safetensors",
851
+ "model.layers.20.mlp.down_proj.weight": "model_3.safetensors",
852
+ "model.layers.20.experts.gate_up_proj": "model_3.safetensors",
853
+ "model.layers.20.experts.down_proj": "model_3.safetensors",
854
+ "model.layers.20.layer_scalar": "model_4.safetensors",
855
+ "model.layers.21.input_layernorm.weight": "model_4.safetensors",
856
+ "model.layers.21.post_attention_layernorm.weight": "model_4.safetensors",
857
+ "model.layers.21.post_feedforward_layernorm.weight": "model_4.safetensors",
858
+ "model.layers.21.self_attn.q_norm.weight": "model_4.safetensors",
859
+ "model.layers.21.self_attn.k_norm.weight": "model_4.safetensors",
860
+ "model.layers.21.pre_feedforward_layernorm.weight": "model_4.safetensors",
861
+ "model.layers.21.post_feedforward_layernorm_1.weight": "model_4.safetensors",
862
+ "model.layers.21.router.scale": "model_4.safetensors",
863
+ "model.layers.21.router.per_expert_scale": "model_4.safetensors",
864
+ "model.layers.21.pre_feedforward_layernorm_2.weight": "model_4.safetensors",
865
+ "model.layers.21.post_feedforward_layernorm_2.weight": "model_4.safetensors",
866
+ "model.layers.21.router.proj.weight": "model_4.safetensors",
867
+ "model.layers.21.self_attn.q_proj.weight": "model_4.safetensors",
868
+ "model.layers.21.self_attn.k_proj.weight": "model_4.safetensors",
869
+ "model.layers.21.self_attn.v_proj.weight": "model_4.safetensors",
870
+ "model.layers.21.self_attn.o_proj.weight": "model_4.safetensors",
871
+ "model.layers.21.mlp.gate_proj.weight": "model_4.safetensors",
872
+ "model.layers.21.mlp.up_proj.weight": "model_4.safetensors",
873
+ "model.layers.21.mlp.down_proj.weight": "model_4.safetensors",
874
+ "model.layers.21.experts.gate_up_proj": "model_4.safetensors",
875
+ "model.layers.21.experts.down_proj": "model_4.safetensors",
876
+ "model.layers.21.layer_scalar": "model_4.safetensors",
877
+ "model.layers.22.input_layernorm.weight": "model_4.safetensors",
878
+ "model.layers.22.post_attention_layernorm.weight": "model_4.safetensors",
879
+ "model.layers.22.post_feedforward_layernorm.weight": "model_4.safetensors",
880
+ "model.layers.22.self_attn.q_norm.weight": "model_4.safetensors",
881
+ "model.layers.22.self_attn.k_norm.weight": "model_4.safetensors",
882
+ "model.layers.22.pre_feedforward_layernorm.weight": "model_4.safetensors",
883
+ "model.layers.22.post_feedforward_layernorm_1.weight": "model_4.safetensors",
884
+ "model.layers.22.router.scale": "model_4.safetensors",
885
+ "model.layers.22.router.per_expert_scale": "model_4.safetensors",
886
+ "model.layers.22.pre_feedforward_layernorm_2.weight": "model_4.safetensors",
887
+ "model.layers.22.post_feedforward_layernorm_2.weight": "model_4.safetensors",
888
+ "model.layers.22.router.proj.weight": "model_4.safetensors",
889
+ "model.layers.22.self_attn.q_proj.weight": "model_4.safetensors",
890
+ "model.layers.22.self_attn.k_proj.weight": "model_4.safetensors",
891
+ "model.layers.22.self_attn.v_proj.weight": "model_4.safetensors",
892
+ "model.layers.22.self_attn.o_proj.weight": "model_4.safetensors",
893
+ "model.layers.22.mlp.gate_proj.weight": "model_4.safetensors",
894
+ "model.layers.22.mlp.up_proj.weight": "model_4.safetensors",
895
+ "model.layers.22.mlp.down_proj.weight": "model_4.safetensors",
896
+ "model.layers.22.experts.gate_up_proj": "model_4.safetensors",
897
+ "model.layers.22.experts.down_proj": "model_4.safetensors",
898
+ "model.layers.22.layer_scalar": "model_4.safetensors",
899
+ "model.layers.23.input_layernorm.weight": "model_4.safetensors",
900
+ "model.layers.23.post_attention_layernorm.weight": "model_4.safetensors",
901
+ "model.layers.23.post_feedforward_layernorm.weight": "model_4.safetensors",
902
+ "model.layers.23.self_attn.q_norm.weight": "model_4.safetensors",
903
+ "model.layers.23.self_attn.k_norm.weight": "model_4.safetensors",
904
+ "model.layers.23.pre_feedforward_layernorm.weight": "model_4.safetensors",
905
+ "model.layers.23.post_feedforward_layernorm_1.weight": "model_4.safetensors",
906
+ "model.layers.23.router.scale": "model_4.safetensors",
907
+ "model.layers.23.router.per_expert_scale": "model_4.safetensors",
908
+ "model.layers.23.pre_feedforward_layernorm_2.weight": "model_4.safetensors",
909
+ "model.layers.23.post_feedforward_layernorm_2.weight": "model_4.safetensors",
910
+ "model.layers.23.router.proj.weight": "model_4.safetensors",
911
+ "model.layers.23.self_attn.q_proj.weight": "model_4.safetensors",
912
+ "model.layers.23.self_attn.k_proj.weight": "model_4.safetensors",
913
+ "model.layers.23.self_attn.o_proj.weight": "model_4.safetensors",
914
+ "model.layers.23.mlp.gate_proj.weight": "model_4.safetensors",
915
+ "model.layers.23.mlp.up_proj.weight": "model_4.safetensors",
916
+ "model.layers.23.mlp.down_proj.weight": "model_4.safetensors",
917
+ "model.layers.23.experts.gate_up_proj": "model_4.safetensors",
918
+ "model.layers.23.experts.down_proj": "model_4.safetensors",
919
+ "model.layers.23.layer_scalar": "model_4.safetensors",
920
+ "model.layers.24.input_layernorm.weight": "model_4.safetensors",
921
+ "model.layers.24.post_attention_layernorm.weight": "model_4.safetensors",
922
+ "model.layers.24.post_feedforward_layernorm.weight": "model_4.safetensors",
923
+ "model.layers.24.self_attn.q_norm.weight": "model_4.safetensors",
924
+ "model.layers.24.self_attn.k_norm.weight": "model_4.safetensors",
925
+ "model.layers.24.pre_feedforward_layernorm.weight": "model_4.safetensors",
926
+ "model.layers.24.post_feedforward_layernorm_1.weight": "model_4.safetensors",
927
+ "model.layers.24.router.scale": "model_4.safetensors",
928
+ "model.layers.24.router.per_expert_scale": "model_4.safetensors",
929
+ "model.layers.24.pre_feedforward_layernorm_2.weight": "model_4.safetensors",
930
+ "model.layers.24.post_feedforward_layernorm_2.weight": "model_4.safetensors",
931
+ "model.layers.24.router.proj.weight": "model_4.safetensors",
932
+ "model.layers.24.self_attn.q_proj.weight": "model_4.safetensors",
933
+ "model.layers.24.self_attn.k_proj.weight": "model_4.safetensors",
934
+ "model.layers.24.self_attn.v_proj.weight": "model_4.safetensors",
935
+ "model.layers.24.self_attn.o_proj.weight": "model_4.safetensors",
936
+ "model.layers.24.mlp.gate_proj.weight": "model_4.safetensors",
937
+ "model.layers.24.mlp.up_proj.weight": "model_4.safetensors",
938
+ "model.layers.24.mlp.down_proj.weight": "model_4.safetensors",
939
+ "model.layers.24.experts.gate_up_proj": "model_4.safetensors",
940
+ "model.layers.24.experts.down_proj": "model_4.safetensors",
941
+ "model.layers.24.layer_scalar": "model_4.safetensors",
942
+ "model.layers.25.input_layernorm.weight": "model_4.safetensors",
943
+ "model.layers.25.post_attention_layernorm.weight": "model_4.safetensors",
944
+ "model.layers.25.post_feedforward_layernorm.weight": "model_4.safetensors",
945
+ "model.layers.25.self_attn.q_norm.weight": "model_4.safetensors",
946
+ "model.layers.25.self_attn.k_norm.weight": "model_4.safetensors",
947
+ "model.layers.25.pre_feedforward_layernorm.weight": "model_4.safetensors",
948
+ "model.layers.25.post_feedforward_layernorm_1.weight": "model_4.safetensors",
949
+ "model.layers.25.router.scale": "model_4.safetensors",
950
+ "model.layers.25.router.per_expert_scale": "model_4.safetensors",
951
+ "model.layers.25.pre_feedforward_layernorm_2.weight": "model_4.safetensors",
952
+ "model.layers.25.post_feedforward_layernorm_2.weight": "model_4.safetensors",
953
+ "model.layers.25.router.proj.weight": "model_4.safetensors",
954
+ "model.layers.25.self_attn.q_proj.weight": "model_4.safetensors",
955
+ "model.layers.25.self_attn.k_proj.weight": "model_4.safetensors",
956
+ "model.layers.25.self_attn.v_proj.weight": "model_4.safetensors",
957
+ "model.layers.25.self_attn.o_proj.weight": "model_4.safetensors",
958
+ "model.layers.25.mlp.gate_proj.weight": "model_4.safetensors",
959
+ "model.layers.25.mlp.up_proj.weight": "model_4.safetensors",
960
+ "model.layers.25.mlp.down_proj.weight": "model_4.safetensors",
961
+ "model.layers.25.experts.gate_up_proj": "model_4.safetensors",
962
+ "model.layers.25.experts.down_proj": "model_4.safetensors",
963
+ "model.layers.25.layer_scalar": "model_4.safetensors",
964
+ "model.layers.26.input_layernorm.weight": "model_4.safetensors",
965
+ "model.layers.26.post_attention_layernorm.weight": "model_4.safetensors",
966
+ "model.layers.26.post_feedforward_layernorm.weight": "model_4.safetensors",
967
+ "model.layers.26.self_attn.q_norm.weight": "model_4.safetensors",
968
+ "model.layers.26.self_attn.k_norm.weight": "model_4.safetensors",
969
+ "model.layers.26.pre_feedforward_layernorm.weight": "model_4.safetensors",
970
+ "model.layers.26.post_feedforward_layernorm_1.weight": "model_4.safetensors",
971
+ "model.layers.26.router.scale": "model_4.safetensors",
972
+ "model.layers.26.router.per_expert_scale": "model_4.safetensors",
973
+ "model.layers.26.pre_feedforward_layernorm_2.weight": "model_4.safetensors",
974
+ "model.layers.26.post_feedforward_layernorm_2.weight": "model_4.safetensors",
975
+ "model.layers.26.router.proj.weight": "model_4.safetensors",
976
+ "model.layers.26.self_attn.q_proj.weight": "model_4.safetensors",
977
+ "model.layers.26.self_attn.k_proj.weight": "model_4.safetensors",
978
+ "model.layers.26.self_attn.v_proj.weight": "model_4.safetensors",
979
+ "model.layers.26.self_attn.o_proj.weight": "model_4.safetensors",
980
+ "model.layers.26.mlp.gate_proj.weight": "model_4.safetensors",
981
+ "model.layers.26.mlp.up_proj.weight": "model_4.safetensors",
982
+ "model.layers.26.mlp.down_proj.weight": "model_4.safetensors",
983
+ "model.layers.26.experts.gate_up_proj": "model_4.safetensors",
984
+ "model.layers.26.experts.down_proj": "model_5.safetensors",
985
+ "model.layers.26.layer_scalar": "model_5.safetensors",
986
+ "model.layers.27.input_layernorm.weight": "model_5.safetensors",
987
+ "model.layers.27.post_attention_layernorm.weight": "model_5.safetensors",
988
+ "model.layers.27.post_feedforward_layernorm.weight": "model_5.safetensors",
989
+ "model.layers.27.self_attn.q_norm.weight": "model_5.safetensors",
990
+ "model.layers.27.self_attn.k_norm.weight": "model_5.safetensors",
991
+ "model.layers.27.pre_feedforward_layernorm.weight": "model_5.safetensors",
992
+ "model.layers.27.post_feedforward_layernorm_1.weight": "model_5.safetensors",
993
+ "model.layers.27.router.scale": "model_5.safetensors",
994
+ "model.layers.27.router.per_expert_scale": "model_5.safetensors",
995
+ "model.layers.27.pre_feedforward_layernorm_2.weight": "model_5.safetensors",
996
+ "model.layers.27.post_feedforward_layernorm_2.weight": "model_5.safetensors",
997
+ "model.layers.27.router.proj.weight": "model_5.safetensors",
998
+ "model.layers.27.self_attn.q_proj.weight": "model_5.safetensors",
999
+ "model.layers.27.self_attn.k_proj.weight": "model_5.safetensors",
1000
+ "model.layers.27.self_attn.v_proj.weight": "model_5.safetensors",
1001
+ "model.layers.27.self_attn.o_proj.weight": "model_5.safetensors",
1002
+ "model.layers.27.mlp.gate_proj.weight": "model_5.safetensors",
1003
+ "model.layers.27.mlp.up_proj.weight": "model_5.safetensors",
1004
+ "model.layers.27.mlp.down_proj.weight": "model_5.safetensors",
1005
+ "model.layers.27.experts.gate_up_proj": "model_5.safetensors",
1006
+ "model.layers.27.experts.down_proj": "model_5.safetensors",
1007
+ "model.layers.27.layer_scalar": "model_5.safetensors",
1008
+ "model.layers.28.input_layernorm.weight": "model_5.safetensors",
1009
+ "model.layers.28.post_attention_layernorm.weight": "model_5.safetensors",
1010
+ "model.layers.28.post_feedforward_layernorm.weight": "model_5.safetensors",
1011
+ "model.layers.28.self_attn.q_norm.weight": "model_5.safetensors",
1012
+ "model.layers.28.self_attn.k_norm.weight": "model_5.safetensors",
1013
+ "model.layers.28.pre_feedforward_layernorm.weight": "model_5.safetensors",
1014
+ "model.layers.28.post_feedforward_layernorm_1.weight": "model_5.safetensors",
1015
+ "model.layers.28.router.scale": "model_5.safetensors",
1016
+ "model.layers.28.router.per_expert_scale": "model_5.safetensors",
1017
+ "model.layers.28.pre_feedforward_layernorm_2.weight": "model_5.safetensors",
1018
+ "model.layers.28.post_feedforward_layernorm_2.weight": "model_5.safetensors",
1019
+ "model.layers.28.router.proj.weight": "model_5.safetensors",
1020
+ "model.layers.28.self_attn.q_proj.weight": "model_5.safetensors",
1021
+ "model.layers.28.self_attn.k_proj.weight": "model_5.safetensors",
1022
+ "model.layers.28.self_attn.v_proj.weight": "model_5.safetensors",
1023
+ "model.layers.28.self_attn.o_proj.weight": "model_5.safetensors",
1024
+ "model.layers.28.mlp.gate_proj.weight": "model_5.safetensors",
1025
+ "model.layers.28.mlp.up_proj.weight": "model_5.safetensors",
1026
+ "model.layers.28.mlp.down_proj.weight": "model_5.safetensors",
1027
+ "model.layers.28.experts.gate_up_proj": "model_5.safetensors",
1028
+ "model.layers.28.experts.down_proj": "model_5.safetensors",
1029
+ "model.layers.28.layer_scalar": "model_5.safetensors",
1030
+ "model.layers.29.input_layernorm.weight": "model_5.safetensors",
1031
+ "model.layers.29.post_attention_layernorm.weight": "model_5.safetensors",
1032
+ "model.layers.29.post_feedforward_layernorm.weight": "model_5.safetensors",
1033
+ "model.layers.29.self_attn.q_norm.weight": "model_5.safetensors",
1034
+ "model.layers.29.self_attn.k_norm.weight": "model_5.safetensors",
1035
+ "model.layers.29.pre_feedforward_layernorm.weight": "model_5.safetensors",
1036
+ "model.layers.29.post_feedforward_layernorm_1.weight": "model_5.safetensors",
1037
+ "model.layers.29.router.scale": "model_5.safetensors",
1038
+ "model.layers.29.router.per_expert_scale": "model_5.safetensors",
1039
+ "model.layers.29.pre_feedforward_layernorm_2.weight": "model_5.safetensors",
1040
+ "model.layers.29.post_feedforward_layernorm_2.weight": "model_5.safetensors",
1041
+ "model.layers.29.router.proj.weight": "model_5.safetensors",
1042
+ "model.layers.29.self_attn.q_proj.weight": "model_5.safetensors",
1043
+ "model.layers.29.self_attn.k_proj.weight": "model_5.safetensors",
1044
+ "model.layers.29.self_attn.o_proj.weight": "model_5.safetensors",
1045
+ "model.layers.29.mlp.gate_proj.weight": "model_5.safetensors",
1046
+ "model.layers.29.mlp.up_proj.weight": "model_5.safetensors",
1047
+ "model.layers.29.mlp.down_proj.weight": "model_5.safetensors",
1048
+ "model.layers.29.experts.gate_up_proj": "model_5.safetensors",
1049
+ "model.layers.29.experts.down_proj": "model_5.safetensors",
1050
+ "model.layers.29.layer_scalar": "model_5.safetensors",
1051
+ "model.norm.weight": "model_5.safetensors"
1052
+ }
1053
+ }
26_09_08_sft_email_v4_v3/export/gemma4/210/model_0.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:235b37f041fa036c111cda5de1c386e4acd1c02c72ec049d14cd8ec9a51ed8c8
3
+ size 18219689400
26_09_08_sft_email_v4_v3/export/gemma4/210/model_1.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:53988b57f3f6885db1404438af6643c77807f3ab246fd8f5c103c21680780433
3
+ size 17354616348
26_09_08_sft_email_v4_v3/export/gemma4/210/model_2.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:d409016595f4d1672722b49f995b09f73292e334c58d715980dbd34d9cc3c047
3
+ size 18580955536
26_09_08_sft_email_v4_v3/export/gemma4/210/model_3.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:583d9bbfd8fc19ea1936117ae1a651e6469205767e71b6a4a65b8d65eedef1f1
3
+ size 17354616460
26_09_08_sft_email_v4_v3/export/gemma4/210/model_4.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:b686f62b6a8ff945889290ab68dfcfdfd7156822fc5fd86f32c79c75f3f28789
3
+ size 18580955512
26_09_08_sft_email_v4_v3/export/gemma4/210/model_5.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:cdb49e2609c628513f93b5f57ef56edcd487b6256f66a902509231b24da3fdfd
3
+ size 10841862960
26_09_08_sft_email_v4_v3/export/gemma4/210/ok ADDED
File without changes
26_09_08_sft_email_v4_v3/export/gemma4/210/tokenizer.json ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:cc8d3a0ce36466ccc1278bf987df5f71db1719b9ca6b4118264f45cb627bfe0f
3
+ size 32169626
26_09_08_sft_email_v4_v3/export/gemma4/210/tokenizer_config.json ADDED
@@ -0,0 +1,74 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "audio_token": "<|audio|>",
3
+ "backend": "tokenizers",
4
+ "boa_token": "<|audio>",
5
+ "boi_token": "<|image>",
6
+ "bos_token": "<bos>",
7
+ "eoa_token": "<audio|>",
8
+ "eoc_token": "<channel|>",
9
+ "eoi_token": "<image|>",
10
+ "eos_token": "<eos>",
11
+ "eot_token": "<turn|>",
12
+ "escape_token": "<|\"|>",
13
+ "etc_token": "<tool_call|>",
14
+ "etd_token": "<tool|>",
15
+ "etr_token": "<tool_response|>",
16
+ "extra_special_tokens": [
17
+ "<|video|>"
18
+ ],
19
+ "image_token": "<|image|>",
20
+ "mask_token": "<mask>",
21
+ "model_max_length": 1000000000000000019884624838656,
22
+ "pad_token": "<pad>",
23
+ "padding_side": "left",
24
+ "processor_class": "Gemma4Processor",
25
+ "response_schema": {
26
+ "type": "object",
27
+ "properties": {
28
+ "role": {
29
+ "const": "assistant"
30
+ },
31
+ "thinking": {
32
+ "type": "string"
33
+ },
34
+ "content": {
35
+ "type": "string"
36
+ },
37
+ "tool_calls": {
38
+ "x-regex-iterator": "<\\|tool_call>(.*?)<tool_call\\|>",
39
+ "type": "array",
40
+ "items": {
41
+ "type": "object",
42
+ "properties": {
43
+ "type": {
44
+ "const": "function"
45
+ },
46
+ "function": {
47
+ "type": "object",
48
+ "x-regex": "call\\:(?P<name>\\w+)(?P<arguments>\\{.*\\})",
49
+ "properties": {
50
+ "name": {
51
+ "type": "string"
52
+ },
53
+ "arguments": {
54
+ "type": "object",
55
+ "x-parser": "gemma4-tool-call",
56
+ "additionalProperties": {}
57
+ }
58
+ }
59
+ }
60
+ }
61
+ }
62
+ }
63
+ },
64
+ "x-regex": "(\\<\\|channel\\>thought\\n(?P<thinking>.*?)\\<channel\\|\\>)?(?P<tool_calls>\\<\\|tool_call\\>.*\\<tool_call\\|\\>)?(?P<content>(?:(?!\\<turn\\|\\>)(?!\\<\\|tool_response\\>).)+)?(?:\\<turn\\|\\>|\\<\\|tool_response\\>)?"
65
+ },
66
+ "soc_token": "<|channel>",
67
+ "sot_token": "<|turn>",
68
+ "stc_token": "<|tool_call>",
69
+ "std_token": "<|tool>",
70
+ "str_token": "<|tool_response>",
71
+ "think_token": "<|think|>",
72
+ "tokenizer_class": "GemmaTokenizer",
73
+ "unk_token": "<unk>"
74
+ }
26_09_08_sft_email_v4_v3/export/gemma4/70/chat_template.jinja ADDED
@@ -0,0 +1,390 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {#
2
+ Template: Google Gemma 4 Canonical Chat Template
3
+ Author: Google Gemma Engineering Team
4
+ Published: 2026-07-09
5
+ Context: Fixed tool-calling loops, turn closures, and thinking content-ordering.
6
+ #}
7
+ {%- macro format_parameters(properties, required, filter_keys=false) -%}
8
+ {%- set standard_keys = ['properties', 'required', 'nullable'] -%}
9
+ {%- set ns = namespace(found_first=false) -%}
10
+ {%- for key, value in properties | dictsort -%}
11
+ {%- set add_comma = false -%}
12
+ {%- if not filter_keys or key not in standard_keys -%}
13
+ {%- if ns.found_first %},{% endif -%}
14
+ {%- set ns.found_first = true -%}
15
+ {{ key }}:{
16
+ {%- if value['description'] -%}
17
+ description:<|"|>{{ value['description'] }}<|"|>
18
+ {%- set add_comma = true -%}
19
+ {%- endif -%}
20
+ {%- if value['type'] | upper == 'STRING' -%}
21
+ {%- if value['enum'] -%}
22
+ {%- if add_comma %},{%- else -%} {%- set add_comma = true -%} {% endif -%}
23
+ enum:{{ format_argument(value['enum']) }}
24
+ {%- endif -%}
25
+ {%- elif value['type'] | upper == 'ARRAY' -%}
26
+ {%- if value['items'] is mapping and value['items'] -%}
27
+ {%- if add_comma %},{%- else -%} {%- set add_comma = true -%} {% endif -%}
28
+ items:{
29
+ {%- set ns_items = namespace(found_first=false) -%}
30
+ {%- for item_key, item_value in value['items'] | dictsort -%}
31
+ {%- if item_value is not none -%}
32
+ {%- if ns_items.found_first %},{% endif -%}
33
+ {%- set ns_items.found_first = true -%}
34
+ {%- if item_key == 'properties' -%}
35
+ properties:{
36
+ {%- if item_value is mapping -%}
37
+ {{- format_parameters(item_value, value['items']['required'] | default([])) -}}
38
+ {%- endif -%}
39
+ }
40
+ {%- elif item_key == 'required' -%}
41
+ required:[
42
+ {%- for req_item in item_value -%}
43
+ <|"|>{{- req_item -}}<|"|>
44
+ {%- if not loop.last %},{% endif -%}
45
+ {%- endfor -%}
46
+ ]
47
+ {%- elif item_key == 'type' -%}
48
+ {%- if item_value is string -%}
49
+ type:{{ format_argument(item_value | upper) }}
50
+ {%- else -%}
51
+ type:{{ format_argument(item_value | map('upper') | list) }}
52
+ {%- endif -%}
53
+ {%- else -%}
54
+ {{ item_key }}:{{ format_argument(item_value) }}
55
+ {%- endif -%}
56
+ {%- endif -%}
57
+ {%- endfor -%}
58
+ }
59
+ {%- endif -%}
60
+ {%- endif -%}
61
+ {%- if value['nullable'] %}
62
+ {%- if add_comma %},{%- else -%} {%- set add_comma = true -%} {% endif -%}
63
+ nullable:true
64
+ {%- endif -%}
65
+ {%- if value['type'] | upper == 'OBJECT' -%}
66
+ {%- if value['properties'] is defined and value['properties'] is mapping -%}
67
+ {%- if add_comma %},{%- else -%} {%- set add_comma = true -%} {% endif -%}
68
+ properties:{
69
+ {{- format_parameters(value['properties'], value['required'] | default([])) -}}
70
+ }
71
+ {%- elif value is mapping -%}
72
+ {%- if add_comma %},{%- else -%} {%- set add_comma = true -%} {% endif -%}
73
+ properties:{
74
+ {{- format_parameters(value, value['required'] | default([]), filter_keys=true) -}}
75
+ }
76
+ {%- endif -%}
77
+ {%- if value['required'] -%}
78
+ {%- if add_comma %},{%- else -%} {%- set add_comma = true -%} {% endif -%}
79
+ required:[
80
+ {%- for item in value['required'] | default([]) -%}
81
+ <|"|>{{- item -}}<|"|>
82
+ {%- if not loop.last %},{% endif -%}
83
+ {%- endfor -%}
84
+ ]
85
+ {%- endif -%}
86
+ {%- endif -%}
87
+ {%- if add_comma %},{%- else -%} {%- set add_comma = true -%} {% endif -%}
88
+ type:<|"|>{{ value['type'] | upper }}<|"|>}
89
+ {%- endif -%}
90
+ {%- endfor -%}
91
+ {%- endmacro -%}
92
+ {%- macro format_function_declaration(tool_data) -%}
93
+ declaration:{{- tool_data['function']['name'] -}}{description:<|"|>{{- tool_data['function']['description'] -}}<|"|>
94
+ {%- set params = tool_data['function']['parameters'] -%}
95
+ {%- if params -%}
96
+ ,parameters:{
97
+ {%- if params['properties'] -%}
98
+ properties:{ {{- format_parameters(params['properties'], params['required']) -}} },
99
+ {%- endif -%}
100
+ {%- if params['required'] -%}
101
+ required:[
102
+ {%- for item in params['required'] -%}
103
+ <|"|>{{- item -}}<|"|>
104
+ {{- ',' if not loop.last -}}
105
+ {%- endfor -%}
106
+ ],
107
+ {%- endif -%}
108
+ {%- if params['type'] -%}
109
+ type:<|"|>{{- params['type'] | upper -}}<|"|>}
110
+ {%- endif -%}
111
+ {%- endif -%}
112
+ {%- if 'response' in tool_data['function'] -%}
113
+ {%- set response_declaration = tool_data['function']['response'] -%}
114
+ ,response:{
115
+ {%- if response_declaration['description'] -%}
116
+ description:<|"|>{{- response_declaration['description'] -}}<|"|>,
117
+ {%- endif -%}
118
+ {%- if response_declaration['type'] | upper == 'OBJECT' -%}
119
+ type:<|"|>{{- response_declaration['type'] | upper -}}<|"|>}
120
+ {%- endif -%}
121
+ {%- endif -%}
122
+ }
123
+ {%- endmacro -%}
124
+ {%- macro format_argument(argument, escape_keys=True) -%}
125
+ {%- if argument is none -%}
126
+ {{- 'null' -}}
127
+ {%- elif argument is string -%}
128
+ {{- '<|"|>' + argument + '<|"|>' -}}
129
+ {%- elif argument is boolean -%}
130
+ {{- 'true' if argument else 'false' -}}
131
+ {%- elif argument is mapping -%}
132
+ {{- '{' -}}
133
+ {%- set ns = namespace(found_first=false) -%}
134
+ {%- for key, value in argument | dictsort -%}
135
+ {%- if ns.found_first %},{% endif -%}
136
+ {%- set ns.found_first = true -%}
137
+ {%- if escape_keys -%}
138
+ {{- '<|"|>' + key + '<|"|>' -}}
139
+ {%- else -%}
140
+ {{- key -}}
141
+ {%- endif -%}
142
+ :{{- format_argument(value, escape_keys=escape_keys) -}}
143
+ {%- endfor -%}
144
+ {{- '}' -}}
145
+ {%- elif argument is sequence -%}
146
+ {{- '[' -}}
147
+ {%- for item in argument -%}
148
+ {{- format_argument(item, escape_keys=escape_keys) -}}
149
+ {%- if not loop.last %},{% endif -%}
150
+ {%- endfor -%}
151
+ {{- ']' -}}
152
+ {%- else -%}
153
+ {{- argument -}}
154
+ {%- endif -%}
155
+ {%- endmacro -%}
156
+ {%- macro strip_thinking(text) -%}
157
+ {%- set ns = namespace(result='') -%}
158
+ {%- for part in text.split('<channel|>') -%}
159
+ {%- if '<|channel>' in part -%}
160
+ {%- set ns.result = ns.result + part.split('<|channel>')[0] -%}
161
+ {%- else -%}
162
+ {%- set ns.result = ns.result + part -%}
163
+ {%- endif -%}
164
+ {%- endfor -%}
165
+ {{- ns.result | trim -}}
166
+ {%- endmacro -%}
167
+
168
+ {%- macro format_tool_response_block(tool_name, response) -%}
169
+ {{- '<|tool_response>' -}}
170
+ {%- if response is mapping -%}
171
+ {{- 'response:' + tool_name + '{' -}}
172
+ {%- for key, value in response | dictsort -%}
173
+ {{- key -}}:{{- format_argument(value, escape_keys=False) -}}
174
+ {%- if not loop.last %},{% endif -%}
175
+ {%- endfor -%}
176
+ {{- '}' -}}
177
+ {%- else -%}
178
+ {{- 'response:' + tool_name + '{value:' + format_argument(response, escape_keys=False) + '}' -}}
179
+ {%- endif -%}
180
+ {{- '<tool_response|>' -}}
181
+ {%- endmacro -%}
182
+
183
+ {#- ===== SETUP ===== -#}
184
+ {%- set ns = namespace(prev_message_type=None, prev_non_tool_role=None) -%}
185
+ {%- set loop_messages = messages -%}
186
+ {%- set enable_thinking = enable_thinking | default(false) -%}
187
+ {%- set preserve_thinking = preserve_thinking | default(false) -%}
188
+ {{- bos_token -}}
189
+ {#- Handle System/Tool Definitions Block -#}
190
+ {%- if enable_thinking or tools or (messages and messages[0]['role'] in ['system', 'developer']) -%}
191
+ {{- '<|turn>system\n' -}}
192
+ {#- Inject Thinking token at the very top of the FIRST system turn -#}
193
+ {%- if enable_thinking -%}
194
+ {{- '<|think|>\n' -}}
195
+ {%- set ns.prev_message_type = 'think' -%}
196
+ {%- endif -%}
197
+ {%- if messages and messages[0]['role'] in ['system', 'developer'] -%}
198
+ {%- if messages[0]['content'] is string -%}
199
+ {{- messages[0]['content'] | trim -}}
200
+ {%- elif messages[0]['content'] is sequence -%}
201
+ {%- for item in messages[0]['content'] -%}
202
+ {{- item['text'] | trim + ' '-}}
203
+ {%- endfor -%}
204
+ {%- endif -%}
205
+ {%- set loop_messages = messages[1:] -%}
206
+ {%- endif -%}
207
+ {%- if tools -%}
208
+ {%- for tool in tools %}
209
+ {{- '<|tool>' -}}
210
+ {{- format_function_declaration(tool) | trim -}}
211
+ {{- '<tool|>' -}}
212
+ {%- endfor %}
213
+ {%- set ns.prev_message_type = 'tool' -%}
214
+ {%- endif -%}
215
+ {{- '<turn|>\n' -}}
216
+ {%- endif %}
217
+
218
+ {#- Pre-scan: find last user message index for reasoning guard -#}
219
+ {%- set ns_turn = namespace(last_user_idx=-1) -%}
220
+ {%- for i in range(loop_messages | length) -%}
221
+ {%- if loop_messages[i]['role'] == 'user' -%}
222
+ {%- set ns_turn.last_user_idx = i -%}
223
+ {%- endif -%}
224
+ {%- endfor -%}
225
+
226
+ {#- Loop through messages -#}
227
+ {%- for message in loop_messages -%}
228
+ {%- if message['role'] != 'tool' -%}
229
+ {%- set ns.prev_message_type = None -%}
230
+ {%- set role = 'model' if message['role'] == 'assistant' else message['role'] -%}
231
+ {#- Detect continuation using tracked state — O(1) instead of O(n) backward scan -#}
232
+ {%- set continue_same_model_turn = (role == 'model' and ns.prev_non_tool_role == 'assistant') -%}
233
+ {%- if not continue_same_model_turn -%}
234
+ {{- '<|turn>' + role + '\n' }}
235
+
236
+ {%- endif -%}
237
+
238
+ {#- Render reasoning/reasoning_content as thinking channel -#}
239
+ {%- set thinking_text = message.get('reasoning') or message.get('reasoning_content') -%}
240
+ {%- set thinking_gate = (loop.index0 > ns_turn.last_user_idx) or (preserve_thinking and message.get('tool_calls')) -%}
241
+ {%- if thinking_text and thinking_gate -%}
242
+ {{- '<|channel>thought\n' + thinking_text + '\n<channel|>' -}}
243
+ {%- endif -%}
244
+
245
+ {%- if message.get('tool_calls') -%}
246
+ {%- for tool_call in message.get('tool_calls') -%}
247
+ {%- set function = tool_call['function'] -%}
248
+ {{- '<|tool_call>call:' + function['name'] + '{' -}}
249
+ {%- if function['arguments'] is mapping -%}
250
+ {%- set ns_args = namespace(found_first=false) -%}
251
+ {%- for key, value in function['arguments'] | dictsort -%}
252
+ {%- if ns_args.found_first %},{% endif -%}
253
+ {%- set ns_args.found_first = true -%}
254
+ {{- key -}}:{{- format_argument(value, escape_keys=False) -}}
255
+ {%- endfor -%}
256
+ {%- elif function['arguments'] is none -%}
257
+ {%- else -%}
258
+ {{- raise_exception(
259
+ "chat_template: tool_calls[].function.arguments must be a "
260
+ "JSON object (mapping), not a string. Deserialize arguments "
261
+ "before passing to the template."
262
+ ) -}}
263
+ {%- endif -%}
264
+ {{- '}<tool_call|>' -}}
265
+ {%- endfor -%}
266
+ {%- set ns.prev_message_type = 'tool_call' -%}
267
+ {%- endif -%}
268
+
269
+ {%- set ns_tr_out = namespace(flag=false) -%}
270
+ {%- if message.get('tool_responses') -%}
271
+ {#- Legacy: tool_responses embedded on the assistant message (Google/Gemma native) -#}
272
+ {%- for tool_response in message.get('tool_responses') -%}
273
+ {{- format_tool_response_block(tool_response['name'] | default('unknown', true), tool_response['response']) -}}
274
+ {%- set ns_tr_out.flag = true -%}
275
+ {%- set ns.prev_message_type = 'tool_response' -%}
276
+ {%- endfor -%}
277
+ {%- elif message.get('tool_calls') -%}
278
+ {#- OpenAI Chat Completions: forward-scan consecutive role:tool messages -#}
279
+ {%- set ns_tool_scan = namespace(stopped=false) -%}
280
+ {%- for k in range(loop.index0 + 1, loop_messages | length) -%}
281
+ {%- if ns_tool_scan.stopped -%}
282
+ {%- elif loop_messages[k]['role'] != 'tool' -%}
283
+ {%- set ns_tool_scan.stopped = true -%}
284
+ {%- else -%}
285
+ {%- set follow = loop_messages[k] -%}
286
+ {#- Resolve tool_call_id to function name -#}
287
+ {%- set ns_tname = namespace(name=follow.get('name') or 'unknown') -%}
288
+ {%- for tc in message.get('tool_calls') -%}
289
+ {%- if tc.get('id') == follow.get('tool_call_id') -%}
290
+ {%- set ns_tname.name = tc['function']['name'] -%}
291
+ {%- endif -%}
292
+ {%- endfor -%}
293
+ {#- Handle content as string or content-parts array -#}
294
+ {%- set tool_body = follow.get('content') -%}
295
+ {%- if tool_body is string -%}
296
+ {{- format_tool_response_block(ns_tname.name, tool_body) -}}
297
+ {%- elif tool_body is sequence and tool_body is not string -%}
298
+ {%- set ns_txt = namespace(s='') -%}
299
+ {%- for part in tool_body -%}
300
+ {%- if part.get('type') == 'text' -%}
301
+ {%- set ns_txt.s = ns_txt.s + (part.get('text') | default('')) -%}
302
+ {%- endif -%}
303
+ {%- endfor -%}
304
+ {{- format_tool_response_block(ns_tname.name, ns_txt.s) -}}
305
+ {%- for part in tool_body -%}
306
+ {%- if part.get('type') in ['image', 'image_url'] -%}
307
+ {{- '<|image|>' -}}
308
+ {%- elif part.get('type') in ['audio', 'input_audio'] -%}
309
+ {{- '<|audio|>' -}}
310
+ {%- elif part.get('type') == 'video' -%}
311
+ {{- '<|video|>' -}}
312
+ {%- endif -%}
313
+ {%- endfor -%}
314
+ {%- else -%}
315
+ {{- format_tool_response_block(ns_tname.name, tool_body) -}}
316
+ {%- endif -%}
317
+ {%- set ns_tr_out.flag = true -%}
318
+ {%- set ns.prev_message_type = 'tool_response' -%}
319
+ {%- endif -%}
320
+ {%- endfor -%}
321
+ {%- endif -%}
322
+
323
+ {%- set captured_content -%}
324
+ {%- if message.get('content') is string -%}
325
+ {%- if role == 'model' -%}
326
+ {{- strip_thinking(message['content']) -}}
327
+ {%- else -%}
328
+ {{- message['content'] | trim -}}
329
+ {%- endif -%}
330
+ {%- elif message.get('content') is sequence -%}
331
+ {%- for item in message['content'] -%}
332
+ {%- if item.get('type') == 'text' -%}
333
+ {%- if role == 'model' -%}
334
+ {{- strip_thinking(item['text']) -}}
335
+ {%- else -%}
336
+ {{- item['text'] | trim -}}
337
+ {%- endif -%}
338
+ {%- elif item.get('type') in ['image', 'image_url'] -%}
339
+ {{- '<|image|>' -}}
340
+ {%- elif item.get('type') in ['audio', 'input_audio'] -%}
341
+ {{- '<|audio|>' -}}
342
+ {%- elif item.get('type') == 'video' -%}
343
+ {{- '<|video|>' -}}
344
+ {%- endif -%}
345
+ {%- endfor -%}
346
+ {%- endif -%}
347
+ {%- endset -%}
348
+
349
+ {{- captured_content -}}
350
+ {%- set has_content = captured_content | trim | length > 0 -%}
351
+
352
+ {#- Forward-scan: find next non-tool message role for continuation detection -#}
353
+ {%- set next_nt = namespace(role=None, found=false) -%}
354
+ {%- for j in range(loop.index0 + 1, loop_messages | length) -%}
355
+ {%- if not next_nt.found -%}
356
+ {%- if loop_messages[j]['role'] != 'tool' -%}
357
+ {%- set next_nt.role = loop_messages[j]['role'] -%}
358
+ {%- set next_nt.found = true -%}
359
+ {%- endif -%}
360
+ {%- endif -%}
361
+ {%- endfor -%}
362
+
363
+ {%- set continues_into_next = (
364
+ role == 'model'
365
+ and next_nt.role == 'assistant'
366
+ and (not message.get('tool_calls') or ns_tr_out.flag)
367
+ ) -%}
368
+
369
+ {%- if ns.prev_message_type == 'tool_call' and not ns_tr_out.flag -%}
370
+ {{- '<|tool_response>' -}}
371
+ {%- elif continues_into_next -%}
372
+ {%- elif not (ns_tr_out.flag and not has_content and not next_nt.found) -%}
373
+ {{- '<turn|>\n' -}}
374
+ {%- endif -%}
375
+
376
+ {#- Track previous non-tool role for next iteration (avoids O(n) backward scan) -#}
377
+ {%- set ns.prev_non_tool_role = message['role'] -%}
378
+ {%- endif -%}
379
+ {%- endfor -%}
380
+
381
+ {%- if add_generation_prompt -%}
382
+ {%- if ns.prev_message_type != 'tool_response' and ns.prev_message_type != 'tool_call' -%}
383
+ {{- '<|turn>model\n' -}}
384
+ {%- if not enable_thinking -%}
385
+ {{- '<|channel>thought\n<channel|>' -}}
386
+ {%- endif -%}
387
+ {%- elif ns.prev_message_type == 'tool_response' and enable_thinking -%}
388
+ {{- '<|channel>thought\n' -}}
389
+ {%- endif -%}
390
+ {%- endif -%}
26_09_08_sft_email_v4_v3/export/gemma4/70/config.json ADDED
@@ -0,0 +1,83 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "attention_bias": false,
3
+ "attention_dropout": 0.0,
4
+ "attention_k_eq_v": true,
5
+ "bos_token_id": 2,
6
+ "dtype": "bfloat16",
7
+ "enable_moe_block": true,
8
+ "eos_token_id": 1,
9
+ "final_logit_softcapping": 30.0,
10
+ "global_head_dim": 512,
11
+ "head_dim": 256,
12
+ "hidden_activation": "gelu_pytorch_tanh",
13
+ "hidden_size": 2816,
14
+ "hidden_size_per_layer_input": 0,
15
+ "initializer_range": 0.02,
16
+ "intermediate_size": 2112,
17
+ "layer_types": [
18
+ "sliding_attention",
19
+ "sliding_attention",
20
+ "sliding_attention",
21
+ "sliding_attention",
22
+ "sliding_attention",
23
+ "full_attention",
24
+ "sliding_attention",
25
+ "sliding_attention",
26
+ "sliding_attention",
27
+ "sliding_attention",
28
+ "sliding_attention",
29
+ "full_attention",
30
+ "sliding_attention",
31
+ "sliding_attention",
32
+ "sliding_attention",
33
+ "sliding_attention",
34
+ "sliding_attention",
35
+ "full_attention",
36
+ "sliding_attention",
37
+ "sliding_attention",
38
+ "sliding_attention",
39
+ "sliding_attention",
40
+ "sliding_attention",
41
+ "full_attention",
42
+ "sliding_attention",
43
+ "sliding_attention",
44
+ "sliding_attention",
45
+ "sliding_attention",
46
+ "sliding_attention",
47
+ "full_attention"
48
+ ],
49
+ "max_position_embeddings": 262144,
50
+ "model_type": "gemma4_text",
51
+ "moe_intermediate_size": 704,
52
+ "num_attention_heads": 16,
53
+ "num_experts": 128,
54
+ "num_global_key_value_heads": 2,
55
+ "num_hidden_layers": 30,
56
+ "num_key_value_heads": 8,
57
+ "num_kv_shared_layers": 0,
58
+ "pad_token_id": 0,
59
+ "rms_norm_eps": 1e-06,
60
+ "rope_parameters": {
61
+ "full_attention": {
62
+ "partial_rotary_factor": 0.25,
63
+ "rope_theta": 1000000.0,
64
+ "rope_type": "proportional"
65
+ },
66
+ "sliding_attention": {
67
+ "rope_theta": 10000.0,
68
+ "rope_type": "default"
69
+ }
70
+ },
71
+ "sliding_window": 1024,
72
+ "tie_word_embeddings": true,
73
+ "top_k_experts": 8,
74
+ "use_bidirectional_attention": "vision",
75
+ "use_cache": true,
76
+ "use_double_wide_mlp": false,
77
+ "vocab_size": 262144,
78
+ "vocab_size_per_layer_input": 262144,
79
+ "architectures": [
80
+ "Gemma4ForCausalLM"
81
+ ],
82
+ "transformers_version": "5.5.0.dev0"
83
+ }
26_09_08_sft_email_v4_v3/export/gemma4/70/generation_config.json ADDED
@@ -0,0 +1,14 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "bos_token_id": 2,
3
+ "do_sample": true,
4
+ "eos_token_id": [
5
+ 1,
6
+ 106,
7
+ 50
8
+ ],
9
+ "pad_token_id": 0,
10
+ "temperature": 1.0,
11
+ "top_k": 64,
12
+ "top_p": 0.95,
13
+ "transformers_version": "5.5.0.dev0"
14
+ }
26_09_08_sft_email_v4_v3/export/gemma4/70/model.safetensors.index.json ADDED
@@ -0,0 +1,1053 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "metadata": {
3
+ "fast_llm_metadata": {
4
+ "fast_llm_version": "0.4.0",
5
+ "model": "gpt",
6
+ "format": "gemma4",
7
+ "config": {
8
+ "type": "gpt",
9
+ "base_model": {
10
+ "decoder": {
11
+ "type": "pattern",
12
+ "blocks": {
13
+ "full_attention": {
14
+ "type": "decoder",
15
+ "mixer": {
16
+ "type": "attention",
17
+ "rotary": {
18
+ "type": "proportional",
19
+ "theta": 1000000.0,
20
+ "partial_rotary_factor": 0.25
21
+ },
22
+ "heads": 16,
23
+ "head_groups": 2,
24
+ "head_size": 512,
25
+ "add_linear_biases": false,
26
+ "dropout": 0.0,
27
+ "softmax_scale_power": 0.0,
28
+ "implementation": "sdpa",
29
+ "query_norm": {
30
+ "type": "rms_norm",
31
+ "epsilon": 1e-06
32
+ },
33
+ "key_norm": {
34
+ "type": "rms_norm",
35
+ "epsilon": 1e-06
36
+ },
37
+ "value_norm": {
38
+ "type": "fixed_rms_norm",
39
+ "epsilon": 1e-06
40
+ },
41
+ "shared_key_value": true
42
+ },
43
+ "mlp": {
44
+ "type": "hybrid_moe",
45
+ "dense": {
46
+ "type": "mlp",
47
+ "pre_norm": {
48
+ "type": "rms_norm",
49
+ "epsilon": 1e-06
50
+ },
51
+ "post_norm": {
52
+ "type": "rms_norm",
53
+ "epsilon": 1e-06
54
+ },
55
+ "intermediate_size": 2112,
56
+ "add_linear_biases": false,
57
+ "gated": true,
58
+ "activation": "gelu",
59
+ "recompute_level": "full"
60
+ },
61
+ "routed": {
62
+ "type": "moe",
63
+ "pre_norm": {
64
+ "type": "rms_norm",
65
+ "epsilon": 1e-06
66
+ },
67
+ "post_norm": {
68
+ "type": "rms_norm",
69
+ "epsilon": 1e-06
70
+ },
71
+ "intermediate_size": 704,
72
+ "add_linear_biases": false,
73
+ "gated": true,
74
+ "activation": "gelu",
75
+ "recompute_level": "full",
76
+ "router_normalization": {
77
+ "type": "fixed_rms_norm",
78
+ "epsilon": 1e-06
79
+ },
80
+ "router_scale": {
81
+ "enabled": true
82
+ },
83
+ "router_input_scale": 0.018844459036110227,
84
+ "router_per_expert_scale": {
85
+ "enabled": true
86
+ },
87
+ "experts": 128,
88
+ "experts_per_token": 8,
89
+ "auxiliary_loss_coefficient": 0.0
90
+ }
91
+ },
92
+ "normalization": {
93
+ "type": "rms_norm",
94
+ "epsilon": 1e-06
95
+ },
96
+ "pre_mlp_normalization": {
97
+ "type": "none"
98
+ },
99
+ "post_mixer_normalization": {
100
+ "type": "rms_norm",
101
+ "epsilon": 1e-06
102
+ },
103
+ "post_mlp_normalization": {
104
+ "type": "rms_norm",
105
+ "epsilon": 1e-06
106
+ },
107
+ "output_scale": {
108
+ "lr_scale": 0.0,
109
+ "enabled": true
110
+ }
111
+ },
112
+ "sliding_attention": {
113
+ "type": "decoder",
114
+ "mixer": {
115
+ "type": "attention",
116
+ "rotary": {
117
+ "type": "default",
118
+ "theta": 10000.0
119
+ },
120
+ "heads": 16,
121
+ "head_groups": 8,
122
+ "head_size": 256,
123
+ "add_linear_biases": false,
124
+ "dropout": 0.0,
125
+ "window_size": 1024,
126
+ "softmax_scale_power": 0.0,
127
+ "implementation": "flash",
128
+ "query_norm": {
129
+ "type": "rms_norm",
130
+ "epsilon": 1e-06
131
+ },
132
+ "key_norm": {
133
+ "type": "rms_norm",
134
+ "epsilon": 1e-06
135
+ },
136
+ "value_norm": {
137
+ "type": "fixed_rms_norm",
138
+ "epsilon": 1e-06
139
+ }
140
+ },
141
+ "mlp": {
142
+ "type": "hybrid_moe",
143
+ "dense": {
144
+ "type": "mlp",
145
+ "pre_norm": {
146
+ "type": "rms_norm",
147
+ "epsilon": 1e-06
148
+ },
149
+ "post_norm": {
150
+ "type": "rms_norm",
151
+ "epsilon": 1e-06
152
+ },
153
+ "intermediate_size": 2112,
154
+ "add_linear_biases": false,
155
+ "gated": true,
156
+ "activation": "gelu",
157
+ "recompute_level": "full"
158
+ },
159
+ "routed": {
160
+ "type": "moe",
161
+ "pre_norm": {
162
+ "type": "rms_norm",
163
+ "epsilon": 1e-06
164
+ },
165
+ "post_norm": {
166
+ "type": "rms_norm",
167
+ "epsilon": 1e-06
168
+ },
169
+ "intermediate_size": 704,
170
+ "add_linear_biases": false,
171
+ "gated": true,
172
+ "activation": "gelu",
173
+ "recompute_level": "full",
174
+ "router_normalization": {
175
+ "type": "fixed_rms_norm",
176
+ "epsilon": 1e-06
177
+ },
178
+ "router_scale": {
179
+ "enabled": true
180
+ },
181
+ "router_input_scale": 0.018844459036110227,
182
+ "router_per_expert_scale": {
183
+ "enabled": true
184
+ },
185
+ "experts": 128,
186
+ "experts_per_token": 8,
187
+ "auxiliary_loss_coefficient": 0.0
188
+ }
189
+ },
190
+ "normalization": {
191
+ "type": "rms_norm",
192
+ "epsilon": 1e-06
193
+ },
194
+ "pre_mlp_normalization": {
195
+ "type": "none"
196
+ },
197
+ "post_mixer_normalization": {
198
+ "type": "rms_norm",
199
+ "epsilon": 1e-06
200
+ },
201
+ "post_mlp_normalization": {
202
+ "type": "rms_norm",
203
+ "epsilon": 1e-06
204
+ },
205
+ "output_scale": {
206
+ "lr_scale": 0.0,
207
+ "enabled": true
208
+ }
209
+ }
210
+ },
211
+ "pattern": [
212
+ "sliding_attention",
213
+ "sliding_attention",
214
+ "sliding_attention",
215
+ "sliding_attention",
216
+ "sliding_attention",
217
+ "full_attention",
218
+ "sliding_attention",
219
+ "sliding_attention",
220
+ "sliding_attention",
221
+ "sliding_attention",
222
+ "sliding_attention",
223
+ "full_attention",
224
+ "sliding_attention",
225
+ "sliding_attention",
226
+ "sliding_attention",
227
+ "sliding_attention",
228
+ "sliding_attention",
229
+ "full_attention",
230
+ "sliding_attention",
231
+ "sliding_attention",
232
+ "sliding_attention",
233
+ "sliding_attention",
234
+ "sliding_attention",
235
+ "full_attention",
236
+ "sliding_attention",
237
+ "sliding_attention",
238
+ "sliding_attention",
239
+ "sliding_attention",
240
+ "sliding_attention",
241
+ "full_attention"
242
+ ],
243
+ "num_blocks": 30
244
+ },
245
+ "embeddings": {
246
+ "vocab_size": 262144,
247
+ "vocab_parallel": false,
248
+ "embedding_scale": 53.0659966456864
249
+ },
250
+ "head": {
251
+ "normalization": {
252
+ "type": "rms_norm",
253
+ "epsilon": 1e-06
254
+ },
255
+ "cross_entropy_splits": 8,
256
+ "final_logit_softcap": 30.0
257
+ },
258
+ "tied_embedding_weight": true,
259
+ "hidden_size": 2816,
260
+ "peft": {
261
+ "type": "none"
262
+ }
263
+ },
264
+ "multi_stage": {
265
+ "zero_stage": 3
266
+ },
267
+ "distributed": {
268
+ "tensor_parallel": 2,
269
+ "sequence_tensor_parallel": true,
270
+ "sequence_data_parallel": 4,
271
+ "world_size": 32,
272
+ "rank": 0,
273
+ "local_world_size": 8,
274
+ "timeout": 3600.0,
275
+ "compute_dtype": "bfloat16"
276
+ }
277
+ },
278
+ "shards": [
279
+ "weights"
280
+ ],
281
+ "metadata": {
282
+ "optimizer": {
283
+ "current_step": 70,
284
+ "grad_scaler": {
285
+ "type": "NoopGradScaler"
286
+ }
287
+ },
288
+ "completed_steps": 70,
289
+ "metrics": {
290
+ "training": {
291
+ "batch_size": 2097152,
292
+ "load_balancing_loss": 823.45361328125,
293
+ "lm_head_loss": 0.15507733821868896,
294
+ "total_steps": 210,
295
+ "completed_steps": 70,
296
+ "consumed_tokens": 146800640,
297
+ "percent_done": 33.333333333333336,
298
+ "step_time_ms": 27782.785279676318,
299
+ "step_time_average_ms": 28139.88637443898,
300
+ "remaining_time": 3939.584092421457,
301
+ "completion_time": 1788872635.9465992,
302
+ "skipped_iters": 0,
303
+ "nan_iters": 0,
304
+ "model_tflops": 60428.45211557096,
305
+ "hardware_tflops": 74970.05489154597,
306
+ "tokens_per_sec_per_gpu": 2358.870766205753,
307
+ "run": 0,
308
+ "grad_norm": 4.336630344390869,
309
+ "learning_rate": 1.5611870653623826e-05,
310
+ "loss_scale": 1.0,
311
+ "reserved": 61408.0,
312
+ "allocated": 21478.49755859375,
313
+ "max_allocated": 54787.2607421875,
314
+ "max_reserved": 61408.0,
315
+ "global_max_reserved": 61408.0
316
+ }
317
+ }
318
+ }
319
+ },
320
+ "model_config": {
321
+ "vocab_size": 262144,
322
+ "num_attention_heads": 16,
323
+ "num_key_value_heads": 8,
324
+ "head_dim": 256,
325
+ "global_head_dim": 512,
326
+ "num_global_key_value_heads": 2,
327
+ "attention_bias": false,
328
+ "attention_dropout": 0.0,
329
+ "sliding_window": 1024,
330
+ "rms_norm_eps": 1e-06,
331
+ "attention_k_eq_v": true,
332
+ "rope_parameters": {
333
+ "sliding_attention": {
334
+ "rope_type": "default",
335
+ "rope_theta": 10000.0
336
+ },
337
+ "full_attention": {
338
+ "rope_type": "proportional",
339
+ "rope_theta": 1000000.0,
340
+ "partial_rotary_factor": 0.25
341
+ }
342
+ },
343
+ "intermediate_size": 2112,
344
+ "hidden_activation": "gelu_pytorch_tanh",
345
+ "num_experts": 128,
346
+ "top_k_experts": 8,
347
+ "moe_intermediate_size": 704,
348
+ "enable_moe_block": true,
349
+ "num_hidden_layers": 30,
350
+ "layer_types": [
351
+ "sliding_attention",
352
+ "sliding_attention",
353
+ "sliding_attention",
354
+ "sliding_attention",
355
+ "sliding_attention",
356
+ "full_attention",
357
+ "sliding_attention",
358
+ "sliding_attention",
359
+ "sliding_attention",
360
+ "sliding_attention",
361
+ "sliding_attention",
362
+ "full_attention",
363
+ "sliding_attention",
364
+ "sliding_attention",
365
+ "sliding_attention",
366
+ "sliding_attention",
367
+ "sliding_attention",
368
+ "full_attention",
369
+ "sliding_attention",
370
+ "sliding_attention",
371
+ "sliding_attention",
372
+ "sliding_attention",
373
+ "sliding_attention",
374
+ "full_attention",
375
+ "sliding_attention",
376
+ "sliding_attention",
377
+ "sliding_attention",
378
+ "sliding_attention",
379
+ "sliding_attention",
380
+ "full_attention"
381
+ ],
382
+ "final_logit_softcapping": 30.0,
383
+ "tie_word_embeddings": true,
384
+ "hidden_size": 2816,
385
+ "hidden_size_per_layer_input": 0,
386
+ "use_bidirectional_attention": null,
387
+ "model_type": "gemma4_text",
388
+ "architectures": [
389
+ "Gemma4ForCausalLM"
390
+ ]
391
+ },
392
+ "format": "pt"
393
+ },
394
+ "weight_map": {
395
+ "model.embed_tokens.weight": "model_0.safetensors",
396
+ "model.layers.0.input_layernorm.weight": "model_0.safetensors",
397
+ "model.layers.0.post_attention_layernorm.weight": "model_0.safetensors",
398
+ "model.layers.0.post_feedforward_layernorm.weight": "model_0.safetensors",
399
+ "model.layers.0.self_attn.q_norm.weight": "model_0.safetensors",
400
+ "model.layers.0.self_attn.k_norm.weight": "model_0.safetensors",
401
+ "model.layers.0.pre_feedforward_layernorm.weight": "model_0.safetensors",
402
+ "model.layers.0.post_feedforward_layernorm_1.weight": "model_0.safetensors",
403
+ "model.layers.0.router.scale": "model_0.safetensors",
404
+ "model.layers.0.router.per_expert_scale": "model_0.safetensors",
405
+ "model.layers.0.pre_feedforward_layernorm_2.weight": "model_0.safetensors",
406
+ "model.layers.0.post_feedforward_layernorm_2.weight": "model_0.safetensors",
407
+ "model.layers.0.router.proj.weight": "model_0.safetensors",
408
+ "model.layers.0.self_attn.q_proj.weight": "model_0.safetensors",
409
+ "model.layers.0.self_attn.k_proj.weight": "model_0.safetensors",
410
+ "model.layers.0.self_attn.v_proj.weight": "model_0.safetensors",
411
+ "model.layers.0.self_attn.o_proj.weight": "model_0.safetensors",
412
+ "model.layers.0.mlp.gate_proj.weight": "model_0.safetensors",
413
+ "model.layers.0.mlp.up_proj.weight": "model_0.safetensors",
414
+ "model.layers.0.mlp.down_proj.weight": "model_0.safetensors",
415
+ "model.layers.0.experts.gate_up_proj": "model_0.safetensors",
416
+ "model.layers.0.experts.down_proj": "model_0.safetensors",
417
+ "model.layers.0.layer_scalar": "model_0.safetensors",
418
+ "model.layers.1.input_layernorm.weight": "model_0.safetensors",
419
+ "model.layers.1.post_attention_layernorm.weight": "model_0.safetensors",
420
+ "model.layers.1.post_feedforward_layernorm.weight": "model_0.safetensors",
421
+ "model.layers.1.self_attn.q_norm.weight": "model_0.safetensors",
422
+ "model.layers.1.self_attn.k_norm.weight": "model_0.safetensors",
423
+ "model.layers.1.pre_feedforward_layernorm.weight": "model_0.safetensors",
424
+ "model.layers.1.post_feedforward_layernorm_1.weight": "model_0.safetensors",
425
+ "model.layers.1.router.scale": "model_0.safetensors",
426
+ "model.layers.1.router.per_expert_scale": "model_0.safetensors",
427
+ "model.layers.1.pre_feedforward_layernorm_2.weight": "model_0.safetensors",
428
+ "model.layers.1.post_feedforward_layernorm_2.weight": "model_0.safetensors",
429
+ "model.layers.1.router.proj.weight": "model_0.safetensors",
430
+ "model.layers.1.self_attn.q_proj.weight": "model_0.safetensors",
431
+ "model.layers.1.self_attn.k_proj.weight": "model_0.safetensors",
432
+ "model.layers.1.self_attn.v_proj.weight": "model_0.safetensors",
433
+ "model.layers.1.self_attn.o_proj.weight": "model_0.safetensors",
434
+ "model.layers.1.mlp.gate_proj.weight": "model_0.safetensors",
435
+ "model.layers.1.mlp.up_proj.weight": "model_0.safetensors",
436
+ "model.layers.1.mlp.down_proj.weight": "model_0.safetensors",
437
+ "model.layers.1.experts.gate_up_proj": "model_0.safetensors",
438
+ "model.layers.1.experts.down_proj": "model_0.safetensors",
439
+ "model.layers.1.layer_scalar": "model_0.safetensors",
440
+ "model.layers.2.input_layernorm.weight": "model_0.safetensors",
441
+ "model.layers.2.post_attention_layernorm.weight": "model_0.safetensors",
442
+ "model.layers.2.post_feedforward_layernorm.weight": "model_0.safetensors",
443
+ "model.layers.2.self_attn.q_norm.weight": "model_0.safetensors",
444
+ "model.layers.2.self_attn.k_norm.weight": "model_0.safetensors",
445
+ "model.layers.2.pre_feedforward_layernorm.weight": "model_0.safetensors",
446
+ "model.layers.2.post_feedforward_layernorm_1.weight": "model_0.safetensors",
447
+ "model.layers.2.router.scale": "model_0.safetensors",
448
+ "model.layers.2.router.per_expert_scale": "model_0.safetensors",
449
+ "model.layers.2.pre_feedforward_layernorm_2.weight": "model_0.safetensors",
450
+ "model.layers.2.post_feedforward_layernorm_2.weight": "model_0.safetensors",
451
+ "model.layers.2.router.proj.weight": "model_0.safetensors",
452
+ "model.layers.2.self_attn.q_proj.weight": "model_0.safetensors",
453
+ "model.layers.2.self_attn.k_proj.weight": "model_0.safetensors",
454
+ "model.layers.2.self_attn.v_proj.weight": "model_0.safetensors",
455
+ "model.layers.2.self_attn.o_proj.weight": "model_0.safetensors",
456
+ "model.layers.2.mlp.gate_proj.weight": "model_0.safetensors",
457
+ "model.layers.2.mlp.up_proj.weight": "model_0.safetensors",
458
+ "model.layers.2.mlp.down_proj.weight": "model_0.safetensors",
459
+ "model.layers.2.experts.gate_up_proj": "model_0.safetensors",
460
+ "model.layers.2.experts.down_proj": "model_0.safetensors",
461
+ "model.layers.2.layer_scalar": "model_0.safetensors",
462
+ "model.layers.3.input_layernorm.weight": "model_0.safetensors",
463
+ "model.layers.3.post_attention_layernorm.weight": "model_0.safetensors",
464
+ "model.layers.3.post_feedforward_layernorm.weight": "model_0.safetensors",
465
+ "model.layers.3.self_attn.q_norm.weight": "model_0.safetensors",
466
+ "model.layers.3.self_attn.k_norm.weight": "model_0.safetensors",
467
+ "model.layers.3.pre_feedforward_layernorm.weight": "model_0.safetensors",
468
+ "model.layers.3.post_feedforward_layernorm_1.weight": "model_0.safetensors",
469
+ "model.layers.3.router.scale": "model_0.safetensors",
470
+ "model.layers.3.router.per_expert_scale": "model_0.safetensors",
471
+ "model.layers.3.pre_feedforward_layernorm_2.weight": "model_0.safetensors",
472
+ "model.layers.3.post_feedforward_layernorm_2.weight": "model_0.safetensors",
473
+ "model.layers.3.router.proj.weight": "model_0.safetensors",
474
+ "model.layers.3.self_attn.q_proj.weight": "model_0.safetensors",
475
+ "model.layers.3.self_attn.k_proj.weight": "model_0.safetensors",
476
+ "model.layers.3.self_attn.v_proj.weight": "model_0.safetensors",
477
+ "model.layers.3.self_attn.o_proj.weight": "model_0.safetensors",
478
+ "model.layers.3.mlp.gate_proj.weight": "model_0.safetensors",
479
+ "model.layers.3.mlp.up_proj.weight": "model_0.safetensors",
480
+ "model.layers.3.mlp.down_proj.weight": "model_0.safetensors",
481
+ "model.layers.3.experts.gate_up_proj": "model_0.safetensors",
482
+ "model.layers.3.experts.down_proj": "model_0.safetensors",
483
+ "model.layers.3.layer_scalar": "model_0.safetensors",
484
+ "model.layers.4.input_layernorm.weight": "model_0.safetensors",
485
+ "model.layers.4.post_attention_layernorm.weight": "model_0.safetensors",
486
+ "model.layers.4.post_feedforward_layernorm.weight": "model_0.safetensors",
487
+ "model.layers.4.self_attn.q_norm.weight": "model_0.safetensors",
488
+ "model.layers.4.self_attn.k_norm.weight": "model_0.safetensors",
489
+ "model.layers.4.pre_feedforward_layernorm.weight": "model_0.safetensors",
490
+ "model.layers.4.post_feedforward_layernorm_1.weight": "model_0.safetensors",
491
+ "model.layers.4.router.scale": "model_0.safetensors",
492
+ "model.layers.4.router.per_expert_scale": "model_0.safetensors",
493
+ "model.layers.4.pre_feedforward_layernorm_2.weight": "model_0.safetensors",
494
+ "model.layers.4.post_feedforward_layernorm_2.weight": "model_0.safetensors",
495
+ "model.layers.4.router.proj.weight": "model_0.safetensors",
496
+ "model.layers.4.self_attn.q_proj.weight": "model_0.safetensors",
497
+ "model.layers.4.self_attn.k_proj.weight": "model_0.safetensors",
498
+ "model.layers.4.self_attn.v_proj.weight": "model_0.safetensors",
499
+ "model.layers.4.self_attn.o_proj.weight": "model_0.safetensors",
500
+ "model.layers.4.mlp.gate_proj.weight": "model_0.safetensors",
501
+ "model.layers.4.mlp.up_proj.weight": "model_0.safetensors",
502
+ "model.layers.4.mlp.down_proj.weight": "model_0.safetensors",
503
+ "model.layers.4.experts.gate_up_proj": "model_0.safetensors",
504
+ "model.layers.4.experts.down_proj": "model_1.safetensors",
505
+ "model.layers.4.layer_scalar": "model_1.safetensors",
506
+ "model.layers.5.input_layernorm.weight": "model_1.safetensors",
507
+ "model.layers.5.post_attention_layernorm.weight": "model_1.safetensors",
508
+ "model.layers.5.post_feedforward_layernorm.weight": "model_1.safetensors",
509
+ "model.layers.5.self_attn.q_norm.weight": "model_1.safetensors",
510
+ "model.layers.5.self_attn.k_norm.weight": "model_1.safetensors",
511
+ "model.layers.5.pre_feedforward_layernorm.weight": "model_1.safetensors",
512
+ "model.layers.5.post_feedforward_layernorm_1.weight": "model_1.safetensors",
513
+ "model.layers.5.router.scale": "model_1.safetensors",
514
+ "model.layers.5.router.per_expert_scale": "model_1.safetensors",
515
+ "model.layers.5.pre_feedforward_layernorm_2.weight": "model_1.safetensors",
516
+ "model.layers.5.post_feedforward_layernorm_2.weight": "model_1.safetensors",
517
+ "model.layers.5.router.proj.weight": "model_1.safetensors",
518
+ "model.layers.5.self_attn.q_proj.weight": "model_1.safetensors",
519
+ "model.layers.5.self_attn.k_proj.weight": "model_1.safetensors",
520
+ "model.layers.5.self_attn.o_proj.weight": "model_1.safetensors",
521
+ "model.layers.5.mlp.gate_proj.weight": "model_1.safetensors",
522
+ "model.layers.5.mlp.up_proj.weight": "model_1.safetensors",
523
+ "model.layers.5.mlp.down_proj.weight": "model_1.safetensors",
524
+ "model.layers.5.experts.gate_up_proj": "model_1.safetensors",
525
+ "model.layers.5.experts.down_proj": "model_1.safetensors",
526
+ "model.layers.5.layer_scalar": "model_1.safetensors",
527
+ "model.layers.6.input_layernorm.weight": "model_1.safetensors",
528
+ "model.layers.6.post_attention_layernorm.weight": "model_1.safetensors",
529
+ "model.layers.6.post_feedforward_layernorm.weight": "model_1.safetensors",
530
+ "model.layers.6.self_attn.q_norm.weight": "model_1.safetensors",
531
+ "model.layers.6.self_attn.k_norm.weight": "model_1.safetensors",
532
+ "model.layers.6.pre_feedforward_layernorm.weight": "model_1.safetensors",
533
+ "model.layers.6.post_feedforward_layernorm_1.weight": "model_1.safetensors",
534
+ "model.layers.6.router.scale": "model_1.safetensors",
535
+ "model.layers.6.router.per_expert_scale": "model_1.safetensors",
536
+ "model.layers.6.pre_feedforward_layernorm_2.weight": "model_1.safetensors",
537
+ "model.layers.6.post_feedforward_layernorm_2.weight": "model_1.safetensors",
538
+ "model.layers.6.router.proj.weight": "model_1.safetensors",
539
+ "model.layers.6.self_attn.q_proj.weight": "model_1.safetensors",
540
+ "model.layers.6.self_attn.k_proj.weight": "model_1.safetensors",
541
+ "model.layers.6.self_attn.v_proj.weight": "model_1.safetensors",
542
+ "model.layers.6.self_attn.o_proj.weight": "model_1.safetensors",
543
+ "model.layers.6.mlp.gate_proj.weight": "model_1.safetensors",
544
+ "model.layers.6.mlp.up_proj.weight": "model_1.safetensors",
545
+ "model.layers.6.mlp.down_proj.weight": "model_1.safetensors",
546
+ "model.layers.6.experts.gate_up_proj": "model_1.safetensors",
547
+ "model.layers.6.experts.down_proj": "model_1.safetensors",
548
+ "model.layers.6.layer_scalar": "model_1.safetensors",
549
+ "model.layers.7.input_layernorm.weight": "model_1.safetensors",
550
+ "model.layers.7.post_attention_layernorm.weight": "model_1.safetensors",
551
+ "model.layers.7.post_feedforward_layernorm.weight": "model_1.safetensors",
552
+ "model.layers.7.self_attn.q_norm.weight": "model_1.safetensors",
553
+ "model.layers.7.self_attn.k_norm.weight": "model_1.safetensors",
554
+ "model.layers.7.pre_feedforward_layernorm.weight": "model_1.safetensors",
555
+ "model.layers.7.post_feedforward_layernorm_1.weight": "model_1.safetensors",
556
+ "model.layers.7.router.scale": "model_1.safetensors",
557
+ "model.layers.7.router.per_expert_scale": "model_1.safetensors",
558
+ "model.layers.7.pre_feedforward_layernorm_2.weight": "model_1.safetensors",
559
+ "model.layers.7.post_feedforward_layernorm_2.weight": "model_1.safetensors",
560
+ "model.layers.7.router.proj.weight": "model_1.safetensors",
561
+ "model.layers.7.self_attn.q_proj.weight": "model_1.safetensors",
562
+ "model.layers.7.self_attn.k_proj.weight": "model_1.safetensors",
563
+ "model.layers.7.self_attn.v_proj.weight": "model_1.safetensors",
564
+ "model.layers.7.self_attn.o_proj.weight": "model_1.safetensors",
565
+ "model.layers.7.mlp.gate_proj.weight": "model_1.safetensors",
566
+ "model.layers.7.mlp.up_proj.weight": "model_1.safetensors",
567
+ "model.layers.7.mlp.down_proj.weight": "model_1.safetensors",
568
+ "model.layers.7.experts.gate_up_proj": "model_1.safetensors",
569
+ "model.layers.7.experts.down_proj": "model_1.safetensors",
570
+ "model.layers.7.layer_scalar": "model_1.safetensors",
571
+ "model.layers.8.input_layernorm.weight": "model_1.safetensors",
572
+ "model.layers.8.post_attention_layernorm.weight": "model_1.safetensors",
573
+ "model.layers.8.post_feedforward_layernorm.weight": "model_1.safetensors",
574
+ "model.layers.8.self_attn.q_norm.weight": "model_1.safetensors",
575
+ "model.layers.8.self_attn.k_norm.weight": "model_1.safetensors",
576
+ "model.layers.8.pre_feedforward_layernorm.weight": "model_1.safetensors",
577
+ "model.layers.8.post_feedforward_layernorm_1.weight": "model_1.safetensors",
578
+ "model.layers.8.router.scale": "model_1.safetensors",
579
+ "model.layers.8.router.per_expert_scale": "model_1.safetensors",
580
+ "model.layers.8.pre_feedforward_layernorm_2.weight": "model_1.safetensors",
581
+ "model.layers.8.post_feedforward_layernorm_2.weight": "model_1.safetensors",
582
+ "model.layers.8.router.proj.weight": "model_1.safetensors",
583
+ "model.layers.8.self_attn.q_proj.weight": "model_1.safetensors",
584
+ "model.layers.8.self_attn.k_proj.weight": "model_1.safetensors",
585
+ "model.layers.8.self_attn.v_proj.weight": "model_1.safetensors",
586
+ "model.layers.8.self_attn.o_proj.weight": "model_1.safetensors",
587
+ "model.layers.8.mlp.gate_proj.weight": "model_1.safetensors",
588
+ "model.layers.8.mlp.up_proj.weight": "model_1.safetensors",
589
+ "model.layers.8.mlp.down_proj.weight": "model_1.safetensors",
590
+ "model.layers.8.experts.gate_up_proj": "model_1.safetensors",
591
+ "model.layers.8.experts.down_proj": "model_1.safetensors",
592
+ "model.layers.8.layer_scalar": "model_1.safetensors",
593
+ "model.layers.9.input_layernorm.weight": "model_1.safetensors",
594
+ "model.layers.9.post_attention_layernorm.weight": "model_1.safetensors",
595
+ "model.layers.9.post_feedforward_layernorm.weight": "model_1.safetensors",
596
+ "model.layers.9.self_attn.q_norm.weight": "model_1.safetensors",
597
+ "model.layers.9.self_attn.k_norm.weight": "model_1.safetensors",
598
+ "model.layers.9.pre_feedforward_layernorm.weight": "model_1.safetensors",
599
+ "model.layers.9.post_feedforward_layernorm_1.weight": "model_1.safetensors",
600
+ "model.layers.9.router.scale": "model_1.safetensors",
601
+ "model.layers.9.router.per_expert_scale": "model_1.safetensors",
602
+ "model.layers.9.pre_feedforward_layernorm_2.weight": "model_1.safetensors",
603
+ "model.layers.9.post_feedforward_layernorm_2.weight": "model_1.safetensors",
604
+ "model.layers.9.router.proj.weight": "model_1.safetensors",
605
+ "model.layers.9.self_attn.q_proj.weight": "model_1.safetensors",
606
+ "model.layers.9.self_attn.k_proj.weight": "model_1.safetensors",
607
+ "model.layers.9.self_attn.v_proj.weight": "model_1.safetensors",
608
+ "model.layers.9.self_attn.o_proj.weight": "model_1.safetensors",
609
+ "model.layers.9.mlp.gate_proj.weight": "model_1.safetensors",
610
+ "model.layers.9.mlp.up_proj.weight": "model_1.safetensors",
611
+ "model.layers.9.mlp.down_proj.weight": "model_1.safetensors",
612
+ "model.layers.9.experts.gate_up_proj": "model_1.safetensors",
613
+ "model.layers.9.experts.down_proj": "model_1.safetensors",
614
+ "model.layers.9.layer_scalar": "model_2.safetensors",
615
+ "model.layers.10.input_layernorm.weight": "model_2.safetensors",
616
+ "model.layers.10.post_attention_layernorm.weight": "model_2.safetensors",
617
+ "model.layers.10.post_feedforward_layernorm.weight": "model_2.safetensors",
618
+ "model.layers.10.self_attn.q_norm.weight": "model_2.safetensors",
619
+ "model.layers.10.self_attn.k_norm.weight": "model_2.safetensors",
620
+ "model.layers.10.pre_feedforward_layernorm.weight": "model_2.safetensors",
621
+ "model.layers.10.post_feedforward_layernorm_1.weight": "model_2.safetensors",
622
+ "model.layers.10.router.scale": "model_2.safetensors",
623
+ "model.layers.10.router.per_expert_scale": "model_2.safetensors",
624
+ "model.layers.10.pre_feedforward_layernorm_2.weight": "model_2.safetensors",
625
+ "model.layers.10.post_feedforward_layernorm_2.weight": "model_2.safetensors",
626
+ "model.layers.10.router.proj.weight": "model_2.safetensors",
627
+ "model.layers.10.self_attn.q_proj.weight": "model_2.safetensors",
628
+ "model.layers.10.self_attn.k_proj.weight": "model_2.safetensors",
629
+ "model.layers.10.self_attn.v_proj.weight": "model_2.safetensors",
630
+ "model.layers.10.self_attn.o_proj.weight": "model_2.safetensors",
631
+ "model.layers.10.mlp.gate_proj.weight": "model_2.safetensors",
632
+ "model.layers.10.mlp.up_proj.weight": "model_2.safetensors",
633
+ "model.layers.10.mlp.down_proj.weight": "model_2.safetensors",
634
+ "model.layers.10.experts.gate_up_proj": "model_2.safetensors",
635
+ "model.layers.10.experts.down_proj": "model_2.safetensors",
636
+ "model.layers.10.layer_scalar": "model_2.safetensors",
637
+ "model.layers.11.input_layernorm.weight": "model_2.safetensors",
638
+ "model.layers.11.post_attention_layernorm.weight": "model_2.safetensors",
639
+ "model.layers.11.post_feedforward_layernorm.weight": "model_2.safetensors",
640
+ "model.layers.11.self_attn.q_norm.weight": "model_2.safetensors",
641
+ "model.layers.11.self_attn.k_norm.weight": "model_2.safetensors",
642
+ "model.layers.11.pre_feedforward_layernorm.weight": "model_2.safetensors",
643
+ "model.layers.11.post_feedforward_layernorm_1.weight": "model_2.safetensors",
644
+ "model.layers.11.router.scale": "model_2.safetensors",
645
+ "model.layers.11.router.per_expert_scale": "model_2.safetensors",
646
+ "model.layers.11.pre_feedforward_layernorm_2.weight": "model_2.safetensors",
647
+ "model.layers.11.post_feedforward_layernorm_2.weight": "model_2.safetensors",
648
+ "model.layers.11.router.proj.weight": "model_2.safetensors",
649
+ "model.layers.11.self_attn.q_proj.weight": "model_2.safetensors",
650
+ "model.layers.11.self_attn.k_proj.weight": "model_2.safetensors",
651
+ "model.layers.11.self_attn.o_proj.weight": "model_2.safetensors",
652
+ "model.layers.11.mlp.gate_proj.weight": "model_2.safetensors",
653
+ "model.layers.11.mlp.up_proj.weight": "model_2.safetensors",
654
+ "model.layers.11.mlp.down_proj.weight": "model_2.safetensors",
655
+ "model.layers.11.experts.gate_up_proj": "model_2.safetensors",
656
+ "model.layers.11.experts.down_proj": "model_2.safetensors",
657
+ "model.layers.11.layer_scalar": "model_2.safetensors",
658
+ "model.layers.12.input_layernorm.weight": "model_2.safetensors",
659
+ "model.layers.12.post_attention_layernorm.weight": "model_2.safetensors",
660
+ "model.layers.12.post_feedforward_layernorm.weight": "model_2.safetensors",
661
+ "model.layers.12.self_attn.q_norm.weight": "model_2.safetensors",
662
+ "model.layers.12.self_attn.k_norm.weight": "model_2.safetensors",
663
+ "model.layers.12.pre_feedforward_layernorm.weight": "model_2.safetensors",
664
+ "model.layers.12.post_feedforward_layernorm_1.weight": "model_2.safetensors",
665
+ "model.layers.12.router.scale": "model_2.safetensors",
666
+ "model.layers.12.router.per_expert_scale": "model_2.safetensors",
667
+ "model.layers.12.pre_feedforward_layernorm_2.weight": "model_2.safetensors",
668
+ "model.layers.12.post_feedforward_layernorm_2.weight": "model_2.safetensors",
669
+ "model.layers.12.router.proj.weight": "model_2.safetensors",
670
+ "model.layers.12.self_attn.q_proj.weight": "model_2.safetensors",
671
+ "model.layers.12.self_attn.k_proj.weight": "model_2.safetensors",
672
+ "model.layers.12.self_attn.v_proj.weight": "model_2.safetensors",
673
+ "model.layers.12.self_attn.o_proj.weight": "model_2.safetensors",
674
+ "model.layers.12.mlp.gate_proj.weight": "model_2.safetensors",
675
+ "model.layers.12.mlp.up_proj.weight": "model_2.safetensors",
676
+ "model.layers.12.mlp.down_proj.weight": "model_2.safetensors",
677
+ "model.layers.12.experts.gate_up_proj": "model_2.safetensors",
678
+ "model.layers.12.experts.down_proj": "model_2.safetensors",
679
+ "model.layers.12.layer_scalar": "model_2.safetensors",
680
+ "model.layers.13.input_layernorm.weight": "model_2.safetensors",
681
+ "model.layers.13.post_attention_layernorm.weight": "model_2.safetensors",
682
+ "model.layers.13.post_feedforward_layernorm.weight": "model_2.safetensors",
683
+ "model.layers.13.self_attn.q_norm.weight": "model_2.safetensors",
684
+ "model.layers.13.self_attn.k_norm.weight": "model_2.safetensors",
685
+ "model.layers.13.pre_feedforward_layernorm.weight": "model_2.safetensors",
686
+ "model.layers.13.post_feedforward_layernorm_1.weight": "model_2.safetensors",
687
+ "model.layers.13.router.scale": "model_2.safetensors",
688
+ "model.layers.13.router.per_expert_scale": "model_2.safetensors",
689
+ "model.layers.13.pre_feedforward_layernorm_2.weight": "model_2.safetensors",
690
+ "model.layers.13.post_feedforward_layernorm_2.weight": "model_2.safetensors",
691
+ "model.layers.13.router.proj.weight": "model_2.safetensors",
692
+ "model.layers.13.self_attn.q_proj.weight": "model_2.safetensors",
693
+ "model.layers.13.self_attn.k_proj.weight": "model_2.safetensors",
694
+ "model.layers.13.self_attn.v_proj.weight": "model_2.safetensors",
695
+ "model.layers.13.self_attn.o_proj.weight": "model_2.safetensors",
696
+ "model.layers.13.mlp.gate_proj.weight": "model_2.safetensors",
697
+ "model.layers.13.mlp.up_proj.weight": "model_2.safetensors",
698
+ "model.layers.13.mlp.down_proj.weight": "model_2.safetensors",
699
+ "model.layers.13.experts.gate_up_proj": "model_2.safetensors",
700
+ "model.layers.13.experts.down_proj": "model_2.safetensors",
701
+ "model.layers.13.layer_scalar": "model_2.safetensors",
702
+ "model.layers.14.input_layernorm.weight": "model_2.safetensors",
703
+ "model.layers.14.post_attention_layernorm.weight": "model_2.safetensors",
704
+ "model.layers.14.post_feedforward_layernorm.weight": "model_2.safetensors",
705
+ "model.layers.14.self_attn.q_norm.weight": "model_2.safetensors",
706
+ "model.layers.14.self_attn.k_norm.weight": "model_2.safetensors",
707
+ "model.layers.14.pre_feedforward_layernorm.weight": "model_2.safetensors",
708
+ "model.layers.14.post_feedforward_layernorm_1.weight": "model_2.safetensors",
709
+ "model.layers.14.router.scale": "model_2.safetensors",
710
+ "model.layers.14.router.per_expert_scale": "model_2.safetensors",
711
+ "model.layers.14.pre_feedforward_layernorm_2.weight": "model_2.safetensors",
712
+ "model.layers.14.post_feedforward_layernorm_2.weight": "model_2.safetensors",
713
+ "model.layers.14.router.proj.weight": "model_2.safetensors",
714
+ "model.layers.14.self_attn.q_proj.weight": "model_2.safetensors",
715
+ "model.layers.14.self_attn.k_proj.weight": "model_2.safetensors",
716
+ "model.layers.14.self_attn.v_proj.weight": "model_2.safetensors",
717
+ "model.layers.14.self_attn.o_proj.weight": "model_2.safetensors",
718
+ "model.layers.14.mlp.gate_proj.weight": "model_2.safetensors",
719
+ "model.layers.14.mlp.up_proj.weight": "model_2.safetensors",
720
+ "model.layers.14.mlp.down_proj.weight": "model_2.safetensors",
721
+ "model.layers.14.experts.gate_up_proj": "model_2.safetensors",
722
+ "model.layers.14.experts.down_proj": "model_2.safetensors",
723
+ "model.layers.14.layer_scalar": "model_2.safetensors",
724
+ "model.layers.15.input_layernorm.weight": "model_2.safetensors",
725
+ "model.layers.15.post_attention_layernorm.weight": "model_2.safetensors",
726
+ "model.layers.15.post_feedforward_layernorm.weight": "model_2.safetensors",
727
+ "model.layers.15.self_attn.q_norm.weight": "model_2.safetensors",
728
+ "model.layers.15.self_attn.k_norm.weight": "model_2.safetensors",
729
+ "model.layers.15.pre_feedforward_layernorm.weight": "model_2.safetensors",
730
+ "model.layers.15.post_feedforward_layernorm_1.weight": "model_2.safetensors",
731
+ "model.layers.15.router.scale": "model_2.safetensors",
732
+ "model.layers.15.router.per_expert_scale": "model_2.safetensors",
733
+ "model.layers.15.pre_feedforward_layernorm_2.weight": "model_2.safetensors",
734
+ "model.layers.15.post_feedforward_layernorm_2.weight": "model_2.safetensors",
735
+ "model.layers.15.router.proj.weight": "model_2.safetensors",
736
+ "model.layers.15.self_attn.q_proj.weight": "model_2.safetensors",
737
+ "model.layers.15.self_attn.k_proj.weight": "model_2.safetensors",
738
+ "model.layers.15.self_attn.v_proj.weight": "model_2.safetensors",
739
+ "model.layers.15.self_attn.o_proj.weight": "model_2.safetensors",
740
+ "model.layers.15.mlp.gate_proj.weight": "model_2.safetensors",
741
+ "model.layers.15.mlp.up_proj.weight": "model_2.safetensors",
742
+ "model.layers.15.mlp.down_proj.weight": "model_2.safetensors",
743
+ "model.layers.15.experts.gate_up_proj": "model_2.safetensors",
744
+ "model.layers.15.experts.down_proj": "model_3.safetensors",
745
+ "model.layers.15.layer_scalar": "model_3.safetensors",
746
+ "model.layers.16.input_layernorm.weight": "model_3.safetensors",
747
+ "model.layers.16.post_attention_layernorm.weight": "model_3.safetensors",
748
+ "model.layers.16.post_feedforward_layernorm.weight": "model_3.safetensors",
749
+ "model.layers.16.self_attn.q_norm.weight": "model_3.safetensors",
750
+ "model.layers.16.self_attn.k_norm.weight": "model_3.safetensors",
751
+ "model.layers.16.pre_feedforward_layernorm.weight": "model_3.safetensors",
752
+ "model.layers.16.post_feedforward_layernorm_1.weight": "model_3.safetensors",
753
+ "model.layers.16.router.scale": "model_3.safetensors",
754
+ "model.layers.16.router.per_expert_scale": "model_3.safetensors",
755
+ "model.layers.16.pre_feedforward_layernorm_2.weight": "model_3.safetensors",
756
+ "model.layers.16.post_feedforward_layernorm_2.weight": "model_3.safetensors",
757
+ "model.layers.16.router.proj.weight": "model_3.safetensors",
758
+ "model.layers.16.self_attn.q_proj.weight": "model_3.safetensors",
759
+ "model.layers.16.self_attn.k_proj.weight": "model_3.safetensors",
760
+ "model.layers.16.self_attn.v_proj.weight": "model_3.safetensors",
761
+ "model.layers.16.self_attn.o_proj.weight": "model_3.safetensors",
762
+ "model.layers.16.mlp.gate_proj.weight": "model_3.safetensors",
763
+ "model.layers.16.mlp.up_proj.weight": "model_3.safetensors",
764
+ "model.layers.16.mlp.down_proj.weight": "model_3.safetensors",
765
+ "model.layers.16.experts.gate_up_proj": "model_3.safetensors",
766
+ "model.layers.16.experts.down_proj": "model_3.safetensors",
767
+ "model.layers.16.layer_scalar": "model_3.safetensors",
768
+ "model.layers.17.input_layernorm.weight": "model_3.safetensors",
769
+ "model.layers.17.post_attention_layernorm.weight": "model_3.safetensors",
770
+ "model.layers.17.post_feedforward_layernorm.weight": "model_3.safetensors",
771
+ "model.layers.17.self_attn.q_norm.weight": "model_3.safetensors",
772
+ "model.layers.17.self_attn.k_norm.weight": "model_3.safetensors",
773
+ "model.layers.17.pre_feedforward_layernorm.weight": "model_3.safetensors",
774
+ "model.layers.17.post_feedforward_layernorm_1.weight": "model_3.safetensors",
775
+ "model.layers.17.router.scale": "model_3.safetensors",
776
+ "model.layers.17.router.per_expert_scale": "model_3.safetensors",
777
+ "model.layers.17.pre_feedforward_layernorm_2.weight": "model_3.safetensors",
778
+ "model.layers.17.post_feedforward_layernorm_2.weight": "model_3.safetensors",
779
+ "model.layers.17.router.proj.weight": "model_3.safetensors",
780
+ "model.layers.17.self_attn.q_proj.weight": "model_3.safetensors",
781
+ "model.layers.17.self_attn.k_proj.weight": "model_3.safetensors",
782
+ "model.layers.17.self_attn.o_proj.weight": "model_3.safetensors",
783
+ "model.layers.17.mlp.gate_proj.weight": "model_3.safetensors",
784
+ "model.layers.17.mlp.up_proj.weight": "model_3.safetensors",
785
+ "model.layers.17.mlp.down_proj.weight": "model_3.safetensors",
786
+ "model.layers.17.experts.gate_up_proj": "model_3.safetensors",
787
+ "model.layers.17.experts.down_proj": "model_3.safetensors",
788
+ "model.layers.17.layer_scalar": "model_3.safetensors",
789
+ "model.layers.18.input_layernorm.weight": "model_3.safetensors",
790
+ "model.layers.18.post_attention_layernorm.weight": "model_3.safetensors",
791
+ "model.layers.18.post_feedforward_layernorm.weight": "model_3.safetensors",
792
+ "model.layers.18.self_attn.q_norm.weight": "model_3.safetensors",
793
+ "model.layers.18.self_attn.k_norm.weight": "model_3.safetensors",
794
+ "model.layers.18.pre_feedforward_layernorm.weight": "model_3.safetensors",
795
+ "model.layers.18.post_feedforward_layernorm_1.weight": "model_3.safetensors",
796
+ "model.layers.18.router.scale": "model_3.safetensors",
797
+ "model.layers.18.router.per_expert_scale": "model_3.safetensors",
798
+ "model.layers.18.pre_feedforward_layernorm_2.weight": "model_3.safetensors",
799
+ "model.layers.18.post_feedforward_layernorm_2.weight": "model_3.safetensors",
800
+ "model.layers.18.router.proj.weight": "model_3.safetensors",
801
+ "model.layers.18.self_attn.q_proj.weight": "model_3.safetensors",
802
+ "model.layers.18.self_attn.k_proj.weight": "model_3.safetensors",
803
+ "model.layers.18.self_attn.v_proj.weight": "model_3.safetensors",
804
+ "model.layers.18.self_attn.o_proj.weight": "model_3.safetensors",
805
+ "model.layers.18.mlp.gate_proj.weight": "model_3.safetensors",
806
+ "model.layers.18.mlp.up_proj.weight": "model_3.safetensors",
807
+ "model.layers.18.mlp.down_proj.weight": "model_3.safetensors",
808
+ "model.layers.18.experts.gate_up_proj": "model_3.safetensors",
809
+ "model.layers.18.experts.down_proj": "model_3.safetensors",
810
+ "model.layers.18.layer_scalar": "model_3.safetensors",
811
+ "model.layers.19.input_layernorm.weight": "model_3.safetensors",
812
+ "model.layers.19.post_attention_layernorm.weight": "model_3.safetensors",
813
+ "model.layers.19.post_feedforward_layernorm.weight": "model_3.safetensors",
814
+ "model.layers.19.self_attn.q_norm.weight": "model_3.safetensors",
815
+ "model.layers.19.self_attn.k_norm.weight": "model_3.safetensors",
816
+ "model.layers.19.pre_feedforward_layernorm.weight": "model_3.safetensors",
817
+ "model.layers.19.post_feedforward_layernorm_1.weight": "model_3.safetensors",
818
+ "model.layers.19.router.scale": "model_3.safetensors",
819
+ "model.layers.19.router.per_expert_scale": "model_3.safetensors",
820
+ "model.layers.19.pre_feedforward_layernorm_2.weight": "model_3.safetensors",
821
+ "model.layers.19.post_feedforward_layernorm_2.weight": "model_3.safetensors",
822
+ "model.layers.19.router.proj.weight": "model_3.safetensors",
823
+ "model.layers.19.self_attn.q_proj.weight": "model_3.safetensors",
824
+ "model.layers.19.self_attn.k_proj.weight": "model_3.safetensors",
825
+ "model.layers.19.self_attn.v_proj.weight": "model_3.safetensors",
826
+ "model.layers.19.self_attn.o_proj.weight": "model_3.safetensors",
827
+ "model.layers.19.mlp.gate_proj.weight": "model_3.safetensors",
828
+ "model.layers.19.mlp.up_proj.weight": "model_3.safetensors",
829
+ "model.layers.19.mlp.down_proj.weight": "model_3.safetensors",
830
+ "model.layers.19.experts.gate_up_proj": "model_3.safetensors",
831
+ "model.layers.19.experts.down_proj": "model_3.safetensors",
832
+ "model.layers.19.layer_scalar": "model_3.safetensors",
833
+ "model.layers.20.input_layernorm.weight": "model_3.safetensors",
834
+ "model.layers.20.post_attention_layernorm.weight": "model_3.safetensors",
835
+ "model.layers.20.post_feedforward_layernorm.weight": "model_3.safetensors",
836
+ "model.layers.20.self_attn.q_norm.weight": "model_3.safetensors",
837
+ "model.layers.20.self_attn.k_norm.weight": "model_3.safetensors",
838
+ "model.layers.20.pre_feedforward_layernorm.weight": "model_3.safetensors",
839
+ "model.layers.20.post_feedforward_layernorm_1.weight": "model_3.safetensors",
840
+ "model.layers.20.router.scale": "model_3.safetensors",
841
+ "model.layers.20.router.per_expert_scale": "model_3.safetensors",
842
+ "model.layers.20.pre_feedforward_layernorm_2.weight": "model_3.safetensors",
843
+ "model.layers.20.post_feedforward_layernorm_2.weight": "model_3.safetensors",
844
+ "model.layers.20.router.proj.weight": "model_3.safetensors",
845
+ "model.layers.20.self_attn.q_proj.weight": "model_3.safetensors",
846
+ "model.layers.20.self_attn.k_proj.weight": "model_3.safetensors",
847
+ "model.layers.20.self_attn.v_proj.weight": "model_3.safetensors",
848
+ "model.layers.20.self_attn.o_proj.weight": "model_3.safetensors",
849
+ "model.layers.20.mlp.gate_proj.weight": "model_3.safetensors",
850
+ "model.layers.20.mlp.up_proj.weight": "model_3.safetensors",
851
+ "model.layers.20.mlp.down_proj.weight": "model_3.safetensors",
852
+ "model.layers.20.experts.gate_up_proj": "model_3.safetensors",
853
+ "model.layers.20.experts.down_proj": "model_3.safetensors",
854
+ "model.layers.20.layer_scalar": "model_4.safetensors",
855
+ "model.layers.21.input_layernorm.weight": "model_4.safetensors",
856
+ "model.layers.21.post_attention_layernorm.weight": "model_4.safetensors",
857
+ "model.layers.21.post_feedforward_layernorm.weight": "model_4.safetensors",
858
+ "model.layers.21.self_attn.q_norm.weight": "model_4.safetensors",
859
+ "model.layers.21.self_attn.k_norm.weight": "model_4.safetensors",
860
+ "model.layers.21.pre_feedforward_layernorm.weight": "model_4.safetensors",
861
+ "model.layers.21.post_feedforward_layernorm_1.weight": "model_4.safetensors",
862
+ "model.layers.21.router.scale": "model_4.safetensors",
863
+ "model.layers.21.router.per_expert_scale": "model_4.safetensors",
864
+ "model.layers.21.pre_feedforward_layernorm_2.weight": "model_4.safetensors",
865
+ "model.layers.21.post_feedforward_layernorm_2.weight": "model_4.safetensors",
866
+ "model.layers.21.router.proj.weight": "model_4.safetensors",
867
+ "model.layers.21.self_attn.q_proj.weight": "model_4.safetensors",
868
+ "model.layers.21.self_attn.k_proj.weight": "model_4.safetensors",
869
+ "model.layers.21.self_attn.v_proj.weight": "model_4.safetensors",
870
+ "model.layers.21.self_attn.o_proj.weight": "model_4.safetensors",
871
+ "model.layers.21.mlp.gate_proj.weight": "model_4.safetensors",
872
+ "model.layers.21.mlp.up_proj.weight": "model_4.safetensors",
873
+ "model.layers.21.mlp.down_proj.weight": "model_4.safetensors",
874
+ "model.layers.21.experts.gate_up_proj": "model_4.safetensors",
875
+ "model.layers.21.experts.down_proj": "model_4.safetensors",
876
+ "model.layers.21.layer_scalar": "model_4.safetensors",
877
+ "model.layers.22.input_layernorm.weight": "model_4.safetensors",
878
+ "model.layers.22.post_attention_layernorm.weight": "model_4.safetensors",
879
+ "model.layers.22.post_feedforward_layernorm.weight": "model_4.safetensors",
880
+ "model.layers.22.self_attn.q_norm.weight": "model_4.safetensors",
881
+ "model.layers.22.self_attn.k_norm.weight": "model_4.safetensors",
882
+ "model.layers.22.pre_feedforward_layernorm.weight": "model_4.safetensors",
883
+ "model.layers.22.post_feedforward_layernorm_1.weight": "model_4.safetensors",
884
+ "model.layers.22.router.scale": "model_4.safetensors",
885
+ "model.layers.22.router.per_expert_scale": "model_4.safetensors",
886
+ "model.layers.22.pre_feedforward_layernorm_2.weight": "model_4.safetensors",
887
+ "model.layers.22.post_feedforward_layernorm_2.weight": "model_4.safetensors",
888
+ "model.layers.22.router.proj.weight": "model_4.safetensors",
889
+ "model.layers.22.self_attn.q_proj.weight": "model_4.safetensors",
890
+ "model.layers.22.self_attn.k_proj.weight": "model_4.safetensors",
891
+ "model.layers.22.self_attn.v_proj.weight": "model_4.safetensors",
892
+ "model.layers.22.self_attn.o_proj.weight": "model_4.safetensors",
893
+ "model.layers.22.mlp.gate_proj.weight": "model_4.safetensors",
894
+ "model.layers.22.mlp.up_proj.weight": "model_4.safetensors",
895
+ "model.layers.22.mlp.down_proj.weight": "model_4.safetensors",
896
+ "model.layers.22.experts.gate_up_proj": "model_4.safetensors",
897
+ "model.layers.22.experts.down_proj": "model_4.safetensors",
898
+ "model.layers.22.layer_scalar": "model_4.safetensors",
899
+ "model.layers.23.input_layernorm.weight": "model_4.safetensors",
900
+ "model.layers.23.post_attention_layernorm.weight": "model_4.safetensors",
901
+ "model.layers.23.post_feedforward_layernorm.weight": "model_4.safetensors",
902
+ "model.layers.23.self_attn.q_norm.weight": "model_4.safetensors",
903
+ "model.layers.23.self_attn.k_norm.weight": "model_4.safetensors",
904
+ "model.layers.23.pre_feedforward_layernorm.weight": "model_4.safetensors",
905
+ "model.layers.23.post_feedforward_layernorm_1.weight": "model_4.safetensors",
906
+ "model.layers.23.router.scale": "model_4.safetensors",
907
+ "model.layers.23.router.per_expert_scale": "model_4.safetensors",
908
+ "model.layers.23.pre_feedforward_layernorm_2.weight": "model_4.safetensors",
909
+ "model.layers.23.post_feedforward_layernorm_2.weight": "model_4.safetensors",
910
+ "model.layers.23.router.proj.weight": "model_4.safetensors",
911
+ "model.layers.23.self_attn.q_proj.weight": "model_4.safetensors",
912
+ "model.layers.23.self_attn.k_proj.weight": "model_4.safetensors",
913
+ "model.layers.23.self_attn.o_proj.weight": "model_4.safetensors",
914
+ "model.layers.23.mlp.gate_proj.weight": "model_4.safetensors",
915
+ "model.layers.23.mlp.up_proj.weight": "model_4.safetensors",
916
+ "model.layers.23.mlp.down_proj.weight": "model_4.safetensors",
917
+ "model.layers.23.experts.gate_up_proj": "model_4.safetensors",
918
+ "model.layers.23.experts.down_proj": "model_4.safetensors",
919
+ "model.layers.23.layer_scalar": "model_4.safetensors",
920
+ "model.layers.24.input_layernorm.weight": "model_4.safetensors",
921
+ "model.layers.24.post_attention_layernorm.weight": "model_4.safetensors",
922
+ "model.layers.24.post_feedforward_layernorm.weight": "model_4.safetensors",
923
+ "model.layers.24.self_attn.q_norm.weight": "model_4.safetensors",
924
+ "model.layers.24.self_attn.k_norm.weight": "model_4.safetensors",
925
+ "model.layers.24.pre_feedforward_layernorm.weight": "model_4.safetensors",
926
+ "model.layers.24.post_feedforward_layernorm_1.weight": "model_4.safetensors",
927
+ "model.layers.24.router.scale": "model_4.safetensors",
928
+ "model.layers.24.router.per_expert_scale": "model_4.safetensors",
929
+ "model.layers.24.pre_feedforward_layernorm_2.weight": "model_4.safetensors",
930
+ "model.layers.24.post_feedforward_layernorm_2.weight": "model_4.safetensors",
931
+ "model.layers.24.router.proj.weight": "model_4.safetensors",
932
+ "model.layers.24.self_attn.q_proj.weight": "model_4.safetensors",
933
+ "model.layers.24.self_attn.k_proj.weight": "model_4.safetensors",
934
+ "model.layers.24.self_attn.v_proj.weight": "model_4.safetensors",
935
+ "model.layers.24.self_attn.o_proj.weight": "model_4.safetensors",
936
+ "model.layers.24.mlp.gate_proj.weight": "model_4.safetensors",
937
+ "model.layers.24.mlp.up_proj.weight": "model_4.safetensors",
938
+ "model.layers.24.mlp.down_proj.weight": "model_4.safetensors",
939
+ "model.layers.24.experts.gate_up_proj": "model_4.safetensors",
940
+ "model.layers.24.experts.down_proj": "model_4.safetensors",
941
+ "model.layers.24.layer_scalar": "model_4.safetensors",
942
+ "model.layers.25.input_layernorm.weight": "model_4.safetensors",
943
+ "model.layers.25.post_attention_layernorm.weight": "model_4.safetensors",
944
+ "model.layers.25.post_feedforward_layernorm.weight": "model_4.safetensors",
945
+ "model.layers.25.self_attn.q_norm.weight": "model_4.safetensors",
946
+ "model.layers.25.self_attn.k_norm.weight": "model_4.safetensors",
947
+ "model.layers.25.pre_feedforward_layernorm.weight": "model_4.safetensors",
948
+ "model.layers.25.post_feedforward_layernorm_1.weight": "model_4.safetensors",
949
+ "model.layers.25.router.scale": "model_4.safetensors",
950
+ "model.layers.25.router.per_expert_scale": "model_4.safetensors",
951
+ "model.layers.25.pre_feedforward_layernorm_2.weight": "model_4.safetensors",
952
+ "model.layers.25.post_feedforward_layernorm_2.weight": "model_4.safetensors",
953
+ "model.layers.25.router.proj.weight": "model_4.safetensors",
954
+ "model.layers.25.self_attn.q_proj.weight": "model_4.safetensors",
955
+ "model.layers.25.self_attn.k_proj.weight": "model_4.safetensors",
956
+ "model.layers.25.self_attn.v_proj.weight": "model_4.safetensors",
957
+ "model.layers.25.self_attn.o_proj.weight": "model_4.safetensors",
958
+ "model.layers.25.mlp.gate_proj.weight": "model_4.safetensors",
959
+ "model.layers.25.mlp.up_proj.weight": "model_4.safetensors",
960
+ "model.layers.25.mlp.down_proj.weight": "model_4.safetensors",
961
+ "model.layers.25.experts.gate_up_proj": "model_4.safetensors",
962
+ "model.layers.25.experts.down_proj": "model_4.safetensors",
963
+ "model.layers.25.layer_scalar": "model_4.safetensors",
964
+ "model.layers.26.input_layernorm.weight": "model_4.safetensors",
965
+ "model.layers.26.post_attention_layernorm.weight": "model_4.safetensors",
966
+ "model.layers.26.post_feedforward_layernorm.weight": "model_4.safetensors",
967
+ "model.layers.26.self_attn.q_norm.weight": "model_4.safetensors",
968
+ "model.layers.26.self_attn.k_norm.weight": "model_4.safetensors",
969
+ "model.layers.26.pre_feedforward_layernorm.weight": "model_4.safetensors",
970
+ "model.layers.26.post_feedforward_layernorm_1.weight": "model_4.safetensors",
971
+ "model.layers.26.router.scale": "model_4.safetensors",
972
+ "model.layers.26.router.per_expert_scale": "model_4.safetensors",
973
+ "model.layers.26.pre_feedforward_layernorm_2.weight": "model_4.safetensors",
974
+ "model.layers.26.post_feedforward_layernorm_2.weight": "model_4.safetensors",
975
+ "model.layers.26.router.proj.weight": "model_4.safetensors",
976
+ "model.layers.26.self_attn.q_proj.weight": "model_4.safetensors",
977
+ "model.layers.26.self_attn.k_proj.weight": "model_4.safetensors",
978
+ "model.layers.26.self_attn.v_proj.weight": "model_4.safetensors",
979
+ "model.layers.26.self_attn.o_proj.weight": "model_4.safetensors",
980
+ "model.layers.26.mlp.gate_proj.weight": "model_4.safetensors",
981
+ "model.layers.26.mlp.up_proj.weight": "model_4.safetensors",
982
+ "model.layers.26.mlp.down_proj.weight": "model_4.safetensors",
983
+ "model.layers.26.experts.gate_up_proj": "model_4.safetensors",
984
+ "model.layers.26.experts.down_proj": "model_5.safetensors",
985
+ "model.layers.26.layer_scalar": "model_5.safetensors",
986
+ "model.layers.27.input_layernorm.weight": "model_5.safetensors",
987
+ "model.layers.27.post_attention_layernorm.weight": "model_5.safetensors",
988
+ "model.layers.27.post_feedforward_layernorm.weight": "model_5.safetensors",
989
+ "model.layers.27.self_attn.q_norm.weight": "model_5.safetensors",
990
+ "model.layers.27.self_attn.k_norm.weight": "model_5.safetensors",
991
+ "model.layers.27.pre_feedforward_layernorm.weight": "model_5.safetensors",
992
+ "model.layers.27.post_feedforward_layernorm_1.weight": "model_5.safetensors",
993
+ "model.layers.27.router.scale": "model_5.safetensors",
994
+ "model.layers.27.router.per_expert_scale": "model_5.safetensors",
995
+ "model.layers.27.pre_feedforward_layernorm_2.weight": "model_5.safetensors",
996
+ "model.layers.27.post_feedforward_layernorm_2.weight": "model_5.safetensors",
997
+ "model.layers.27.router.proj.weight": "model_5.safetensors",
998
+ "model.layers.27.self_attn.q_proj.weight": "model_5.safetensors",
999
+ "model.layers.27.self_attn.k_proj.weight": "model_5.safetensors",
1000
+ "model.layers.27.self_attn.v_proj.weight": "model_5.safetensors",
1001
+ "model.layers.27.self_attn.o_proj.weight": "model_5.safetensors",
1002
+ "model.layers.27.mlp.gate_proj.weight": "model_5.safetensors",
1003
+ "model.layers.27.mlp.up_proj.weight": "model_5.safetensors",
1004
+ "model.layers.27.mlp.down_proj.weight": "model_5.safetensors",
1005
+ "model.layers.27.experts.gate_up_proj": "model_5.safetensors",
1006
+ "model.layers.27.experts.down_proj": "model_5.safetensors",
1007
+ "model.layers.27.layer_scalar": "model_5.safetensors",
1008
+ "model.layers.28.input_layernorm.weight": "model_5.safetensors",
1009
+ "model.layers.28.post_attention_layernorm.weight": "model_5.safetensors",
1010
+ "model.layers.28.post_feedforward_layernorm.weight": "model_5.safetensors",
1011
+ "model.layers.28.self_attn.q_norm.weight": "model_5.safetensors",
1012
+ "model.layers.28.self_attn.k_norm.weight": "model_5.safetensors",
1013
+ "model.layers.28.pre_feedforward_layernorm.weight": "model_5.safetensors",
1014
+ "model.layers.28.post_feedforward_layernorm_1.weight": "model_5.safetensors",
1015
+ "model.layers.28.router.scale": "model_5.safetensors",
1016
+ "model.layers.28.router.per_expert_scale": "model_5.safetensors",
1017
+ "model.layers.28.pre_feedforward_layernorm_2.weight": "model_5.safetensors",
1018
+ "model.layers.28.post_feedforward_layernorm_2.weight": "model_5.safetensors",
1019
+ "model.layers.28.router.proj.weight": "model_5.safetensors",
1020
+ "model.layers.28.self_attn.q_proj.weight": "model_5.safetensors",
1021
+ "model.layers.28.self_attn.k_proj.weight": "model_5.safetensors",
1022
+ "model.layers.28.self_attn.v_proj.weight": "model_5.safetensors",
1023
+ "model.layers.28.self_attn.o_proj.weight": "model_5.safetensors",
1024
+ "model.layers.28.mlp.gate_proj.weight": "model_5.safetensors",
1025
+ "model.layers.28.mlp.up_proj.weight": "model_5.safetensors",
1026
+ "model.layers.28.mlp.down_proj.weight": "model_5.safetensors",
1027
+ "model.layers.28.experts.gate_up_proj": "model_5.safetensors",
1028
+ "model.layers.28.experts.down_proj": "model_5.safetensors",
1029
+ "model.layers.28.layer_scalar": "model_5.safetensors",
1030
+ "model.layers.29.input_layernorm.weight": "model_5.safetensors",
1031
+ "model.layers.29.post_attention_layernorm.weight": "model_5.safetensors",
1032
+ "model.layers.29.post_feedforward_layernorm.weight": "model_5.safetensors",
1033
+ "model.layers.29.self_attn.q_norm.weight": "model_5.safetensors",
1034
+ "model.layers.29.self_attn.k_norm.weight": "model_5.safetensors",
1035
+ "model.layers.29.pre_feedforward_layernorm.weight": "model_5.safetensors",
1036
+ "model.layers.29.post_feedforward_layernorm_1.weight": "model_5.safetensors",
1037
+ "model.layers.29.router.scale": "model_5.safetensors",
1038
+ "model.layers.29.router.per_expert_scale": "model_5.safetensors",
1039
+ "model.layers.29.pre_feedforward_layernorm_2.weight": "model_5.safetensors",
1040
+ "model.layers.29.post_feedforward_layernorm_2.weight": "model_5.safetensors",
1041
+ "model.layers.29.router.proj.weight": "model_5.safetensors",
1042
+ "model.layers.29.self_attn.q_proj.weight": "model_5.safetensors",
1043
+ "model.layers.29.self_attn.k_proj.weight": "model_5.safetensors",
1044
+ "model.layers.29.self_attn.o_proj.weight": "model_5.safetensors",
1045
+ "model.layers.29.mlp.gate_proj.weight": "model_5.safetensors",
1046
+ "model.layers.29.mlp.up_proj.weight": "model_5.safetensors",
1047
+ "model.layers.29.mlp.down_proj.weight": "model_5.safetensors",
1048
+ "model.layers.29.experts.gate_up_proj": "model_5.safetensors",
1049
+ "model.layers.29.experts.down_proj": "model_5.safetensors",
1050
+ "model.layers.29.layer_scalar": "model_5.safetensors",
1051
+ "model.norm.weight": "model_5.safetensors"
1052
+ }
1053
+ }
26_09_08_sft_email_v4_v3/export/gemma4/70/model_0.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:0d193154bc227e9b768dae5398a411cc8fe1d490f8eba3df763ea15805c9f517
3
+ size 18219689440
26_09_08_sft_email_v4_v3/export/gemma4/70/model_1.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:e036e96a3b276aea68fea94af6dfe1b109dca14d20c43f877a25dac09cc00f5b
3
+ size 17354616388
26_09_08_sft_email_v4_v3/export/gemma4/70/model_2.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:6b5ffba35f5720f0136ad3515f9eaac87883b0b498bbb037a0b01cab0e3816bd
3
+ size 18580955576
26_09_08_sft_email_v4_v3/export/gemma4/70/model_3.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:81bbb0af18418e2e9606acc0f6366e2b8e58b5a2068b0315b872f22fd04d6920
3
+ size 17354616500
26_09_08_sft_email_v4_v3/export/gemma4/70/model_4.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:6654be93b2273f19ce97c74ae00bddbbf25abb1d178edb8cd5354d3ebb277a69
3
+ size 18580955552
26_09_08_sft_email_v4_v3/export/gemma4/70/model_5.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:a792bbb9303b8519c827e824db7aaa34e8932ee67b1b18c17832f74ec492942c
3
+ size 10841863000
26_09_08_sft_email_v4_v3/export/gemma4/70/ok ADDED
File without changes