jkim96 commited on
Commit
7e602b4
·
verified ·
1 Parent(s): dab3fac

Upload DASH-Q quantized checkpoint (INTNone, gNone)

Browse files
README.md ADDED
@@ -0,0 +1,73 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ license: apache-2.0
3
+ base_model: microsoft/phi-4
4
+ library_name: transformers
5
+ tags:
6
+ - dashq
7
+ - quantized
8
+ - post-training-quantization
9
+ ---
10
+ # phi-4-DASHQ-INT3-g64
11
+
12
+ This repository contains a DASH-Q packed quantized checkpoint for `microsoft/phi-4`.
13
+
14
+ DASH-Q checkpoints require the lightweight DASH-Q runtime package for loading. They are not plain Transformers checkpoints because linear layers are stored as `PackedQuantizedLinear` modules.
15
+
16
+ ## Usage
17
+
18
+ ```python
19
+ from transformers import AutoModelForCausalLM, AutoTokenizer
20
+
21
+ model = AutoModelForCausalLM.from_pretrained(
22
+ "jkim96/phi-4-DASHQ-INT3-g64", trust_remote_code=True, device_map="cuda", dtype="auto"
23
+ )
24
+ tokenizer = AutoTokenizer.from_pretrained("jkim96/phi-4-DASHQ-INT3-g64")
25
+
26
+ messages = [{"role": "user", "content": "Explain 2-bit quantization in one sentence."}]
27
+ text = tokenizer.apply_chat_template(messages, add_generation_prompt=True, tokenize=False)
28
+ inputs = tokenizer(text, return_tensors="pt").to(model.device)
29
+ print(tokenizer.decode(model.generate(**inputs, max_new_tokens=256)[0]))
30
+ ```
31
+
32
+ `trust_remote_code=True` is required: the checkpoint ships its quantized-layer
33
+ implementation (`modeling_dashq.py`) and Triton kernels (`dashq_kernel.py`).
34
+ Without Triton, or on CPU, it falls back to dequantize-and-matmul in PyTorch.
35
+
36
+ ### Requirements
37
+
38
+ | Package | Minimum | Verified with |
39
+ | --- | --- | --- |
40
+ | `torch` | 2.4 | 2.12.1+cu130 |
41
+ | `transformers` | 5.8 | 5.9.0 |
42
+ | `triton` | 3.0 (Linux; bundled with CUDA builds of PyTorch) | 3.7.1 |
43
+ | `huggingface_hub` | 1.5 (pulled in by transformers) | 1.15.0 |
44
+
45
+ ## Quantization
46
+
47
+ | Field | Value |
48
+ | --- | --- |
49
+ | Base model | `microsoft/phi-4` |
50
+ | Bits | `3` |
51
+ | Group size | `64` |
52
+ | Scale/zero dtype | `float16` |
53
+ | Calibration dataset | `wikitext2` |
54
+ | Calibration samples | `128` |
55
+ | Sequence length | `2048` |
56
+ | Original size | `29.3190 GB` |
57
+ | Quantized size | `8.3607 GB` |
58
+
59
+ ## Evaluation
60
+
61
+ | Metric | Value |
62
+ | --- | ---: |
63
+ | `wikitext2_ppl` | 6.7354 |
64
+ | `zero-shot accuracy avg` | 68.5413 |
65
+ | `arc_challenge` | 55.2048 |
66
+ | `arc_easy` | 73.9057 |
67
+ | `commonsense_qa` | 76.3309 |
68
+ | `hellaswag` | 80.4621 |
69
+ | `lambada_openai` | 73.5494 |
70
+ | `openbookqa` | 44.8000 |
71
+ | `piqa` | 79.8694 |
72
+ | `truthfulqa_mc2` | 57.9272 |
73
+ | `winogrande` | 74.8224 |
chat_template.jinja ADDED
@@ -0,0 +1 @@
 
 
1
+ {% for message in messages %}{% if (message['role'] == 'system') %}{{'<|im_start|>system<|im_sep|>' + message['content'] + '<|im_end|>'}}{% elif (message['role'] == 'user') %}{{'<|im_start|>user<|im_sep|>' + message['content'] + '<|im_end|>'}}{% elif (message['role'] == 'assistant') %}{{'<|im_start|>assistant<|im_sep|>' + message['content'] + '<|im_end|>'}}{% endif %}{% endfor %}{% if add_generation_prompt %}{{ '<|im_start|>assistant<|im_sep|>' }}{% endif %}
config.json ADDED
@@ -0,0 +1,56 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "architectures": [
3
+ "DashQPhi3ForCausalLM"
4
+ ],
5
+ "attention_bias": false,
6
+ "attention_dropout": 0.0,
7
+ "auto_map": {
8
+ "AutoModelForCausalLM": "modeling_dashq.DashQPhi3ForCausalLM"
9
+ },
10
+ "bos_token_id": 100257,
11
+ "dashq": {
12
+ "format": "dashq-packed-linear",
13
+ "format_version": 1,
14
+ "layer_metadata": "dashq_config.json",
15
+ "method": "dashq",
16
+ "n_quantized_modules": 160,
17
+ "params": {
18
+ "bits": 3,
19
+ "group_size": 64,
20
+ "low_memory_optimization": false,
21
+ "moe_hessian_scope": "shared",
22
+ "n_samples": 128,
23
+ "scale_zero_dtype": "float16",
24
+ "symmetric": false,
25
+ "use_error_compensation": true,
26
+ "use_optimal_shrinkage": true,
27
+ "use_weighted_quantization": true
28
+ }
29
+ },
30
+ "dtype": "bfloat16",
31
+ "embd_pdrop": 0.0,
32
+ "eos_token_id": 100265,
33
+ "hidden_act": "silu",
34
+ "hidden_size": 5120,
35
+ "initializer_range": 0.02,
36
+ "intermediate_size": 17920,
37
+ "max_position_embeddings": 16384,
38
+ "model_type": "phi3",
39
+ "num_attention_heads": 40,
40
+ "num_hidden_layers": 40,
41
+ "num_key_value_heads": 10,
42
+ "original_max_position_embeddings": 16384,
43
+ "pad_token_id": 100349,
44
+ "resid_pdrop": 0.0,
45
+ "rms_norm_eps": 1e-05,
46
+ "rope_parameters": {
47
+ "partial_rotary_factor": 1.0,
48
+ "rope_theta": 250000,
49
+ "rope_type": "default"
50
+ },
51
+ "sliding_window": null,
52
+ "tie_word_embeddings": false,
53
+ "transformers_version": "5.15.0",
54
+ "use_cache": false,
55
+ "vocab_size": 100352
56
+ }
dashq_config.json ADDED
@@ -0,0 +1,1960 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "base_model": "microsoft/phi-4",
3
+ "format": "dashq-packed-linear",
4
+ "format_version": 1,
5
+ "method": "dashq",
6
+ "model_class": "causal_lm",
7
+ "params": {
8
+ "bits": 3,
9
+ "group_size": 64,
10
+ "low_memory_optimization": false,
11
+ "moe_hessian_scope": "shared",
12
+ "n_samples": 128,
13
+ "scale_zero_dtype": "float16",
14
+ "symmetric": false,
15
+ "use_error_compensation": true,
16
+ "use_optimal_shrinkage": true,
17
+ "use_weighted_quantization": true
18
+ },
19
+ "quantized_modules": {
20
+ "model.layers.0.mlp.down_proj": {
21
+ "group_size": 64,
22
+ "in_features": 17920,
23
+ "linear_dtype": "bfloat16",
24
+ "nbits": 3,
25
+ "num_groups": 1433600,
26
+ "out_features": 5120,
27
+ "packing": "int3_packed_u32",
28
+ "quant_in_features": 17920,
29
+ "runtime_backend": "torch",
30
+ "scale_zero_dtype": "float16"
31
+ },
32
+ "model.layers.0.mlp.gate_up_proj": {
33
+ "group_size": 64,
34
+ "in_features": 5120,
35
+ "linear_dtype": "bfloat16",
36
+ "nbits": 3,
37
+ "num_groups": 2867200,
38
+ "out_features": 35840,
39
+ "packing": "int3_packed_u32",
40
+ "quant_in_features": 5120,
41
+ "runtime_backend": "torch",
42
+ "scale_zero_dtype": "float16"
43
+ },
44
+ "model.layers.0.self_attn.o_proj": {
45
+ "group_size": 64,
46
+ "in_features": 5120,
47
+ "linear_dtype": "bfloat16",
48
+ "nbits": 3,
49
+ "num_groups": 409600,
50
+ "out_features": 5120,
51
+ "packing": "int3_packed_u32",
52
+ "quant_in_features": 5120,
53
+ "runtime_backend": "torch",
54
+ "scale_zero_dtype": "float16"
55
+ },
56
+ "model.layers.0.self_attn.qkv_proj": {
57
+ "group_size": 64,
58
+ "in_features": 5120,
59
+ "linear_dtype": "bfloat16",
60
+ "nbits": 3,
61
+ "num_groups": 614400,
62
+ "out_features": 7680,
63
+ "packing": "int3_packed_u32",
64
+ "quant_in_features": 5120,
65
+ "runtime_backend": "torch",
66
+ "scale_zero_dtype": "float16"
67
+ },
68
+ "model.layers.1.mlp.down_proj": {
69
+ "group_size": 64,
70
+ "in_features": 17920,
71
+ "linear_dtype": "bfloat16",
72
+ "nbits": 3,
73
+ "num_groups": 1433600,
74
+ "out_features": 5120,
75
+ "packing": "int3_packed_u32",
76
+ "quant_in_features": 17920,
77
+ "runtime_backend": "torch",
78
+ "scale_zero_dtype": "float16"
79
+ },
80
+ "model.layers.1.mlp.gate_up_proj": {
81
+ "group_size": 64,
82
+ "in_features": 5120,
83
+ "linear_dtype": "bfloat16",
84
+ "nbits": 3,
85
+ "num_groups": 2867200,
86
+ "out_features": 35840,
87
+ "packing": "int3_packed_u32",
88
+ "quant_in_features": 5120,
89
+ "runtime_backend": "torch",
90
+ "scale_zero_dtype": "float16"
91
+ },
92
+ "model.layers.1.self_attn.o_proj": {
93
+ "group_size": 64,
94
+ "in_features": 5120,
95
+ "linear_dtype": "bfloat16",
96
+ "nbits": 3,
97
+ "num_groups": 409600,
98
+ "out_features": 5120,
99
+ "packing": "int3_packed_u32",
100
+ "quant_in_features": 5120,
101
+ "runtime_backend": "torch",
102
+ "scale_zero_dtype": "float16"
103
+ },
104
+ "model.layers.1.self_attn.qkv_proj": {
105
+ "group_size": 64,
106
+ "in_features": 5120,
107
+ "linear_dtype": "bfloat16",
108
+ "nbits": 3,
109
+ "num_groups": 614400,
110
+ "out_features": 7680,
111
+ "packing": "int3_packed_u32",
112
+ "quant_in_features": 5120,
113
+ "runtime_backend": "torch",
114
+ "scale_zero_dtype": "float16"
115
+ },
116
+ "model.layers.10.mlp.down_proj": {
117
+ "group_size": 64,
118
+ "in_features": 17920,
119
+ "linear_dtype": "bfloat16",
120
+ "nbits": 3,
121
+ "num_groups": 1433600,
122
+ "out_features": 5120,
123
+ "packing": "int3_packed_u32",
124
+ "quant_in_features": 17920,
125
+ "runtime_backend": "torch",
126
+ "scale_zero_dtype": "float16"
127
+ },
128
+ "model.layers.10.mlp.gate_up_proj": {
129
+ "group_size": 64,
130
+ "in_features": 5120,
131
+ "linear_dtype": "bfloat16",
132
+ "nbits": 3,
133
+ "num_groups": 2867200,
134
+ "out_features": 35840,
135
+ "packing": "int3_packed_u32",
136
+ "quant_in_features": 5120,
137
+ "runtime_backend": "torch",
138
+ "scale_zero_dtype": "float16"
139
+ },
140
+ "model.layers.10.self_attn.o_proj": {
141
+ "group_size": 64,
142
+ "in_features": 5120,
143
+ "linear_dtype": "bfloat16",
144
+ "nbits": 3,
145
+ "num_groups": 409600,
146
+ "out_features": 5120,
147
+ "packing": "int3_packed_u32",
148
+ "quant_in_features": 5120,
149
+ "runtime_backend": "torch",
150
+ "scale_zero_dtype": "float16"
151
+ },
152
+ "model.layers.10.self_attn.qkv_proj": {
153
+ "group_size": 64,
154
+ "in_features": 5120,
155
+ "linear_dtype": "bfloat16",
156
+ "nbits": 3,
157
+ "num_groups": 614400,
158
+ "out_features": 7680,
159
+ "packing": "int3_packed_u32",
160
+ "quant_in_features": 5120,
161
+ "runtime_backend": "torch",
162
+ "scale_zero_dtype": "float16"
163
+ },
164
+ "model.layers.11.mlp.down_proj": {
165
+ "group_size": 64,
166
+ "in_features": 17920,
167
+ "linear_dtype": "bfloat16",
168
+ "nbits": 3,
169
+ "num_groups": 1433600,
170
+ "out_features": 5120,
171
+ "packing": "int3_packed_u32",
172
+ "quant_in_features": 17920,
173
+ "runtime_backend": "torch",
174
+ "scale_zero_dtype": "float16"
175
+ },
176
+ "model.layers.11.mlp.gate_up_proj": {
177
+ "group_size": 64,
178
+ "in_features": 5120,
179
+ "linear_dtype": "bfloat16",
180
+ "nbits": 3,
181
+ "num_groups": 2867200,
182
+ "out_features": 35840,
183
+ "packing": "int3_packed_u32",
184
+ "quant_in_features": 5120,
185
+ "runtime_backend": "torch",
186
+ "scale_zero_dtype": "float16"
187
+ },
188
+ "model.layers.11.self_attn.o_proj": {
189
+ "group_size": 64,
190
+ "in_features": 5120,
191
+ "linear_dtype": "bfloat16",
192
+ "nbits": 3,
193
+ "num_groups": 409600,
194
+ "out_features": 5120,
195
+ "packing": "int3_packed_u32",
196
+ "quant_in_features": 5120,
197
+ "runtime_backend": "torch",
198
+ "scale_zero_dtype": "float16"
199
+ },
200
+ "model.layers.11.self_attn.qkv_proj": {
201
+ "group_size": 64,
202
+ "in_features": 5120,
203
+ "linear_dtype": "bfloat16",
204
+ "nbits": 3,
205
+ "num_groups": 614400,
206
+ "out_features": 7680,
207
+ "packing": "int3_packed_u32",
208
+ "quant_in_features": 5120,
209
+ "runtime_backend": "torch",
210
+ "scale_zero_dtype": "float16"
211
+ },
212
+ "model.layers.12.mlp.down_proj": {
213
+ "group_size": 64,
214
+ "in_features": 17920,
215
+ "linear_dtype": "bfloat16",
216
+ "nbits": 3,
217
+ "num_groups": 1433600,
218
+ "out_features": 5120,
219
+ "packing": "int3_packed_u32",
220
+ "quant_in_features": 17920,
221
+ "runtime_backend": "torch",
222
+ "scale_zero_dtype": "float16"
223
+ },
224
+ "model.layers.12.mlp.gate_up_proj": {
225
+ "group_size": 64,
226
+ "in_features": 5120,
227
+ "linear_dtype": "bfloat16",
228
+ "nbits": 3,
229
+ "num_groups": 2867200,
230
+ "out_features": 35840,
231
+ "packing": "int3_packed_u32",
232
+ "quant_in_features": 5120,
233
+ "runtime_backend": "torch",
234
+ "scale_zero_dtype": "float16"
235
+ },
236
+ "model.layers.12.self_attn.o_proj": {
237
+ "group_size": 64,
238
+ "in_features": 5120,
239
+ "linear_dtype": "bfloat16",
240
+ "nbits": 3,
241
+ "num_groups": 409600,
242
+ "out_features": 5120,
243
+ "packing": "int3_packed_u32",
244
+ "quant_in_features": 5120,
245
+ "runtime_backend": "torch",
246
+ "scale_zero_dtype": "float16"
247
+ },
248
+ "model.layers.12.self_attn.qkv_proj": {
249
+ "group_size": 64,
250
+ "in_features": 5120,
251
+ "linear_dtype": "bfloat16",
252
+ "nbits": 3,
253
+ "num_groups": 614400,
254
+ "out_features": 7680,
255
+ "packing": "int3_packed_u32",
256
+ "quant_in_features": 5120,
257
+ "runtime_backend": "torch",
258
+ "scale_zero_dtype": "float16"
259
+ },
260
+ "model.layers.13.mlp.down_proj": {
261
+ "group_size": 64,
262
+ "in_features": 17920,
263
+ "linear_dtype": "bfloat16",
264
+ "nbits": 3,
265
+ "num_groups": 1433600,
266
+ "out_features": 5120,
267
+ "packing": "int3_packed_u32",
268
+ "quant_in_features": 17920,
269
+ "runtime_backend": "torch",
270
+ "scale_zero_dtype": "float16"
271
+ },
272
+ "model.layers.13.mlp.gate_up_proj": {
273
+ "group_size": 64,
274
+ "in_features": 5120,
275
+ "linear_dtype": "bfloat16",
276
+ "nbits": 3,
277
+ "num_groups": 2867200,
278
+ "out_features": 35840,
279
+ "packing": "int3_packed_u32",
280
+ "quant_in_features": 5120,
281
+ "runtime_backend": "torch",
282
+ "scale_zero_dtype": "float16"
283
+ },
284
+ "model.layers.13.self_attn.o_proj": {
285
+ "group_size": 64,
286
+ "in_features": 5120,
287
+ "linear_dtype": "bfloat16",
288
+ "nbits": 3,
289
+ "num_groups": 409600,
290
+ "out_features": 5120,
291
+ "packing": "int3_packed_u32",
292
+ "quant_in_features": 5120,
293
+ "runtime_backend": "torch",
294
+ "scale_zero_dtype": "float16"
295
+ },
296
+ "model.layers.13.self_attn.qkv_proj": {
297
+ "group_size": 64,
298
+ "in_features": 5120,
299
+ "linear_dtype": "bfloat16",
300
+ "nbits": 3,
301
+ "num_groups": 614400,
302
+ "out_features": 7680,
303
+ "packing": "int3_packed_u32",
304
+ "quant_in_features": 5120,
305
+ "runtime_backend": "torch",
306
+ "scale_zero_dtype": "float16"
307
+ },
308
+ "model.layers.14.mlp.down_proj": {
309
+ "group_size": 64,
310
+ "in_features": 17920,
311
+ "linear_dtype": "bfloat16",
312
+ "nbits": 3,
313
+ "num_groups": 1433600,
314
+ "out_features": 5120,
315
+ "packing": "int3_packed_u32",
316
+ "quant_in_features": 17920,
317
+ "runtime_backend": "torch",
318
+ "scale_zero_dtype": "float16"
319
+ },
320
+ "model.layers.14.mlp.gate_up_proj": {
321
+ "group_size": 64,
322
+ "in_features": 5120,
323
+ "linear_dtype": "bfloat16",
324
+ "nbits": 3,
325
+ "num_groups": 2867200,
326
+ "out_features": 35840,
327
+ "packing": "int3_packed_u32",
328
+ "quant_in_features": 5120,
329
+ "runtime_backend": "torch",
330
+ "scale_zero_dtype": "float16"
331
+ },
332
+ "model.layers.14.self_attn.o_proj": {
333
+ "group_size": 64,
334
+ "in_features": 5120,
335
+ "linear_dtype": "bfloat16",
336
+ "nbits": 3,
337
+ "num_groups": 409600,
338
+ "out_features": 5120,
339
+ "packing": "int3_packed_u32",
340
+ "quant_in_features": 5120,
341
+ "runtime_backend": "torch",
342
+ "scale_zero_dtype": "float16"
343
+ },
344
+ "model.layers.14.self_attn.qkv_proj": {
345
+ "group_size": 64,
346
+ "in_features": 5120,
347
+ "linear_dtype": "bfloat16",
348
+ "nbits": 3,
349
+ "num_groups": 614400,
350
+ "out_features": 7680,
351
+ "packing": "int3_packed_u32",
352
+ "quant_in_features": 5120,
353
+ "runtime_backend": "torch",
354
+ "scale_zero_dtype": "float16"
355
+ },
356
+ "model.layers.15.mlp.down_proj": {
357
+ "group_size": 64,
358
+ "in_features": 17920,
359
+ "linear_dtype": "bfloat16",
360
+ "nbits": 3,
361
+ "num_groups": 1433600,
362
+ "out_features": 5120,
363
+ "packing": "int3_packed_u32",
364
+ "quant_in_features": 17920,
365
+ "runtime_backend": "torch",
366
+ "scale_zero_dtype": "float16"
367
+ },
368
+ "model.layers.15.mlp.gate_up_proj": {
369
+ "group_size": 64,
370
+ "in_features": 5120,
371
+ "linear_dtype": "bfloat16",
372
+ "nbits": 3,
373
+ "num_groups": 2867200,
374
+ "out_features": 35840,
375
+ "packing": "int3_packed_u32",
376
+ "quant_in_features": 5120,
377
+ "runtime_backend": "torch",
378
+ "scale_zero_dtype": "float16"
379
+ },
380
+ "model.layers.15.self_attn.o_proj": {
381
+ "group_size": 64,
382
+ "in_features": 5120,
383
+ "linear_dtype": "bfloat16",
384
+ "nbits": 3,
385
+ "num_groups": 409600,
386
+ "out_features": 5120,
387
+ "packing": "int3_packed_u32",
388
+ "quant_in_features": 5120,
389
+ "runtime_backend": "torch",
390
+ "scale_zero_dtype": "float16"
391
+ },
392
+ "model.layers.15.self_attn.qkv_proj": {
393
+ "group_size": 64,
394
+ "in_features": 5120,
395
+ "linear_dtype": "bfloat16",
396
+ "nbits": 3,
397
+ "num_groups": 614400,
398
+ "out_features": 7680,
399
+ "packing": "int3_packed_u32",
400
+ "quant_in_features": 5120,
401
+ "runtime_backend": "torch",
402
+ "scale_zero_dtype": "float16"
403
+ },
404
+ "model.layers.16.mlp.down_proj": {
405
+ "group_size": 64,
406
+ "in_features": 17920,
407
+ "linear_dtype": "bfloat16",
408
+ "nbits": 3,
409
+ "num_groups": 1433600,
410
+ "out_features": 5120,
411
+ "packing": "int3_packed_u32",
412
+ "quant_in_features": 17920,
413
+ "runtime_backend": "torch",
414
+ "scale_zero_dtype": "float16"
415
+ },
416
+ "model.layers.16.mlp.gate_up_proj": {
417
+ "group_size": 64,
418
+ "in_features": 5120,
419
+ "linear_dtype": "bfloat16",
420
+ "nbits": 3,
421
+ "num_groups": 2867200,
422
+ "out_features": 35840,
423
+ "packing": "int3_packed_u32",
424
+ "quant_in_features": 5120,
425
+ "runtime_backend": "torch",
426
+ "scale_zero_dtype": "float16"
427
+ },
428
+ "model.layers.16.self_attn.o_proj": {
429
+ "group_size": 64,
430
+ "in_features": 5120,
431
+ "linear_dtype": "bfloat16",
432
+ "nbits": 3,
433
+ "num_groups": 409600,
434
+ "out_features": 5120,
435
+ "packing": "int3_packed_u32",
436
+ "quant_in_features": 5120,
437
+ "runtime_backend": "torch",
438
+ "scale_zero_dtype": "float16"
439
+ },
440
+ "model.layers.16.self_attn.qkv_proj": {
441
+ "group_size": 64,
442
+ "in_features": 5120,
443
+ "linear_dtype": "bfloat16",
444
+ "nbits": 3,
445
+ "num_groups": 614400,
446
+ "out_features": 7680,
447
+ "packing": "int3_packed_u32",
448
+ "quant_in_features": 5120,
449
+ "runtime_backend": "torch",
450
+ "scale_zero_dtype": "float16"
451
+ },
452
+ "model.layers.17.mlp.down_proj": {
453
+ "group_size": 64,
454
+ "in_features": 17920,
455
+ "linear_dtype": "bfloat16",
456
+ "nbits": 3,
457
+ "num_groups": 1433600,
458
+ "out_features": 5120,
459
+ "packing": "int3_packed_u32",
460
+ "quant_in_features": 17920,
461
+ "runtime_backend": "torch",
462
+ "scale_zero_dtype": "float16"
463
+ },
464
+ "model.layers.17.mlp.gate_up_proj": {
465
+ "group_size": 64,
466
+ "in_features": 5120,
467
+ "linear_dtype": "bfloat16",
468
+ "nbits": 3,
469
+ "num_groups": 2867200,
470
+ "out_features": 35840,
471
+ "packing": "int3_packed_u32",
472
+ "quant_in_features": 5120,
473
+ "runtime_backend": "torch",
474
+ "scale_zero_dtype": "float16"
475
+ },
476
+ "model.layers.17.self_attn.o_proj": {
477
+ "group_size": 64,
478
+ "in_features": 5120,
479
+ "linear_dtype": "bfloat16",
480
+ "nbits": 3,
481
+ "num_groups": 409600,
482
+ "out_features": 5120,
483
+ "packing": "int3_packed_u32",
484
+ "quant_in_features": 5120,
485
+ "runtime_backend": "torch",
486
+ "scale_zero_dtype": "float16"
487
+ },
488
+ "model.layers.17.self_attn.qkv_proj": {
489
+ "group_size": 64,
490
+ "in_features": 5120,
491
+ "linear_dtype": "bfloat16",
492
+ "nbits": 3,
493
+ "num_groups": 614400,
494
+ "out_features": 7680,
495
+ "packing": "int3_packed_u32",
496
+ "quant_in_features": 5120,
497
+ "runtime_backend": "torch",
498
+ "scale_zero_dtype": "float16"
499
+ },
500
+ "model.layers.18.mlp.down_proj": {
501
+ "group_size": 64,
502
+ "in_features": 17920,
503
+ "linear_dtype": "bfloat16",
504
+ "nbits": 3,
505
+ "num_groups": 1433600,
506
+ "out_features": 5120,
507
+ "packing": "int3_packed_u32",
508
+ "quant_in_features": 17920,
509
+ "runtime_backend": "torch",
510
+ "scale_zero_dtype": "float16"
511
+ },
512
+ "model.layers.18.mlp.gate_up_proj": {
513
+ "group_size": 64,
514
+ "in_features": 5120,
515
+ "linear_dtype": "bfloat16",
516
+ "nbits": 3,
517
+ "num_groups": 2867200,
518
+ "out_features": 35840,
519
+ "packing": "int3_packed_u32",
520
+ "quant_in_features": 5120,
521
+ "runtime_backend": "torch",
522
+ "scale_zero_dtype": "float16"
523
+ },
524
+ "model.layers.18.self_attn.o_proj": {
525
+ "group_size": 64,
526
+ "in_features": 5120,
527
+ "linear_dtype": "bfloat16",
528
+ "nbits": 3,
529
+ "num_groups": 409600,
530
+ "out_features": 5120,
531
+ "packing": "int3_packed_u32",
532
+ "quant_in_features": 5120,
533
+ "runtime_backend": "torch",
534
+ "scale_zero_dtype": "float16"
535
+ },
536
+ "model.layers.18.self_attn.qkv_proj": {
537
+ "group_size": 64,
538
+ "in_features": 5120,
539
+ "linear_dtype": "bfloat16",
540
+ "nbits": 3,
541
+ "num_groups": 614400,
542
+ "out_features": 7680,
543
+ "packing": "int3_packed_u32",
544
+ "quant_in_features": 5120,
545
+ "runtime_backend": "torch",
546
+ "scale_zero_dtype": "float16"
547
+ },
548
+ "model.layers.19.mlp.down_proj": {
549
+ "group_size": 64,
550
+ "in_features": 17920,
551
+ "linear_dtype": "bfloat16",
552
+ "nbits": 3,
553
+ "num_groups": 1433600,
554
+ "out_features": 5120,
555
+ "packing": "int3_packed_u32",
556
+ "quant_in_features": 17920,
557
+ "runtime_backend": "torch",
558
+ "scale_zero_dtype": "float16"
559
+ },
560
+ "model.layers.19.mlp.gate_up_proj": {
561
+ "group_size": 64,
562
+ "in_features": 5120,
563
+ "linear_dtype": "bfloat16",
564
+ "nbits": 3,
565
+ "num_groups": 2867200,
566
+ "out_features": 35840,
567
+ "packing": "int3_packed_u32",
568
+ "quant_in_features": 5120,
569
+ "runtime_backend": "torch",
570
+ "scale_zero_dtype": "float16"
571
+ },
572
+ "model.layers.19.self_attn.o_proj": {
573
+ "group_size": 64,
574
+ "in_features": 5120,
575
+ "linear_dtype": "bfloat16",
576
+ "nbits": 3,
577
+ "num_groups": 409600,
578
+ "out_features": 5120,
579
+ "packing": "int3_packed_u32",
580
+ "quant_in_features": 5120,
581
+ "runtime_backend": "torch",
582
+ "scale_zero_dtype": "float16"
583
+ },
584
+ "model.layers.19.self_attn.qkv_proj": {
585
+ "group_size": 64,
586
+ "in_features": 5120,
587
+ "linear_dtype": "bfloat16",
588
+ "nbits": 3,
589
+ "num_groups": 614400,
590
+ "out_features": 7680,
591
+ "packing": "int3_packed_u32",
592
+ "quant_in_features": 5120,
593
+ "runtime_backend": "torch",
594
+ "scale_zero_dtype": "float16"
595
+ },
596
+ "model.layers.2.mlp.down_proj": {
597
+ "group_size": 64,
598
+ "in_features": 17920,
599
+ "linear_dtype": "bfloat16",
600
+ "nbits": 3,
601
+ "num_groups": 1433600,
602
+ "out_features": 5120,
603
+ "packing": "int3_packed_u32",
604
+ "quant_in_features": 17920,
605
+ "runtime_backend": "torch",
606
+ "scale_zero_dtype": "float16"
607
+ },
608
+ "model.layers.2.mlp.gate_up_proj": {
609
+ "group_size": 64,
610
+ "in_features": 5120,
611
+ "linear_dtype": "bfloat16",
612
+ "nbits": 3,
613
+ "num_groups": 2867200,
614
+ "out_features": 35840,
615
+ "packing": "int3_packed_u32",
616
+ "quant_in_features": 5120,
617
+ "runtime_backend": "torch",
618
+ "scale_zero_dtype": "float16"
619
+ },
620
+ "model.layers.2.self_attn.o_proj": {
621
+ "group_size": 64,
622
+ "in_features": 5120,
623
+ "linear_dtype": "bfloat16",
624
+ "nbits": 3,
625
+ "num_groups": 409600,
626
+ "out_features": 5120,
627
+ "packing": "int3_packed_u32",
628
+ "quant_in_features": 5120,
629
+ "runtime_backend": "torch",
630
+ "scale_zero_dtype": "float16"
631
+ },
632
+ "model.layers.2.self_attn.qkv_proj": {
633
+ "group_size": 64,
634
+ "in_features": 5120,
635
+ "linear_dtype": "bfloat16",
636
+ "nbits": 3,
637
+ "num_groups": 614400,
638
+ "out_features": 7680,
639
+ "packing": "int3_packed_u32",
640
+ "quant_in_features": 5120,
641
+ "runtime_backend": "torch",
642
+ "scale_zero_dtype": "float16"
643
+ },
644
+ "model.layers.20.mlp.down_proj": {
645
+ "group_size": 64,
646
+ "in_features": 17920,
647
+ "linear_dtype": "bfloat16",
648
+ "nbits": 3,
649
+ "num_groups": 1433600,
650
+ "out_features": 5120,
651
+ "packing": "int3_packed_u32",
652
+ "quant_in_features": 17920,
653
+ "runtime_backend": "torch",
654
+ "scale_zero_dtype": "float16"
655
+ },
656
+ "model.layers.20.mlp.gate_up_proj": {
657
+ "group_size": 64,
658
+ "in_features": 5120,
659
+ "linear_dtype": "bfloat16",
660
+ "nbits": 3,
661
+ "num_groups": 2867200,
662
+ "out_features": 35840,
663
+ "packing": "int3_packed_u32",
664
+ "quant_in_features": 5120,
665
+ "runtime_backend": "torch",
666
+ "scale_zero_dtype": "float16"
667
+ },
668
+ "model.layers.20.self_attn.o_proj": {
669
+ "group_size": 64,
670
+ "in_features": 5120,
671
+ "linear_dtype": "bfloat16",
672
+ "nbits": 3,
673
+ "num_groups": 409600,
674
+ "out_features": 5120,
675
+ "packing": "int3_packed_u32",
676
+ "quant_in_features": 5120,
677
+ "runtime_backend": "torch",
678
+ "scale_zero_dtype": "float16"
679
+ },
680
+ "model.layers.20.self_attn.qkv_proj": {
681
+ "group_size": 64,
682
+ "in_features": 5120,
683
+ "linear_dtype": "bfloat16",
684
+ "nbits": 3,
685
+ "num_groups": 614400,
686
+ "out_features": 7680,
687
+ "packing": "int3_packed_u32",
688
+ "quant_in_features": 5120,
689
+ "runtime_backend": "torch",
690
+ "scale_zero_dtype": "float16"
691
+ },
692
+ "model.layers.21.mlp.down_proj": {
693
+ "group_size": 64,
694
+ "in_features": 17920,
695
+ "linear_dtype": "bfloat16",
696
+ "nbits": 3,
697
+ "num_groups": 1433600,
698
+ "out_features": 5120,
699
+ "packing": "int3_packed_u32",
700
+ "quant_in_features": 17920,
701
+ "runtime_backend": "torch",
702
+ "scale_zero_dtype": "float16"
703
+ },
704
+ "model.layers.21.mlp.gate_up_proj": {
705
+ "group_size": 64,
706
+ "in_features": 5120,
707
+ "linear_dtype": "bfloat16",
708
+ "nbits": 3,
709
+ "num_groups": 2867200,
710
+ "out_features": 35840,
711
+ "packing": "int3_packed_u32",
712
+ "quant_in_features": 5120,
713
+ "runtime_backend": "torch",
714
+ "scale_zero_dtype": "float16"
715
+ },
716
+ "model.layers.21.self_attn.o_proj": {
717
+ "group_size": 64,
718
+ "in_features": 5120,
719
+ "linear_dtype": "bfloat16",
720
+ "nbits": 3,
721
+ "num_groups": 409600,
722
+ "out_features": 5120,
723
+ "packing": "int3_packed_u32",
724
+ "quant_in_features": 5120,
725
+ "runtime_backend": "torch",
726
+ "scale_zero_dtype": "float16"
727
+ },
728
+ "model.layers.21.self_attn.qkv_proj": {
729
+ "group_size": 64,
730
+ "in_features": 5120,
731
+ "linear_dtype": "bfloat16",
732
+ "nbits": 3,
733
+ "num_groups": 614400,
734
+ "out_features": 7680,
735
+ "packing": "int3_packed_u32",
736
+ "quant_in_features": 5120,
737
+ "runtime_backend": "torch",
738
+ "scale_zero_dtype": "float16"
739
+ },
740
+ "model.layers.22.mlp.down_proj": {
741
+ "group_size": 64,
742
+ "in_features": 17920,
743
+ "linear_dtype": "bfloat16",
744
+ "nbits": 3,
745
+ "num_groups": 1433600,
746
+ "out_features": 5120,
747
+ "packing": "int3_packed_u32",
748
+ "quant_in_features": 17920,
749
+ "runtime_backend": "torch",
750
+ "scale_zero_dtype": "float16"
751
+ },
752
+ "model.layers.22.mlp.gate_up_proj": {
753
+ "group_size": 64,
754
+ "in_features": 5120,
755
+ "linear_dtype": "bfloat16",
756
+ "nbits": 3,
757
+ "num_groups": 2867200,
758
+ "out_features": 35840,
759
+ "packing": "int3_packed_u32",
760
+ "quant_in_features": 5120,
761
+ "runtime_backend": "torch",
762
+ "scale_zero_dtype": "float16"
763
+ },
764
+ "model.layers.22.self_attn.o_proj": {
765
+ "group_size": 64,
766
+ "in_features": 5120,
767
+ "linear_dtype": "bfloat16",
768
+ "nbits": 3,
769
+ "num_groups": 409600,
770
+ "out_features": 5120,
771
+ "packing": "int3_packed_u32",
772
+ "quant_in_features": 5120,
773
+ "runtime_backend": "torch",
774
+ "scale_zero_dtype": "float16"
775
+ },
776
+ "model.layers.22.self_attn.qkv_proj": {
777
+ "group_size": 64,
778
+ "in_features": 5120,
779
+ "linear_dtype": "bfloat16",
780
+ "nbits": 3,
781
+ "num_groups": 614400,
782
+ "out_features": 7680,
783
+ "packing": "int3_packed_u32",
784
+ "quant_in_features": 5120,
785
+ "runtime_backend": "torch",
786
+ "scale_zero_dtype": "float16"
787
+ },
788
+ "model.layers.23.mlp.down_proj": {
789
+ "group_size": 64,
790
+ "in_features": 17920,
791
+ "linear_dtype": "bfloat16",
792
+ "nbits": 3,
793
+ "num_groups": 1433600,
794
+ "out_features": 5120,
795
+ "packing": "int3_packed_u32",
796
+ "quant_in_features": 17920,
797
+ "runtime_backend": "torch",
798
+ "scale_zero_dtype": "float16"
799
+ },
800
+ "model.layers.23.mlp.gate_up_proj": {
801
+ "group_size": 64,
802
+ "in_features": 5120,
803
+ "linear_dtype": "bfloat16",
804
+ "nbits": 3,
805
+ "num_groups": 2867200,
806
+ "out_features": 35840,
807
+ "packing": "int3_packed_u32",
808
+ "quant_in_features": 5120,
809
+ "runtime_backend": "torch",
810
+ "scale_zero_dtype": "float16"
811
+ },
812
+ "model.layers.23.self_attn.o_proj": {
813
+ "group_size": 64,
814
+ "in_features": 5120,
815
+ "linear_dtype": "bfloat16",
816
+ "nbits": 3,
817
+ "num_groups": 409600,
818
+ "out_features": 5120,
819
+ "packing": "int3_packed_u32",
820
+ "quant_in_features": 5120,
821
+ "runtime_backend": "torch",
822
+ "scale_zero_dtype": "float16"
823
+ },
824
+ "model.layers.23.self_attn.qkv_proj": {
825
+ "group_size": 64,
826
+ "in_features": 5120,
827
+ "linear_dtype": "bfloat16",
828
+ "nbits": 3,
829
+ "num_groups": 614400,
830
+ "out_features": 7680,
831
+ "packing": "int3_packed_u32",
832
+ "quant_in_features": 5120,
833
+ "runtime_backend": "torch",
834
+ "scale_zero_dtype": "float16"
835
+ },
836
+ "model.layers.24.mlp.down_proj": {
837
+ "group_size": 64,
838
+ "in_features": 17920,
839
+ "linear_dtype": "bfloat16",
840
+ "nbits": 3,
841
+ "num_groups": 1433600,
842
+ "out_features": 5120,
843
+ "packing": "int3_packed_u32",
844
+ "quant_in_features": 17920,
845
+ "runtime_backend": "torch",
846
+ "scale_zero_dtype": "float16"
847
+ },
848
+ "model.layers.24.mlp.gate_up_proj": {
849
+ "group_size": 64,
850
+ "in_features": 5120,
851
+ "linear_dtype": "bfloat16",
852
+ "nbits": 3,
853
+ "num_groups": 2867200,
854
+ "out_features": 35840,
855
+ "packing": "int3_packed_u32",
856
+ "quant_in_features": 5120,
857
+ "runtime_backend": "torch",
858
+ "scale_zero_dtype": "float16"
859
+ },
860
+ "model.layers.24.self_attn.o_proj": {
861
+ "group_size": 64,
862
+ "in_features": 5120,
863
+ "linear_dtype": "bfloat16",
864
+ "nbits": 3,
865
+ "num_groups": 409600,
866
+ "out_features": 5120,
867
+ "packing": "int3_packed_u32",
868
+ "quant_in_features": 5120,
869
+ "runtime_backend": "torch",
870
+ "scale_zero_dtype": "float16"
871
+ },
872
+ "model.layers.24.self_attn.qkv_proj": {
873
+ "group_size": 64,
874
+ "in_features": 5120,
875
+ "linear_dtype": "bfloat16",
876
+ "nbits": 3,
877
+ "num_groups": 614400,
878
+ "out_features": 7680,
879
+ "packing": "int3_packed_u32",
880
+ "quant_in_features": 5120,
881
+ "runtime_backend": "torch",
882
+ "scale_zero_dtype": "float16"
883
+ },
884
+ "model.layers.25.mlp.down_proj": {
885
+ "group_size": 64,
886
+ "in_features": 17920,
887
+ "linear_dtype": "bfloat16",
888
+ "nbits": 3,
889
+ "num_groups": 1433600,
890
+ "out_features": 5120,
891
+ "packing": "int3_packed_u32",
892
+ "quant_in_features": 17920,
893
+ "runtime_backend": "torch",
894
+ "scale_zero_dtype": "float16"
895
+ },
896
+ "model.layers.25.mlp.gate_up_proj": {
897
+ "group_size": 64,
898
+ "in_features": 5120,
899
+ "linear_dtype": "bfloat16",
900
+ "nbits": 3,
901
+ "num_groups": 2867200,
902
+ "out_features": 35840,
903
+ "packing": "int3_packed_u32",
904
+ "quant_in_features": 5120,
905
+ "runtime_backend": "torch",
906
+ "scale_zero_dtype": "float16"
907
+ },
908
+ "model.layers.25.self_attn.o_proj": {
909
+ "group_size": 64,
910
+ "in_features": 5120,
911
+ "linear_dtype": "bfloat16",
912
+ "nbits": 3,
913
+ "num_groups": 409600,
914
+ "out_features": 5120,
915
+ "packing": "int3_packed_u32",
916
+ "quant_in_features": 5120,
917
+ "runtime_backend": "torch",
918
+ "scale_zero_dtype": "float16"
919
+ },
920
+ "model.layers.25.self_attn.qkv_proj": {
921
+ "group_size": 64,
922
+ "in_features": 5120,
923
+ "linear_dtype": "bfloat16",
924
+ "nbits": 3,
925
+ "num_groups": 614400,
926
+ "out_features": 7680,
927
+ "packing": "int3_packed_u32",
928
+ "quant_in_features": 5120,
929
+ "runtime_backend": "torch",
930
+ "scale_zero_dtype": "float16"
931
+ },
932
+ "model.layers.26.mlp.down_proj": {
933
+ "group_size": 64,
934
+ "in_features": 17920,
935
+ "linear_dtype": "bfloat16",
936
+ "nbits": 3,
937
+ "num_groups": 1433600,
938
+ "out_features": 5120,
939
+ "packing": "int3_packed_u32",
940
+ "quant_in_features": 17920,
941
+ "runtime_backend": "torch",
942
+ "scale_zero_dtype": "float16"
943
+ },
944
+ "model.layers.26.mlp.gate_up_proj": {
945
+ "group_size": 64,
946
+ "in_features": 5120,
947
+ "linear_dtype": "bfloat16",
948
+ "nbits": 3,
949
+ "num_groups": 2867200,
950
+ "out_features": 35840,
951
+ "packing": "int3_packed_u32",
952
+ "quant_in_features": 5120,
953
+ "runtime_backend": "torch",
954
+ "scale_zero_dtype": "float16"
955
+ },
956
+ "model.layers.26.self_attn.o_proj": {
957
+ "group_size": 64,
958
+ "in_features": 5120,
959
+ "linear_dtype": "bfloat16",
960
+ "nbits": 3,
961
+ "num_groups": 409600,
962
+ "out_features": 5120,
963
+ "packing": "int3_packed_u32",
964
+ "quant_in_features": 5120,
965
+ "runtime_backend": "torch",
966
+ "scale_zero_dtype": "float16"
967
+ },
968
+ "model.layers.26.self_attn.qkv_proj": {
969
+ "group_size": 64,
970
+ "in_features": 5120,
971
+ "linear_dtype": "bfloat16",
972
+ "nbits": 3,
973
+ "num_groups": 614400,
974
+ "out_features": 7680,
975
+ "packing": "int3_packed_u32",
976
+ "quant_in_features": 5120,
977
+ "runtime_backend": "torch",
978
+ "scale_zero_dtype": "float16"
979
+ },
980
+ "model.layers.27.mlp.down_proj": {
981
+ "group_size": 64,
982
+ "in_features": 17920,
983
+ "linear_dtype": "bfloat16",
984
+ "nbits": 3,
985
+ "num_groups": 1433600,
986
+ "out_features": 5120,
987
+ "packing": "int3_packed_u32",
988
+ "quant_in_features": 17920,
989
+ "runtime_backend": "torch",
990
+ "scale_zero_dtype": "float16"
991
+ },
992
+ "model.layers.27.mlp.gate_up_proj": {
993
+ "group_size": 64,
994
+ "in_features": 5120,
995
+ "linear_dtype": "bfloat16",
996
+ "nbits": 3,
997
+ "num_groups": 2867200,
998
+ "out_features": 35840,
999
+ "packing": "int3_packed_u32",
1000
+ "quant_in_features": 5120,
1001
+ "runtime_backend": "torch",
1002
+ "scale_zero_dtype": "float16"
1003
+ },
1004
+ "model.layers.27.self_attn.o_proj": {
1005
+ "group_size": 64,
1006
+ "in_features": 5120,
1007
+ "linear_dtype": "bfloat16",
1008
+ "nbits": 3,
1009
+ "num_groups": 409600,
1010
+ "out_features": 5120,
1011
+ "packing": "int3_packed_u32",
1012
+ "quant_in_features": 5120,
1013
+ "runtime_backend": "torch",
1014
+ "scale_zero_dtype": "float16"
1015
+ },
1016
+ "model.layers.27.self_attn.qkv_proj": {
1017
+ "group_size": 64,
1018
+ "in_features": 5120,
1019
+ "linear_dtype": "bfloat16",
1020
+ "nbits": 3,
1021
+ "num_groups": 614400,
1022
+ "out_features": 7680,
1023
+ "packing": "int3_packed_u32",
1024
+ "quant_in_features": 5120,
1025
+ "runtime_backend": "torch",
1026
+ "scale_zero_dtype": "float16"
1027
+ },
1028
+ "model.layers.28.mlp.down_proj": {
1029
+ "group_size": 64,
1030
+ "in_features": 17920,
1031
+ "linear_dtype": "bfloat16",
1032
+ "nbits": 3,
1033
+ "num_groups": 1433600,
1034
+ "out_features": 5120,
1035
+ "packing": "int3_packed_u32",
1036
+ "quant_in_features": 17920,
1037
+ "runtime_backend": "torch",
1038
+ "scale_zero_dtype": "float16"
1039
+ },
1040
+ "model.layers.28.mlp.gate_up_proj": {
1041
+ "group_size": 64,
1042
+ "in_features": 5120,
1043
+ "linear_dtype": "bfloat16",
1044
+ "nbits": 3,
1045
+ "num_groups": 2867200,
1046
+ "out_features": 35840,
1047
+ "packing": "int3_packed_u32",
1048
+ "quant_in_features": 5120,
1049
+ "runtime_backend": "torch",
1050
+ "scale_zero_dtype": "float16"
1051
+ },
1052
+ "model.layers.28.self_attn.o_proj": {
1053
+ "group_size": 64,
1054
+ "in_features": 5120,
1055
+ "linear_dtype": "bfloat16",
1056
+ "nbits": 3,
1057
+ "num_groups": 409600,
1058
+ "out_features": 5120,
1059
+ "packing": "int3_packed_u32",
1060
+ "quant_in_features": 5120,
1061
+ "runtime_backend": "torch",
1062
+ "scale_zero_dtype": "float16"
1063
+ },
1064
+ "model.layers.28.self_attn.qkv_proj": {
1065
+ "group_size": 64,
1066
+ "in_features": 5120,
1067
+ "linear_dtype": "bfloat16",
1068
+ "nbits": 3,
1069
+ "num_groups": 614400,
1070
+ "out_features": 7680,
1071
+ "packing": "int3_packed_u32",
1072
+ "quant_in_features": 5120,
1073
+ "runtime_backend": "torch",
1074
+ "scale_zero_dtype": "float16"
1075
+ },
1076
+ "model.layers.29.mlp.down_proj": {
1077
+ "group_size": 64,
1078
+ "in_features": 17920,
1079
+ "linear_dtype": "bfloat16",
1080
+ "nbits": 3,
1081
+ "num_groups": 1433600,
1082
+ "out_features": 5120,
1083
+ "packing": "int3_packed_u32",
1084
+ "quant_in_features": 17920,
1085
+ "runtime_backend": "torch",
1086
+ "scale_zero_dtype": "float16"
1087
+ },
1088
+ "model.layers.29.mlp.gate_up_proj": {
1089
+ "group_size": 64,
1090
+ "in_features": 5120,
1091
+ "linear_dtype": "bfloat16",
1092
+ "nbits": 3,
1093
+ "num_groups": 2867200,
1094
+ "out_features": 35840,
1095
+ "packing": "int3_packed_u32",
1096
+ "quant_in_features": 5120,
1097
+ "runtime_backend": "torch",
1098
+ "scale_zero_dtype": "float16"
1099
+ },
1100
+ "model.layers.29.self_attn.o_proj": {
1101
+ "group_size": 64,
1102
+ "in_features": 5120,
1103
+ "linear_dtype": "bfloat16",
1104
+ "nbits": 3,
1105
+ "num_groups": 409600,
1106
+ "out_features": 5120,
1107
+ "packing": "int3_packed_u32",
1108
+ "quant_in_features": 5120,
1109
+ "runtime_backend": "torch",
1110
+ "scale_zero_dtype": "float16"
1111
+ },
1112
+ "model.layers.29.self_attn.qkv_proj": {
1113
+ "group_size": 64,
1114
+ "in_features": 5120,
1115
+ "linear_dtype": "bfloat16",
1116
+ "nbits": 3,
1117
+ "num_groups": 614400,
1118
+ "out_features": 7680,
1119
+ "packing": "int3_packed_u32",
1120
+ "quant_in_features": 5120,
1121
+ "runtime_backend": "torch",
1122
+ "scale_zero_dtype": "float16"
1123
+ },
1124
+ "model.layers.3.mlp.down_proj": {
1125
+ "group_size": 64,
1126
+ "in_features": 17920,
1127
+ "linear_dtype": "bfloat16",
1128
+ "nbits": 3,
1129
+ "num_groups": 1433600,
1130
+ "out_features": 5120,
1131
+ "packing": "int3_packed_u32",
1132
+ "quant_in_features": 17920,
1133
+ "runtime_backend": "torch",
1134
+ "scale_zero_dtype": "float16"
1135
+ },
1136
+ "model.layers.3.mlp.gate_up_proj": {
1137
+ "group_size": 64,
1138
+ "in_features": 5120,
1139
+ "linear_dtype": "bfloat16",
1140
+ "nbits": 3,
1141
+ "num_groups": 2867200,
1142
+ "out_features": 35840,
1143
+ "packing": "int3_packed_u32",
1144
+ "quant_in_features": 5120,
1145
+ "runtime_backend": "torch",
1146
+ "scale_zero_dtype": "float16"
1147
+ },
1148
+ "model.layers.3.self_attn.o_proj": {
1149
+ "group_size": 64,
1150
+ "in_features": 5120,
1151
+ "linear_dtype": "bfloat16",
1152
+ "nbits": 3,
1153
+ "num_groups": 409600,
1154
+ "out_features": 5120,
1155
+ "packing": "int3_packed_u32",
1156
+ "quant_in_features": 5120,
1157
+ "runtime_backend": "torch",
1158
+ "scale_zero_dtype": "float16"
1159
+ },
1160
+ "model.layers.3.self_attn.qkv_proj": {
1161
+ "group_size": 64,
1162
+ "in_features": 5120,
1163
+ "linear_dtype": "bfloat16",
1164
+ "nbits": 3,
1165
+ "num_groups": 614400,
1166
+ "out_features": 7680,
1167
+ "packing": "int3_packed_u32",
1168
+ "quant_in_features": 5120,
1169
+ "runtime_backend": "torch",
1170
+ "scale_zero_dtype": "float16"
1171
+ },
1172
+ "model.layers.30.mlp.down_proj": {
1173
+ "group_size": 64,
1174
+ "in_features": 17920,
1175
+ "linear_dtype": "bfloat16",
1176
+ "nbits": 3,
1177
+ "num_groups": 1433600,
1178
+ "out_features": 5120,
1179
+ "packing": "int3_packed_u32",
1180
+ "quant_in_features": 17920,
1181
+ "runtime_backend": "torch",
1182
+ "scale_zero_dtype": "float16"
1183
+ },
1184
+ "model.layers.30.mlp.gate_up_proj": {
1185
+ "group_size": 64,
1186
+ "in_features": 5120,
1187
+ "linear_dtype": "bfloat16",
1188
+ "nbits": 3,
1189
+ "num_groups": 2867200,
1190
+ "out_features": 35840,
1191
+ "packing": "int3_packed_u32",
1192
+ "quant_in_features": 5120,
1193
+ "runtime_backend": "torch",
1194
+ "scale_zero_dtype": "float16"
1195
+ },
1196
+ "model.layers.30.self_attn.o_proj": {
1197
+ "group_size": 64,
1198
+ "in_features": 5120,
1199
+ "linear_dtype": "bfloat16",
1200
+ "nbits": 3,
1201
+ "num_groups": 409600,
1202
+ "out_features": 5120,
1203
+ "packing": "int3_packed_u32",
1204
+ "quant_in_features": 5120,
1205
+ "runtime_backend": "torch",
1206
+ "scale_zero_dtype": "float16"
1207
+ },
1208
+ "model.layers.30.self_attn.qkv_proj": {
1209
+ "group_size": 64,
1210
+ "in_features": 5120,
1211
+ "linear_dtype": "bfloat16",
1212
+ "nbits": 3,
1213
+ "num_groups": 614400,
1214
+ "out_features": 7680,
1215
+ "packing": "int3_packed_u32",
1216
+ "quant_in_features": 5120,
1217
+ "runtime_backend": "torch",
1218
+ "scale_zero_dtype": "float16"
1219
+ },
1220
+ "model.layers.31.mlp.down_proj": {
1221
+ "group_size": 64,
1222
+ "in_features": 17920,
1223
+ "linear_dtype": "bfloat16",
1224
+ "nbits": 3,
1225
+ "num_groups": 1433600,
1226
+ "out_features": 5120,
1227
+ "packing": "int3_packed_u32",
1228
+ "quant_in_features": 17920,
1229
+ "runtime_backend": "torch",
1230
+ "scale_zero_dtype": "float16"
1231
+ },
1232
+ "model.layers.31.mlp.gate_up_proj": {
1233
+ "group_size": 64,
1234
+ "in_features": 5120,
1235
+ "linear_dtype": "bfloat16",
1236
+ "nbits": 3,
1237
+ "num_groups": 2867200,
1238
+ "out_features": 35840,
1239
+ "packing": "int3_packed_u32",
1240
+ "quant_in_features": 5120,
1241
+ "runtime_backend": "torch",
1242
+ "scale_zero_dtype": "float16"
1243
+ },
1244
+ "model.layers.31.self_attn.o_proj": {
1245
+ "group_size": 64,
1246
+ "in_features": 5120,
1247
+ "linear_dtype": "bfloat16",
1248
+ "nbits": 3,
1249
+ "num_groups": 409600,
1250
+ "out_features": 5120,
1251
+ "packing": "int3_packed_u32",
1252
+ "quant_in_features": 5120,
1253
+ "runtime_backend": "torch",
1254
+ "scale_zero_dtype": "float16"
1255
+ },
1256
+ "model.layers.31.self_attn.qkv_proj": {
1257
+ "group_size": 64,
1258
+ "in_features": 5120,
1259
+ "linear_dtype": "bfloat16",
1260
+ "nbits": 3,
1261
+ "num_groups": 614400,
1262
+ "out_features": 7680,
1263
+ "packing": "int3_packed_u32",
1264
+ "quant_in_features": 5120,
1265
+ "runtime_backend": "torch",
1266
+ "scale_zero_dtype": "float16"
1267
+ },
1268
+ "model.layers.32.mlp.down_proj": {
1269
+ "group_size": 64,
1270
+ "in_features": 17920,
1271
+ "linear_dtype": "bfloat16",
1272
+ "nbits": 3,
1273
+ "num_groups": 1433600,
1274
+ "out_features": 5120,
1275
+ "packing": "int3_packed_u32",
1276
+ "quant_in_features": 17920,
1277
+ "runtime_backend": "torch",
1278
+ "scale_zero_dtype": "float16"
1279
+ },
1280
+ "model.layers.32.mlp.gate_up_proj": {
1281
+ "group_size": 64,
1282
+ "in_features": 5120,
1283
+ "linear_dtype": "bfloat16",
1284
+ "nbits": 3,
1285
+ "num_groups": 2867200,
1286
+ "out_features": 35840,
1287
+ "packing": "int3_packed_u32",
1288
+ "quant_in_features": 5120,
1289
+ "runtime_backend": "torch",
1290
+ "scale_zero_dtype": "float16"
1291
+ },
1292
+ "model.layers.32.self_attn.o_proj": {
1293
+ "group_size": 64,
1294
+ "in_features": 5120,
1295
+ "linear_dtype": "bfloat16",
1296
+ "nbits": 3,
1297
+ "num_groups": 409600,
1298
+ "out_features": 5120,
1299
+ "packing": "int3_packed_u32",
1300
+ "quant_in_features": 5120,
1301
+ "runtime_backend": "torch",
1302
+ "scale_zero_dtype": "float16"
1303
+ },
1304
+ "model.layers.32.self_attn.qkv_proj": {
1305
+ "group_size": 64,
1306
+ "in_features": 5120,
1307
+ "linear_dtype": "bfloat16",
1308
+ "nbits": 3,
1309
+ "num_groups": 614400,
1310
+ "out_features": 7680,
1311
+ "packing": "int3_packed_u32",
1312
+ "quant_in_features": 5120,
1313
+ "runtime_backend": "torch",
1314
+ "scale_zero_dtype": "float16"
1315
+ },
1316
+ "model.layers.33.mlp.down_proj": {
1317
+ "group_size": 64,
1318
+ "in_features": 17920,
1319
+ "linear_dtype": "bfloat16",
1320
+ "nbits": 3,
1321
+ "num_groups": 1433600,
1322
+ "out_features": 5120,
1323
+ "packing": "int3_packed_u32",
1324
+ "quant_in_features": 17920,
1325
+ "runtime_backend": "torch",
1326
+ "scale_zero_dtype": "float16"
1327
+ },
1328
+ "model.layers.33.mlp.gate_up_proj": {
1329
+ "group_size": 64,
1330
+ "in_features": 5120,
1331
+ "linear_dtype": "bfloat16",
1332
+ "nbits": 3,
1333
+ "num_groups": 2867200,
1334
+ "out_features": 35840,
1335
+ "packing": "int3_packed_u32",
1336
+ "quant_in_features": 5120,
1337
+ "runtime_backend": "torch",
1338
+ "scale_zero_dtype": "float16"
1339
+ },
1340
+ "model.layers.33.self_attn.o_proj": {
1341
+ "group_size": 64,
1342
+ "in_features": 5120,
1343
+ "linear_dtype": "bfloat16",
1344
+ "nbits": 3,
1345
+ "num_groups": 409600,
1346
+ "out_features": 5120,
1347
+ "packing": "int3_packed_u32",
1348
+ "quant_in_features": 5120,
1349
+ "runtime_backend": "torch",
1350
+ "scale_zero_dtype": "float16"
1351
+ },
1352
+ "model.layers.33.self_attn.qkv_proj": {
1353
+ "group_size": 64,
1354
+ "in_features": 5120,
1355
+ "linear_dtype": "bfloat16",
1356
+ "nbits": 3,
1357
+ "num_groups": 614400,
1358
+ "out_features": 7680,
1359
+ "packing": "int3_packed_u32",
1360
+ "quant_in_features": 5120,
1361
+ "runtime_backend": "torch",
1362
+ "scale_zero_dtype": "float16"
1363
+ },
1364
+ "model.layers.34.mlp.down_proj": {
1365
+ "group_size": 64,
1366
+ "in_features": 17920,
1367
+ "linear_dtype": "bfloat16",
1368
+ "nbits": 3,
1369
+ "num_groups": 1433600,
1370
+ "out_features": 5120,
1371
+ "packing": "int3_packed_u32",
1372
+ "quant_in_features": 17920,
1373
+ "runtime_backend": "torch",
1374
+ "scale_zero_dtype": "float16"
1375
+ },
1376
+ "model.layers.34.mlp.gate_up_proj": {
1377
+ "group_size": 64,
1378
+ "in_features": 5120,
1379
+ "linear_dtype": "bfloat16",
1380
+ "nbits": 3,
1381
+ "num_groups": 2867200,
1382
+ "out_features": 35840,
1383
+ "packing": "int3_packed_u32",
1384
+ "quant_in_features": 5120,
1385
+ "runtime_backend": "torch",
1386
+ "scale_zero_dtype": "float16"
1387
+ },
1388
+ "model.layers.34.self_attn.o_proj": {
1389
+ "group_size": 64,
1390
+ "in_features": 5120,
1391
+ "linear_dtype": "bfloat16",
1392
+ "nbits": 3,
1393
+ "num_groups": 409600,
1394
+ "out_features": 5120,
1395
+ "packing": "int3_packed_u32",
1396
+ "quant_in_features": 5120,
1397
+ "runtime_backend": "torch",
1398
+ "scale_zero_dtype": "float16"
1399
+ },
1400
+ "model.layers.34.self_attn.qkv_proj": {
1401
+ "group_size": 64,
1402
+ "in_features": 5120,
1403
+ "linear_dtype": "bfloat16",
1404
+ "nbits": 3,
1405
+ "num_groups": 614400,
1406
+ "out_features": 7680,
1407
+ "packing": "int3_packed_u32",
1408
+ "quant_in_features": 5120,
1409
+ "runtime_backend": "torch",
1410
+ "scale_zero_dtype": "float16"
1411
+ },
1412
+ "model.layers.35.mlp.down_proj": {
1413
+ "group_size": 64,
1414
+ "in_features": 17920,
1415
+ "linear_dtype": "bfloat16",
1416
+ "nbits": 3,
1417
+ "num_groups": 1433600,
1418
+ "out_features": 5120,
1419
+ "packing": "int3_packed_u32",
1420
+ "quant_in_features": 17920,
1421
+ "runtime_backend": "torch",
1422
+ "scale_zero_dtype": "float16"
1423
+ },
1424
+ "model.layers.35.mlp.gate_up_proj": {
1425
+ "group_size": 64,
1426
+ "in_features": 5120,
1427
+ "linear_dtype": "bfloat16",
1428
+ "nbits": 3,
1429
+ "num_groups": 2867200,
1430
+ "out_features": 35840,
1431
+ "packing": "int3_packed_u32",
1432
+ "quant_in_features": 5120,
1433
+ "runtime_backend": "torch",
1434
+ "scale_zero_dtype": "float16"
1435
+ },
1436
+ "model.layers.35.self_attn.o_proj": {
1437
+ "group_size": 64,
1438
+ "in_features": 5120,
1439
+ "linear_dtype": "bfloat16",
1440
+ "nbits": 3,
1441
+ "num_groups": 409600,
1442
+ "out_features": 5120,
1443
+ "packing": "int3_packed_u32",
1444
+ "quant_in_features": 5120,
1445
+ "runtime_backend": "torch",
1446
+ "scale_zero_dtype": "float16"
1447
+ },
1448
+ "model.layers.35.self_attn.qkv_proj": {
1449
+ "group_size": 64,
1450
+ "in_features": 5120,
1451
+ "linear_dtype": "bfloat16",
1452
+ "nbits": 3,
1453
+ "num_groups": 614400,
1454
+ "out_features": 7680,
1455
+ "packing": "int3_packed_u32",
1456
+ "quant_in_features": 5120,
1457
+ "runtime_backend": "torch",
1458
+ "scale_zero_dtype": "float16"
1459
+ },
1460
+ "model.layers.36.mlp.down_proj": {
1461
+ "group_size": 64,
1462
+ "in_features": 17920,
1463
+ "linear_dtype": "bfloat16",
1464
+ "nbits": 3,
1465
+ "num_groups": 1433600,
1466
+ "out_features": 5120,
1467
+ "packing": "int3_packed_u32",
1468
+ "quant_in_features": 17920,
1469
+ "runtime_backend": "torch",
1470
+ "scale_zero_dtype": "float16"
1471
+ },
1472
+ "model.layers.36.mlp.gate_up_proj": {
1473
+ "group_size": 64,
1474
+ "in_features": 5120,
1475
+ "linear_dtype": "bfloat16",
1476
+ "nbits": 3,
1477
+ "num_groups": 2867200,
1478
+ "out_features": 35840,
1479
+ "packing": "int3_packed_u32",
1480
+ "quant_in_features": 5120,
1481
+ "runtime_backend": "torch",
1482
+ "scale_zero_dtype": "float16"
1483
+ },
1484
+ "model.layers.36.self_attn.o_proj": {
1485
+ "group_size": 64,
1486
+ "in_features": 5120,
1487
+ "linear_dtype": "bfloat16",
1488
+ "nbits": 3,
1489
+ "num_groups": 409600,
1490
+ "out_features": 5120,
1491
+ "packing": "int3_packed_u32",
1492
+ "quant_in_features": 5120,
1493
+ "runtime_backend": "torch",
1494
+ "scale_zero_dtype": "float16"
1495
+ },
1496
+ "model.layers.36.self_attn.qkv_proj": {
1497
+ "group_size": 64,
1498
+ "in_features": 5120,
1499
+ "linear_dtype": "bfloat16",
1500
+ "nbits": 3,
1501
+ "num_groups": 614400,
1502
+ "out_features": 7680,
1503
+ "packing": "int3_packed_u32",
1504
+ "quant_in_features": 5120,
1505
+ "runtime_backend": "torch",
1506
+ "scale_zero_dtype": "float16"
1507
+ },
1508
+ "model.layers.37.mlp.down_proj": {
1509
+ "group_size": 64,
1510
+ "in_features": 17920,
1511
+ "linear_dtype": "bfloat16",
1512
+ "nbits": 3,
1513
+ "num_groups": 1433600,
1514
+ "out_features": 5120,
1515
+ "packing": "int3_packed_u32",
1516
+ "quant_in_features": 17920,
1517
+ "runtime_backend": "torch",
1518
+ "scale_zero_dtype": "float16"
1519
+ },
1520
+ "model.layers.37.mlp.gate_up_proj": {
1521
+ "group_size": 64,
1522
+ "in_features": 5120,
1523
+ "linear_dtype": "bfloat16",
1524
+ "nbits": 3,
1525
+ "num_groups": 2867200,
1526
+ "out_features": 35840,
1527
+ "packing": "int3_packed_u32",
1528
+ "quant_in_features": 5120,
1529
+ "runtime_backend": "torch",
1530
+ "scale_zero_dtype": "float16"
1531
+ },
1532
+ "model.layers.37.self_attn.o_proj": {
1533
+ "group_size": 64,
1534
+ "in_features": 5120,
1535
+ "linear_dtype": "bfloat16",
1536
+ "nbits": 3,
1537
+ "num_groups": 409600,
1538
+ "out_features": 5120,
1539
+ "packing": "int3_packed_u32",
1540
+ "quant_in_features": 5120,
1541
+ "runtime_backend": "torch",
1542
+ "scale_zero_dtype": "float16"
1543
+ },
1544
+ "model.layers.37.self_attn.qkv_proj": {
1545
+ "group_size": 64,
1546
+ "in_features": 5120,
1547
+ "linear_dtype": "bfloat16",
1548
+ "nbits": 3,
1549
+ "num_groups": 614400,
1550
+ "out_features": 7680,
1551
+ "packing": "int3_packed_u32",
1552
+ "quant_in_features": 5120,
1553
+ "runtime_backend": "torch",
1554
+ "scale_zero_dtype": "float16"
1555
+ },
1556
+ "model.layers.38.mlp.down_proj": {
1557
+ "group_size": 64,
1558
+ "in_features": 17920,
1559
+ "linear_dtype": "bfloat16",
1560
+ "nbits": 3,
1561
+ "num_groups": 1433600,
1562
+ "out_features": 5120,
1563
+ "packing": "int3_packed_u32",
1564
+ "quant_in_features": 17920,
1565
+ "runtime_backend": "torch",
1566
+ "scale_zero_dtype": "float16"
1567
+ },
1568
+ "model.layers.38.mlp.gate_up_proj": {
1569
+ "group_size": 64,
1570
+ "in_features": 5120,
1571
+ "linear_dtype": "bfloat16",
1572
+ "nbits": 3,
1573
+ "num_groups": 2867200,
1574
+ "out_features": 35840,
1575
+ "packing": "int3_packed_u32",
1576
+ "quant_in_features": 5120,
1577
+ "runtime_backend": "torch",
1578
+ "scale_zero_dtype": "float16"
1579
+ },
1580
+ "model.layers.38.self_attn.o_proj": {
1581
+ "group_size": 64,
1582
+ "in_features": 5120,
1583
+ "linear_dtype": "bfloat16",
1584
+ "nbits": 3,
1585
+ "num_groups": 409600,
1586
+ "out_features": 5120,
1587
+ "packing": "int3_packed_u32",
1588
+ "quant_in_features": 5120,
1589
+ "runtime_backend": "torch",
1590
+ "scale_zero_dtype": "float16"
1591
+ },
1592
+ "model.layers.38.self_attn.qkv_proj": {
1593
+ "group_size": 64,
1594
+ "in_features": 5120,
1595
+ "linear_dtype": "bfloat16",
1596
+ "nbits": 3,
1597
+ "num_groups": 614400,
1598
+ "out_features": 7680,
1599
+ "packing": "int3_packed_u32",
1600
+ "quant_in_features": 5120,
1601
+ "runtime_backend": "torch",
1602
+ "scale_zero_dtype": "float16"
1603
+ },
1604
+ "model.layers.39.mlp.down_proj": {
1605
+ "group_size": 64,
1606
+ "in_features": 17920,
1607
+ "linear_dtype": "bfloat16",
1608
+ "nbits": 3,
1609
+ "num_groups": 1433600,
1610
+ "out_features": 5120,
1611
+ "packing": "int3_packed_u32",
1612
+ "quant_in_features": 17920,
1613
+ "runtime_backend": "torch",
1614
+ "scale_zero_dtype": "float16"
1615
+ },
1616
+ "model.layers.39.mlp.gate_up_proj": {
1617
+ "group_size": 64,
1618
+ "in_features": 5120,
1619
+ "linear_dtype": "bfloat16",
1620
+ "nbits": 3,
1621
+ "num_groups": 2867200,
1622
+ "out_features": 35840,
1623
+ "packing": "int3_packed_u32",
1624
+ "quant_in_features": 5120,
1625
+ "runtime_backend": "torch",
1626
+ "scale_zero_dtype": "float16"
1627
+ },
1628
+ "model.layers.39.self_attn.o_proj": {
1629
+ "group_size": 64,
1630
+ "in_features": 5120,
1631
+ "linear_dtype": "bfloat16",
1632
+ "nbits": 3,
1633
+ "num_groups": 409600,
1634
+ "out_features": 5120,
1635
+ "packing": "int3_packed_u32",
1636
+ "quant_in_features": 5120,
1637
+ "runtime_backend": "torch",
1638
+ "scale_zero_dtype": "float16"
1639
+ },
1640
+ "model.layers.39.self_attn.qkv_proj": {
1641
+ "group_size": 64,
1642
+ "in_features": 5120,
1643
+ "linear_dtype": "bfloat16",
1644
+ "nbits": 3,
1645
+ "num_groups": 614400,
1646
+ "out_features": 7680,
1647
+ "packing": "int3_packed_u32",
1648
+ "quant_in_features": 5120,
1649
+ "runtime_backend": "torch",
1650
+ "scale_zero_dtype": "float16"
1651
+ },
1652
+ "model.layers.4.mlp.down_proj": {
1653
+ "group_size": 64,
1654
+ "in_features": 17920,
1655
+ "linear_dtype": "bfloat16",
1656
+ "nbits": 3,
1657
+ "num_groups": 1433600,
1658
+ "out_features": 5120,
1659
+ "packing": "int3_packed_u32",
1660
+ "quant_in_features": 17920,
1661
+ "runtime_backend": "torch",
1662
+ "scale_zero_dtype": "float16"
1663
+ },
1664
+ "model.layers.4.mlp.gate_up_proj": {
1665
+ "group_size": 64,
1666
+ "in_features": 5120,
1667
+ "linear_dtype": "bfloat16",
1668
+ "nbits": 3,
1669
+ "num_groups": 2867200,
1670
+ "out_features": 35840,
1671
+ "packing": "int3_packed_u32",
1672
+ "quant_in_features": 5120,
1673
+ "runtime_backend": "torch",
1674
+ "scale_zero_dtype": "float16"
1675
+ },
1676
+ "model.layers.4.self_attn.o_proj": {
1677
+ "group_size": 64,
1678
+ "in_features": 5120,
1679
+ "linear_dtype": "bfloat16",
1680
+ "nbits": 3,
1681
+ "num_groups": 409600,
1682
+ "out_features": 5120,
1683
+ "packing": "int3_packed_u32",
1684
+ "quant_in_features": 5120,
1685
+ "runtime_backend": "torch",
1686
+ "scale_zero_dtype": "float16"
1687
+ },
1688
+ "model.layers.4.self_attn.qkv_proj": {
1689
+ "group_size": 64,
1690
+ "in_features": 5120,
1691
+ "linear_dtype": "bfloat16",
1692
+ "nbits": 3,
1693
+ "num_groups": 614400,
1694
+ "out_features": 7680,
1695
+ "packing": "int3_packed_u32",
1696
+ "quant_in_features": 5120,
1697
+ "runtime_backend": "torch",
1698
+ "scale_zero_dtype": "float16"
1699
+ },
1700
+ "model.layers.5.mlp.down_proj": {
1701
+ "group_size": 64,
1702
+ "in_features": 17920,
1703
+ "linear_dtype": "bfloat16",
1704
+ "nbits": 3,
1705
+ "num_groups": 1433600,
1706
+ "out_features": 5120,
1707
+ "packing": "int3_packed_u32",
1708
+ "quant_in_features": 17920,
1709
+ "runtime_backend": "torch",
1710
+ "scale_zero_dtype": "float16"
1711
+ },
1712
+ "model.layers.5.mlp.gate_up_proj": {
1713
+ "group_size": 64,
1714
+ "in_features": 5120,
1715
+ "linear_dtype": "bfloat16",
1716
+ "nbits": 3,
1717
+ "num_groups": 2867200,
1718
+ "out_features": 35840,
1719
+ "packing": "int3_packed_u32",
1720
+ "quant_in_features": 5120,
1721
+ "runtime_backend": "torch",
1722
+ "scale_zero_dtype": "float16"
1723
+ },
1724
+ "model.layers.5.self_attn.o_proj": {
1725
+ "group_size": 64,
1726
+ "in_features": 5120,
1727
+ "linear_dtype": "bfloat16",
1728
+ "nbits": 3,
1729
+ "num_groups": 409600,
1730
+ "out_features": 5120,
1731
+ "packing": "int3_packed_u32",
1732
+ "quant_in_features": 5120,
1733
+ "runtime_backend": "torch",
1734
+ "scale_zero_dtype": "float16"
1735
+ },
1736
+ "model.layers.5.self_attn.qkv_proj": {
1737
+ "group_size": 64,
1738
+ "in_features": 5120,
1739
+ "linear_dtype": "bfloat16",
1740
+ "nbits": 3,
1741
+ "num_groups": 614400,
1742
+ "out_features": 7680,
1743
+ "packing": "int3_packed_u32",
1744
+ "quant_in_features": 5120,
1745
+ "runtime_backend": "torch",
1746
+ "scale_zero_dtype": "float16"
1747
+ },
1748
+ "model.layers.6.mlp.down_proj": {
1749
+ "group_size": 64,
1750
+ "in_features": 17920,
1751
+ "linear_dtype": "bfloat16",
1752
+ "nbits": 3,
1753
+ "num_groups": 1433600,
1754
+ "out_features": 5120,
1755
+ "packing": "int3_packed_u32",
1756
+ "quant_in_features": 17920,
1757
+ "runtime_backend": "torch",
1758
+ "scale_zero_dtype": "float16"
1759
+ },
1760
+ "model.layers.6.mlp.gate_up_proj": {
1761
+ "group_size": 64,
1762
+ "in_features": 5120,
1763
+ "linear_dtype": "bfloat16",
1764
+ "nbits": 3,
1765
+ "num_groups": 2867200,
1766
+ "out_features": 35840,
1767
+ "packing": "int3_packed_u32",
1768
+ "quant_in_features": 5120,
1769
+ "runtime_backend": "torch",
1770
+ "scale_zero_dtype": "float16"
1771
+ },
1772
+ "model.layers.6.self_attn.o_proj": {
1773
+ "group_size": 64,
1774
+ "in_features": 5120,
1775
+ "linear_dtype": "bfloat16",
1776
+ "nbits": 3,
1777
+ "num_groups": 409600,
1778
+ "out_features": 5120,
1779
+ "packing": "int3_packed_u32",
1780
+ "quant_in_features": 5120,
1781
+ "runtime_backend": "torch",
1782
+ "scale_zero_dtype": "float16"
1783
+ },
1784
+ "model.layers.6.self_attn.qkv_proj": {
1785
+ "group_size": 64,
1786
+ "in_features": 5120,
1787
+ "linear_dtype": "bfloat16",
1788
+ "nbits": 3,
1789
+ "num_groups": 614400,
1790
+ "out_features": 7680,
1791
+ "packing": "int3_packed_u32",
1792
+ "quant_in_features": 5120,
1793
+ "runtime_backend": "torch",
1794
+ "scale_zero_dtype": "float16"
1795
+ },
1796
+ "model.layers.7.mlp.down_proj": {
1797
+ "group_size": 64,
1798
+ "in_features": 17920,
1799
+ "linear_dtype": "bfloat16",
1800
+ "nbits": 3,
1801
+ "num_groups": 1433600,
1802
+ "out_features": 5120,
1803
+ "packing": "int3_packed_u32",
1804
+ "quant_in_features": 17920,
1805
+ "runtime_backend": "torch",
1806
+ "scale_zero_dtype": "float16"
1807
+ },
1808
+ "model.layers.7.mlp.gate_up_proj": {
1809
+ "group_size": 64,
1810
+ "in_features": 5120,
1811
+ "linear_dtype": "bfloat16",
1812
+ "nbits": 3,
1813
+ "num_groups": 2867200,
1814
+ "out_features": 35840,
1815
+ "packing": "int3_packed_u32",
1816
+ "quant_in_features": 5120,
1817
+ "runtime_backend": "torch",
1818
+ "scale_zero_dtype": "float16"
1819
+ },
1820
+ "model.layers.7.self_attn.o_proj": {
1821
+ "group_size": 64,
1822
+ "in_features": 5120,
1823
+ "linear_dtype": "bfloat16",
1824
+ "nbits": 3,
1825
+ "num_groups": 409600,
1826
+ "out_features": 5120,
1827
+ "packing": "int3_packed_u32",
1828
+ "quant_in_features": 5120,
1829
+ "runtime_backend": "torch",
1830
+ "scale_zero_dtype": "float16"
1831
+ },
1832
+ "model.layers.7.self_attn.qkv_proj": {
1833
+ "group_size": 64,
1834
+ "in_features": 5120,
1835
+ "linear_dtype": "bfloat16",
1836
+ "nbits": 3,
1837
+ "num_groups": 614400,
1838
+ "out_features": 7680,
1839
+ "packing": "int3_packed_u32",
1840
+ "quant_in_features": 5120,
1841
+ "runtime_backend": "torch",
1842
+ "scale_zero_dtype": "float16"
1843
+ },
1844
+ "model.layers.8.mlp.down_proj": {
1845
+ "group_size": 64,
1846
+ "in_features": 17920,
1847
+ "linear_dtype": "bfloat16",
1848
+ "nbits": 3,
1849
+ "num_groups": 1433600,
1850
+ "out_features": 5120,
1851
+ "packing": "int3_packed_u32",
1852
+ "quant_in_features": 17920,
1853
+ "runtime_backend": "torch",
1854
+ "scale_zero_dtype": "float16"
1855
+ },
1856
+ "model.layers.8.mlp.gate_up_proj": {
1857
+ "group_size": 64,
1858
+ "in_features": 5120,
1859
+ "linear_dtype": "bfloat16",
1860
+ "nbits": 3,
1861
+ "num_groups": 2867200,
1862
+ "out_features": 35840,
1863
+ "packing": "int3_packed_u32",
1864
+ "quant_in_features": 5120,
1865
+ "runtime_backend": "torch",
1866
+ "scale_zero_dtype": "float16"
1867
+ },
1868
+ "model.layers.8.self_attn.o_proj": {
1869
+ "group_size": 64,
1870
+ "in_features": 5120,
1871
+ "linear_dtype": "bfloat16",
1872
+ "nbits": 3,
1873
+ "num_groups": 409600,
1874
+ "out_features": 5120,
1875
+ "packing": "int3_packed_u32",
1876
+ "quant_in_features": 5120,
1877
+ "runtime_backend": "torch",
1878
+ "scale_zero_dtype": "float16"
1879
+ },
1880
+ "model.layers.8.self_attn.qkv_proj": {
1881
+ "group_size": 64,
1882
+ "in_features": 5120,
1883
+ "linear_dtype": "bfloat16",
1884
+ "nbits": 3,
1885
+ "num_groups": 614400,
1886
+ "out_features": 7680,
1887
+ "packing": "int3_packed_u32",
1888
+ "quant_in_features": 5120,
1889
+ "runtime_backend": "torch",
1890
+ "scale_zero_dtype": "float16"
1891
+ },
1892
+ "model.layers.9.mlp.down_proj": {
1893
+ "group_size": 64,
1894
+ "in_features": 17920,
1895
+ "linear_dtype": "bfloat16",
1896
+ "nbits": 3,
1897
+ "num_groups": 1433600,
1898
+ "out_features": 5120,
1899
+ "packing": "int3_packed_u32",
1900
+ "quant_in_features": 17920,
1901
+ "runtime_backend": "torch",
1902
+ "scale_zero_dtype": "float16"
1903
+ },
1904
+ "model.layers.9.mlp.gate_up_proj": {
1905
+ "group_size": 64,
1906
+ "in_features": 5120,
1907
+ "linear_dtype": "bfloat16",
1908
+ "nbits": 3,
1909
+ "num_groups": 2867200,
1910
+ "out_features": 35840,
1911
+ "packing": "int3_packed_u32",
1912
+ "quant_in_features": 5120,
1913
+ "runtime_backend": "torch",
1914
+ "scale_zero_dtype": "float16"
1915
+ },
1916
+ "model.layers.9.self_attn.o_proj": {
1917
+ "group_size": 64,
1918
+ "in_features": 5120,
1919
+ "linear_dtype": "bfloat16",
1920
+ "nbits": 3,
1921
+ "num_groups": 409600,
1922
+ "out_features": 5120,
1923
+ "packing": "int3_packed_u32",
1924
+ "quant_in_features": 5120,
1925
+ "runtime_backend": "torch",
1926
+ "scale_zero_dtype": "float16"
1927
+ },
1928
+ "model.layers.9.self_attn.qkv_proj": {
1929
+ "group_size": 64,
1930
+ "in_features": 5120,
1931
+ "linear_dtype": "bfloat16",
1932
+ "nbits": 3,
1933
+ "num_groups": 614400,
1934
+ "out_features": 7680,
1935
+ "packing": "int3_packed_u32",
1936
+ "quant_in_features": 5120,
1937
+ "runtime_backend": "torch",
1938
+ "scale_zero_dtype": "float16"
1939
+ }
1940
+ },
1941
+ "results": {
1942
+ "Method": "dashq",
1943
+ "Model": "microsoft/phi-4",
1944
+ "ModelSizeGB": 8.360666784,
1945
+ "OriginalSizeGB": 29.319042992,
1946
+ "PPL": 6.735445976257324,
1947
+ "Params": "{'bits': 3, 'group_size': 64, 'scale_zero_dtype': 'float16', 'n_samples': 128, 'moe_hessian_scope': 'shared', 'use_error_compensation': True, 'use_optimal_shrinkage': True, 'use_weighted_quantization': True, 'symmetric': False, 'low_memory_optimization': False}",
1948
+ "QuantTime": 1049.0759711265564,
1949
+ "arc_challenge": 55.20477815699659,
1950
+ "arc_easy": 73.9057239057239,
1951
+ "commonsense_qa": 76.33087633087634,
1952
+ "hellaswag": 80.46205935072695,
1953
+ "lambada_openai": 73.5493887056084,
1954
+ "openbookqa": 44.800000000000004,
1955
+ "piqa": 79.86942328618063,
1956
+ "truthfulqa_mc2": 57.92717446545296,
1957
+ "winogrande": 74.82241515390686,
1958
+ "zeroshot_avg": 68.5413154839414
1959
+ }
1960
+ }
dashq_kernel.py ADDED
@@ -0,0 +1,301 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ """Triton kernels for group-wise asymmetric integer weights.
2
+
3
+ Weights are stored K-major: W_q has shape (K // elements_per_word, N) with
4
+ values packed along K, and scale/zero have shape (K // group_size, N).
5
+
6
+ Three kernels are selected by the number of input rows M:
7
+
8
+ M == 1 GEMV
9
+ 2 <= M <= 32 fused dequantize-GEMM with split-K
10
+ M > 32 fused dequantize-GEMM, accumulator kept in registers
11
+
12
+ Supported bit widths are 1, 2, 3, 4 and 8. 3-bit is stored as a 2-bit plane
13
+ plus a 1-bit plane, so it occupies exactly 3 bits per weight.
14
+ """
15
+ from __future__ import annotations
16
+
17
+ from typing import Optional
18
+
19
+ import torch
20
+ import torch.nn as nn
21
+
22
+ try:
23
+ import triton
24
+ import triton.language as tl
25
+
26
+ TRITON_AVAILABLE = True
27
+ except Exception: # triton is optional
28
+ TRITON_AVAILABLE = False
29
+
30
+ SUPPORTED_NBITS = (1, 2, 3, 4, 8)
31
+
32
+ _GEMM_CONFIG_CACHE = {}
33
+
34
+
35
+ if TRITON_AVAILABLE:
36
+
37
+ @triton.jit
38
+ def _dashq_gemv_kernel(
39
+ x_ptr, w_ptr, lo_ptr, s_ptr, z_ptr, y_ptr,
40
+ N, K,
41
+ NBITS: tl.constexpr, EPS: tl.constexpr, GS: tl.constexpr,
42
+ BLOCK_N: tl.constexpr, BLOCK_K: tl.constexpr,
43
+ ):
44
+ pid_n = tl.program_id(0)
45
+ pid_k = tl.program_id(1) * 2
46
+ offs_n = pid_n * BLOCK_N + tl.arange(0, BLOCK_N)
47
+ offs_n = tl.max_contiguous(tl.multiple_of(offs_n, BLOCK_N), BLOCK_N)
48
+
49
+ # 2 * BLOCK_K == GS, so a program covers exactly one scale group.
50
+ k_m = (pid_k * BLOCK_K) // GS
51
+ scales = tl.load(s_ptr + k_m * N + offs_n).to(tl.float32)
52
+ zeros = tl.load(z_ptr + k_m * N + offs_n).to(tl.float32)
53
+
54
+ acc = tl.zeros((BLOCK_N,), dtype=tl.float32)
55
+ offs_k = pid_k * BLOCK_K + tl.arange(0, BLOCK_K)
56
+ for _ in tl.static_range(2):
57
+ a = tl.load(x_ptr + offs_k, eviction_policy="evict_last").to(tl.float32)
58
+ if NBITS == 3:
59
+ hw = tl.load(
60
+ w_ptr + (offs_k // 16)[:, None] * N + offs_n[None, :],
61
+ eviction_policy="evict_first",
62
+ )
63
+ lw = tl.load(
64
+ lo_ptr + (offs_k // 32)[:, None] * N + offs_n[None, :],
65
+ eviction_policy="evict_first",
66
+ )
67
+ q = (((hw >> (((offs_k % 16) * 2)[:, None])) & 3) << 1) | (
68
+ (lw >> ((offs_k % 32)[:, None])) & 1
69
+ )
70
+ else:
71
+ wv = tl.load(
72
+ w_ptr + (offs_k // EPS)[:, None] * N + offs_n[None, :],
73
+ eviction_policy="evict_first",
74
+ )
75
+ q = (wv >> (((offs_k % EPS) * NBITS)[:, None])) & ((1 << NBITS) - 1)
76
+ b = (q.to(tl.float32) - zeros[None, :]) * scales[None, :]
77
+ acc += tl.sum(a[:, None] * b, axis=0)
78
+ offs_k += BLOCK_K
79
+ tl.atomic_add(y_ptr + offs_n, acc, sem="relaxed")
80
+
81
+ @triton.jit
82
+ def _dashq_gemm_kernel(
83
+ x_ptr, w_ptr, lo_ptr, s_ptr, z_ptr, y_ptr,
84
+ M, N, K,
85
+ NBITS: tl.constexpr, EPS: tl.constexpr, GS: tl.constexpr,
86
+ BLOCK_M: tl.constexpr, BLOCK_N: tl.constexpr, BLOCK_K: tl.constexpr,
87
+ SPLIT_K: tl.constexpr, OUT_DTYPE: tl.constexpr,
88
+ ):
89
+ """y[M, N] = x[M, K] @ dequantize(w)[K, N]
90
+
91
+ BLOCK_K divides the group size, so a K-tile lies inside one group and the
92
+ scale/zero load is a single (1, BLOCK_N) vector.
93
+ """
94
+ pid_m = tl.program_id(0)
95
+ pid_n = tl.program_id(1)
96
+ pid_k = tl.program_id(2)
97
+
98
+ offs_m = pid_m * BLOCK_M + tl.arange(0, BLOCK_M)
99
+ offs_n = pid_n * BLOCK_N + tl.arange(0, BLOCK_N)
100
+ mask_m = offs_m < M
101
+ mask_n = offs_n < N
102
+
103
+ acc = tl.zeros((BLOCK_M, BLOCK_N), dtype=tl.float32)
104
+
105
+ for t in range(pid_k, tl.cdiv(K, BLOCK_K), SPLIT_K):
106
+ k0 = t * BLOCK_K
107
+ offs_k = k0 + tl.arange(0, BLOCK_K)
108
+ mask_k = offs_k < K
109
+
110
+ x = tl.load(x_ptr + offs_m[:, None] * K + offs_k[None, :],
111
+ mask=mask_m[:, None] & mask_k[None, :], other=0.0)
112
+
113
+ if NBITS == 3:
114
+ hw = tl.load(w_ptr + (offs_k // 16)[:, None] * N + offs_n[None, :],
115
+ mask=mask_k[:, None] & mask_n[None, :], other=0)
116
+ lw = tl.load(lo_ptr + (offs_k // 32)[:, None] * N + offs_n[None, :],
117
+ mask=mask_k[:, None] & mask_n[None, :], other=0)
118
+ q = (((hw >> (((offs_k % 16) * 2)[:, None])) & 3) << 1) | (
119
+ (lw >> ((offs_k % 32)[:, None])) & 1)
120
+ else:
121
+ wv = tl.load(w_ptr + (offs_k // EPS)[:, None] * N + offs_n[None, :],
122
+ mask=mask_k[:, None] & mask_n[None, :], other=0)
123
+ q = (wv >> (((offs_k % EPS) * NBITS)[:, None])) & ((1 << NBITS) - 1)
124
+
125
+ g = k0 // GS
126
+ s = tl.load(s_ptr + g * N + offs_n, mask=mask_n, other=0.0).to(tl.float32)
127
+ z = tl.load(z_ptr + g * N + offs_n, mask=mask_n, other=0.0).to(tl.float32)
128
+ w = (q.to(tl.float32) - z[None, :]) * s[None, :]
129
+
130
+ acc += tl.dot(x, w.to(x.dtype), out_dtype=tl.float32)
131
+
132
+ out = acc.to(OUT_DTYPE)
133
+ y_ptrs = y_ptr + offs_m[:, None] * N + offs_n[None, :]
134
+ if SPLIT_K == 1:
135
+ tl.store(y_ptrs, out, mask=mask_m[:, None] & mask_n[None, :])
136
+ else:
137
+ tl.atomic_add(y_ptrs, out, mask=mask_m[:, None] & mask_n[None, :], sem="relaxed")
138
+
139
+
140
+ def _pack_kmajor(q_kn: torch.Tensor, bits: int) -> torch.Tensor:
141
+ """(K, N) codes -> (K // eps, N) int32, value k in word k // eps."""
142
+ K, N = q_kn.shape
143
+ eps = 32 // bits
144
+ v = q_kn.to(torch.int32).reshape(K // eps, eps, N)
145
+ words = torch.zeros(K // eps, N, dtype=torch.int32, device=q_kn.device)
146
+ for j in range(eps):
147
+ words |= v[:, j, :] << (bits * j)
148
+ return words
149
+
150
+
151
+ def _unpack_kmajor(words: torch.Tensor, bits: int, K: int) -> torch.Tensor:
152
+ eps = 32 // bits
153
+ WK, N = words.shape
154
+ shifts = (torch.arange(eps, device=words.device, dtype=torch.int32) * bits).view(1, eps, 1)
155
+ q = (words.view(WK, 1, N) >> shifts) & ((1 << bits) - 1)
156
+ return q.reshape(WK * eps, N)[:K]
157
+
158
+
159
+ class TritonQuantLinear(nn.Module):
160
+ """Linear layer over group-wise asymmetric integer weights."""
161
+
162
+ def __init__(
163
+ self,
164
+ W_int: torch.Tensor, # (out_features, in_features) integer codes
165
+ scale: torch.Tensor, # (out_features, num_groups)
166
+ zero: torch.Tensor, # (out_features, num_groups)
167
+ nbits: int,
168
+ group_size: int,
169
+ bias: Optional[torch.Tensor] = None,
170
+ out_dtype: torch.dtype = torch.float16,
171
+ block_n: int = 128,
172
+ num_warps: int = 1,
173
+ ) -> None:
174
+ super().__init__()
175
+ if not TRITON_AVAILABLE:
176
+ raise RuntimeError("Triton is not available.")
177
+ if nbits not in SUPPORTED_NBITS:
178
+ raise ValueError(f"Unsupported nbits: {nbits}")
179
+
180
+ out_features, in_features = W_int.shape
181
+ if in_features % group_size != 0:
182
+ raise ValueError("in_features must be divisible by group_size.")
183
+ if group_size % 2 != 0:
184
+ raise ValueError("group_size must be even.")
185
+
186
+ self.out_features = out_features
187
+ self.in_features = in_features
188
+ self.nbits = int(nbits)
189
+ self.group_size = int(group_size)
190
+ self.out_dtype = out_dtype
191
+ self.block_n = int(block_n)
192
+ self.num_warps = int(num_warps)
193
+ self.block_k = self.group_size // 2
194
+
195
+ q_kn = W_int.t().contiguous().to(torch.uint8)
196
+ if nbits == 3:
197
+ self.register_buffer("W_q", _pack_kmajor(q_kn >> 1, 2))
198
+ self.register_buffer("W_lo", _pack_kmajor(q_kn & 1, 1))
199
+ self.eps = 16
200
+ else:
201
+ self.register_buffer("W_q", _pack_kmajor(q_kn, nbits))
202
+ self.register_buffer("W_lo", torch.zeros(1, dtype=torch.int32, device=q_kn.device))
203
+ self.eps = 32 // nbits
204
+ del q_kn
205
+
206
+ self.register_buffer("scale", scale.t().contiguous().to(out_dtype))
207
+ self.register_buffer("zero", zero.t().contiguous().to(out_dtype))
208
+ if bias is not None:
209
+ self.register_buffer("bias", bias.detach().clone().to(out_dtype))
210
+ else:
211
+ self.bias = None
212
+
213
+ # The GEMV accumulates with atomics, so it starts from the bias.
214
+ acc_init = torch.zeros(out_features, dtype=torch.float32, device=self.W_q.device)
215
+ if bias is not None:
216
+ acc_init.copy_(self.bias.float())
217
+ self.register_buffer("_acc_init", acc_init)
218
+ self.register_buffer("_acc", acc_init.clone())
219
+ self._grid = (
220
+ (out_features + self.block_n - 1) // self.block_n,
221
+ in_features // self.group_size,
222
+ )
223
+
224
+ def dequantize_weight(self, dtype: torch.dtype) -> torch.Tensor:
225
+ """Returns W^T with shape (in_features, out_features)."""
226
+ if self.nbits == 3:
227
+ q = (_unpack_kmajor(self.W_q, 2, self.in_features).to(torch.int32) << 1) | (
228
+ _unpack_kmajor(self.W_lo, 1, self.in_features).to(torch.int32)
229
+ )
230
+ else:
231
+ q = _unpack_kmajor(self.W_q, self.nbits, self.in_features)
232
+ s = self.scale.repeat_interleave(self.group_size, dim=0).to(dtype)
233
+ z = self.zero.repeat_interleave(self.group_size, dim=0).to(dtype)
234
+ return (q.to(dtype) - z) * s
235
+
236
+ # (BLOCK_M, BLOCK_N, SPLIT_K, num_warps, num_stages), largest tile first;
237
+ # the first entry that fits in shared memory is cached per shape.
238
+ _SMALL_M_CONFIGS = ((16, 64, 8, 4, 2), (16, 64, 4, 4, 1))
239
+ _LARGE_M_CONFIGS = ((128, 128, 1, 8, 4), (128, 128, 1, 8, 3),
240
+ (128, 64, 1, 4, 3), (64, 64, 1, 4, 2))
241
+
242
+ def _gemm(self, x2d: torch.Tensor) -> torch.Tensor:
243
+ M = x2d.shape[0]
244
+ N, K, gs = self.out_features, self.in_features, self.group_size
245
+ block_k = min(gs, 32)
246
+ configs = self._SMALL_M_CONFIGS if M <= 32 else self._LARGE_M_CONFIGS
247
+ cache_key = (M <= 32, N, K, gs, self.nbits)
248
+ if cache_key in _GEMM_CONFIG_CACHE:
249
+ configs = (_GEMM_CONFIG_CACHE[cache_key],)
250
+
251
+ tl_dtype = tl.float16 if self.out_dtype == torch.float16 else tl.bfloat16
252
+ last_err = None
253
+ for cfg in configs:
254
+ block_m, block_n, split_k, warps, stages = cfg
255
+ split_k = min(split_k, max(1, K // block_k))
256
+ alloc = torch.empty if split_k == 1 else torch.zeros
257
+ y = alloc(M, N, dtype=self.out_dtype, device=x2d.device)
258
+ grid = (triton.cdiv(M, block_m), triton.cdiv(N, block_n), split_k)
259
+ try:
260
+ _dashq_gemm_kernel[grid](
261
+ x2d, self.W_q, self.W_lo, self.scale, self.zero, y,
262
+ M, N, K,
263
+ self.nbits, self.eps, gs,
264
+ block_m, block_n, block_k, split_k, tl_dtype,
265
+ num_warps=warps, num_stages=stages,
266
+ )
267
+ except triton.runtime.errors.OutOfResources as exc:
268
+ last_err = exc
269
+ continue
270
+ _GEMM_CONFIG_CACHE[cache_key] = cfg
271
+ return y
272
+ raise last_err
273
+
274
+ def forward(self, x: torch.Tensor) -> torch.Tensor:
275
+ shape = x.shape
276
+ tokens = x.numel() // shape[-1]
277
+ if tokens == 1 and x.is_cuda:
278
+ self._acc.copy_(self._acc_init)
279
+ _dashq_gemv_kernel[self._grid](
280
+ x.reshape(-1), self.W_q, self.W_lo, self.scale, self.zero, self._acc,
281
+ self.out_features, self.in_features,
282
+ self.nbits, self.eps, self.group_size,
283
+ self.block_n, self.block_k,
284
+ num_warps=self.num_warps,
285
+ )
286
+ return self._acc.to(x.dtype).reshape(*shape[:-1], self.out_features)
287
+
288
+ x2d = x.reshape(tokens, -1)
289
+ if x.is_cuda and TRITON_AVAILABLE:
290
+ out = self._gemm(x2d)
291
+ else:
292
+ out = x2d @ self.dequantize_weight(x.dtype)
293
+ if self.bias is not None:
294
+ out = out + self.bias.to(out.dtype)
295
+ return out.to(x.dtype).reshape(*shape[:-1], self.out_features)
296
+
297
+ def extra_repr(self) -> str:
298
+ return (
299
+ f"in_features={self.in_features}, out_features={self.out_features}, "
300
+ f"nbits={self.nbits}, group_size={self.group_size}"
301
+ )
generation_config.json ADDED
@@ -0,0 +1,11 @@
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "_from_model_config": true,
3
+ "bos_token_id": 100257,
4
+ "eos_token_id": [
5
+ 100257,
6
+ 100265
7
+ ],
8
+ "pad_token_id": 100349,
9
+ "transformers_version": "5.15.0",
10
+ "use_cache": false
11
+ }
model-00001-of-00002.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:b5a59a6a7cb6e9926d08acc87ad76d17a3bbce7c28330944ef0386c4ba7ca8b0
3
+ size 4998820200
model-00002-of-00002.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:04b6470b75c9986bf8e38072c8193c71c22b0f809acc42b7ac5ee3d5e8b8e1d0
3
+ size 3361846584
model.safetensors.index.json ADDED
@@ -0,0 +1,571 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "metadata": {
3
+ "total_parameters": 1028019200,
4
+ "total_size": 8360601600
5
+ },
6
+ "weight_map": {
7
+ "lm_head.weight": "model-00002-of-00002.safetensors",
8
+ "model.embed_tokens.weight": "model-00001-of-00002.safetensors",
9
+ "model.layers.0.input_layernorm.weight": "model-00001-of-00002.safetensors",
10
+ "model.layers.0.mlp.down_proj.W_q_packed": "model-00001-of-00002.safetensors",
11
+ "model.layers.0.mlp.down_proj.scale": "model-00001-of-00002.safetensors",
12
+ "model.layers.0.mlp.down_proj.zero": "model-00001-of-00002.safetensors",
13
+ "model.layers.0.mlp.gate_up_proj.W_q_packed": "model-00001-of-00002.safetensors",
14
+ "model.layers.0.mlp.gate_up_proj.scale": "model-00001-of-00002.safetensors",
15
+ "model.layers.0.mlp.gate_up_proj.zero": "model-00001-of-00002.safetensors",
16
+ "model.layers.0.post_attention_layernorm.weight": "model-00001-of-00002.safetensors",
17
+ "model.layers.0.self_attn.o_proj.W_q_packed": "model-00001-of-00002.safetensors",
18
+ "model.layers.0.self_attn.o_proj.scale": "model-00001-of-00002.safetensors",
19
+ "model.layers.0.self_attn.o_proj.zero": "model-00001-of-00002.safetensors",
20
+ "model.layers.0.self_attn.qkv_proj.W_q_packed": "model-00001-of-00002.safetensors",
21
+ "model.layers.0.self_attn.qkv_proj.scale": "model-00001-of-00002.safetensors",
22
+ "model.layers.0.self_attn.qkv_proj.zero": "model-00001-of-00002.safetensors",
23
+ "model.layers.1.input_layernorm.weight": "model-00001-of-00002.safetensors",
24
+ "model.layers.1.mlp.down_proj.W_q_packed": "model-00001-of-00002.safetensors",
25
+ "model.layers.1.mlp.down_proj.scale": "model-00001-of-00002.safetensors",
26
+ "model.layers.1.mlp.down_proj.zero": "model-00001-of-00002.safetensors",
27
+ "model.layers.1.mlp.gate_up_proj.W_q_packed": "model-00001-of-00002.safetensors",
28
+ "model.layers.1.mlp.gate_up_proj.scale": "model-00001-of-00002.safetensors",
29
+ "model.layers.1.mlp.gate_up_proj.zero": "model-00001-of-00002.safetensors",
30
+ "model.layers.1.post_attention_layernorm.weight": "model-00001-of-00002.safetensors",
31
+ "model.layers.1.self_attn.o_proj.W_q_packed": "model-00001-of-00002.safetensors",
32
+ "model.layers.1.self_attn.o_proj.scale": "model-00001-of-00002.safetensors",
33
+ "model.layers.1.self_attn.o_proj.zero": "model-00001-of-00002.safetensors",
34
+ "model.layers.1.self_attn.qkv_proj.W_q_packed": "model-00001-of-00002.safetensors",
35
+ "model.layers.1.self_attn.qkv_proj.scale": "model-00001-of-00002.safetensors",
36
+ "model.layers.1.self_attn.qkv_proj.zero": "model-00001-of-00002.safetensors",
37
+ "model.layers.10.input_layernorm.weight": "model-00001-of-00002.safetensors",
38
+ "model.layers.10.mlp.down_proj.W_q_packed": "model-00001-of-00002.safetensors",
39
+ "model.layers.10.mlp.down_proj.scale": "model-00001-of-00002.safetensors",
40
+ "model.layers.10.mlp.down_proj.zero": "model-00001-of-00002.safetensors",
41
+ "model.layers.10.mlp.gate_up_proj.W_q_packed": "model-00001-of-00002.safetensors",
42
+ "model.layers.10.mlp.gate_up_proj.scale": "model-00001-of-00002.safetensors",
43
+ "model.layers.10.mlp.gate_up_proj.zero": "model-00001-of-00002.safetensors",
44
+ "model.layers.10.post_attention_layernorm.weight": "model-00001-of-00002.safetensors",
45
+ "model.layers.10.self_attn.o_proj.W_q_packed": "model-00001-of-00002.safetensors",
46
+ "model.layers.10.self_attn.o_proj.scale": "model-00001-of-00002.safetensors",
47
+ "model.layers.10.self_attn.o_proj.zero": "model-00001-of-00002.safetensors",
48
+ "model.layers.10.self_attn.qkv_proj.W_q_packed": "model-00001-of-00002.safetensors",
49
+ "model.layers.10.self_attn.qkv_proj.scale": "model-00001-of-00002.safetensors",
50
+ "model.layers.10.self_attn.qkv_proj.zero": "model-00001-of-00002.safetensors",
51
+ "model.layers.11.input_layernorm.weight": "model-00001-of-00002.safetensors",
52
+ "model.layers.11.mlp.down_proj.W_q_packed": "model-00001-of-00002.safetensors",
53
+ "model.layers.11.mlp.down_proj.scale": "model-00001-of-00002.safetensors",
54
+ "model.layers.11.mlp.down_proj.zero": "model-00001-of-00002.safetensors",
55
+ "model.layers.11.mlp.gate_up_proj.W_q_packed": "model-00001-of-00002.safetensors",
56
+ "model.layers.11.mlp.gate_up_proj.scale": "model-00001-of-00002.safetensors",
57
+ "model.layers.11.mlp.gate_up_proj.zero": "model-00001-of-00002.safetensors",
58
+ "model.layers.11.post_attention_layernorm.weight": "model-00001-of-00002.safetensors",
59
+ "model.layers.11.self_attn.o_proj.W_q_packed": "model-00001-of-00002.safetensors",
60
+ "model.layers.11.self_attn.o_proj.scale": "model-00001-of-00002.safetensors",
61
+ "model.layers.11.self_attn.o_proj.zero": "model-00001-of-00002.safetensors",
62
+ "model.layers.11.self_attn.qkv_proj.W_q_packed": "model-00001-of-00002.safetensors",
63
+ "model.layers.11.self_attn.qkv_proj.scale": "model-00001-of-00002.safetensors",
64
+ "model.layers.11.self_attn.qkv_proj.zero": "model-00001-of-00002.safetensors",
65
+ "model.layers.12.input_layernorm.weight": "model-00001-of-00002.safetensors",
66
+ "model.layers.12.mlp.down_proj.W_q_packed": "model-00001-of-00002.safetensors",
67
+ "model.layers.12.mlp.down_proj.scale": "model-00001-of-00002.safetensors",
68
+ "model.layers.12.mlp.down_proj.zero": "model-00001-of-00002.safetensors",
69
+ "model.layers.12.mlp.gate_up_proj.W_q_packed": "model-00001-of-00002.safetensors",
70
+ "model.layers.12.mlp.gate_up_proj.scale": "model-00001-of-00002.safetensors",
71
+ "model.layers.12.mlp.gate_up_proj.zero": "model-00001-of-00002.safetensors",
72
+ "model.layers.12.post_attention_layernorm.weight": "model-00001-of-00002.safetensors",
73
+ "model.layers.12.self_attn.o_proj.W_q_packed": "model-00001-of-00002.safetensors",
74
+ "model.layers.12.self_attn.o_proj.scale": "model-00001-of-00002.safetensors",
75
+ "model.layers.12.self_attn.o_proj.zero": "model-00001-of-00002.safetensors",
76
+ "model.layers.12.self_attn.qkv_proj.W_q_packed": "model-00001-of-00002.safetensors",
77
+ "model.layers.12.self_attn.qkv_proj.scale": "model-00001-of-00002.safetensors",
78
+ "model.layers.12.self_attn.qkv_proj.zero": "model-00001-of-00002.safetensors",
79
+ "model.layers.13.input_layernorm.weight": "model-00001-of-00002.safetensors",
80
+ "model.layers.13.mlp.down_proj.W_q_packed": "model-00001-of-00002.safetensors",
81
+ "model.layers.13.mlp.down_proj.scale": "model-00001-of-00002.safetensors",
82
+ "model.layers.13.mlp.down_proj.zero": "model-00001-of-00002.safetensors",
83
+ "model.layers.13.mlp.gate_up_proj.W_q_packed": "model-00001-of-00002.safetensors",
84
+ "model.layers.13.mlp.gate_up_proj.scale": "model-00001-of-00002.safetensors",
85
+ "model.layers.13.mlp.gate_up_proj.zero": "model-00001-of-00002.safetensors",
86
+ "model.layers.13.post_attention_layernorm.weight": "model-00001-of-00002.safetensors",
87
+ "model.layers.13.self_attn.o_proj.W_q_packed": "model-00001-of-00002.safetensors",
88
+ "model.layers.13.self_attn.o_proj.scale": "model-00001-of-00002.safetensors",
89
+ "model.layers.13.self_attn.o_proj.zero": "model-00001-of-00002.safetensors",
90
+ "model.layers.13.self_attn.qkv_proj.W_q_packed": "model-00001-of-00002.safetensors",
91
+ "model.layers.13.self_attn.qkv_proj.scale": "model-00001-of-00002.safetensors",
92
+ "model.layers.13.self_attn.qkv_proj.zero": "model-00001-of-00002.safetensors",
93
+ "model.layers.14.input_layernorm.weight": "model-00001-of-00002.safetensors",
94
+ "model.layers.14.mlp.down_proj.W_q_packed": "model-00001-of-00002.safetensors",
95
+ "model.layers.14.mlp.down_proj.scale": "model-00001-of-00002.safetensors",
96
+ "model.layers.14.mlp.down_proj.zero": "model-00001-of-00002.safetensors",
97
+ "model.layers.14.mlp.gate_up_proj.W_q_packed": "model-00001-of-00002.safetensors",
98
+ "model.layers.14.mlp.gate_up_proj.scale": "model-00001-of-00002.safetensors",
99
+ "model.layers.14.mlp.gate_up_proj.zero": "model-00001-of-00002.safetensors",
100
+ "model.layers.14.post_attention_layernorm.weight": "model-00001-of-00002.safetensors",
101
+ "model.layers.14.self_attn.o_proj.W_q_packed": "model-00001-of-00002.safetensors",
102
+ "model.layers.14.self_attn.o_proj.scale": "model-00001-of-00002.safetensors",
103
+ "model.layers.14.self_attn.o_proj.zero": "model-00001-of-00002.safetensors",
104
+ "model.layers.14.self_attn.qkv_proj.W_q_packed": "model-00001-of-00002.safetensors",
105
+ "model.layers.14.self_attn.qkv_proj.scale": "model-00001-of-00002.safetensors",
106
+ "model.layers.14.self_attn.qkv_proj.zero": "model-00001-of-00002.safetensors",
107
+ "model.layers.15.input_layernorm.weight": "model-00001-of-00002.safetensors",
108
+ "model.layers.15.mlp.down_proj.W_q_packed": "model-00001-of-00002.safetensors",
109
+ "model.layers.15.mlp.down_proj.scale": "model-00001-of-00002.safetensors",
110
+ "model.layers.15.mlp.down_proj.zero": "model-00001-of-00002.safetensors",
111
+ "model.layers.15.mlp.gate_up_proj.W_q_packed": "model-00001-of-00002.safetensors",
112
+ "model.layers.15.mlp.gate_up_proj.scale": "model-00001-of-00002.safetensors",
113
+ "model.layers.15.mlp.gate_up_proj.zero": "model-00001-of-00002.safetensors",
114
+ "model.layers.15.post_attention_layernorm.weight": "model-00001-of-00002.safetensors",
115
+ "model.layers.15.self_attn.o_proj.W_q_packed": "model-00001-of-00002.safetensors",
116
+ "model.layers.15.self_attn.o_proj.scale": "model-00001-of-00002.safetensors",
117
+ "model.layers.15.self_attn.o_proj.zero": "model-00001-of-00002.safetensors",
118
+ "model.layers.15.self_attn.qkv_proj.W_q_packed": "model-00001-of-00002.safetensors",
119
+ "model.layers.15.self_attn.qkv_proj.scale": "model-00001-of-00002.safetensors",
120
+ "model.layers.15.self_attn.qkv_proj.zero": "model-00001-of-00002.safetensors",
121
+ "model.layers.16.input_layernorm.weight": "model-00001-of-00002.safetensors",
122
+ "model.layers.16.mlp.down_proj.W_q_packed": "model-00001-of-00002.safetensors",
123
+ "model.layers.16.mlp.down_proj.scale": "model-00001-of-00002.safetensors",
124
+ "model.layers.16.mlp.down_proj.zero": "model-00001-of-00002.safetensors",
125
+ "model.layers.16.mlp.gate_up_proj.W_q_packed": "model-00001-of-00002.safetensors",
126
+ "model.layers.16.mlp.gate_up_proj.scale": "model-00001-of-00002.safetensors",
127
+ "model.layers.16.mlp.gate_up_proj.zero": "model-00001-of-00002.safetensors",
128
+ "model.layers.16.post_attention_layernorm.weight": "model-00001-of-00002.safetensors",
129
+ "model.layers.16.self_attn.o_proj.W_q_packed": "model-00001-of-00002.safetensors",
130
+ "model.layers.16.self_attn.o_proj.scale": "model-00001-of-00002.safetensors",
131
+ "model.layers.16.self_attn.o_proj.zero": "model-00001-of-00002.safetensors",
132
+ "model.layers.16.self_attn.qkv_proj.W_q_packed": "model-00001-of-00002.safetensors",
133
+ "model.layers.16.self_attn.qkv_proj.scale": "model-00001-of-00002.safetensors",
134
+ "model.layers.16.self_attn.qkv_proj.zero": "model-00001-of-00002.safetensors",
135
+ "model.layers.17.input_layernorm.weight": "model-00001-of-00002.safetensors",
136
+ "model.layers.17.mlp.down_proj.W_q_packed": "model-00001-of-00002.safetensors",
137
+ "model.layers.17.mlp.down_proj.scale": "model-00001-of-00002.safetensors",
138
+ "model.layers.17.mlp.down_proj.zero": "model-00001-of-00002.safetensors",
139
+ "model.layers.17.mlp.gate_up_proj.W_q_packed": "model-00001-of-00002.safetensors",
140
+ "model.layers.17.mlp.gate_up_proj.scale": "model-00001-of-00002.safetensors",
141
+ "model.layers.17.mlp.gate_up_proj.zero": "model-00001-of-00002.safetensors",
142
+ "model.layers.17.post_attention_layernorm.weight": "model-00001-of-00002.safetensors",
143
+ "model.layers.17.self_attn.o_proj.W_q_packed": "model-00001-of-00002.safetensors",
144
+ "model.layers.17.self_attn.o_proj.scale": "model-00001-of-00002.safetensors",
145
+ "model.layers.17.self_attn.o_proj.zero": "model-00001-of-00002.safetensors",
146
+ "model.layers.17.self_attn.qkv_proj.W_q_packed": "model-00001-of-00002.safetensors",
147
+ "model.layers.17.self_attn.qkv_proj.scale": "model-00001-of-00002.safetensors",
148
+ "model.layers.17.self_attn.qkv_proj.zero": "model-00001-of-00002.safetensors",
149
+ "model.layers.18.input_layernorm.weight": "model-00001-of-00002.safetensors",
150
+ "model.layers.18.mlp.down_proj.W_q_packed": "model-00001-of-00002.safetensors",
151
+ "model.layers.18.mlp.down_proj.scale": "model-00001-of-00002.safetensors",
152
+ "model.layers.18.mlp.down_proj.zero": "model-00001-of-00002.safetensors",
153
+ "model.layers.18.mlp.gate_up_proj.W_q_packed": "model-00001-of-00002.safetensors",
154
+ "model.layers.18.mlp.gate_up_proj.scale": "model-00001-of-00002.safetensors",
155
+ "model.layers.18.mlp.gate_up_proj.zero": "model-00001-of-00002.safetensors",
156
+ "model.layers.18.post_attention_layernorm.weight": "model-00001-of-00002.safetensors",
157
+ "model.layers.18.self_attn.o_proj.W_q_packed": "model-00001-of-00002.safetensors",
158
+ "model.layers.18.self_attn.o_proj.scale": "model-00001-of-00002.safetensors",
159
+ "model.layers.18.self_attn.o_proj.zero": "model-00001-of-00002.safetensors",
160
+ "model.layers.18.self_attn.qkv_proj.W_q_packed": "model-00001-of-00002.safetensors",
161
+ "model.layers.18.self_attn.qkv_proj.scale": "model-00001-of-00002.safetensors",
162
+ "model.layers.18.self_attn.qkv_proj.zero": "model-00001-of-00002.safetensors",
163
+ "model.layers.19.input_layernorm.weight": "model-00001-of-00002.safetensors",
164
+ "model.layers.19.mlp.down_proj.W_q_packed": "model-00001-of-00002.safetensors",
165
+ "model.layers.19.mlp.down_proj.scale": "model-00001-of-00002.safetensors",
166
+ "model.layers.19.mlp.down_proj.zero": "model-00001-of-00002.safetensors",
167
+ "model.layers.19.mlp.gate_up_proj.W_q_packed": "model-00001-of-00002.safetensors",
168
+ "model.layers.19.mlp.gate_up_proj.scale": "model-00001-of-00002.safetensors",
169
+ "model.layers.19.mlp.gate_up_proj.zero": "model-00001-of-00002.safetensors",
170
+ "model.layers.19.post_attention_layernorm.weight": "model-00001-of-00002.safetensors",
171
+ "model.layers.19.self_attn.o_proj.W_q_packed": "model-00001-of-00002.safetensors",
172
+ "model.layers.19.self_attn.o_proj.scale": "model-00001-of-00002.safetensors",
173
+ "model.layers.19.self_attn.o_proj.zero": "model-00001-of-00002.safetensors",
174
+ "model.layers.19.self_attn.qkv_proj.W_q_packed": "model-00001-of-00002.safetensors",
175
+ "model.layers.19.self_attn.qkv_proj.scale": "model-00001-of-00002.safetensors",
176
+ "model.layers.19.self_attn.qkv_proj.zero": "model-00001-of-00002.safetensors",
177
+ "model.layers.2.input_layernorm.weight": "model-00001-of-00002.safetensors",
178
+ "model.layers.2.mlp.down_proj.W_q_packed": "model-00001-of-00002.safetensors",
179
+ "model.layers.2.mlp.down_proj.scale": "model-00001-of-00002.safetensors",
180
+ "model.layers.2.mlp.down_proj.zero": "model-00001-of-00002.safetensors",
181
+ "model.layers.2.mlp.gate_up_proj.W_q_packed": "model-00001-of-00002.safetensors",
182
+ "model.layers.2.mlp.gate_up_proj.scale": "model-00001-of-00002.safetensors",
183
+ "model.layers.2.mlp.gate_up_proj.zero": "model-00001-of-00002.safetensors",
184
+ "model.layers.2.post_attention_layernorm.weight": "model-00001-of-00002.safetensors",
185
+ "model.layers.2.self_attn.o_proj.W_q_packed": "model-00001-of-00002.safetensors",
186
+ "model.layers.2.self_attn.o_proj.scale": "model-00001-of-00002.safetensors",
187
+ "model.layers.2.self_attn.o_proj.zero": "model-00001-of-00002.safetensors",
188
+ "model.layers.2.self_attn.qkv_proj.W_q_packed": "model-00001-of-00002.safetensors",
189
+ "model.layers.2.self_attn.qkv_proj.scale": "model-00001-of-00002.safetensors",
190
+ "model.layers.2.self_attn.qkv_proj.zero": "model-00001-of-00002.safetensors",
191
+ "model.layers.20.input_layernorm.weight": "model-00001-of-00002.safetensors",
192
+ "model.layers.20.mlp.down_proj.W_q_packed": "model-00001-of-00002.safetensors",
193
+ "model.layers.20.mlp.down_proj.scale": "model-00001-of-00002.safetensors",
194
+ "model.layers.20.mlp.down_proj.zero": "model-00001-of-00002.safetensors",
195
+ "model.layers.20.mlp.gate_up_proj.W_q_packed": "model-00001-of-00002.safetensors",
196
+ "model.layers.20.mlp.gate_up_proj.scale": "model-00001-of-00002.safetensors",
197
+ "model.layers.20.mlp.gate_up_proj.zero": "model-00001-of-00002.safetensors",
198
+ "model.layers.20.post_attention_layernorm.weight": "model-00001-of-00002.safetensors",
199
+ "model.layers.20.self_attn.o_proj.W_q_packed": "model-00001-of-00002.safetensors",
200
+ "model.layers.20.self_attn.o_proj.scale": "model-00001-of-00002.safetensors",
201
+ "model.layers.20.self_attn.o_proj.zero": "model-00001-of-00002.safetensors",
202
+ "model.layers.20.self_attn.qkv_proj.W_q_packed": "model-00001-of-00002.safetensors",
203
+ "model.layers.20.self_attn.qkv_proj.scale": "model-00001-of-00002.safetensors",
204
+ "model.layers.20.self_attn.qkv_proj.zero": "model-00001-of-00002.safetensors",
205
+ "model.layers.21.input_layernorm.weight": "model-00001-of-00002.safetensors",
206
+ "model.layers.21.mlp.down_proj.W_q_packed": "model-00001-of-00002.safetensors",
207
+ "model.layers.21.mlp.down_proj.scale": "model-00001-of-00002.safetensors",
208
+ "model.layers.21.mlp.down_proj.zero": "model-00001-of-00002.safetensors",
209
+ "model.layers.21.mlp.gate_up_proj.W_q_packed": "model-00001-of-00002.safetensors",
210
+ "model.layers.21.mlp.gate_up_proj.scale": "model-00001-of-00002.safetensors",
211
+ "model.layers.21.mlp.gate_up_proj.zero": "model-00001-of-00002.safetensors",
212
+ "model.layers.21.post_attention_layernorm.weight": "model-00001-of-00002.safetensors",
213
+ "model.layers.21.self_attn.o_proj.W_q_packed": "model-00001-of-00002.safetensors",
214
+ "model.layers.21.self_attn.o_proj.scale": "model-00001-of-00002.safetensors",
215
+ "model.layers.21.self_attn.o_proj.zero": "model-00001-of-00002.safetensors",
216
+ "model.layers.21.self_attn.qkv_proj.W_q_packed": "model-00001-of-00002.safetensors",
217
+ "model.layers.21.self_attn.qkv_proj.scale": "model-00001-of-00002.safetensors",
218
+ "model.layers.21.self_attn.qkv_proj.zero": "model-00001-of-00002.safetensors",
219
+ "model.layers.22.input_layernorm.weight": "model-00001-of-00002.safetensors",
220
+ "model.layers.22.mlp.down_proj.W_q_packed": "model-00001-of-00002.safetensors",
221
+ "model.layers.22.mlp.down_proj.scale": "model-00001-of-00002.safetensors",
222
+ "model.layers.22.mlp.down_proj.zero": "model-00001-of-00002.safetensors",
223
+ "model.layers.22.mlp.gate_up_proj.W_q_packed": "model-00001-of-00002.safetensors",
224
+ "model.layers.22.mlp.gate_up_proj.scale": "model-00001-of-00002.safetensors",
225
+ "model.layers.22.mlp.gate_up_proj.zero": "model-00001-of-00002.safetensors",
226
+ "model.layers.22.post_attention_layernorm.weight": "model-00001-of-00002.safetensors",
227
+ "model.layers.22.self_attn.o_proj.W_q_packed": "model-00001-of-00002.safetensors",
228
+ "model.layers.22.self_attn.o_proj.scale": "model-00001-of-00002.safetensors",
229
+ "model.layers.22.self_attn.o_proj.zero": "model-00001-of-00002.safetensors",
230
+ "model.layers.22.self_attn.qkv_proj.W_q_packed": "model-00001-of-00002.safetensors",
231
+ "model.layers.22.self_attn.qkv_proj.scale": "model-00001-of-00002.safetensors",
232
+ "model.layers.22.self_attn.qkv_proj.zero": "model-00001-of-00002.safetensors",
233
+ "model.layers.23.input_layernorm.weight": "model-00001-of-00002.safetensors",
234
+ "model.layers.23.mlp.down_proj.W_q_packed": "model-00001-of-00002.safetensors",
235
+ "model.layers.23.mlp.down_proj.scale": "model-00001-of-00002.safetensors",
236
+ "model.layers.23.mlp.down_proj.zero": "model-00001-of-00002.safetensors",
237
+ "model.layers.23.mlp.gate_up_proj.W_q_packed": "model-00001-of-00002.safetensors",
238
+ "model.layers.23.mlp.gate_up_proj.scale": "model-00001-of-00002.safetensors",
239
+ "model.layers.23.mlp.gate_up_proj.zero": "model-00001-of-00002.safetensors",
240
+ "model.layers.23.post_attention_layernorm.weight": "model-00001-of-00002.safetensors",
241
+ "model.layers.23.self_attn.o_proj.W_q_packed": "model-00001-of-00002.safetensors",
242
+ "model.layers.23.self_attn.o_proj.scale": "model-00001-of-00002.safetensors",
243
+ "model.layers.23.self_attn.o_proj.zero": "model-00001-of-00002.safetensors",
244
+ "model.layers.23.self_attn.qkv_proj.W_q_packed": "model-00001-of-00002.safetensors",
245
+ "model.layers.23.self_attn.qkv_proj.scale": "model-00001-of-00002.safetensors",
246
+ "model.layers.23.self_attn.qkv_proj.zero": "model-00001-of-00002.safetensors",
247
+ "model.layers.24.input_layernorm.weight": "model-00001-of-00002.safetensors",
248
+ "model.layers.24.mlp.down_proj.W_q_packed": "model-00001-of-00002.safetensors",
249
+ "model.layers.24.mlp.down_proj.scale": "model-00001-of-00002.safetensors",
250
+ "model.layers.24.mlp.down_proj.zero": "model-00001-of-00002.safetensors",
251
+ "model.layers.24.mlp.gate_up_proj.W_q_packed": "model-00001-of-00002.safetensors",
252
+ "model.layers.24.mlp.gate_up_proj.scale": "model-00001-of-00002.safetensors",
253
+ "model.layers.24.mlp.gate_up_proj.zero": "model-00001-of-00002.safetensors",
254
+ "model.layers.24.post_attention_layernorm.weight": "model-00001-of-00002.safetensors",
255
+ "model.layers.24.self_attn.o_proj.W_q_packed": "model-00001-of-00002.safetensors",
256
+ "model.layers.24.self_attn.o_proj.scale": "model-00001-of-00002.safetensors",
257
+ "model.layers.24.self_attn.o_proj.zero": "model-00001-of-00002.safetensors",
258
+ "model.layers.24.self_attn.qkv_proj.W_q_packed": "model-00001-of-00002.safetensors",
259
+ "model.layers.24.self_attn.qkv_proj.scale": "model-00001-of-00002.safetensors",
260
+ "model.layers.24.self_attn.qkv_proj.zero": "model-00001-of-00002.safetensors",
261
+ "model.layers.25.input_layernorm.weight": "model-00002-of-00002.safetensors",
262
+ "model.layers.25.mlp.down_proj.W_q_packed": "model-00002-of-00002.safetensors",
263
+ "model.layers.25.mlp.down_proj.scale": "model-00002-of-00002.safetensors",
264
+ "model.layers.25.mlp.down_proj.zero": "model-00002-of-00002.safetensors",
265
+ "model.layers.25.mlp.gate_up_proj.W_q_packed": "model-00002-of-00002.safetensors",
266
+ "model.layers.25.mlp.gate_up_proj.scale": "model-00002-of-00002.safetensors",
267
+ "model.layers.25.mlp.gate_up_proj.zero": "model-00002-of-00002.safetensors",
268
+ "model.layers.25.post_attention_layernorm.weight": "model-00002-of-00002.safetensors",
269
+ "model.layers.25.self_attn.o_proj.W_q_packed": "model-00001-of-00002.safetensors",
270
+ "model.layers.25.self_attn.o_proj.scale": "model-00001-of-00002.safetensors",
271
+ "model.layers.25.self_attn.o_proj.zero": "model-00001-of-00002.safetensors",
272
+ "model.layers.25.self_attn.qkv_proj.W_q_packed": "model-00001-of-00002.safetensors",
273
+ "model.layers.25.self_attn.qkv_proj.scale": "model-00001-of-00002.safetensors",
274
+ "model.layers.25.self_attn.qkv_proj.zero": "model-00001-of-00002.safetensors",
275
+ "model.layers.26.input_layernorm.weight": "model-00002-of-00002.safetensors",
276
+ "model.layers.26.mlp.down_proj.W_q_packed": "model-00002-of-00002.safetensors",
277
+ "model.layers.26.mlp.down_proj.scale": "model-00002-of-00002.safetensors",
278
+ "model.layers.26.mlp.down_proj.zero": "model-00002-of-00002.safetensors",
279
+ "model.layers.26.mlp.gate_up_proj.W_q_packed": "model-00002-of-00002.safetensors",
280
+ "model.layers.26.mlp.gate_up_proj.scale": "model-00002-of-00002.safetensors",
281
+ "model.layers.26.mlp.gate_up_proj.zero": "model-00002-of-00002.safetensors",
282
+ "model.layers.26.post_attention_layernorm.weight": "model-00002-of-00002.safetensors",
283
+ "model.layers.26.self_attn.o_proj.W_q_packed": "model-00002-of-00002.safetensors",
284
+ "model.layers.26.self_attn.o_proj.scale": "model-00002-of-00002.safetensors",
285
+ "model.layers.26.self_attn.o_proj.zero": "model-00002-of-00002.safetensors",
286
+ "model.layers.26.self_attn.qkv_proj.W_q_packed": "model-00002-of-00002.safetensors",
287
+ "model.layers.26.self_attn.qkv_proj.scale": "model-00002-of-00002.safetensors",
288
+ "model.layers.26.self_attn.qkv_proj.zero": "model-00002-of-00002.safetensors",
289
+ "model.layers.27.input_layernorm.weight": "model-00002-of-00002.safetensors",
290
+ "model.layers.27.mlp.down_proj.W_q_packed": "model-00002-of-00002.safetensors",
291
+ "model.layers.27.mlp.down_proj.scale": "model-00002-of-00002.safetensors",
292
+ "model.layers.27.mlp.down_proj.zero": "model-00002-of-00002.safetensors",
293
+ "model.layers.27.mlp.gate_up_proj.W_q_packed": "model-00002-of-00002.safetensors",
294
+ "model.layers.27.mlp.gate_up_proj.scale": "model-00002-of-00002.safetensors",
295
+ "model.layers.27.mlp.gate_up_proj.zero": "model-00002-of-00002.safetensors",
296
+ "model.layers.27.post_attention_layernorm.weight": "model-00002-of-00002.safetensors",
297
+ "model.layers.27.self_attn.o_proj.W_q_packed": "model-00002-of-00002.safetensors",
298
+ "model.layers.27.self_attn.o_proj.scale": "model-00002-of-00002.safetensors",
299
+ "model.layers.27.self_attn.o_proj.zero": "model-00002-of-00002.safetensors",
300
+ "model.layers.27.self_attn.qkv_proj.W_q_packed": "model-00002-of-00002.safetensors",
301
+ "model.layers.27.self_attn.qkv_proj.scale": "model-00002-of-00002.safetensors",
302
+ "model.layers.27.self_attn.qkv_proj.zero": "model-00002-of-00002.safetensors",
303
+ "model.layers.28.input_layernorm.weight": "model-00002-of-00002.safetensors",
304
+ "model.layers.28.mlp.down_proj.W_q_packed": "model-00002-of-00002.safetensors",
305
+ "model.layers.28.mlp.down_proj.scale": "model-00002-of-00002.safetensors",
306
+ "model.layers.28.mlp.down_proj.zero": "model-00002-of-00002.safetensors",
307
+ "model.layers.28.mlp.gate_up_proj.W_q_packed": "model-00002-of-00002.safetensors",
308
+ "model.layers.28.mlp.gate_up_proj.scale": "model-00002-of-00002.safetensors",
309
+ "model.layers.28.mlp.gate_up_proj.zero": "model-00002-of-00002.safetensors",
310
+ "model.layers.28.post_attention_layernorm.weight": "model-00002-of-00002.safetensors",
311
+ "model.layers.28.self_attn.o_proj.W_q_packed": "model-00002-of-00002.safetensors",
312
+ "model.layers.28.self_attn.o_proj.scale": "model-00002-of-00002.safetensors",
313
+ "model.layers.28.self_attn.o_proj.zero": "model-00002-of-00002.safetensors",
314
+ "model.layers.28.self_attn.qkv_proj.W_q_packed": "model-00002-of-00002.safetensors",
315
+ "model.layers.28.self_attn.qkv_proj.scale": "model-00002-of-00002.safetensors",
316
+ "model.layers.28.self_attn.qkv_proj.zero": "model-00002-of-00002.safetensors",
317
+ "model.layers.29.input_layernorm.weight": "model-00002-of-00002.safetensors",
318
+ "model.layers.29.mlp.down_proj.W_q_packed": "model-00002-of-00002.safetensors",
319
+ "model.layers.29.mlp.down_proj.scale": "model-00002-of-00002.safetensors",
320
+ "model.layers.29.mlp.down_proj.zero": "model-00002-of-00002.safetensors",
321
+ "model.layers.29.mlp.gate_up_proj.W_q_packed": "model-00002-of-00002.safetensors",
322
+ "model.layers.29.mlp.gate_up_proj.scale": "model-00002-of-00002.safetensors",
323
+ "model.layers.29.mlp.gate_up_proj.zero": "model-00002-of-00002.safetensors",
324
+ "model.layers.29.post_attention_layernorm.weight": "model-00002-of-00002.safetensors",
325
+ "model.layers.29.self_attn.o_proj.W_q_packed": "model-00002-of-00002.safetensors",
326
+ "model.layers.29.self_attn.o_proj.scale": "model-00002-of-00002.safetensors",
327
+ "model.layers.29.self_attn.o_proj.zero": "model-00002-of-00002.safetensors",
328
+ "model.layers.29.self_attn.qkv_proj.W_q_packed": "model-00002-of-00002.safetensors",
329
+ "model.layers.29.self_attn.qkv_proj.scale": "model-00002-of-00002.safetensors",
330
+ "model.layers.29.self_attn.qkv_proj.zero": "model-00002-of-00002.safetensors",
331
+ "model.layers.3.input_layernorm.weight": "model-00001-of-00002.safetensors",
332
+ "model.layers.3.mlp.down_proj.W_q_packed": "model-00001-of-00002.safetensors",
333
+ "model.layers.3.mlp.down_proj.scale": "model-00001-of-00002.safetensors",
334
+ "model.layers.3.mlp.down_proj.zero": "model-00001-of-00002.safetensors",
335
+ "model.layers.3.mlp.gate_up_proj.W_q_packed": "model-00001-of-00002.safetensors",
336
+ "model.layers.3.mlp.gate_up_proj.scale": "model-00001-of-00002.safetensors",
337
+ "model.layers.3.mlp.gate_up_proj.zero": "model-00001-of-00002.safetensors",
338
+ "model.layers.3.post_attention_layernorm.weight": "model-00001-of-00002.safetensors",
339
+ "model.layers.3.self_attn.o_proj.W_q_packed": "model-00001-of-00002.safetensors",
340
+ "model.layers.3.self_attn.o_proj.scale": "model-00001-of-00002.safetensors",
341
+ "model.layers.3.self_attn.o_proj.zero": "model-00001-of-00002.safetensors",
342
+ "model.layers.3.self_attn.qkv_proj.W_q_packed": "model-00001-of-00002.safetensors",
343
+ "model.layers.3.self_attn.qkv_proj.scale": "model-00001-of-00002.safetensors",
344
+ "model.layers.3.self_attn.qkv_proj.zero": "model-00001-of-00002.safetensors",
345
+ "model.layers.30.input_layernorm.weight": "model-00002-of-00002.safetensors",
346
+ "model.layers.30.mlp.down_proj.W_q_packed": "model-00002-of-00002.safetensors",
347
+ "model.layers.30.mlp.down_proj.scale": "model-00002-of-00002.safetensors",
348
+ "model.layers.30.mlp.down_proj.zero": "model-00002-of-00002.safetensors",
349
+ "model.layers.30.mlp.gate_up_proj.W_q_packed": "model-00002-of-00002.safetensors",
350
+ "model.layers.30.mlp.gate_up_proj.scale": "model-00002-of-00002.safetensors",
351
+ "model.layers.30.mlp.gate_up_proj.zero": "model-00002-of-00002.safetensors",
352
+ "model.layers.30.post_attention_layernorm.weight": "model-00002-of-00002.safetensors",
353
+ "model.layers.30.self_attn.o_proj.W_q_packed": "model-00002-of-00002.safetensors",
354
+ "model.layers.30.self_attn.o_proj.scale": "model-00002-of-00002.safetensors",
355
+ "model.layers.30.self_attn.o_proj.zero": "model-00002-of-00002.safetensors",
356
+ "model.layers.30.self_attn.qkv_proj.W_q_packed": "model-00002-of-00002.safetensors",
357
+ "model.layers.30.self_attn.qkv_proj.scale": "model-00002-of-00002.safetensors",
358
+ "model.layers.30.self_attn.qkv_proj.zero": "model-00002-of-00002.safetensors",
359
+ "model.layers.31.input_layernorm.weight": "model-00002-of-00002.safetensors",
360
+ "model.layers.31.mlp.down_proj.W_q_packed": "model-00002-of-00002.safetensors",
361
+ "model.layers.31.mlp.down_proj.scale": "model-00002-of-00002.safetensors",
362
+ "model.layers.31.mlp.down_proj.zero": "model-00002-of-00002.safetensors",
363
+ "model.layers.31.mlp.gate_up_proj.W_q_packed": "model-00002-of-00002.safetensors",
364
+ "model.layers.31.mlp.gate_up_proj.scale": "model-00002-of-00002.safetensors",
365
+ "model.layers.31.mlp.gate_up_proj.zero": "model-00002-of-00002.safetensors",
366
+ "model.layers.31.post_attention_layernorm.weight": "model-00002-of-00002.safetensors",
367
+ "model.layers.31.self_attn.o_proj.W_q_packed": "model-00002-of-00002.safetensors",
368
+ "model.layers.31.self_attn.o_proj.scale": "model-00002-of-00002.safetensors",
369
+ "model.layers.31.self_attn.o_proj.zero": "model-00002-of-00002.safetensors",
370
+ "model.layers.31.self_attn.qkv_proj.W_q_packed": "model-00002-of-00002.safetensors",
371
+ "model.layers.31.self_attn.qkv_proj.scale": "model-00002-of-00002.safetensors",
372
+ "model.layers.31.self_attn.qkv_proj.zero": "model-00002-of-00002.safetensors",
373
+ "model.layers.32.input_layernorm.weight": "model-00002-of-00002.safetensors",
374
+ "model.layers.32.mlp.down_proj.W_q_packed": "model-00002-of-00002.safetensors",
375
+ "model.layers.32.mlp.down_proj.scale": "model-00002-of-00002.safetensors",
376
+ "model.layers.32.mlp.down_proj.zero": "model-00002-of-00002.safetensors",
377
+ "model.layers.32.mlp.gate_up_proj.W_q_packed": "model-00002-of-00002.safetensors",
378
+ "model.layers.32.mlp.gate_up_proj.scale": "model-00002-of-00002.safetensors",
379
+ "model.layers.32.mlp.gate_up_proj.zero": "model-00002-of-00002.safetensors",
380
+ "model.layers.32.post_attention_layernorm.weight": "model-00002-of-00002.safetensors",
381
+ "model.layers.32.self_attn.o_proj.W_q_packed": "model-00002-of-00002.safetensors",
382
+ "model.layers.32.self_attn.o_proj.scale": "model-00002-of-00002.safetensors",
383
+ "model.layers.32.self_attn.o_proj.zero": "model-00002-of-00002.safetensors",
384
+ "model.layers.32.self_attn.qkv_proj.W_q_packed": "model-00002-of-00002.safetensors",
385
+ "model.layers.32.self_attn.qkv_proj.scale": "model-00002-of-00002.safetensors",
386
+ "model.layers.32.self_attn.qkv_proj.zero": "model-00002-of-00002.safetensors",
387
+ "model.layers.33.input_layernorm.weight": "model-00002-of-00002.safetensors",
388
+ "model.layers.33.mlp.down_proj.W_q_packed": "model-00002-of-00002.safetensors",
389
+ "model.layers.33.mlp.down_proj.scale": "model-00002-of-00002.safetensors",
390
+ "model.layers.33.mlp.down_proj.zero": "model-00002-of-00002.safetensors",
391
+ "model.layers.33.mlp.gate_up_proj.W_q_packed": "model-00002-of-00002.safetensors",
392
+ "model.layers.33.mlp.gate_up_proj.scale": "model-00002-of-00002.safetensors",
393
+ "model.layers.33.mlp.gate_up_proj.zero": "model-00002-of-00002.safetensors",
394
+ "model.layers.33.post_attention_layernorm.weight": "model-00002-of-00002.safetensors",
395
+ "model.layers.33.self_attn.o_proj.W_q_packed": "model-00002-of-00002.safetensors",
396
+ "model.layers.33.self_attn.o_proj.scale": "model-00002-of-00002.safetensors",
397
+ "model.layers.33.self_attn.o_proj.zero": "model-00002-of-00002.safetensors",
398
+ "model.layers.33.self_attn.qkv_proj.W_q_packed": "model-00002-of-00002.safetensors",
399
+ "model.layers.33.self_attn.qkv_proj.scale": "model-00002-of-00002.safetensors",
400
+ "model.layers.33.self_attn.qkv_proj.zero": "model-00002-of-00002.safetensors",
401
+ "model.layers.34.input_layernorm.weight": "model-00002-of-00002.safetensors",
402
+ "model.layers.34.mlp.down_proj.W_q_packed": "model-00002-of-00002.safetensors",
403
+ "model.layers.34.mlp.down_proj.scale": "model-00002-of-00002.safetensors",
404
+ "model.layers.34.mlp.down_proj.zero": "model-00002-of-00002.safetensors",
405
+ "model.layers.34.mlp.gate_up_proj.W_q_packed": "model-00002-of-00002.safetensors",
406
+ "model.layers.34.mlp.gate_up_proj.scale": "model-00002-of-00002.safetensors",
407
+ "model.layers.34.mlp.gate_up_proj.zero": "model-00002-of-00002.safetensors",
408
+ "model.layers.34.post_attention_layernorm.weight": "model-00002-of-00002.safetensors",
409
+ "model.layers.34.self_attn.o_proj.W_q_packed": "model-00002-of-00002.safetensors",
410
+ "model.layers.34.self_attn.o_proj.scale": "model-00002-of-00002.safetensors",
411
+ "model.layers.34.self_attn.o_proj.zero": "model-00002-of-00002.safetensors",
412
+ "model.layers.34.self_attn.qkv_proj.W_q_packed": "model-00002-of-00002.safetensors",
413
+ "model.layers.34.self_attn.qkv_proj.scale": "model-00002-of-00002.safetensors",
414
+ "model.layers.34.self_attn.qkv_proj.zero": "model-00002-of-00002.safetensors",
415
+ "model.layers.35.input_layernorm.weight": "model-00002-of-00002.safetensors",
416
+ "model.layers.35.mlp.down_proj.W_q_packed": "model-00002-of-00002.safetensors",
417
+ "model.layers.35.mlp.down_proj.scale": "model-00002-of-00002.safetensors",
418
+ "model.layers.35.mlp.down_proj.zero": "model-00002-of-00002.safetensors",
419
+ "model.layers.35.mlp.gate_up_proj.W_q_packed": "model-00002-of-00002.safetensors",
420
+ "model.layers.35.mlp.gate_up_proj.scale": "model-00002-of-00002.safetensors",
421
+ "model.layers.35.mlp.gate_up_proj.zero": "model-00002-of-00002.safetensors",
422
+ "model.layers.35.post_attention_layernorm.weight": "model-00002-of-00002.safetensors",
423
+ "model.layers.35.self_attn.o_proj.W_q_packed": "model-00002-of-00002.safetensors",
424
+ "model.layers.35.self_attn.o_proj.scale": "model-00002-of-00002.safetensors",
425
+ "model.layers.35.self_attn.o_proj.zero": "model-00002-of-00002.safetensors",
426
+ "model.layers.35.self_attn.qkv_proj.W_q_packed": "model-00002-of-00002.safetensors",
427
+ "model.layers.35.self_attn.qkv_proj.scale": "model-00002-of-00002.safetensors",
428
+ "model.layers.35.self_attn.qkv_proj.zero": "model-00002-of-00002.safetensors",
429
+ "model.layers.36.input_layernorm.weight": "model-00002-of-00002.safetensors",
430
+ "model.layers.36.mlp.down_proj.W_q_packed": "model-00002-of-00002.safetensors",
431
+ "model.layers.36.mlp.down_proj.scale": "model-00002-of-00002.safetensors",
432
+ "model.layers.36.mlp.down_proj.zero": "model-00002-of-00002.safetensors",
433
+ "model.layers.36.mlp.gate_up_proj.W_q_packed": "model-00002-of-00002.safetensors",
434
+ "model.layers.36.mlp.gate_up_proj.scale": "model-00002-of-00002.safetensors",
435
+ "model.layers.36.mlp.gate_up_proj.zero": "model-00002-of-00002.safetensors",
436
+ "model.layers.36.post_attention_layernorm.weight": "model-00002-of-00002.safetensors",
437
+ "model.layers.36.self_attn.o_proj.W_q_packed": "model-00002-of-00002.safetensors",
438
+ "model.layers.36.self_attn.o_proj.scale": "model-00002-of-00002.safetensors",
439
+ "model.layers.36.self_attn.o_proj.zero": "model-00002-of-00002.safetensors",
440
+ "model.layers.36.self_attn.qkv_proj.W_q_packed": "model-00002-of-00002.safetensors",
441
+ "model.layers.36.self_attn.qkv_proj.scale": "model-00002-of-00002.safetensors",
442
+ "model.layers.36.self_attn.qkv_proj.zero": "model-00002-of-00002.safetensors",
443
+ "model.layers.37.input_layernorm.weight": "model-00002-of-00002.safetensors",
444
+ "model.layers.37.mlp.down_proj.W_q_packed": "model-00002-of-00002.safetensors",
445
+ "model.layers.37.mlp.down_proj.scale": "model-00002-of-00002.safetensors",
446
+ "model.layers.37.mlp.down_proj.zero": "model-00002-of-00002.safetensors",
447
+ "model.layers.37.mlp.gate_up_proj.W_q_packed": "model-00002-of-00002.safetensors",
448
+ "model.layers.37.mlp.gate_up_proj.scale": "model-00002-of-00002.safetensors",
449
+ "model.layers.37.mlp.gate_up_proj.zero": "model-00002-of-00002.safetensors",
450
+ "model.layers.37.post_attention_layernorm.weight": "model-00002-of-00002.safetensors",
451
+ "model.layers.37.self_attn.o_proj.W_q_packed": "model-00002-of-00002.safetensors",
452
+ "model.layers.37.self_attn.o_proj.scale": "model-00002-of-00002.safetensors",
453
+ "model.layers.37.self_attn.o_proj.zero": "model-00002-of-00002.safetensors",
454
+ "model.layers.37.self_attn.qkv_proj.W_q_packed": "model-00002-of-00002.safetensors",
455
+ "model.layers.37.self_attn.qkv_proj.scale": "model-00002-of-00002.safetensors",
456
+ "model.layers.37.self_attn.qkv_proj.zero": "model-00002-of-00002.safetensors",
457
+ "model.layers.38.input_layernorm.weight": "model-00002-of-00002.safetensors",
458
+ "model.layers.38.mlp.down_proj.W_q_packed": "model-00002-of-00002.safetensors",
459
+ "model.layers.38.mlp.down_proj.scale": "model-00002-of-00002.safetensors",
460
+ "model.layers.38.mlp.down_proj.zero": "model-00002-of-00002.safetensors",
461
+ "model.layers.38.mlp.gate_up_proj.W_q_packed": "model-00002-of-00002.safetensors",
462
+ "model.layers.38.mlp.gate_up_proj.scale": "model-00002-of-00002.safetensors",
463
+ "model.layers.38.mlp.gate_up_proj.zero": "model-00002-of-00002.safetensors",
464
+ "model.layers.38.post_attention_layernorm.weight": "model-00002-of-00002.safetensors",
465
+ "model.layers.38.self_attn.o_proj.W_q_packed": "model-00002-of-00002.safetensors",
466
+ "model.layers.38.self_attn.o_proj.scale": "model-00002-of-00002.safetensors",
467
+ "model.layers.38.self_attn.o_proj.zero": "model-00002-of-00002.safetensors",
468
+ "model.layers.38.self_attn.qkv_proj.W_q_packed": "model-00002-of-00002.safetensors",
469
+ "model.layers.38.self_attn.qkv_proj.scale": "model-00002-of-00002.safetensors",
470
+ "model.layers.38.self_attn.qkv_proj.zero": "model-00002-of-00002.safetensors",
471
+ "model.layers.39.input_layernorm.weight": "model-00002-of-00002.safetensors",
472
+ "model.layers.39.mlp.down_proj.W_q_packed": "model-00002-of-00002.safetensors",
473
+ "model.layers.39.mlp.down_proj.scale": "model-00002-of-00002.safetensors",
474
+ "model.layers.39.mlp.down_proj.zero": "model-00002-of-00002.safetensors",
475
+ "model.layers.39.mlp.gate_up_proj.W_q_packed": "model-00002-of-00002.safetensors",
476
+ "model.layers.39.mlp.gate_up_proj.scale": "model-00002-of-00002.safetensors",
477
+ "model.layers.39.mlp.gate_up_proj.zero": "model-00002-of-00002.safetensors",
478
+ "model.layers.39.post_attention_layernorm.weight": "model-00002-of-00002.safetensors",
479
+ "model.layers.39.self_attn.o_proj.W_q_packed": "model-00002-of-00002.safetensors",
480
+ "model.layers.39.self_attn.o_proj.scale": "model-00002-of-00002.safetensors",
481
+ "model.layers.39.self_attn.o_proj.zero": "model-00002-of-00002.safetensors",
482
+ "model.layers.39.self_attn.qkv_proj.W_q_packed": "model-00002-of-00002.safetensors",
483
+ "model.layers.39.self_attn.qkv_proj.scale": "model-00002-of-00002.safetensors",
484
+ "model.layers.39.self_attn.qkv_proj.zero": "model-00002-of-00002.safetensors",
485
+ "model.layers.4.input_layernorm.weight": "model-00001-of-00002.safetensors",
486
+ "model.layers.4.mlp.down_proj.W_q_packed": "model-00001-of-00002.safetensors",
487
+ "model.layers.4.mlp.down_proj.scale": "model-00001-of-00002.safetensors",
488
+ "model.layers.4.mlp.down_proj.zero": "model-00001-of-00002.safetensors",
489
+ "model.layers.4.mlp.gate_up_proj.W_q_packed": "model-00001-of-00002.safetensors",
490
+ "model.layers.4.mlp.gate_up_proj.scale": "model-00001-of-00002.safetensors",
491
+ "model.layers.4.mlp.gate_up_proj.zero": "model-00001-of-00002.safetensors",
492
+ "model.layers.4.post_attention_layernorm.weight": "model-00001-of-00002.safetensors",
493
+ "model.layers.4.self_attn.o_proj.W_q_packed": "model-00001-of-00002.safetensors",
494
+ "model.layers.4.self_attn.o_proj.scale": "model-00001-of-00002.safetensors",
495
+ "model.layers.4.self_attn.o_proj.zero": "model-00001-of-00002.safetensors",
496
+ "model.layers.4.self_attn.qkv_proj.W_q_packed": "model-00001-of-00002.safetensors",
497
+ "model.layers.4.self_attn.qkv_proj.scale": "model-00001-of-00002.safetensors",
498
+ "model.layers.4.self_attn.qkv_proj.zero": "model-00001-of-00002.safetensors",
499
+ "model.layers.5.input_layernorm.weight": "model-00001-of-00002.safetensors",
500
+ "model.layers.5.mlp.down_proj.W_q_packed": "model-00001-of-00002.safetensors",
501
+ "model.layers.5.mlp.down_proj.scale": "model-00001-of-00002.safetensors",
502
+ "model.layers.5.mlp.down_proj.zero": "model-00001-of-00002.safetensors",
503
+ "model.layers.5.mlp.gate_up_proj.W_q_packed": "model-00001-of-00002.safetensors",
504
+ "model.layers.5.mlp.gate_up_proj.scale": "model-00001-of-00002.safetensors",
505
+ "model.layers.5.mlp.gate_up_proj.zero": "model-00001-of-00002.safetensors",
506
+ "model.layers.5.post_attention_layernorm.weight": "model-00001-of-00002.safetensors",
507
+ "model.layers.5.self_attn.o_proj.W_q_packed": "model-00001-of-00002.safetensors",
508
+ "model.layers.5.self_attn.o_proj.scale": "model-00001-of-00002.safetensors",
509
+ "model.layers.5.self_attn.o_proj.zero": "model-00001-of-00002.safetensors",
510
+ "model.layers.5.self_attn.qkv_proj.W_q_packed": "model-00001-of-00002.safetensors",
511
+ "model.layers.5.self_attn.qkv_proj.scale": "model-00001-of-00002.safetensors",
512
+ "model.layers.5.self_attn.qkv_proj.zero": "model-00001-of-00002.safetensors",
513
+ "model.layers.6.input_layernorm.weight": "model-00001-of-00002.safetensors",
514
+ "model.layers.6.mlp.down_proj.W_q_packed": "model-00001-of-00002.safetensors",
515
+ "model.layers.6.mlp.down_proj.scale": "model-00001-of-00002.safetensors",
516
+ "model.layers.6.mlp.down_proj.zero": "model-00001-of-00002.safetensors",
517
+ "model.layers.6.mlp.gate_up_proj.W_q_packed": "model-00001-of-00002.safetensors",
518
+ "model.layers.6.mlp.gate_up_proj.scale": "model-00001-of-00002.safetensors",
519
+ "model.layers.6.mlp.gate_up_proj.zero": "model-00001-of-00002.safetensors",
520
+ "model.layers.6.post_attention_layernorm.weight": "model-00001-of-00002.safetensors",
521
+ "model.layers.6.self_attn.o_proj.W_q_packed": "model-00001-of-00002.safetensors",
522
+ "model.layers.6.self_attn.o_proj.scale": "model-00001-of-00002.safetensors",
523
+ "model.layers.6.self_attn.o_proj.zero": "model-00001-of-00002.safetensors",
524
+ "model.layers.6.self_attn.qkv_proj.W_q_packed": "model-00001-of-00002.safetensors",
525
+ "model.layers.6.self_attn.qkv_proj.scale": "model-00001-of-00002.safetensors",
526
+ "model.layers.6.self_attn.qkv_proj.zero": "model-00001-of-00002.safetensors",
527
+ "model.layers.7.input_layernorm.weight": "model-00001-of-00002.safetensors",
528
+ "model.layers.7.mlp.down_proj.W_q_packed": "model-00001-of-00002.safetensors",
529
+ "model.layers.7.mlp.down_proj.scale": "model-00001-of-00002.safetensors",
530
+ "model.layers.7.mlp.down_proj.zero": "model-00001-of-00002.safetensors",
531
+ "model.layers.7.mlp.gate_up_proj.W_q_packed": "model-00001-of-00002.safetensors",
532
+ "model.layers.7.mlp.gate_up_proj.scale": "model-00001-of-00002.safetensors",
533
+ "model.layers.7.mlp.gate_up_proj.zero": "model-00001-of-00002.safetensors",
534
+ "model.layers.7.post_attention_layernorm.weight": "model-00001-of-00002.safetensors",
535
+ "model.layers.7.self_attn.o_proj.W_q_packed": "model-00001-of-00002.safetensors",
536
+ "model.layers.7.self_attn.o_proj.scale": "model-00001-of-00002.safetensors",
537
+ "model.layers.7.self_attn.o_proj.zero": "model-00001-of-00002.safetensors",
538
+ "model.layers.7.self_attn.qkv_proj.W_q_packed": "model-00001-of-00002.safetensors",
539
+ "model.layers.7.self_attn.qkv_proj.scale": "model-00001-of-00002.safetensors",
540
+ "model.layers.7.self_attn.qkv_proj.zero": "model-00001-of-00002.safetensors",
541
+ "model.layers.8.input_layernorm.weight": "model-00001-of-00002.safetensors",
542
+ "model.layers.8.mlp.down_proj.W_q_packed": "model-00001-of-00002.safetensors",
543
+ "model.layers.8.mlp.down_proj.scale": "model-00001-of-00002.safetensors",
544
+ "model.layers.8.mlp.down_proj.zero": "model-00001-of-00002.safetensors",
545
+ "model.layers.8.mlp.gate_up_proj.W_q_packed": "model-00001-of-00002.safetensors",
546
+ "model.layers.8.mlp.gate_up_proj.scale": "model-00001-of-00002.safetensors",
547
+ "model.layers.8.mlp.gate_up_proj.zero": "model-00001-of-00002.safetensors",
548
+ "model.layers.8.post_attention_layernorm.weight": "model-00001-of-00002.safetensors",
549
+ "model.layers.8.self_attn.o_proj.W_q_packed": "model-00001-of-00002.safetensors",
550
+ "model.layers.8.self_attn.o_proj.scale": "model-00001-of-00002.safetensors",
551
+ "model.layers.8.self_attn.o_proj.zero": "model-00001-of-00002.safetensors",
552
+ "model.layers.8.self_attn.qkv_proj.W_q_packed": "model-00001-of-00002.safetensors",
553
+ "model.layers.8.self_attn.qkv_proj.scale": "model-00001-of-00002.safetensors",
554
+ "model.layers.8.self_attn.qkv_proj.zero": "model-00001-of-00002.safetensors",
555
+ "model.layers.9.input_layernorm.weight": "model-00001-of-00002.safetensors",
556
+ "model.layers.9.mlp.down_proj.W_q_packed": "model-00001-of-00002.safetensors",
557
+ "model.layers.9.mlp.down_proj.scale": "model-00001-of-00002.safetensors",
558
+ "model.layers.9.mlp.down_proj.zero": "model-00001-of-00002.safetensors",
559
+ "model.layers.9.mlp.gate_up_proj.W_q_packed": "model-00001-of-00002.safetensors",
560
+ "model.layers.9.mlp.gate_up_proj.scale": "model-00001-of-00002.safetensors",
561
+ "model.layers.9.mlp.gate_up_proj.zero": "model-00001-of-00002.safetensors",
562
+ "model.layers.9.post_attention_layernorm.weight": "model-00001-of-00002.safetensors",
563
+ "model.layers.9.self_attn.o_proj.W_q_packed": "model-00001-of-00002.safetensors",
564
+ "model.layers.9.self_attn.o_proj.scale": "model-00001-of-00002.safetensors",
565
+ "model.layers.9.self_attn.o_proj.zero": "model-00001-of-00002.safetensors",
566
+ "model.layers.9.self_attn.qkv_proj.W_q_packed": "model-00001-of-00002.safetensors",
567
+ "model.layers.9.self_attn.qkv_proj.scale": "model-00001-of-00002.safetensors",
568
+ "model.layers.9.self_attn.qkv_proj.zero": "model-00001-of-00002.safetensors",
569
+ "model.norm.weight": "model-00002-of-00002.safetensors"
570
+ }
571
+ }
modeling_dashq.py ADDED
@@ -0,0 +1,227 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ """Inference code for this DASH-Q checkpoint.
2
+
3
+ Generated by export_hf_repo.py -- do not edit by hand.
4
+
5
+ Weights are group-wise asymmetric integers packed into int32 words; the layout of
6
+ each quantized layer is described by `dashq_config.json`. At load time the layers
7
+ are converted to the format used by the Triton kernels in `dashq_kernel.py`, with
8
+ a PyTorch dequantize-and-matmul fallback when Triton is unavailable.
9
+ """
10
+ from __future__ import annotations
11
+
12
+ import json
13
+ import os
14
+ from typing import Any, Dict, Optional
15
+
16
+ import torch
17
+ import torch.nn as nn
18
+ import torch.nn.functional as F
19
+
20
+ from transformers import AutoConfig, Phi3ForCausalLM
21
+
22
+ try:
23
+ from .dashq_kernel import TRITON_AVAILABLE, SUPPORTED_NBITS, TritonQuantLinear
24
+ except ImportError: # loaded as a flat module by trust_remote_code
25
+ from dashq_kernel import TRITON_AVAILABLE, SUPPORTED_NBITS, TritonQuantLinear
26
+
27
+ DASHQ_CONFIG_FILE = "dashq_config.json"
28
+
29
+
30
+ def _unpack_int_values(packed: torch.Tensor, nbits: int, numel: int) -> torch.Tensor:
31
+ values_per_word = max(1, 32 // nbits)
32
+ mask = (1 << nbits) - 1
33
+ shifts = torch.arange(values_per_word, device=packed.device, dtype=torch.int32) * nbits
34
+ out = (packed.view(-1, 1) >> shifts.view(1, -1)) & mask
35
+ return out.reshape(-1)[:numel]
36
+
37
+
38
+ class DashQPackedLinear(nn.Module):
39
+ """Checkpoint buffers for one quantized layer."""
40
+
41
+ def __init__(self, in_features: int, out_features: int, nbits: int, group_size: int,
42
+ bias: bool, dtype: torch.dtype, quant_in_features: Optional[int] = None) -> None:
43
+ super().__init__()
44
+ self.in_features = int(in_features)
45
+ self.quant_in_features = int(quant_in_features or in_features)
46
+ self.out_features = int(out_features)
47
+ self.nbits = int(nbits)
48
+ self.group_size = int(group_size)
49
+ self.linear_dtype = dtype
50
+ self.numel = self.out_features * self.quant_in_features
51
+ self.num_groups = self.numel // self.group_size
52
+ values_per_word = max(1, 32 // self.nbits)
53
+ n_words = (self.numel + values_per_word - 1) // values_per_word
54
+
55
+ self.register_buffer("W_q_packed", torch.zeros(n_words, dtype=torch.int32))
56
+ self.register_buffer("scale", torch.zeros(self.num_groups, 1, dtype=torch.float16))
57
+ self.register_buffer("zero", torch.zeros(self.num_groups, 1, dtype=torch.float16))
58
+ if bias:
59
+ self.bias = nn.Parameter(torch.zeros(self.out_features, dtype=dtype), requires_grad=False)
60
+ else:
61
+ self.register_parameter("bias", None)
62
+ self.kernel: Optional[nn.Module] = None
63
+
64
+ def dequantize_weight(self, dtype: torch.dtype) -> torch.Tensor:
65
+ W_int = _unpack_int_values(self.W_q_packed, self.nbits, self.numel)
66
+ W_int = W_int.view(self.num_groups, self.group_size).to(dtype)
67
+ W = (W_int - self.zero.to(dtype)) * self.scale.to(dtype)
68
+ return W.view(self.out_features, self.quant_in_features)
69
+
70
+ @torch.no_grad()
71
+ def build_kernel(self) -> bool:
72
+ if self.kernel is not None:
73
+ return True
74
+ if not TRITON_AVAILABLE or self.nbits not in SUPPORTED_NBITS:
75
+ return False
76
+ if self.quant_in_features % self.group_size or self.group_size % 2:
77
+ return False
78
+ if self.W_q_packed is None or not self.W_q_packed.is_cuda:
79
+ return False
80
+ W_int = _unpack_int_values(self.W_q_packed, self.nbits, self.numel)
81
+ W_int = W_int.view(self.out_features, self.quant_in_features)
82
+ ng = self.quant_in_features // self.group_size
83
+ self.kernel = TritonQuantLinear(
84
+ W_int,
85
+ self.scale.view(self.out_features, ng),
86
+ self.zero.view(self.out_features, ng),
87
+ self.nbits,
88
+ self.group_size,
89
+ bias=self.bias.data if self.bias is not None else None,
90
+ out_dtype=self.linear_dtype,
91
+ )
92
+ del W_int
93
+ self._buffers["W_q_packed"] = None
94
+ self._buffers["scale"] = None
95
+ self._buffers["zero"] = None
96
+ return True
97
+
98
+ def forward(self, x: torch.Tensor) -> torch.Tensor:
99
+ if self.kernel is not None:
100
+ return self.kernel(x)
101
+ weight = self.dequantize_weight(x.dtype)
102
+ bias = self.bias.to(x.dtype) if self.bias is not None else None
103
+ return F.linear(x, weight, bias)
104
+
105
+ def extra_repr(self) -> str:
106
+ return (f"in_features={self.in_features}, out_features={self.out_features}, "
107
+ f"nbits={self.nbits}, group_size={self.group_size}")
108
+
109
+
110
+ def _set_module(root: nn.Module, name: str, new_module: nn.Module) -> None:
111
+ parts = name.split(".")
112
+ parent = root
113
+ for part in parts[:-1]:
114
+ parent = getattr(parent, part)
115
+ setattr(parent, parts[-1], new_module)
116
+
117
+
118
+ def _get_module(root: nn.Module, name: str) -> Optional[nn.Module]:
119
+ obj = root
120
+ for part in name.split("."):
121
+ if not hasattr(obj, part):
122
+ return None
123
+ obj = getattr(obj, part)
124
+ return obj
125
+
126
+
127
+ _DTYPES = {"float16": torch.float16, "bfloat16": torch.bfloat16, "float32": torch.float32}
128
+
129
+
130
+ def _load_dashq_spec(model_id_or_path, **kwargs) -> Dict[str, Any]:
131
+ """Read dashq_config.json from a local dir or the Hub."""
132
+ path = None
133
+ if model_id_or_path is not None:
134
+ local = os.path.join(str(model_id_or_path), DASHQ_CONFIG_FILE)
135
+ if os.path.isfile(local):
136
+ path = local
137
+ if path is None and model_id_or_path is not None:
138
+ try:
139
+ from huggingface_hub import hf_hub_download
140
+
141
+ path = hf_hub_download(
142
+ repo_id=str(model_id_or_path),
143
+ filename=DASHQ_CONFIG_FILE,
144
+ revision=kwargs.get("revision"),
145
+ token=kwargs.get("token"),
146
+ cache_dir=kwargs.get("cache_dir"),
147
+ )
148
+ except Exception:
149
+ return {}
150
+ if path is None:
151
+ return {}
152
+ with open(path, encoding="utf-8") as f:
153
+ return json.load(f)
154
+
155
+
156
+ def _swap_quantized_modules(model: nn.Module, modules: Dict[str, Any]) -> int:
157
+ count = 0
158
+ for name, meta in modules.items():
159
+ target = _get_module(model, name)
160
+ if target is None or isinstance(target, DashQPackedLinear):
161
+ continue
162
+ module = DashQPackedLinear(
163
+ in_features=meta["in_features"],
164
+ out_features=meta["out_features"],
165
+ nbits=meta["nbits"],
166
+ group_size=meta["group_size"],
167
+ bias=getattr(target, "bias", None) is not None,
168
+ dtype=_DTYPES.get(meta.get("linear_dtype", "float16"), torch.float16),
169
+ quant_in_features=meta.get("quant_in_features"),
170
+ )
171
+ _set_module(model, name, module)
172
+ count += 1
173
+ return count
174
+
175
+
176
+ class DashQPhi3ForCausalLM(Phi3ForCausalLM):
177
+ """Phi3ForCausalLM whose linear layers hold DASH-Q packed quantized weights."""
178
+
179
+ def __init__(self, config):
180
+ super().__init__(config)
181
+ modules = (getattr(config, "dashq_modules", None) or {})
182
+ if modules:
183
+ _swap_quantized_modules(self, modules)
184
+
185
+ @classmethod
186
+ def from_pretrained(cls, pretrained_model_name_or_path=None, *args, **kwargs):
187
+ config = kwargs.pop("config", None)
188
+ if config is None and pretrained_model_name_or_path is not None:
189
+ config = AutoConfig.from_pretrained(
190
+ pretrained_model_name_or_path,
191
+ trust_remote_code=True,
192
+ revision=kwargs.get("revision"),
193
+ token=kwargs.get("token"),
194
+ cache_dir=kwargs.get("cache_dir"),
195
+ )
196
+ if config is not None and not getattr(config, "dashq_modules", None):
197
+ spec = _load_dashq_spec(pretrained_model_name_or_path, **kwargs)
198
+ config.dashq_modules = spec.get("quantized_modules", {})
199
+ model = super().from_pretrained(pretrained_model_name_or_path, *args, config=config, **kwargs)
200
+ model.build_dashq_kernels()
201
+ return model
202
+
203
+ def build_dashq_kernels(self, verbose: bool = True) -> "DashQPhi3ForCausalLM":
204
+ """Move the packed buffers to the Triton kernel layout (no-op off CUDA)."""
205
+ total = built = 0
206
+ for module in self.modules():
207
+ if isinstance(module, DashQPackedLinear):
208
+ total += 1
209
+ built += int(module.build_kernel())
210
+ if verbose and total:
211
+ if built:
212
+ print(f">> DASH-Q: {built}/{total} linear layers using the Triton decode kernel.")
213
+ else:
214
+ print(f">> DASH-Q: {total} quantized layers using the PyTorch fallback path.")
215
+ return self
216
+
217
+ def save_pretrained(self, *args, **kwargs):
218
+ released = any(
219
+ isinstance(m, DashQPackedLinear) and m.kernel is not None for m in self.modules()
220
+ )
221
+ if released:
222
+ raise RuntimeError(
223
+ "This model has been converted to the DASH-Q Triton kernel, so the packed "
224
+ "buffers are no longer materialized and saving would produce an incomplete "
225
+ "checkpoint. Reload with build_dashq_kernels() skipped if you need to re-save."
226
+ )
227
+ return super().save_pretrained(*args, **kwargs)
tokenizer.json ADDED
The diff for this file is too large to render. See raw diff
 
tokenizer_config.json ADDED
@@ -0,0 +1,12 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "add_prefix_space": false,
3
+ "backend": "tokenizers",
4
+ "bos_token": "<|endoftext|>",
5
+ "clean_up_tokenization_spaces": false,
6
+ "eos_token": "<|im_end|>",
7
+ "is_local": false,
8
+ "local_files_only": false,
9
+ "model_max_length": 16384,
10
+ "pad_token": "<|dummy_85|>",
11
+ "tokenizer_class": "TokenizersBackend"
12
+ }