meihant commited on
Commit
c7f657f
·
verified ·
1 Parent(s): d905eb3

Add Keen midtrain-longcontext-1B-32K trained checkpoint

Browse files
.gitattributes CHANGED
@@ -54,3 +54,4 @@ Vanilla-qwen4b-20b/checkpoint-5726/tokenizer.json filter=lfs diff=lfs merge=lfs
54
  Vanilla-qwen4b-20b/checkpoint-13362/tokenizer.json filter=lfs diff=lfs merge=lfs -text
55
  Vanilla-qwen4b-20b/checkpoint-15273/tokenizer.json filter=lfs diff=lfs merge=lfs -text
56
  datasets/KLLM-20B/packing/source2b/READY.json filter=lfs diff=lfs merge=lfs -text
 
 
54
  Vanilla-qwen4b-20b/checkpoint-13362/tokenizer.json filter=lfs diff=lfs merge=lfs -text
55
  Vanilla-qwen4b-20b/checkpoint-15273/tokenizer.json filter=lfs diff=lfs merge=lfs -text
56
  datasets/KLLM-20B/packing/source2b/READY.json filter=lfs diff=lfs merge=lfs -text
57
+ Keen-qwen4b-20b/midtrain-longcontext-1B-32K/checkpoint-1155/tokenizer.json filter=lfs diff=lfs merge=lfs -text
Keen-qwen4b-20b/midtrain-longcontext-1B-32K/checkpoint-1155/README.md ADDED
@@ -0,0 +1,28 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Keen Qwen3.5-4B — midtrain-longcontext-1B-32K
2
+
3
+ Continued from the 9B instruction-mixture midtraining checkpoint for exactly 1,000,000,000 supervised tokens at a 32,768-token window. The prepared long-context pool contains 5,072,536,771 targets, but only 1B was trained. This is not a 5B-trained checkpoint. The actual mixture is 65.756% FineWeb-Edu, 17.090% PDF, 8.651% CWE and 8.503% REX.
4
+
5
+ This is a text-only Keen checkpoint with its original tokenizer. Training used ordinary NTP,
6
+ without added fact wrappers. This release precedes financial SFT. The architecture configuration
7
+ retains its original positional capacity; it does not establish quality beyond the trained window.
8
+ Weights, tokenizer and chat-template files are included. Optimizer state is retained locally.
9
+
10
+ The verified training runtime used Transformers 5.6.2 and tokenizers 0.22.2. To preserve the
11
+ effective tokenizer, load the supplied backend explicitly. Preserve the checkpoint's FP32
12
+ `A_log` and `dt_bias` tensors if using a loader that casts every parameter to BF16.
13
+
14
+ ```python
15
+ from huggingface_hub import snapshot_download
16
+ from transformers import AutoTokenizer, AutoModelForCausalLM
17
+ from tokenizers import Tokenizer
18
+ from pathlib import Path
19
+
20
+ subfolder = "Keen-qwen4b-20b/midtrain-longcontext-1B-32K/checkpoint-1155"
21
+ root = snapshot_download("meihant/AnonymousModel-mht", allow_patterns=[subfolder + "/*"])
22
+ path = Path(root) / subfolder
23
+ tokenizer = AutoTokenizer.from_pretrained(path)
24
+ tokenizer._tokenizer = Tokenizer.from_file(str(path / "tokenizer.json"))
25
+ model = AutoModelForCausalLM.from_pretrained(path, dtype="auto")
26
+ ```
27
+
28
+ See `training_metadata.json` for token accounting and lineage and `manifest.json` for file hashes.
Keen-qwen4b-20b/midtrain-longcontext-1B-32K/checkpoint-1155/chat_template.jinja ADDED
@@ -0,0 +1,154 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {%- set image_count = namespace(value=0) %}
2
+ {%- set video_count = namespace(value=0) %}
3
+ {%- macro render_content(content, do_vision_count, is_system_content=false) %}
4
+ {%- if content is string %}
5
+ {{- content }}
6
+ {%- elif content is iterable and content is not mapping %}
7
+ {%- for item in content %}
8
+ {%- if 'image' in item or 'image_url' in item or item.type == 'image' %}
9
+ {%- if is_system_content %}
10
+ {{- raise_exception('System message cannot contain images.') }}
11
+ {%- endif %}
12
+ {%- if do_vision_count %}
13
+ {%- set image_count.value = image_count.value + 1 %}
14
+ {%- endif %}
15
+ {%- if add_vision_id %}
16
+ {{- 'Picture ' ~ image_count.value ~ ': ' }}
17
+ {%- endif %}
18
+ {{- '<|vision_start|><|image_pad|><|vision_end|>' }}
19
+ {%- elif 'video' in item or item.type == 'video' %}
20
+ {%- if is_system_content %}
21
+ {{- raise_exception('System message cannot contain videos.') }}
22
+ {%- endif %}
23
+ {%- if do_vision_count %}
24
+ {%- set video_count.value = video_count.value + 1 %}
25
+ {%- endif %}
26
+ {%- if add_vision_id %}
27
+ {{- 'Video ' ~ video_count.value ~ ': ' }}
28
+ {%- endif %}
29
+ {{- '<|vision_start|><|video_pad|><|vision_end|>' }}
30
+ {%- elif 'text' in item %}
31
+ {{- item.text }}
32
+ {%- else %}
33
+ {{- raise_exception('Unexpected item type in content.') }}
34
+ {%- endif %}
35
+ {%- endfor %}
36
+ {%- elif content is none or content is undefined %}
37
+ {{- '' }}
38
+ {%- else %}
39
+ {{- raise_exception('Unexpected content type.') }}
40
+ {%- endif %}
41
+ {%- endmacro %}
42
+ {%- if not messages %}
43
+ {{- raise_exception('No messages provided.') }}
44
+ {%- endif %}
45
+ {%- if tools and tools is iterable and tools is not mapping %}
46
+ {{- '<|im_start|>system\n' }}
47
+ {{- "# Tools\n\nYou have access to the following functions:\n\n<tools>" }}
48
+ {%- for tool in tools %}
49
+ {{- "\n" }}
50
+ {{- tool | tojson }}
51
+ {%- endfor %}
52
+ {{- "\n</tools>" }}
53
+ {{- '\n\nIf you choose to call a function ONLY reply in the following format with NO suffix:\n\n<tool_call>\n<function=example_function_name>\n<parameter=example_parameter_1>\nvalue_1\n</parameter>\n<parameter=example_parameter_2>\nThis is the value for the second parameter\nthat can span\nmultiple lines\n</parameter>\n</function>\n</tool_call>\n\n<IMPORTANT>\nReminder:\n- Function calls MUST follow the specified format: an inner <function=...></function> block must be nested within <tool_call></tool_call> XML tags\n- Required parameters MUST be specified\n- You may provide optional reasoning for your function call in natural language BEFORE the function call, but NOT after\n- If there is no function call available, answer the question like normal with your current knowledge and do not tell the user about function calls\n</IMPORTANT>' }}
54
+ {%- if messages[0].role == 'system' %}
55
+ {%- set content = render_content(messages[0].content, false, true)|trim %}
56
+ {%- if content %}
57
+ {{- '\n\n' + content }}
58
+ {%- endif %}
59
+ {%- endif %}
60
+ {{- '<|im_end|>\n' }}
61
+ {%- else %}
62
+ {%- if messages[0].role == 'system' %}
63
+ {%- set content = render_content(messages[0].content, false, true)|trim %}
64
+ {{- '<|im_start|>system\n' + content + '<|im_end|>\n' }}
65
+ {%- endif %}
66
+ {%- endif %}
67
+ {%- set ns = namespace(multi_step_tool=true, last_query_index=messages|length - 1) %}
68
+ {%- for message in messages[::-1] %}
69
+ {%- set index = (messages|length - 1) - loop.index0 %}
70
+ {%- if ns.multi_step_tool and message.role == "user" %}
71
+ {%- set content = render_content(message.content, false)|trim %}
72
+ {%- if not(content.startswith('<tool_response>') and content.endswith('</tool_response>')) %}
73
+ {%- set ns.multi_step_tool = false %}
74
+ {%- set ns.last_query_index = index %}
75
+ {%- endif %}
76
+ {%- endif %}
77
+ {%- endfor %}
78
+ {%- if ns.multi_step_tool %}
79
+ {{- raise_exception('No user query found in messages.') }}
80
+ {%- endif %}
81
+ {%- for message in messages %}
82
+ {%- set content = render_content(message.content, true)|trim %}
83
+ {%- if message.role == "system" %}
84
+ {%- if not loop.first %}
85
+ {{- raise_exception('System message must be at the beginning.') }}
86
+ {%- endif %}
87
+ {%- elif message.role == "user" %}
88
+ {{- '<|im_start|>' + message.role + '\n' + content + '<|im_end|>' + '\n' }}
89
+ {%- elif message.role == "assistant" %}
90
+ {%- set reasoning_content = '' %}
91
+ {%- if message.reasoning_content is string %}
92
+ {%- set reasoning_content = message.reasoning_content %}
93
+ {%- else %}
94
+ {%- if '</think>' in content %}
95
+ {%- set reasoning_content = content.split('</think>')[0].rstrip('\n').split('<think>')[-1].lstrip('\n') %}
96
+ {%- set content = content.split('</think>')[-1].lstrip('\n') %}
97
+ {%- endif %}
98
+ {%- endif %}
99
+ {%- set reasoning_content = reasoning_content|trim %}
100
+ {%- if loop.index0 > ns.last_query_index %}
101
+ {{- '<|im_start|>' + message.role + '\n<think>\n' + reasoning_content + '\n</think>\n\n' + content }}
102
+ {%- else %}
103
+ {{- '<|im_start|>' + message.role + '\n' + content }}
104
+ {%- endif %}
105
+ {%- if message.tool_calls and message.tool_calls is iterable and message.tool_calls is not mapping %}
106
+ {%- for tool_call in message.tool_calls %}
107
+ {%- if tool_call.function is defined %}
108
+ {%- set tool_call = tool_call.function %}
109
+ {%- endif %}
110
+ {%- if loop.first %}
111
+ {%- if content|trim %}
112
+ {{- '\n\n<tool_call>\n<function=' + tool_call.name + '>\n' }}
113
+ {%- else %}
114
+ {{- '<tool_call>\n<function=' + tool_call.name + '>\n' }}
115
+ {%- endif %}
116
+ {%- else %}
117
+ {{- '\n<tool_call>\n<function=' + tool_call.name + '>\n' }}
118
+ {%- endif %}
119
+ {%- if tool_call.arguments is defined %}
120
+ {%- for args_name, args_value in tool_call.arguments|items %}
121
+ {{- '<parameter=' + args_name + '>\n' }}
122
+ {%- set args_value = args_value | tojson | safe if args_value is mapping or (args_value is sequence and args_value is not string) else args_value | string %}
123
+ {{- args_value }}
124
+ {{- '\n</parameter>\n' }}
125
+ {%- endfor %}
126
+ {%- endif %}
127
+ {{- '</function>\n</tool_call>' }}
128
+ {%- endfor %}
129
+ {%- endif %}
130
+ {{- '<|im_end|>\n' }}
131
+ {%- elif message.role == "tool" %}
132
+ {%- if loop.previtem and loop.previtem.role != "tool" %}
133
+ {{- '<|im_start|>user' }}
134
+ {%- endif %}
135
+ {{- '\n<tool_response>\n' }}
136
+ {{- content }}
137
+ {{- '\n</tool_response>' }}
138
+ {%- if not loop.last and loop.nextitem.role != "tool" %}
139
+ {{- '<|im_end|>\n' }}
140
+ {%- elif loop.last %}
141
+ {{- '<|im_end|>\n' }}
142
+ {%- endif %}
143
+ {%- else %}
144
+ {{- raise_exception('Unexpected message role.') }}
145
+ {%- endif %}
146
+ {%- endfor %}
147
+ {%- if add_generation_prompt %}
148
+ {{- '<|im_start|>assistant\n' }}
149
+ {%- if enable_thinking is defined and enable_thinking is false %}
150
+ {{- '<think>\n\n</think>\n\n' }}
151
+ {%- else %}
152
+ {{- '<think>\n' }}
153
+ {%- endif %}
154
+ {%- endif %}
Keen-qwen4b-20b/midtrain-longcontext-1B-32K/checkpoint-1155/config.json ADDED
@@ -0,0 +1,83 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "architectures": [
3
+ "Qwen3_5ForCausalLM"
4
+ ],
5
+ "attention_bias": false,
6
+ "attention_dropout": 0.0,
7
+ "attn_output_gate": true,
8
+ "bos_token_id": null,
9
+ "dtype": "bfloat16",
10
+ "eos_token_id": 248044,
11
+ "full_attention_interval": 4,
12
+ "head_dim": 256,
13
+ "hidden_act": "silu",
14
+ "hidden_size": 2560,
15
+ "initializer_range": 0.02,
16
+ "intermediate_size": 9216,
17
+ "layer_types": [
18
+ "linear_attention",
19
+ "linear_attention",
20
+ "linear_attention",
21
+ "full_attention",
22
+ "linear_attention",
23
+ "linear_attention",
24
+ "linear_attention",
25
+ "full_attention",
26
+ "linear_attention",
27
+ "linear_attention",
28
+ "linear_attention",
29
+ "full_attention",
30
+ "linear_attention",
31
+ "linear_attention",
32
+ "linear_attention",
33
+ "full_attention",
34
+ "linear_attention",
35
+ "linear_attention",
36
+ "linear_attention",
37
+ "full_attention",
38
+ "linear_attention",
39
+ "linear_attention",
40
+ "linear_attention",
41
+ "full_attention",
42
+ "linear_attention",
43
+ "linear_attention",
44
+ "linear_attention",
45
+ "full_attention",
46
+ "linear_attention",
47
+ "linear_attention",
48
+ "linear_attention",
49
+ "full_attention"
50
+ ],
51
+ "linear_conv_kernel_dim": 4,
52
+ "linear_key_head_dim": 128,
53
+ "linear_num_key_heads": 16,
54
+ "linear_num_value_heads": 32,
55
+ "linear_value_head_dim": 128,
56
+ "mamba_ssm_dtype": "float32",
57
+ "max_position_embeddings": 262144,
58
+ "mlp_only_layers": [],
59
+ "model_type": "qwen3_5_text",
60
+ "mtp_num_hidden_layers": 1,
61
+ "mtp_use_dedicated_embeddings": false,
62
+ "num_attention_heads": 16,
63
+ "num_hidden_layers": 32,
64
+ "num_key_value_heads": 4,
65
+ "pad_token_id": 248044,
66
+ "partial_rotary_factor": 0.25,
67
+ "rms_norm_eps": 1e-06,
68
+ "rope_parameters": {
69
+ "mrope_interleaved": true,
70
+ "mrope_section": [
71
+ 11,
72
+ 11,
73
+ 10
74
+ ],
75
+ "partial_rotary_factor": 0.25,
76
+ "rope_theta": 10000000,
77
+ "rope_type": "default"
78
+ },
79
+ "tie_word_embeddings": true,
80
+ "transformers_version": "5.6.2",
81
+ "use_cache": true,
82
+ "vocab_size": 248320
83
+ }
Keen-qwen4b-20b/midtrain-longcontext-1B-32K/checkpoint-1155/generation_config.json ADDED
@@ -0,0 +1,9 @@
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "_from_model_config": true,
3
+ "eos_token_id": 248044,
4
+ "output_attentions": false,
5
+ "output_hidden_states": false,
6
+ "pad_token_id": 248044,
7
+ "transformers_version": "5.6.2",
8
+ "use_cache": false
9
+ }
Keen-qwen4b-20b/midtrain-longcontext-1B-32K/checkpoint-1155/manifest.json ADDED
@@ -0,0 +1,53 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "files": [
3
+ {
4
+ "name": "README.md",
5
+ "bytes": 1707,
6
+ "sha256": "336b4abe5144e111da702c69eb8d31dd9ccdde96d77f228967c2a73700f0415d",
7
+ "git_blob_sha1": "0b8da5dcc37870edae838b5f11f811469e58e63d"
8
+ },
9
+ {
10
+ "name": "chat_template.jinja",
11
+ "bytes": 7756,
12
+ "sha256": "a4aee8afcf2e0711942cf848899be66016f8d14a889ff9ede07bca099c28f715",
13
+ "git_blob_sha1": "a585dec894e63da457d9440ec6aa7caa16d20860"
14
+ },
15
+ {
16
+ "name": "config.json",
17
+ "bytes": 1980,
18
+ "sha256": "eac5a6e0ba2e18c79768899a66a50997393c6ca2e50df8763d2c6787fb077c27",
19
+ "git_blob_sha1": "65f95a09d021431a51836127668a8ecbc2fc21e2"
20
+ },
21
+ {
22
+ "name": "generation_config.json",
23
+ "bytes": 205,
24
+ "sha256": "859817f149747a3645f7706735a71d572091a2616b9b8c648333d05422247f85",
25
+ "git_blob_sha1": "c98efef4f4396feaf1ce5d8ef4f5a141467e858a"
26
+ },
27
+ {
28
+ "name": "model.safetensors",
29
+ "bytes": 8411554440,
30
+ "sha256": "932889cf4b62a0903dbe357f4c358b1eadec2d300b0ddab7f4399cd3a35e9a71",
31
+ "git_blob_sha1": null
32
+ },
33
+ {
34
+ "name": "tokenizer.json",
35
+ "bytes": 19989710,
36
+ "sha256": "76cc6bc2453583ba12d5e108102967821b81f8413c66c048778617154e782acf",
37
+ "git_blob_sha1": "fdf075e84c5f6fa7e0e293ba6d794ede81e6f567"
38
+ },
39
+ {
40
+ "name": "tokenizer_config.json",
41
+ "bytes": 1470,
42
+ "sha256": "ab8728a2e6116725250212041642e345238a2f9af4cb18b43c26b680f2d95b67",
43
+ "git_blob_sha1": "db5a7cc577677b3516a9d62d5c4405d3cfc0d7c4"
44
+ },
45
+ {
46
+ "name": "training_metadata.json",
47
+ "bytes": 2616,
48
+ "sha256": "03fd63981d7c594b2f02bf37e2a697899f47e555b53fa1b25ee6ebe8487484c4",
49
+ "git_blob_sha1": "80fbf1c61380f0cab858fbfe4404c11ec832170d"
50
+ }
51
+ ],
52
+ "source_checkpoint": "checkpoint-1155"
53
+ }
Keen-qwen4b-20b/midtrain-longcontext-1B-32K/checkpoint-1155/model.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:932889cf4b62a0903dbe357f4c358b1eadec2d300b0ddab7f4399cd3a35e9a71
3
+ size 8411554440
Keen-qwen4b-20b/midtrain-longcontext-1B-32K/checkpoint-1155/tokenizer.json ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:76cc6bc2453583ba12d5e108102967821b81f8413c66c048778617154e782acf
3
+ size 19989710
Keen-qwen4b-20b/midtrain-longcontext-1B-32K/checkpoint-1155/tokenizer_config.json ADDED
@@ -0,0 +1,49 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "add_prefix_space": false,
3
+ "audio_bos_token": "<|audio_start|>",
4
+ "audio_eos_token": "<|audio_end|>",
5
+ "audio_token": "<|audio_pad|>",
6
+ "backend": "tokenizers",
7
+ "bos_token": null,
8
+ "clean_up_tokenization_spaces": false,
9
+ "eos_token": "<|endoftext|>",
10
+ "errors": "replace",
11
+ "extra_special_tokens": [
12
+ "<|im_start|>",
13
+ "<|im_end|>",
14
+ "<|object_ref_start|>",
15
+ "<|object_ref_end|>",
16
+ "<|box_start|>",
17
+ "<|box_end|>",
18
+ "<|quad_start|>",
19
+ "<|quad_end|>",
20
+ "<|vision_start|>",
21
+ "<|vision_end|>",
22
+ "<|vision_pad|>",
23
+ "<|image_pad|>",
24
+ "<|video_pad|>",
25
+ "<fact>",
26
+ "</fact>"
27
+ ],
28
+ "image_token": "<|image_pad|>",
29
+ "is_local": true,
30
+ "local_files_only": true,
31
+ "model_max_length": 32768,
32
+ "model_specific_special_tokens": {
33
+ "audio_bos_token": "<|audio_start|>",
34
+ "audio_eos_token": "<|audio_end|>",
35
+ "audio_token": "<|audio_pad|>",
36
+ "image_token": "<|image_pad|>",
37
+ "video_token": "<|video_pad|>",
38
+ "vision_bos_token": "<|vision_start|>",
39
+ "vision_eos_token": "<|vision_end|>"
40
+ },
41
+ "pad_token": "<|endoftext|>",
42
+ "pretokenize_regex": "(?i:'s|'t|'re|'ve|'m|'ll|'d)|[^\\r\\n\\p{L}\\p{N}]?[\\p{L}\\p{M}]+|\\p{N}| ?[^\\s\\p{L}\\p{M}\\p{N}]+[\\r\\n]*|\\s*[\\r\\n]+|\\s+(?!\\S)|\\s+",
43
+ "split_special_tokens": false,
44
+ "tokenizer_class": "Qwen2Tokenizer",
45
+ "unk_token": null,
46
+ "video_token": "<|video_pad|>",
47
+ "vision_bos_token": "<|vision_start|>",
48
+ "vision_eos_token": "<|vision_end|>"
49
+ }
Keen-qwen4b-20b/midtrain-longcontext-1B-32K/checkpoint-1155/training_metadata.json ADDED
@@ -0,0 +1,58 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "stage": "midtrain-longcontext-1B-32K",
3
+ "checkpoint_step": 1155,
4
+ "cumulative_optimizer_step": 33584,
5
+ "stage_supervised_tokens": 1000000000,
6
+ "trained_sequence_window": 32768,
7
+ "parent_checkpoint": "Keen-qwen4b-20b/midtrain-if-9B/checkpoint-9765",
8
+ "architecture": [
9
+ "Qwen3_5ForCausalLM"
10
+ ],
11
+ "model_type": "qwen3_5_text",
12
+ "objective": "ordinary next-token prediction on original text",
13
+ "fact_markers_injected": false,
14
+ "financial_sft_applied": false,
15
+ "training_code_sha256": {
16
+ "benchmark.py": "1cb435ca92937f1eebbc1fa9adde5f6faccf9c74149b70c70e0c2c63597510e4",
17
+ "checkpoint_offload.py": "6bdd88c3296f7f70280843bc2793f2559b7e70d276d8d066f4977a13824f3514",
18
+ "common.py": "d2c090024fd4ee7330c365261b7f6ffb963c6c05a49703efd76f01bdb8d153ec",
19
+ "finalize.py": "85a98c540ccadb648cb4c799711ac5e9ed7b55a0e002974d93c1002e7c05160e",
20
+ "optimizer.py": "f724a7beebe0c69c2686a221edefe33d333c87450f5347427766d83c6e612c1e",
21
+ "packed_model.py": "accc6489f83979a8cdad6d0863e133a5689ad00deb97941be7ddf4e2854c598a",
22
+ "packer.py": "53250b9f95bc75a79a1c893503605a657ec3cae7b6129fe41173673794aa9418",
23
+ "prepare.py": "40c95af2b293be14259f1e6cc8774a911dd415fc9f94a26d478817007e2765b8",
24
+ "repack.py": "b24d9668b51de2d7992030261d93b8b8267aee14ce00e71b66e470010f407bb6",
25
+ "runtime.py": "2b8c92f1ad6bd32a5cdd260aba89753e67c8b0ff11992f607e3a73030a038a12",
26
+ "source_rows.py": "7aec972eb94bbbbd55ee1aa0e53dd3ec062e99692a68d02cc3e11a760b69d3dd",
27
+ "submit.py": "36300b02ffdf15ae24736d457f2dafbad293b863cc63abd42c60c5c6011cf11a",
28
+ "test_checkpoint_offload.py": "7e5e3067c2ccea103d9bdc0a63b9f25733bd9eaf01fc1d80b4fe1800a605b183",
29
+ "test_data.py": "541c992730b2a8e0c06045d5427b5d7d386f832d206ed20d7b07e4e4b2269141",
30
+ "tokenizer_utils.py": "bf5ac7268f92a0a8c5645ddbcceb6c6342971de3f196dd7a1bff97b8bfc6ddef",
31
+ "train.py": "58d1457598a87405f175849719c158bd7a5305bed3727c4975221d925c944dfd",
32
+ "config.json": "5b9434b57d2aceb33a31b1f71b1714c6324814a786a052386d38dcb3a2b573dd"
33
+ },
34
+ "export_changes": {
35
+ "config.use_cache": true
36
+ },
37
+ "weights": "Unmodified original safetensors; optimizer state retained locally.",
38
+ "available_pool_targets": 5072536771,
39
+ "entire_5B_pool_trained": false,
40
+ "actual_training_mix": {
41
+ "FineWeb-Edu": {
42
+ "target_tokens": 657559147,
43
+ "percent": 65.75591469999999
44
+ },
45
+ "PDF": {
46
+ "target_tokens": 170902036,
47
+ "percent": 17.090203600000002
48
+ },
49
+ "REX": {
50
+ "target_tokens": 85027655,
51
+ "percent": 8.502765499999999
52
+ },
53
+ "CWE": {
54
+ "target_tokens": 86511162,
55
+ "percent": 8.6511162
56
+ }
57
+ }
58
+ }