furkanyllmz commited on
Commit
462f556
·
verified ·
1 Parent(s): fdf6fb1

Upload folder using huggingface_hub

Browse files
.gitattributes CHANGED
@@ -33,3 +33,5 @@ saved_model/**/* filter=lfs diff=lfs merge=lfs -text
33
  *.zip filter=lfs diff=lfs merge=lfs -text
34
  *.zst filter=lfs diff=lfs merge=lfs -text
35
  *tfevents* filter=lfs diff=lfs merge=lfs -text
 
 
 
33
  *.zip filter=lfs diff=lfs merge=lfs -text
34
  *.zst filter=lfs diff=lfs merge=lfs -text
35
  *tfevents* filter=lfs diff=lfs merge=lfs -text
36
+ aitriyaj-banner.png filter=lfs diff=lfs merge=lfs -text
37
+ tokenizer.json filter=lfs diff=lfs merge=lfs -text
README.md CHANGED
@@ -1,3 +1,384 @@
1
- ---
2
- license: gemma
3
- ---
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ language:
3
+ - tr
4
+ license: gemma
5
+ base_model: mlx-community/gemma-4-26B-A4B-it-OptiQ-4bit
6
+ tags:
7
+ - medical
8
+ - triage
9
+ - turkish
10
+ - lora
11
+ - mlx
12
+ - emergency-medicine
13
+ pipeline_tag: text-generation
14
+ ---
15
+
16
+ # Gemma 4 26B A4B — Turkish Emergency Triage
17
+
18
+ ![AI-Triyaj](aitriyaj-banner.png)
19
+
20
+ Türkiye acil servislerine özel, Türkçe triyaj kararı veren konuşmacı dil modeli.
21
+
22
+ Küresel triyaj sistemleri (CTAS, ESI) genel nüfus ve geniş klinik senaryolar için tasarlanmış olup uygulamada uzun değerlendirme süreçleri gerektirmektedir. Bu model, Türkiye acil servis pratiğine uygun olarak; hızlı, odaklı ve spesifik sorularla hastayı yönlendiren, gereksiz adımları elemek yerine doğrudan karar noktasına ulaşan bir triyaj akışı için tasarlandı. Hasta ile Türkçe doğal dil diyalogu kurarak semptomları toplar ve **RED / YELLOW / GREEN** triyaj kararı üretir.
23
+
24
+ > **Base model:** `mlx-community/gemma-4-26B-A4B-it-OptiQ-4bit`
25
+ > **Fine-tuning:** LoRA (mlx-lm + mlx-optiq), 2000 iterasyon
26
+ > **Format:** 4-bit quantized safetensors (fused, adapter ayrı gerekmez)
27
+
28
+ ---
29
+
30
+ ## Benchmark
31
+
32
+ ![Triage Model Benchmark](benchmark.png)
33
+
34
+ Fine-tuned modelimiz 648 vakalık test setinde tüm baseline modelleri geride bıraktı.
35
+ Öne çıkan fark: diğer modeller RED'e aşırı yönelirken, fine-tuned model üç sınıf arasında en dengeli dağılımı gösterdi.
36
+
37
+ ---
38
+
39
+ ## Görev
40
+
41
+ Hastanın şikayetini Türkçe konuşma diliyle alır, yapılandırılmış sorularla klinik bilgiyi toplar ve triyaj kararını verir:
42
+
43
+ | Karar | Anlam |
44
+ |-------|-------|
45
+ | 🔴 RED | Acil, hemen müdahale gerektirir |
46
+ | 🟡 YELLOW | Yarı acil, kısa sürede bakılmalı |
47
+ | 🟢 GREEN | Acil değil, bekleyebilir |
48
+
49
+ ---
50
+
51
+ ## Model Mimarisi
52
+
53
+ - **Gemma 4 26B A4B** (Mixture-of-Experts): 26B toplam parametre, token başına 4B aktif
54
+ - **4-bit OptiQ quantization**: hassasiyet-odaklı mixed-precision (attention katmanları 8-bit, MLP 4-bit)
55
+ - **LoRA fine-tuning**: yalnızca adapter ağırlıkları eğitildi, ardından base model ile birleştirildi
56
+
57
+ ---
58
+
59
+ ## Eğitim Verisi
60
+
61
+ Eğitim verisi, bir acil tıp doktoru ile iş birliği yapılarak oluşturuldu.
62
+
63
+ Doktorumuz, 117 farklı şikayet kategorisi (göğüs ağrısı, nefes darlığı, karın ağrısı vb.) için CTAS/ESI protokollerine dayalı ve Türkiye'deki sisteme uygun **karar ağaçları (path)** tasarladı. Her path; hangi soruların sorulacağını, hangi cevabın hangi triyaj kararına yol açacağını ve doğrudan RED kararı gerektiren tetikleyici semptomları tanımlar.
64
+
65
+ Bu pathler temel alınarak **Gemini** ile 6.475 sentetik Türkçe diyalog üretildi:
66
+
67
+ - **441 karar yolu** (path) — 117 şikayet kategorisi
68
+ - **Hasta profili çeşitliliği:** temiz / hafif messy / ağır messy / çelişkili
69
+ - **Muğlak cevap senaryoları** (%20): hasta önce belirsiz cevap verir, asistan netleştirir
70
+ - **8 farklı senaryo stili:** yüz yüze triyaj, 112 araması, ambulansla geliş vb.
71
+ - **Gerçek hasta demografisi:** Iran ED Dataset'inden çekilen yaş/cinsiyet dağılımı
72
+ - **Risk faktörleri:** diyabet, kalp hastası, hamilelik, hipertansiyon vb.
73
+
74
+ | Split | Kayıt |
75
+ |-------|-------|
76
+ | Train | 5.180 |
77
+ | Val | 646 |
78
+ | Test | 648 |
79
+ | **Toplam** | **6.474** |
80
+
81
+ ---
82
+
83
+ ## Fine-tuning
84
+
85
+ Eğitim, Apple Silicon üzerinde MacBook M4 Pro 24GB kullanılarak tamamen yerel olarak **mlx-lm** ve **mlx-optiq** kütüphaneleri ile gerçekleştirildi.
86
+
87
+ - **mlx-lm**: Apple'ın MLX framework'ü üzerine inşa edilmiş, Mac'te verimli LLM eğitimi ve inferans sağlayan açık kaynak kütüphane
88
+ - **mlx-optiq**: Hassasiyet-odaklı (sensitivity-aware) LoRA eğitimi; hangi katmanların daha hassas olduğunu analiz ederek mixed-precision quantization uygular — bu sayede model kalitesi korunurken bellek kullanımı düşük tutulur
89
+ - **LoRA (Low-Rank Adaptation)**: Tüm modeli yeniden eğitmek yerine küçük adapter ağırlıkları eklenerek eğitim yapıldı; eğitim sonunda adapter base model ile birleştirildi (fused)
90
+
91
+ ```
92
+ Framework : mlx-lm 0.31.3 + mlx-optiq
93
+ Yöntem : LoRA (r=8, alpha=16)
94
+ İterasyon : 2000
95
+ Batch size : 4
96
+ Max seq len: 1024
97
+ Optimizer : AdamW
98
+ Donanım : Apple Silicon (MacBook M4 Pro 24GB)
99
+ ```
100
+
101
+ Val loss: **9.9 → 0.761** (2000 iterasyon)
102
+
103
+ ---
104
+
105
+ ## Değerlendirme
106
+
107
+ Test seti: 648 örnek, tüm modeller aynı diyaloglar üzerinde, data leakage olmadan değerlendirildi.
108
+
109
+ ### Genel Accuracy
110
+
111
+ | Model | Accuracy | Doğru/Toplam |
112
+ |-------|----------|--------------|
113
+ | **Gemma 4 26B Fine-tuned (bizim)** | **75.0%** | 486/648 |
114
+ | Gemini Flash 3.1 Lite | 73.5% | 476/648 |
115
+ | GPT-5.4 | 71.3% | 462/648 |
116
+ | GPT-4.1 | 70.2% | 455/648 |
117
+ | GPT-4.1 mini | 60.8% | 394/648 |
118
+ | Gemma 4 26B Base (fine-tune öncesi) | 56.8% | 25/50 |
119
+
120
+ ### Per-Class Recall (Fine-tuned Model)
121
+
122
+ | Sınıf | Recall | n | RED | YELLOW | GREEN |
123
+ |-------|--------|---|-----|--------|-------|
124
+ | RED | 76.0% | 317 | 241 | 72 | 4 |
125
+ | YELLOW | 79.2% | 197 | 15 | 156 | 26 |
126
+ | GREEN | 66.4% | 134 | 0 | 45 | 89 |
127
+
128
+ > **Not:** RED→YELLOW karışması (%22.7) en kritik hata tipidir. Gerçek klinik kullanımda insan gözetimi zorunludur.
129
+
130
+ ---
131
+
132
+ ## Kullanım
133
+
134
+ ### MLX ile (önerilen)
135
+
136
+ ```bash
137
+ pip install mlx-lm
138
+ ```
139
+
140
+ ```python
141
+ from mlx_lm import load, generate
142
+
143
+ model, tokenizer = load("ai-triyaj/gemma4-26B-A4B-triage-turkish")
144
+
145
+ SYSTEM = """Sen bir acil servis triyaj asistanısın. Hastayla Türkçe konuşarak şikayetini anlıyorsun.
146
+ Her turda tek soru soruyorsun. Yeterli bilgiyi topladıktan sonra son mesajında nötr kapanış yap ve triyaj kararını söyle.
147
+ Son mesaj formatı: "Bilgiler için teşekkürler, sizi ilgili birime yönlendiriyorum. Karar: RED/YELLOW/GREEN"
148
+ Triyaj kararı: RED (kırmızı) = acil, YELLOW (sarı) = yarı acil, GREEN (yeşil) = acil değil."""
149
+
150
+ messages = [
151
+ {"role": "system", "content": SYSTEM},
152
+ {"role": "user", "content": "Göğsümde ağrı var"},
153
+ ]
154
+
155
+ prompt = tokenizer.apply_chat_template(messages, tokenize=False, add_generation_prompt=True)
156
+ response = generate(model, tokenizer, prompt=prompt, max_tokens=200)
157
+ print(response)
158
+ ```
159
+
160
+ ### Terminal Chat
161
+
162
+ ```bash
163
+ python -m mlx_lm.chat \
164
+ --model ai-triyaj/gemma4-26B-A4B-triage-turkish \
165
+ --system "Sen bir acil servis triyaj asistanısın. Hastayla Türkçe konuşarak şikayetini anlıyorsun. Her turda tek soru soruyorsun. Yeterli bilgiyi topladıktan sonra son mesajında nötr kapanış yap ve triyaj kararını söyle. Son mesaj formatı: 'Bilgiler için teşekkürler, sizi ilgili birime yönlendiriyorum. Karar: RED/YELLOW/GREEN' Triyaj kararı: RED (kırmızı) = acil, YELLOW (sarı) = yarı acil, GREEN (yeşil) = acil değil."
166
+ ```
167
+
168
+ ### LM Studio
169
+
170
+ 1. LM Studio → Search
171
+ 2. `ai-triyaj/gemma4-26B-A4B-triage-turkish` ara
172
+ 3. İndir ve başlat
173
+
174
+ ---
175
+
176
+ ## Sistem Gereksinimleri
177
+
178
+ | Donanım | Durum |
179
+ |---------|-------|
180
+ | Apple Silicon M2 Pro (16GB) | ✅ Çalışır |
181
+ | Apple Silicon M3/M4 (16GB+) | ✅ Önerilen |
182
+ | CUDA GPU (8GB+) | PyTorch safetensors ile çalışabilir |
183
+
184
+ ---
185
+
186
+ ## Sınırlamalar ve Uyarılar
187
+
188
+ - Bu model **araştırma amaçlıdır**, klinik karar desteği için **insan gözetimi zorunludur**
189
+ - Eğitim verisi sentetik olup gerçek hasta popülasyonunu tam temsil etmeyebilir
190
+ - RED→YELLOW karışması (%22.7) hayati risk taşıyan vakalarda yanlış önceliklendirmeye yol açabilir
191
+ - Model yalnızca **Türkçe** için optimize edilmiştir
192
+
193
+ ---
194
+
195
+ ## Teşekkür
196
+
197
+ Bu projenin klinik temeli, **Dr. Altuğ Hasanbaşoğlu**'nun uzmanlığı ve katkılarıyla oluşturuldu. Türkiye acil servis pratiğine uygun triyaj karar ağaçlarının tasarımı, klinik kriterlerin belirlenmesi ve doğrulanması süreçlerindeki değerli katkıları için kendisine içtenlikle teşekkür ederiz.
198
+
199
+ ---
200
+
201
+ ## Lisans
202
+
203
+ Bu model Google'ın [Gemma Lisansı](https://ai.google.dev/gemma/terms) kapsamındadır.
204
+
205
+ ---
206
+ ---
207
+
208
+ # Gemma 4 26B A4B — Turkish Emergency Triage (English)
209
+
210
+ ![AI-Triyaj](aitriyaj-banner.png)
211
+
212
+ A conversational language model designed for Turkish emergency department triage, making **RED / YELLOW / GREEN** triage decisions through natural dialogue with patients in Turkish.
213
+
214
+ > **Base model:** `mlx-community/gemma-4-26B-A4B-it-OptiQ-4bit`
215
+ > **Fine-tuning:** LoRA (mlx-lm + mlx-optiq), 2000 iterations
216
+ > **Format:** 4-bit quantized safetensors (fused, no separate adapter needed)
217
+
218
+ ---
219
+
220
+ ## Overview
221
+
222
+ Global triage systems such as CTAS and ESI are designed for broad patient populations and wide clinical scenarios, often requiring lengthy assessment workflows. This model was built specifically for Turkish emergency department practice — guiding patients through fast, focused, and symptom-specific questions that cut straight to the decision point without unnecessary steps. It engages patients in natural Turkish dialogue, collects clinical information, and outputs a triage decision.
223
+
224
+ | Decision | Meaning |
225
+ |----------|---------|
226
+ | 🔴 RED | Critical — requires immediate intervention |
227
+ | 🟡 YELLOW | Semi-urgent — should be seen shortly |
228
+ | 🟢 GREEN | Non-urgent — can wait |
229
+
230
+ ---
231
+
232
+ ## Model Architecture
233
+
234
+ - **Gemma 4 26B A4B** (Mixture-of-Experts): 26B total parameters, 4B active per token
235
+ - **4-bit OptiQ quantization**: sensitivity-aware mixed-precision (attention layers at 8-bit, MLP at 4-bit)
236
+ - **LoRA fine-tuning**: only adapter weights were trained, then merged into the base model (fused)
237
+
238
+ ---
239
+
240
+ ## Training Data
241
+
242
+ The training data was developed in collaboration with an emergency medicine physician.
243
+
244
+ Our physician designed **decision trees (paths)** for 117 complaint categories (chest pain, shortness of breath, abdominal pain, etc.), grounded in CTAS/ESI protocols and adapted to Turkish emergency practice. Each path defines which questions to ask, which answers lead to which triage decision, and which symptoms immediately trigger a RED classification.
245
+
246
+ Based on these paths, **6,475 synthetic Turkish dialogues** were generated using Gemini:
247
+
248
+ - **441 decision paths** across 117 complaint categories
249
+ - **Patient profile diversity:** clean / mildly messy / severely messy / contradictory
250
+ - **Ambiguous response scenarios** (20%): patient gives vague answer, assistant clarifies
251
+ - **8 scenario styles:** face-to-face triage, emergency call, ambulance arrival, etc.
252
+ - **Real patient demographics:** age/gender distribution from the Iran ED Dataset
253
+ - **Risk factors:** diabetes, cardiac history, pregnancy, hypertension, etc.
254
+
255
+ | Split | Records |
256
+ |-------|---------|
257
+ | Train | 5,180 |
258
+ | Val | 646 |
259
+ | Test | 648 |
260
+ | **Total** | **6,474** |
261
+
262
+ ---
263
+
264
+ ## Fine-tuning
265
+
266
+ Training was performed entirely locally on Apple Silicon using **mlx-lm** and **mlx-optiq**:
267
+
268
+ - **mlx-lm**: open-source library built on Apple's MLX framework for efficient on-device LLM training and inference
269
+ - **mlx-optiq**: sensitivity-aware LoRA training; analyzes which layers are most sensitive to quantization and applies mixed-precision accordingly — preserving model quality while keeping memory footprint low
270
+ - **LoRA**: instead of retraining the full model, small adapter weights were added and trained; after training the adapter was fused into the base model
271
+
272
+ ```
273
+ Framework : mlx-lm 0.31.3 + mlx-optiq
274
+ Method : LoRA (r=8, alpha=16)
275
+ Iterations : 2000
276
+ Batch size : 4
277
+ Max seq len: 1024
278
+ Optimizer : AdamW
279
+ Hardware : Apple Silicon (MacBook M4 Pro 24GB)
280
+ ```
281
+
282
+ Val loss: **9.9 → 0.761** (2000 iterations)
283
+
284
+ ---
285
+
286
+ ## Evaluation
287
+
288
+ Test set: 648 samples, all models evaluated on the same dialogues with no data leakage.
289
+
290
+ ### Overall Accuracy
291
+
292
+ | Model | Accuracy | Correct/Total |
293
+ |-------|----------|---------------|
294
+ | **Gemma 4 26B Fine-tuned (ours)** | **75.0%** | 486/648 |
295
+ | Gemini Flash 3.1 Lite | 73.5% | 476/648 |
296
+ | GPT-5.4 | 71.3% | 462/648 |
297
+ | GPT-4.1 | 70.2% | 455/648 |
298
+ | GPT-4.1 mini | 60.8% | 394/648 |
299
+ | Gemma 4 26B Base (before fine-tuning) | 56.8% | 25/50 |
300
+
301
+ ### Per-Class Recall (Fine-tuned Model)
302
+
303
+ | Class | Recall | n | RED | YELLOW | GREEN |
304
+ |-------|--------|---|-----|--------|-------|
305
+ | RED | 76.0% | 317 | 241 | 72 | 4 |
306
+ | YELLOW | 79.2% | 197 | 15 | 156 | 26 |
307
+ | GREEN | 66.4% | 134 | 0 | 45 | 89 |
308
+
309
+ > **Note:** RED→YELLOW confusion (22.7%) is the most critical error type. Human oversight is mandatory for any real clinical use.
310
+
311
+ ---
312
+
313
+ ## Usage
314
+
315
+ ### With MLX (recommended)
316
+
317
+ ```bash
318
+ pip install mlx-lm
319
+ ```
320
+
321
+ ```python
322
+ from mlx_lm import load, generate
323
+
324
+ model, tokenizer = load("ai-triyaj/gemma4-26B-A4B-triage-turkish")
325
+
326
+ SYSTEM = """You are an emergency department triage assistant. Speak with the patient in Turkish to understand their complaint.
327
+ Ask one question per turn. Once you have gathered enough information, close with a neutral statement and give the triage decision.
328
+ Final message format: "Bilgiler için teşekkürler, sizi ilgili birime yönlendiriyorum. Karar: RED/YELLOW/GREEN"
329
+ Triage decision: RED = critical, YELLOW = semi-urgent, GREEN = non-urgent."""
330
+
331
+ messages = [
332
+ {"role": "system", "content": SYSTEM},
333
+ {"role": "user", "content": "Göğsümde ağrı var"},
334
+ ]
335
+
336
+ prompt = tokenizer.apply_chat_template(messages, tokenize=False, add_generation_prompt=True)
337
+ response = generate(model, tokenizer, prompt=prompt, max_tokens=200)
338
+ print(response)
339
+ ```
340
+
341
+ ### Terminal Chat
342
+
343
+ ```bash
344
+ python -m mlx_lm.chat \
345
+ --model ai-triyaj/gemma4-26B-A4B-triage-turkish \
346
+ --system "Sen bir acil servis triyaj asistanısın. Hastayla Türkçe konuşarak şikayetini anlıyorsun. Her turda tek soru soruyorsun. Yeterli bilgiyi topladıktan sonra son mesajında nötr kapanış yap ve triyaj kararını söyle. Son mesaj formatı: 'Bilgiler için teşekkürler, sizi ilgili birime yönlendiriyorum. Karar: RED/YELLOW/GREEN' Triyaj kararı: RED (kırmızı) = acil, YELLOW (sarı) = yarı acil, GREEN (yeşil) = acil değil."
347
+ ```
348
+
349
+ ### LM Studio
350
+
351
+ 1. LM Studio → Search
352
+ 2. Search for `ai-triyaj/gemma4-26B-A4B-triage-turkish`
353
+ 3. Download and launch
354
+
355
+ ---
356
+
357
+ ## System Requirements
358
+
359
+ | Hardware | Status |
360
+ |----------|--------|
361
+ | Apple Silicon M2 Pro (16GB) | ✅ Works |
362
+ | Apple Silicon M3/M4 (16GB+) | ✅ Recommended |
363
+ | CUDA GPU (8GB+) | Works via PyTorch safetensors |
364
+
365
+ ---
366
+
367
+ ## Limitations & Warnings
368
+
369
+ - This model is intended for **research purposes only** — human oversight is mandatory for clinical decision support
370
+ - Training data is synthetic and may not fully represent real patient populations
371
+ - RED→YELLOW confusion (22.7%) may lead to incorrect prioritization in life-threatening cases
372
+ - The model is optimized for **Turkish only**
373
+
374
+ ---
375
+
376
+ ## Acknowledgements
377
+
378
+ The clinical foundation of this project was built with the expertise and contributions of **Dr. Altuğ Hasanbaşoğlu**. We sincerely thank him for designing the triage decision trees adapted to Turkish emergency practice, defining the clinical criteria, and validating the decision logic throughout the project.
379
+
380
+ ---
381
+
382
+ ## License
383
+
384
+ This model is subject to Google's [Gemma License](https://ai.google.dev/gemma/terms).
aitriyaj-banner.png ADDED

Git LFS Details

  • SHA256: 42fc6e407cbe0c919d5450c9e741c17161bfcc19b6c0836cd550de75760e726b
  • Pointer size: 131 Bytes
  • Size of remote file: 237 kB
benchmark.png ADDED
chat_template.jinja ADDED
@@ -0,0 +1,347 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {%- macro format_parameters(properties, required) -%}
2
+ {%- set standard_keys = ['description', 'type', 'properties', 'required', 'nullable'] -%}
3
+ {%- set ns = namespace(found_first=false) -%}
4
+ {%- for key, value in properties | dictsort -%}
5
+ {%- set add_comma = false -%}
6
+ {%- if key not in standard_keys -%}
7
+ {%- if ns.found_first %},{% endif -%}
8
+ {%- set ns.found_first = true -%}
9
+ {{ key }}:{
10
+ {%- if value['description'] -%}
11
+ description:<|"|>{{ value['description'] }}<|"|>
12
+ {%- set add_comma = true -%}
13
+ {%- endif -%}
14
+ {%- if value['type'] | upper == 'STRING' -%}
15
+ {%- if value['enum'] -%}
16
+ {%- if add_comma %},{%- else -%} {%- set add_comma = true -%} {% endif -%}
17
+ enum:{{ format_argument(value['enum']) }}
18
+ {%- endif -%}
19
+ {%- elif value['type'] | upper == 'ARRAY' -%}
20
+ {%- if value['items'] is mapping and value['items'] -%}
21
+ {%- if add_comma %},{%- else -%} {%- set add_comma = true -%} {% endif -%}
22
+ items:{
23
+ {%- set ns_items = namespace(found_first=false) -%}
24
+ {%- for item_key, item_value in value['items'] | dictsort -%}
25
+ {%- if item_value is not none -%}
26
+ {%- if ns_items.found_first %},{% endif -%}
27
+ {%- set ns_items.found_first = true -%}
28
+ {%- if item_key == 'properties' -%}
29
+ properties:{
30
+ {%- if item_value is mapping -%}
31
+ {{- format_parameters(item_value, value['items']['required'] | default([])) -}}
32
+ {%- endif -%}
33
+ }
34
+ {%- elif item_key == 'required' -%}
35
+ required:[
36
+ {%- for req_item in item_value -%}
37
+ <|"|>{{- req_item -}}<|"|>
38
+ {%- if not loop.last %},{% endif -%}
39
+ {%- endfor -%}
40
+ ]
41
+ {%- elif item_key == 'type' -%}
42
+ {%- if item_value is string -%}
43
+ type:{{ format_argument(item_value | upper) }}
44
+ {%- else -%}
45
+ type:{{ format_argument(item_value | map('upper') | list) }}
46
+ {%- endif -%}
47
+ {%- else -%}
48
+ {{ item_key }}:{{ format_argument(item_value) }}
49
+ {%- endif -%}
50
+ {%- endif -%}
51
+ {%- endfor -%}
52
+ }
53
+ {%- endif -%}
54
+ {%- endif -%}
55
+ {%- if value['nullable'] %}
56
+ {%- if add_comma %},{%- else -%} {%- set add_comma = true -%} {% endif -%}
57
+ nullable:true
58
+ {%- endif -%}
59
+ {%- if value['type'] | upper == 'OBJECT' -%}
60
+ {%- if value['properties'] is defined and value['properties'] is mapping -%}
61
+ {%- if add_comma %},{%- else -%} {%- set add_comma = true -%} {% endif -%}
62
+ properties:{
63
+ {{- format_parameters(value['properties'], value['required'] | default([])) -}}
64
+ }
65
+ {%- elif value is mapping -%}
66
+ {%- if add_comma %},{%- else -%} {%- set add_comma = true -%} {% endif -%}
67
+ properties:{
68
+ {{- format_parameters(value, value['required'] | default([])) -}}
69
+ }
70
+ {%- endif -%}
71
+ {%- if value['required'] -%}
72
+ {%- if add_comma %},{%- else -%} {%- set add_comma = true -%} {% endif -%}
73
+ required:[
74
+ {%- for item in value['required'] | default([]) -%}
75
+ <|"|>{{- item -}}<|"|>
76
+ {%- if not loop.last %},{% endif -%}
77
+ {%- endfor -%}
78
+ ]
79
+ {%- endif -%}
80
+ {%- endif -%}
81
+ {%- if add_comma %},{%- else -%} {%- set add_comma = true -%} {% endif -%}
82
+ type:<|"|>{{ value['type'] | upper }}<|"|>}
83
+ {%- endif -%}
84
+ {%- endfor -%}
85
+ {%- endmacro -%}
86
+ {%- macro format_function_declaration(tool_data) -%}
87
+ declaration:{{- tool_data['function']['name'] -}}{description:<|"|>{{- tool_data['function']['description'] -}}<|"|>
88
+ {%- set params = tool_data['function']['parameters'] -%}
89
+ {%- if params -%}
90
+ ,parameters:{
91
+ {%- if params['properties'] -%}
92
+ properties:{ {{- format_parameters(params['properties'], params['required']) -}} },
93
+ {%- endif -%}
94
+ {%- if params['required'] -%}
95
+ required:[
96
+ {%- for item in params['required'] -%}
97
+ <|"|>{{- item -}}<|"|>
98
+ {{- ',' if not loop.last -}}
99
+ {%- endfor -%}
100
+ ],
101
+ {%- endif -%}
102
+ {%- if params['type'] -%}
103
+ type:<|"|>{{- params['type'] | upper -}}<|"|>}
104
+ {%- endif -%}
105
+ {%- endif -%}
106
+ {%- if 'response' in tool_data['function'] -%}
107
+ {%- set response_declaration = tool_data['function']['response'] -%}
108
+ ,response:{
109
+ {%- if response_declaration['description'] -%}
110
+ description:<|"|>{{- response_declaration['description'] -}}<|"|>,
111
+ {%- endif -%}
112
+ {%- if response_declaration['type'] | upper == 'OBJECT' -%}
113
+ type:<|"|>{{- response_declaration['type'] | upper -}}<|"|>}
114
+ {%- endif -%}
115
+ {%- endif -%}
116
+ }
117
+ {%- endmacro -%}
118
+ {%- macro format_argument(argument, escape_keys=True) -%}
119
+ {%- if argument is string -%}
120
+ {{- '<|"|>' + argument + '<|"|>' -}}
121
+ {%- elif argument is boolean -%}
122
+ {{- 'true' if argument else 'false' -}}
123
+ {%- elif argument is mapping -%}
124
+ {{- '{' -}}
125
+ {%- set ns = namespace(found_first=false) -%}
126
+ {%- for key, value in argument | dictsort -%}
127
+ {%- if ns.found_first %},{% endif -%}
128
+ {%- set ns.found_first = true -%}
129
+ {%- if escape_keys -%}
130
+ {{- '<|"|>' + key + '<|"|>' -}}
131
+ {%- else -%}
132
+ {{- key -}}
133
+ {%- endif -%}
134
+ :{{- format_argument(value, escape_keys=escape_keys) -}}
135
+ {%- endfor -%}
136
+ {{- '}' -}}
137
+ {%- elif argument is sequence -%}
138
+ {{- '[' -}}
139
+ {%- for item in argument -%}
140
+ {{- format_argument(item, escape_keys=escape_keys) -}}
141
+ {%- if not loop.last %},{% endif -%}
142
+ {%- endfor -%}
143
+ {{- ']' -}}
144
+ {%- else -%}
145
+ {{- argument -}}
146
+ {%- endif -%}
147
+ {%- endmacro -%}
148
+ {%- macro strip_thinking(text) -%}
149
+ {%- set ns = namespace(result='') -%}
150
+ {%- for part in text.split('<channel|>') -%}
151
+ {%- if '<|channel>' in part -%}
152
+ {%- set ns.result = ns.result + part.split('<|channel>')[0] -%}
153
+ {%- else -%}
154
+ {%- set ns.result = ns.result + part -%}
155
+ {%- endif -%}
156
+ {%- endfor -%}
157
+ {{- ns.result | trim -}}
158
+ {%- endmacro -%}
159
+
160
+ {%- macro format_tool_response_block(tool_name, response) -%}
161
+ {{- '<|tool_response>' -}}
162
+ {%- if response is mapping -%}
163
+ {{- 'response:' + tool_name + '{' -}}
164
+ {%- for key, value in response | dictsort -%}
165
+ {{- key -}}:{{- format_argument(value, escape_keys=False) -}}
166
+ {%- if not loop.last %},{% endif -%}
167
+ {%- endfor -%}
168
+ {{- '}' -}}
169
+ {%- else -%}
170
+ {{- 'response:' + tool_name + '{value:' + format_argument(response, escape_keys=False) + '}' -}}
171
+ {%- endif -%}
172
+ {{- '<tool_response|>' -}}
173
+ {%- endmacro -%}
174
+
175
+ {%- set ns = namespace(prev_message_type=None) -%}
176
+ {%- set loop_messages = messages -%}
177
+ {{- bos_token -}}
178
+ {#- Handle System/Tool Definitions Block -#}
179
+ {%- if (enable_thinking is defined and enable_thinking) or tools or messages[0]['role'] in ['system', 'developer'] -%}
180
+ {{- '<|turn>system\n' -}}
181
+
182
+ {#- Inject Thinking token at the very top of the FIRST system turn -#}
183
+ {%- if enable_thinking is defined and enable_thinking -%}
184
+ {{- '<|think|>\n' -}}
185
+ {%- set ns.prev_message_type = 'think' -%}
186
+ {%- endif -%}
187
+
188
+ {%- if messages[0]['role'] in ['system', 'developer'] -%}
189
+ {{- messages[0]['content'] | trim -}}
190
+ {%- set loop_messages = messages[1:] -%}
191
+ {%- endif -%}
192
+
193
+ {%- if tools -%}
194
+ {%- for tool in tools %}
195
+ {{- '<|tool>' -}}
196
+ {{- format_function_declaration(tool) | trim -}}
197
+ {{- '<tool|>' -}}
198
+ {%- endfor %}
199
+ {%- set ns.prev_message_type = 'tool' -%}
200
+ {%- endif -%}
201
+
202
+ {{- '<turn|>\n' -}}
203
+ {%- endif %}
204
+
205
+ {#- Pre-scan: find last user message index for reasoning guard -#}
206
+ {%- set ns_turn = namespace(last_user_idx=-1) -%}
207
+ {%- for i in range(loop_messages | length) -%}
208
+ {%- if loop_messages[i]['role'] == 'user' -%}
209
+ {%- set ns_turn.last_user_idx = i -%}
210
+ {%- endif -%}
211
+ {%- endfor -%}
212
+
213
+ {#- Loop through messages -#}
214
+ {%- for message in loop_messages -%}
215
+ {%- if message['role'] != 'tool' -%}
216
+ {%- set ns.prev_message_type = None -%}
217
+ {%- set role = 'model' if message['role'] == 'assistant' else message['role'] -%}
218
+ {#- Detect continuation: suppress duplicate <|turn>model when previous non-tool message was also assistant -#}
219
+ {%- set prev_nt = namespace(role=None, found=false) -%}
220
+ {%- if loop.index0 > 0 -%}
221
+ {%- for j in range(loop.index0 - 1, -1, -1) -%}
222
+ {%- if not prev_nt.found -%}
223
+ {%- if loop_messages[j]['role'] != 'tool' -%}
224
+ {%- set prev_nt.role = loop_messages[j]['role'] -%}
225
+ {%- set prev_nt.found = true -%}
226
+ {%- endif -%}
227
+ {%- endif -%}
228
+ {%- endfor -%}
229
+ {%- endif -%}
230
+ {%- set continue_same_model_turn = (role == 'model' and prev_nt.role == 'assistant') -%}
231
+ {%- if not continue_same_model_turn -%}
232
+ {{- '<|turn>' + role + '\n' }}
233
+ {%- endif -%}
234
+
235
+ {#- Render reasoning/reasoning_content as thinking channel -#}
236
+ {%- set thinking_text = message.get('reasoning') or message.get('reasoning_content') -%}
237
+ {%- if thinking_text and loop.index0 > ns_turn.last_user_idx and message.get('tool_calls') -%}
238
+ {{- '<|channel>thought\n' + thinking_text + '\n<channel|>' -}}
239
+ {%- endif -%}
240
+
241
+ {%- if message['tool_calls'] -%}
242
+ {%- for tool_call in message['tool_calls'] -%}
243
+ {%- set function = tool_call['function'] -%}
244
+ {{- '<|tool_call>call:' + function['name'] + '{' -}}
245
+ {%- if function['arguments'] is mapping -%}
246
+ {%- set ns_args = namespace(found_first=false) -%}
247
+ {%- for key, value in function['arguments'] | dictsort -%}
248
+ {%- if ns_args.found_first %},{% endif -%}
249
+ {%- set ns_args.found_first = true -%}
250
+ {{- key -}}:{{- format_argument(value, escape_keys=False) -}}
251
+ {%- endfor -%}
252
+ {%- elif function['arguments'] is string -%}
253
+ {{- function['arguments'] -}}
254
+ {%- endif -%}
255
+ {{- '}<tool_call|>' -}}
256
+ {%- endfor -%}
257
+ {%- set ns.prev_message_type = 'tool_call' -%}
258
+ {%- endif -%}
259
+
260
+ {%- set ns_tr_out = namespace(flag=false) -%}
261
+ {%- if message.get('tool_responses') -%}
262
+ {#- Legacy: tool_responses embedded on the assistant message (Google/Gemma native) -#}
263
+ {%- for tool_response in message['tool_responses'] -%}
264
+ {{- format_tool_response_block(tool_response['name'] | default('unknown'), tool_response['response']) -}}
265
+ {%- set ns_tr_out.flag = true -%}
266
+ {%- set ns.prev_message_type = 'tool_response' -%}
267
+ {%- endfor -%}
268
+ {%- elif message.get('tool_calls') -%}
269
+ {#- OpenAI Chat Completions: forward-scan consecutive role:tool messages -#}
270
+ {%- set ns_tool_scan = namespace(stopped=false) -%}
271
+ {%- for k in range(loop.index0 + 1, loop_messages | length) -%}
272
+ {%- if ns_tool_scan.stopped -%}
273
+ {%- elif loop_messages[k]['role'] != 'tool' -%}
274
+ {%- set ns_tool_scan.stopped = true -%}
275
+ {%- else -%}
276
+ {%- set follow = loop_messages[k] -%}
277
+ {#- Resolve tool_call_id to function name -#}
278
+ {%- set ns_tname = namespace(name=follow.get('name') | default('unknown')) -%}
279
+ {%- for tc in message['tool_calls'] -%}
280
+ {%- if tc.get('id') == follow.get('tool_call_id') -%}
281
+ {%- set ns_tname.name = tc['function']['name'] -%}
282
+ {%- endif -%}
283
+ {%- endfor -%}
284
+ {#- Handle content as string or content-parts array -#}
285
+ {%- set tool_body = follow.get('content') -%}
286
+ {%- if tool_body is string -%}
287
+ {{- format_tool_response_block(ns_tname.name, tool_body) -}}
288
+ {%- elif tool_body is sequence and tool_body is not string -%}
289
+ {%- set ns_txt = namespace(s='') -%}
290
+ {%- for part in tool_body -%}
291
+ {%- if part.get('type') == 'text' -%}
292
+ {%- set ns_txt.s = ns_txt.s + (part.get('text') | default('')) -%}
293
+ {%- endif -%}
294
+ {%- endfor -%}
295
+ {{- format_tool_response_block(ns_tname.name, ns_txt.s) -}}
296
+ {%- else -%}
297
+ {{- format_tool_response_block(ns_tname.name, tool_body) -}}
298
+ {%- endif -%}
299
+ {%- set ns_tr_out.flag = true -%}
300
+ {%- set ns.prev_message_type = 'tool_response' -%}
301
+ {%- endif -%}
302
+ {%- endfor -%}
303
+ {%- endif -%}
304
+
305
+ {%- if message['content'] is string -%}
306
+ {%- if role == 'model' -%}
307
+ {{- strip_thinking(message['content']) -}}
308
+ {%- else -%}
309
+ {{- message['content'] | trim -}}
310
+ {%- endif -%}
311
+ {%- elif message['content'] is sequence -%}
312
+ {%- for item in message['content'] -%}
313
+ {%- if item['type'] == 'text' -%}
314
+ {%- if role == 'model' -%}
315
+ {{- strip_thinking(item['text']) -}}
316
+ {%- else -%}
317
+ {{- item['text'] | trim -}}
318
+ {%- endif -%}
319
+ {%- elif item['type'] == 'image' -%}
320
+ {{- '<|image|>' -}}
321
+ {%- set ns.prev_message_type = 'image' -%}
322
+ {%- elif item['type'] == 'audio' -%}
323
+ {{- '<|audio|>' -}}
324
+ {%- set ns.prev_message_type = 'audio' -%}
325
+ {%- elif item['type'] == 'video' -%}
326
+ {{- '<|video|>' -}}
327
+ {%- set ns.prev_message_type = 'video' -%}
328
+ {%- endif -%}
329
+ {%- endfor -%}
330
+ {%- endif -%}
331
+
332
+ {%- if ns.prev_message_type == 'tool_call' and not ns_tr_out.flag -%}
333
+ {{- '<|tool_response>' -}}
334
+ {%- elif not (ns_tr_out.flag and not message.get('content')) -%}
335
+ {{- '<turn|>\n' -}}
336
+ {%- endif -%}
337
+ {%- endif -%}
338
+ {%- endfor -%}
339
+
340
+ {%- if add_generation_prompt -%}
341
+ {%- if ns.prev_message_type != 'tool_response' and ns.prev_message_type != 'tool_call' -%}
342
+ {{- '<|turn>model\n' -}}
343
+ {%- if not enable_thinking | default(false) -%}
344
+ {{- '<|channel>thought\n<channel|>' -}}
345
+ {%- endif -%}
346
+ {%- endif -%}
347
+ {%- endif -%}
config.json ADDED
@@ -0,0 +1,2712 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "architectures": [
3
+ "Gemma4ForCausalLM"
4
+ ],
5
+ "dtype": "bfloat16",
6
+ "eos_token_id": [
7
+ 1,
8
+ 106,
9
+ 50
10
+ ],
11
+ "initializer_range": 0.02,
12
+ "model_type": "gemma4",
13
+ "quantization": {
14
+ "group_size": 64,
15
+ "bits": 4,
16
+ "mode": "affine",
17
+ "language_model.model.embed_tokens": {
18
+ "bits": 4,
19
+ "group_size": 64
20
+ },
21
+ "language_model.model.layers.0.self_attn.q_proj": {
22
+ "bits": 8,
23
+ "group_size": 64
24
+ },
25
+ "language_model.model.layers.0.self_attn.k_proj": {
26
+ "bits": 8,
27
+ "group_size": 64
28
+ },
29
+ "language_model.model.layers.0.self_attn.v_proj": {
30
+ "bits": 8,
31
+ "group_size": 64
32
+ },
33
+ "language_model.model.layers.0.self_attn.o_proj": {
34
+ "bits": 8,
35
+ "group_size": 64
36
+ },
37
+ "language_model.model.layers.0.mlp.gate_proj": {
38
+ "bits": 8,
39
+ "group_size": 64
40
+ },
41
+ "language_model.model.layers.0.mlp.down_proj": {
42
+ "bits": 8,
43
+ "group_size": 64
44
+ },
45
+ "language_model.model.layers.0.mlp.up_proj": {
46
+ "bits": 8,
47
+ "group_size": 64
48
+ },
49
+ "language_model.model.layers.0.router.proj": {
50
+ "bits": 8,
51
+ "group_size": 64
52
+ },
53
+ "language_model.model.layers.0.experts.switch_glu.gate_proj": {
54
+ "bits": 8,
55
+ "group_size": 64
56
+ },
57
+ "language_model.model.layers.0.experts.switch_glu.up_proj": {
58
+ "bits": 8,
59
+ "group_size": 64
60
+ },
61
+ "language_model.model.layers.0.experts.switch_glu.down_proj": {
62
+ "bits": 8,
63
+ "group_size": 64
64
+ },
65
+ "language_model.model.layers.1.self_attn.q_proj": {
66
+ "bits": 8,
67
+ "group_size": 64
68
+ },
69
+ "language_model.model.layers.1.self_attn.k_proj": {
70
+ "bits": 8,
71
+ "group_size": 64
72
+ },
73
+ "language_model.model.layers.1.self_attn.v_proj": {
74
+ "bits": 8,
75
+ "group_size": 64
76
+ },
77
+ "language_model.model.layers.1.self_attn.o_proj": {
78
+ "bits": 4,
79
+ "group_size": 64
80
+ },
81
+ "language_model.model.layers.1.mlp.gate_proj": {
82
+ "bits": 8,
83
+ "group_size": 64
84
+ },
85
+ "language_model.model.layers.1.mlp.down_proj": {
86
+ "bits": 8,
87
+ "group_size": 64
88
+ },
89
+ "language_model.model.layers.1.mlp.up_proj": {
90
+ "bits": 8,
91
+ "group_size": 64
92
+ },
93
+ "language_model.model.layers.1.router.proj": {
94
+ "bits": 8,
95
+ "group_size": 64
96
+ },
97
+ "language_model.model.layers.1.experts.switch_glu.gate_proj": {
98
+ "bits": 4,
99
+ "group_size": 64
100
+ },
101
+ "language_model.model.layers.1.experts.switch_glu.up_proj": {
102
+ "bits": 4,
103
+ "group_size": 64
104
+ },
105
+ "language_model.model.layers.1.experts.switch_glu.down_proj": {
106
+ "bits": 4,
107
+ "group_size": 64
108
+ },
109
+ "language_model.model.layers.2.self_attn.q_proj": {
110
+ "bits": 8,
111
+ "group_size": 64
112
+ },
113
+ "language_model.model.layers.2.self_attn.k_proj": {
114
+ "bits": 8,
115
+ "group_size": 64
116
+ },
117
+ "language_model.model.layers.2.self_attn.v_proj": {
118
+ "bits": 8,
119
+ "group_size": 64
120
+ },
121
+ "language_model.model.layers.2.self_attn.o_proj": {
122
+ "bits": 8,
123
+ "group_size": 64
124
+ },
125
+ "language_model.model.layers.2.mlp.gate_proj": {
126
+ "bits": 8,
127
+ "group_size": 64
128
+ },
129
+ "language_model.model.layers.2.mlp.down_proj": {
130
+ "bits": 8,
131
+ "group_size": 64
132
+ },
133
+ "language_model.model.layers.2.mlp.up_proj": {
134
+ "bits": 8,
135
+ "group_size": 64
136
+ },
137
+ "language_model.model.layers.2.router.proj": {
138
+ "bits": 8,
139
+ "group_size": 64
140
+ },
141
+ "language_model.model.layers.2.experts.switch_glu.gate_proj": {
142
+ "bits": 4,
143
+ "group_size": 64
144
+ },
145
+ "language_model.model.layers.2.experts.switch_glu.up_proj": {
146
+ "bits": 4,
147
+ "group_size": 64
148
+ },
149
+ "language_model.model.layers.2.experts.switch_glu.down_proj": {
150
+ "bits": 4,
151
+ "group_size": 64
152
+ },
153
+ "language_model.model.layers.3.self_attn.q_proj": {
154
+ "bits": 8,
155
+ "group_size": 64
156
+ },
157
+ "language_model.model.layers.3.self_attn.k_proj": {
158
+ "bits": 8,
159
+ "group_size": 64
160
+ },
161
+ "language_model.model.layers.3.self_attn.v_proj": {
162
+ "bits": 8,
163
+ "group_size": 64
164
+ },
165
+ "language_model.model.layers.3.self_attn.o_proj": {
166
+ "bits": 8,
167
+ "group_size": 64
168
+ },
169
+ "language_model.model.layers.3.mlp.gate_proj": {
170
+ "bits": 8,
171
+ "group_size": 64
172
+ },
173
+ "language_model.model.layers.3.mlp.down_proj": {
174
+ "bits": 8,
175
+ "group_size": 64
176
+ },
177
+ "language_model.model.layers.3.mlp.up_proj": {
178
+ "bits": 8,
179
+ "group_size": 64
180
+ },
181
+ "language_model.model.layers.3.router.proj": {
182
+ "bits": 8,
183
+ "group_size": 64
184
+ },
185
+ "language_model.model.layers.3.experts.switch_glu.gate_proj": {
186
+ "bits": 4,
187
+ "group_size": 64
188
+ },
189
+ "language_model.model.layers.3.experts.switch_glu.up_proj": {
190
+ "bits": 4,
191
+ "group_size": 64
192
+ },
193
+ "language_model.model.layers.3.experts.switch_glu.down_proj": {
194
+ "bits": 4,
195
+ "group_size": 64
196
+ },
197
+ "language_model.model.layers.4.self_attn.q_proj": {
198
+ "bits": 8,
199
+ "group_size": 64
200
+ },
201
+ "language_model.model.layers.4.self_attn.k_proj": {
202
+ "bits": 8,
203
+ "group_size": 64
204
+ },
205
+ "language_model.model.layers.4.self_attn.v_proj": {
206
+ "bits": 8,
207
+ "group_size": 64
208
+ },
209
+ "language_model.model.layers.4.self_attn.o_proj": {
210
+ "bits": 8,
211
+ "group_size": 64
212
+ },
213
+ "language_model.model.layers.4.mlp.gate_proj": {
214
+ "bits": 8,
215
+ "group_size": 64
216
+ },
217
+ "language_model.model.layers.4.mlp.down_proj": {
218
+ "bits": 8,
219
+ "group_size": 64
220
+ },
221
+ "language_model.model.layers.4.mlp.up_proj": {
222
+ "bits": 8,
223
+ "group_size": 64
224
+ },
225
+ "language_model.model.layers.4.router.proj": {
226
+ "bits": 8,
227
+ "group_size": 64
228
+ },
229
+ "language_model.model.layers.4.experts.switch_glu.gate_proj": {
230
+ "bits": 4,
231
+ "group_size": 64
232
+ },
233
+ "language_model.model.layers.4.experts.switch_glu.up_proj": {
234
+ "bits": 4,
235
+ "group_size": 64
236
+ },
237
+ "language_model.model.layers.4.experts.switch_glu.down_proj": {
238
+ "bits": 4,
239
+ "group_size": 64
240
+ },
241
+ "language_model.model.layers.5.self_attn.q_proj": {
242
+ "bits": 4,
243
+ "group_size": 64
244
+ },
245
+ "language_model.model.layers.5.self_attn.k_proj": {
246
+ "bits": 8,
247
+ "group_size": 64
248
+ },
249
+ "language_model.model.layers.5.self_attn.o_proj": {
250
+ "bits": 4,
251
+ "group_size": 64
252
+ },
253
+ "language_model.model.layers.5.mlp.gate_proj": {
254
+ "bits": 8,
255
+ "group_size": 64
256
+ },
257
+ "language_model.model.layers.5.mlp.down_proj": {
258
+ "bits": 8,
259
+ "group_size": 64
260
+ },
261
+ "language_model.model.layers.5.mlp.up_proj": {
262
+ "bits": 8,
263
+ "group_size": 64
264
+ },
265
+ "language_model.model.layers.5.router.proj": {
266
+ "bits": 8,
267
+ "group_size": 64
268
+ },
269
+ "language_model.model.layers.5.experts.switch_glu.gate_proj": {
270
+ "bits": 4,
271
+ "group_size": 64
272
+ },
273
+ "language_model.model.layers.5.experts.switch_glu.up_proj": {
274
+ "bits": 4,
275
+ "group_size": 64
276
+ },
277
+ "language_model.model.layers.5.experts.switch_glu.down_proj": {
278
+ "bits": 4,
279
+ "group_size": 64
280
+ },
281
+ "language_model.model.layers.6.self_attn.q_proj": {
282
+ "bits": 8,
283
+ "group_size": 64
284
+ },
285
+ "language_model.model.layers.6.self_attn.k_proj": {
286
+ "bits": 8,
287
+ "group_size": 64
288
+ },
289
+ "language_model.model.layers.6.self_attn.v_proj": {
290
+ "bits": 8,
291
+ "group_size": 64
292
+ },
293
+ "language_model.model.layers.6.self_attn.o_proj": {
294
+ "bits": 8,
295
+ "group_size": 64
296
+ },
297
+ "language_model.model.layers.6.mlp.gate_proj": {
298
+ "bits": 8,
299
+ "group_size": 64
300
+ },
301
+ "language_model.model.layers.6.mlp.down_proj": {
302
+ "bits": 8,
303
+ "group_size": 64
304
+ },
305
+ "language_model.model.layers.6.mlp.up_proj": {
306
+ "bits": 8,
307
+ "group_size": 64
308
+ },
309
+ "language_model.model.layers.6.router.proj": {
310
+ "bits": 8,
311
+ "group_size": 64
312
+ },
313
+ "language_model.model.layers.6.experts.switch_glu.gate_proj": {
314
+ "bits": 4,
315
+ "group_size": 64
316
+ },
317
+ "language_model.model.layers.6.experts.switch_glu.up_proj": {
318
+ "bits": 4,
319
+ "group_size": 64
320
+ },
321
+ "language_model.model.layers.6.experts.switch_glu.down_proj": {
322
+ "bits": 4,
323
+ "group_size": 64
324
+ },
325
+ "language_model.model.layers.7.self_attn.q_proj": {
326
+ "bits": 8,
327
+ "group_size": 64
328
+ },
329
+ "language_model.model.layers.7.self_attn.k_proj": {
330
+ "bits": 8,
331
+ "group_size": 64
332
+ },
333
+ "language_model.model.layers.7.self_attn.v_proj": {
334
+ "bits": 8,
335
+ "group_size": 64
336
+ },
337
+ "language_model.model.layers.7.self_attn.o_proj": {
338
+ "bits": 8,
339
+ "group_size": 64
340
+ },
341
+ "language_model.model.layers.7.mlp.gate_proj": {
342
+ "bits": 8,
343
+ "group_size": 64
344
+ },
345
+ "language_model.model.layers.7.mlp.down_proj": {
346
+ "bits": 8,
347
+ "group_size": 64
348
+ },
349
+ "language_model.model.layers.7.mlp.up_proj": {
350
+ "bits": 8,
351
+ "group_size": 64
352
+ },
353
+ "language_model.model.layers.7.router.proj": {
354
+ "bits": 8,
355
+ "group_size": 64
356
+ },
357
+ "language_model.model.layers.7.experts.switch_glu.gate_proj": {
358
+ "bits": 4,
359
+ "group_size": 64
360
+ },
361
+ "language_model.model.layers.7.experts.switch_glu.up_proj": {
362
+ "bits": 4,
363
+ "group_size": 64
364
+ },
365
+ "language_model.model.layers.7.experts.switch_glu.down_proj": {
366
+ "bits": 4,
367
+ "group_size": 64
368
+ },
369
+ "language_model.model.layers.8.self_attn.q_proj": {
370
+ "bits": 8,
371
+ "group_size": 64
372
+ },
373
+ "language_model.model.layers.8.self_attn.k_proj": {
374
+ "bits": 8,
375
+ "group_size": 64
376
+ },
377
+ "language_model.model.layers.8.self_attn.v_proj": {
378
+ "bits": 8,
379
+ "group_size": 64
380
+ },
381
+ "language_model.model.layers.8.self_attn.o_proj": {
382
+ "bits": 8,
383
+ "group_size": 64
384
+ },
385
+ "language_model.model.layers.8.mlp.gate_proj": {
386
+ "bits": 8,
387
+ "group_size": 64
388
+ },
389
+ "language_model.model.layers.8.mlp.down_proj": {
390
+ "bits": 8,
391
+ "group_size": 64
392
+ },
393
+ "language_model.model.layers.8.mlp.up_proj": {
394
+ "bits": 8,
395
+ "group_size": 64
396
+ },
397
+ "language_model.model.layers.8.router.proj": {
398
+ "bits": 8,
399
+ "group_size": 64
400
+ },
401
+ "language_model.model.layers.8.experts.switch_glu.gate_proj": {
402
+ "bits": 4,
403
+ "group_size": 64
404
+ },
405
+ "language_model.model.layers.8.experts.switch_glu.up_proj": {
406
+ "bits": 4,
407
+ "group_size": 64
408
+ },
409
+ "language_model.model.layers.8.experts.switch_glu.down_proj": {
410
+ "bits": 4,
411
+ "group_size": 64
412
+ },
413
+ "language_model.model.layers.9.self_attn.q_proj": {
414
+ "bits": 8,
415
+ "group_size": 64
416
+ },
417
+ "language_model.model.layers.9.self_attn.k_proj": {
418
+ "bits": 8,
419
+ "group_size": 64
420
+ },
421
+ "language_model.model.layers.9.self_attn.v_proj": {
422
+ "bits": 8,
423
+ "group_size": 64
424
+ },
425
+ "language_model.model.layers.9.self_attn.o_proj": {
426
+ "bits": 8,
427
+ "group_size": 64
428
+ },
429
+ "language_model.model.layers.9.mlp.gate_proj": {
430
+ "bits": 8,
431
+ "group_size": 64
432
+ },
433
+ "language_model.model.layers.9.mlp.down_proj": {
434
+ "bits": 8,
435
+ "group_size": 64
436
+ },
437
+ "language_model.model.layers.9.mlp.up_proj": {
438
+ "bits": 8,
439
+ "group_size": 64
440
+ },
441
+ "language_model.model.layers.9.router.proj": {
442
+ "bits": 8,
443
+ "group_size": 64
444
+ },
445
+ "language_model.model.layers.9.experts.switch_glu.gate_proj": {
446
+ "bits": 4,
447
+ "group_size": 64
448
+ },
449
+ "language_model.model.layers.9.experts.switch_glu.up_proj": {
450
+ "bits": 4,
451
+ "group_size": 64
452
+ },
453
+ "language_model.model.layers.9.experts.switch_glu.down_proj": {
454
+ "bits": 4,
455
+ "group_size": 64
456
+ },
457
+ "language_model.model.layers.10.self_attn.q_proj": {
458
+ "bits": 8,
459
+ "group_size": 64
460
+ },
461
+ "language_model.model.layers.10.self_attn.k_proj": {
462
+ "bits": 8,
463
+ "group_size": 64
464
+ },
465
+ "language_model.model.layers.10.self_attn.v_proj": {
466
+ "bits": 8,
467
+ "group_size": 64
468
+ },
469
+ "language_model.model.layers.10.self_attn.o_proj": {
470
+ "bits": 8,
471
+ "group_size": 64
472
+ },
473
+ "language_model.model.layers.10.mlp.gate_proj": {
474
+ "bits": 8,
475
+ "group_size": 64
476
+ },
477
+ "language_model.model.layers.10.mlp.down_proj": {
478
+ "bits": 8,
479
+ "group_size": 64
480
+ },
481
+ "language_model.model.layers.10.mlp.up_proj": {
482
+ "bits": 8,
483
+ "group_size": 64
484
+ },
485
+ "language_model.model.layers.10.router.proj": {
486
+ "bits": 8,
487
+ "group_size": 64
488
+ },
489
+ "language_model.model.layers.10.experts.switch_glu.gate_proj": {
490
+ "bits": 4,
491
+ "group_size": 64
492
+ },
493
+ "language_model.model.layers.10.experts.switch_glu.up_proj": {
494
+ "bits": 4,
495
+ "group_size": 64
496
+ },
497
+ "language_model.model.layers.10.experts.switch_glu.down_proj": {
498
+ "bits": 4,
499
+ "group_size": 64
500
+ },
501
+ "language_model.model.layers.11.self_attn.q_proj": {
502
+ "bits": 4,
503
+ "group_size": 64
504
+ },
505
+ "language_model.model.layers.11.self_attn.k_proj": {
506
+ "bits": 8,
507
+ "group_size": 64
508
+ },
509
+ "language_model.model.layers.11.self_attn.o_proj": {
510
+ "bits": 4,
511
+ "group_size": 64
512
+ },
513
+ "language_model.model.layers.11.mlp.gate_proj": {
514
+ "bits": 8,
515
+ "group_size": 64
516
+ },
517
+ "language_model.model.layers.11.mlp.down_proj": {
518
+ "bits": 8,
519
+ "group_size": 64
520
+ },
521
+ "language_model.model.layers.11.mlp.up_proj": {
522
+ "bits": 8,
523
+ "group_size": 64
524
+ },
525
+ "language_model.model.layers.11.router.proj": {
526
+ "bits": 8,
527
+ "group_size": 64
528
+ },
529
+ "language_model.model.layers.11.experts.switch_glu.gate_proj": {
530
+ "bits": 4,
531
+ "group_size": 64
532
+ },
533
+ "language_model.model.layers.11.experts.switch_glu.up_proj": {
534
+ "bits": 4,
535
+ "group_size": 64
536
+ },
537
+ "language_model.model.layers.11.experts.switch_glu.down_proj": {
538
+ "bits": 4,
539
+ "group_size": 64
540
+ },
541
+ "language_model.model.layers.12.self_attn.q_proj": {
542
+ "bits": 8,
543
+ "group_size": 64
544
+ },
545
+ "language_model.model.layers.12.self_attn.k_proj": {
546
+ "bits": 8,
547
+ "group_size": 64
548
+ },
549
+ "language_model.model.layers.12.self_attn.v_proj": {
550
+ "bits": 8,
551
+ "group_size": 64
552
+ },
553
+ "language_model.model.layers.12.self_attn.o_proj": {
554
+ "bits": 4,
555
+ "group_size": 64
556
+ },
557
+ "language_model.model.layers.12.mlp.gate_proj": {
558
+ "bits": 8,
559
+ "group_size": 64
560
+ },
561
+ "language_model.model.layers.12.mlp.down_proj": {
562
+ "bits": 8,
563
+ "group_size": 64
564
+ },
565
+ "language_model.model.layers.12.mlp.up_proj": {
566
+ "bits": 8,
567
+ "group_size": 64
568
+ },
569
+ "language_model.model.layers.12.router.proj": {
570
+ "bits": 8,
571
+ "group_size": 64
572
+ },
573
+ "language_model.model.layers.12.experts.switch_glu.gate_proj": {
574
+ "bits": 4,
575
+ "group_size": 64
576
+ },
577
+ "language_model.model.layers.12.experts.switch_glu.up_proj": {
578
+ "bits": 4,
579
+ "group_size": 64
580
+ },
581
+ "language_model.model.layers.12.experts.switch_glu.down_proj": {
582
+ "bits": 4,
583
+ "group_size": 64
584
+ },
585
+ "language_model.model.layers.13.self_attn.q_proj": {
586
+ "bits": 8,
587
+ "group_size": 64
588
+ },
589
+ "language_model.model.layers.13.self_attn.k_proj": {
590
+ "bits": 8,
591
+ "group_size": 64
592
+ },
593
+ "language_model.model.layers.13.self_attn.v_proj": {
594
+ "bits": 8,
595
+ "group_size": 64
596
+ },
597
+ "language_model.model.layers.13.self_attn.o_proj": {
598
+ "bits": 8,
599
+ "group_size": 64
600
+ },
601
+ "language_model.model.layers.13.mlp.gate_proj": {
602
+ "bits": 8,
603
+ "group_size": 64
604
+ },
605
+ "language_model.model.layers.13.mlp.down_proj": {
606
+ "bits": 8,
607
+ "group_size": 64
608
+ },
609
+ "language_model.model.layers.13.mlp.up_proj": {
610
+ "bits": 8,
611
+ "group_size": 64
612
+ },
613
+ "language_model.model.layers.13.router.proj": {
614
+ "bits": 8,
615
+ "group_size": 64
616
+ },
617
+ "language_model.model.layers.13.experts.switch_glu.gate_proj": {
618
+ "bits": 4,
619
+ "group_size": 64
620
+ },
621
+ "language_model.model.layers.13.experts.switch_glu.up_proj": {
622
+ "bits": 4,
623
+ "group_size": 64
624
+ },
625
+ "language_model.model.layers.13.experts.switch_glu.down_proj": {
626
+ "bits": 4,
627
+ "group_size": 64
628
+ },
629
+ "language_model.model.layers.14.self_attn.q_proj": {
630
+ "bits": 8,
631
+ "group_size": 64
632
+ },
633
+ "language_model.model.layers.14.self_attn.k_proj": {
634
+ "bits": 8,
635
+ "group_size": 64
636
+ },
637
+ "language_model.model.layers.14.self_attn.v_proj": {
638
+ "bits": 8,
639
+ "group_size": 64
640
+ },
641
+ "language_model.model.layers.14.self_attn.o_proj": {
642
+ "bits": 8,
643
+ "group_size": 64
644
+ },
645
+ "language_model.model.layers.14.mlp.gate_proj": {
646
+ "bits": 8,
647
+ "group_size": 64
648
+ },
649
+ "language_model.model.layers.14.mlp.down_proj": {
650
+ "bits": 8,
651
+ "group_size": 64
652
+ },
653
+ "language_model.model.layers.14.mlp.up_proj": {
654
+ "bits": 8,
655
+ "group_size": 64
656
+ },
657
+ "language_model.model.layers.14.router.proj": {
658
+ "bits": 8,
659
+ "group_size": 64
660
+ },
661
+ "language_model.model.layers.14.experts.switch_glu.gate_proj": {
662
+ "bits": 4,
663
+ "group_size": 64
664
+ },
665
+ "language_model.model.layers.14.experts.switch_glu.up_proj": {
666
+ "bits": 4,
667
+ "group_size": 64
668
+ },
669
+ "language_model.model.layers.14.experts.switch_glu.down_proj": {
670
+ "bits": 4,
671
+ "group_size": 64
672
+ },
673
+ "language_model.model.layers.15.self_attn.q_proj": {
674
+ "bits": 4,
675
+ "group_size": 64
676
+ },
677
+ "language_model.model.layers.15.self_attn.k_proj": {
678
+ "bits": 8,
679
+ "group_size": 64
680
+ },
681
+ "language_model.model.layers.15.self_attn.v_proj": {
682
+ "bits": 8,
683
+ "group_size": 64
684
+ },
685
+ "language_model.model.layers.15.self_attn.o_proj": {
686
+ "bits": 4,
687
+ "group_size": 64
688
+ },
689
+ "language_model.model.layers.15.mlp.gate_proj": {
690
+ "bits": 8,
691
+ "group_size": 64
692
+ },
693
+ "language_model.model.layers.15.mlp.down_proj": {
694
+ "bits": 8,
695
+ "group_size": 64
696
+ },
697
+ "language_model.model.layers.15.mlp.up_proj": {
698
+ "bits": 8,
699
+ "group_size": 64
700
+ },
701
+ "language_model.model.layers.15.router.proj": {
702
+ "bits": 8,
703
+ "group_size": 64
704
+ },
705
+ "language_model.model.layers.15.experts.switch_glu.gate_proj": {
706
+ "bits": 4,
707
+ "group_size": 64
708
+ },
709
+ "language_model.model.layers.15.experts.switch_glu.up_proj": {
710
+ "bits": 4,
711
+ "group_size": 64
712
+ },
713
+ "language_model.model.layers.15.experts.switch_glu.down_proj": {
714
+ "bits": 4,
715
+ "group_size": 64
716
+ },
717
+ "language_model.model.layers.16.self_attn.q_proj": {
718
+ "bits": 4,
719
+ "group_size": 64
720
+ },
721
+ "language_model.model.layers.16.self_attn.k_proj": {
722
+ "bits": 8,
723
+ "group_size": 64
724
+ },
725
+ "language_model.model.layers.16.self_attn.v_proj": {
726
+ "bits": 8,
727
+ "group_size": 64
728
+ },
729
+ "language_model.model.layers.16.self_attn.o_proj": {
730
+ "bits": 4,
731
+ "group_size": 64
732
+ },
733
+ "language_model.model.layers.16.mlp.gate_proj": {
734
+ "bits": 8,
735
+ "group_size": 64
736
+ },
737
+ "language_model.model.layers.16.mlp.down_proj": {
738
+ "bits": 8,
739
+ "group_size": 64
740
+ },
741
+ "language_model.model.layers.16.mlp.up_proj": {
742
+ "bits": 8,
743
+ "group_size": 64
744
+ },
745
+ "language_model.model.layers.16.router.proj": {
746
+ "bits": 8,
747
+ "group_size": 64
748
+ },
749
+ "language_model.model.layers.16.experts.switch_glu.gate_proj": {
750
+ "bits": 4,
751
+ "group_size": 64
752
+ },
753
+ "language_model.model.layers.16.experts.switch_glu.up_proj": {
754
+ "bits": 4,
755
+ "group_size": 64
756
+ },
757
+ "language_model.model.layers.16.experts.switch_glu.down_proj": {
758
+ "bits": 4,
759
+ "group_size": 64
760
+ },
761
+ "language_model.model.layers.17.self_attn.q_proj": {
762
+ "bits": 4,
763
+ "group_size": 64
764
+ },
765
+ "language_model.model.layers.17.self_attn.k_proj": {
766
+ "bits": 8,
767
+ "group_size": 64
768
+ },
769
+ "language_model.model.layers.17.self_attn.o_proj": {
770
+ "bits": 4,
771
+ "group_size": 64
772
+ },
773
+ "language_model.model.layers.17.mlp.gate_proj": {
774
+ "bits": 8,
775
+ "group_size": 64
776
+ },
777
+ "language_model.model.layers.17.mlp.down_proj": {
778
+ "bits": 8,
779
+ "group_size": 64
780
+ },
781
+ "language_model.model.layers.17.mlp.up_proj": {
782
+ "bits": 8,
783
+ "group_size": 64
784
+ },
785
+ "language_model.model.layers.17.router.proj": {
786
+ "bits": 8,
787
+ "group_size": 64
788
+ },
789
+ "language_model.model.layers.17.experts.switch_glu.gate_proj": {
790
+ "bits": 4,
791
+ "group_size": 64
792
+ },
793
+ "language_model.model.layers.17.experts.switch_glu.up_proj": {
794
+ "bits": 4,
795
+ "group_size": 64
796
+ },
797
+ "language_model.model.layers.17.experts.switch_glu.down_proj": {
798
+ "bits": 4,
799
+ "group_size": 64
800
+ },
801
+ "language_model.model.layers.18.self_attn.q_proj": {
802
+ "bits": 8,
803
+ "group_size": 64
804
+ },
805
+ "language_model.model.layers.18.self_attn.k_proj": {
806
+ "bits": 8,
807
+ "group_size": 64
808
+ },
809
+ "language_model.model.layers.18.self_attn.v_proj": {
810
+ "bits": 8,
811
+ "group_size": 64
812
+ },
813
+ "language_model.model.layers.18.self_attn.o_proj": {
814
+ "bits": 4,
815
+ "group_size": 64
816
+ },
817
+ "language_model.model.layers.18.mlp.gate_proj": {
818
+ "bits": 8,
819
+ "group_size": 64
820
+ },
821
+ "language_model.model.layers.18.mlp.down_proj": {
822
+ "bits": 8,
823
+ "group_size": 64
824
+ },
825
+ "language_model.model.layers.18.mlp.up_proj": {
826
+ "bits": 8,
827
+ "group_size": 64
828
+ },
829
+ "language_model.model.layers.18.router.proj": {
830
+ "bits": 8,
831
+ "group_size": 64
832
+ },
833
+ "language_model.model.layers.18.experts.switch_glu.gate_proj": {
834
+ "bits": 4,
835
+ "group_size": 64
836
+ },
837
+ "language_model.model.layers.18.experts.switch_glu.up_proj": {
838
+ "bits": 4,
839
+ "group_size": 64
840
+ },
841
+ "language_model.model.layers.18.experts.switch_glu.down_proj": {
842
+ "bits": 4,
843
+ "group_size": 64
844
+ },
845
+ "language_model.model.layers.19.self_attn.q_proj": {
846
+ "bits": 8,
847
+ "group_size": 64
848
+ },
849
+ "language_model.model.layers.19.self_attn.k_proj": {
850
+ "bits": 8,
851
+ "group_size": 64
852
+ },
853
+ "language_model.model.layers.19.self_attn.v_proj": {
854
+ "bits": 8,
855
+ "group_size": 64
856
+ },
857
+ "language_model.model.layers.19.self_attn.o_proj": {
858
+ "bits": 4,
859
+ "group_size": 64
860
+ },
861
+ "language_model.model.layers.19.mlp.gate_proj": {
862
+ "bits": 8,
863
+ "group_size": 64
864
+ },
865
+ "language_model.model.layers.19.mlp.down_proj": {
866
+ "bits": 8,
867
+ "group_size": 64
868
+ },
869
+ "language_model.model.layers.19.mlp.up_proj": {
870
+ "bits": 8,
871
+ "group_size": 64
872
+ },
873
+ "language_model.model.layers.19.router.proj": {
874
+ "bits": 8,
875
+ "group_size": 64
876
+ },
877
+ "language_model.model.layers.19.experts.switch_glu.gate_proj": {
878
+ "bits": 4,
879
+ "group_size": 64
880
+ },
881
+ "language_model.model.layers.19.experts.switch_glu.up_proj": {
882
+ "bits": 4,
883
+ "group_size": 64
884
+ },
885
+ "language_model.model.layers.19.experts.switch_glu.down_proj": {
886
+ "bits": 4,
887
+ "group_size": 64
888
+ },
889
+ "language_model.model.layers.20.self_attn.q_proj": {
890
+ "bits": 8,
891
+ "group_size": 64
892
+ },
893
+ "language_model.model.layers.20.self_attn.k_proj": {
894
+ "bits": 8,
895
+ "group_size": 64
896
+ },
897
+ "language_model.model.layers.20.self_attn.v_proj": {
898
+ "bits": 8,
899
+ "group_size": 64
900
+ },
901
+ "language_model.model.layers.20.self_attn.o_proj": {
902
+ "bits": 4,
903
+ "group_size": 64
904
+ },
905
+ "language_model.model.layers.20.mlp.gate_proj": {
906
+ "bits": 8,
907
+ "group_size": 64
908
+ },
909
+ "language_model.model.layers.20.mlp.down_proj": {
910
+ "bits": 8,
911
+ "group_size": 64
912
+ },
913
+ "language_model.model.layers.20.mlp.up_proj": {
914
+ "bits": 8,
915
+ "group_size": 64
916
+ },
917
+ "language_model.model.layers.20.router.proj": {
918
+ "bits": 8,
919
+ "group_size": 64
920
+ },
921
+ "language_model.model.layers.20.experts.switch_glu.gate_proj": {
922
+ "bits": 4,
923
+ "group_size": 64
924
+ },
925
+ "language_model.model.layers.20.experts.switch_glu.up_proj": {
926
+ "bits": 4,
927
+ "group_size": 64
928
+ },
929
+ "language_model.model.layers.20.experts.switch_glu.down_proj": {
930
+ "bits": 4,
931
+ "group_size": 64
932
+ },
933
+ "language_model.model.layers.21.self_attn.q_proj": {
934
+ "bits": 8,
935
+ "group_size": 64
936
+ },
937
+ "language_model.model.layers.21.self_attn.k_proj": {
938
+ "bits": 8,
939
+ "group_size": 64
940
+ },
941
+ "language_model.model.layers.21.self_attn.v_proj": {
942
+ "bits": 8,
943
+ "group_size": 64
944
+ },
945
+ "language_model.model.layers.21.self_attn.o_proj": {
946
+ "bits": 4,
947
+ "group_size": 64
948
+ },
949
+ "language_model.model.layers.21.mlp.gate_proj": {
950
+ "bits": 8,
951
+ "group_size": 64
952
+ },
953
+ "language_model.model.layers.21.mlp.down_proj": {
954
+ "bits": 8,
955
+ "group_size": 64
956
+ },
957
+ "language_model.model.layers.21.mlp.up_proj": {
958
+ "bits": 8,
959
+ "group_size": 64
960
+ },
961
+ "language_model.model.layers.21.router.proj": {
962
+ "bits": 8,
963
+ "group_size": 64
964
+ },
965
+ "language_model.model.layers.21.experts.switch_glu.gate_proj": {
966
+ "bits": 4,
967
+ "group_size": 64
968
+ },
969
+ "language_model.model.layers.21.experts.switch_glu.up_proj": {
970
+ "bits": 4,
971
+ "group_size": 64
972
+ },
973
+ "language_model.model.layers.21.experts.switch_glu.down_proj": {
974
+ "bits": 4,
975
+ "group_size": 64
976
+ },
977
+ "language_model.model.layers.22.self_attn.q_proj": {
978
+ "bits": 4,
979
+ "group_size": 64
980
+ },
981
+ "language_model.model.layers.22.self_attn.k_proj": {
982
+ "bits": 8,
983
+ "group_size": 64
984
+ },
985
+ "language_model.model.layers.22.self_attn.v_proj": {
986
+ "bits": 8,
987
+ "group_size": 64
988
+ },
989
+ "language_model.model.layers.22.self_attn.o_proj": {
990
+ "bits": 4,
991
+ "group_size": 64
992
+ },
993
+ "language_model.model.layers.22.mlp.gate_proj": {
994
+ "bits": 8,
995
+ "group_size": 64
996
+ },
997
+ "language_model.model.layers.22.mlp.down_proj": {
998
+ "bits": 8,
999
+ "group_size": 64
1000
+ },
1001
+ "language_model.model.layers.22.mlp.up_proj": {
1002
+ "bits": 8,
1003
+ "group_size": 64
1004
+ },
1005
+ "language_model.model.layers.22.router.proj": {
1006
+ "bits": 8,
1007
+ "group_size": 64
1008
+ },
1009
+ "language_model.model.layers.22.experts.switch_glu.gate_proj": {
1010
+ "bits": 4,
1011
+ "group_size": 64
1012
+ },
1013
+ "language_model.model.layers.22.experts.switch_glu.up_proj": {
1014
+ "bits": 4,
1015
+ "group_size": 64
1016
+ },
1017
+ "language_model.model.layers.22.experts.switch_glu.down_proj": {
1018
+ "bits": 4,
1019
+ "group_size": 64
1020
+ },
1021
+ "language_model.model.layers.23.self_attn.q_proj": {
1022
+ "bits": 4,
1023
+ "group_size": 64
1024
+ },
1025
+ "language_model.model.layers.23.self_attn.k_proj": {
1026
+ "bits": 8,
1027
+ "group_size": 64
1028
+ },
1029
+ "language_model.model.layers.23.self_attn.o_proj": {
1030
+ "bits": 4,
1031
+ "group_size": 64
1032
+ },
1033
+ "language_model.model.layers.23.mlp.gate_proj": {
1034
+ "bits": 8,
1035
+ "group_size": 64
1036
+ },
1037
+ "language_model.model.layers.23.mlp.down_proj": {
1038
+ "bits": 8,
1039
+ "group_size": 64
1040
+ },
1041
+ "language_model.model.layers.23.mlp.up_proj": {
1042
+ "bits": 8,
1043
+ "group_size": 64
1044
+ },
1045
+ "language_model.model.layers.23.router.proj": {
1046
+ "bits": 8,
1047
+ "group_size": 64
1048
+ },
1049
+ "language_model.model.layers.23.experts.switch_glu.gate_proj": {
1050
+ "bits": 4,
1051
+ "group_size": 64
1052
+ },
1053
+ "language_model.model.layers.23.experts.switch_glu.up_proj": {
1054
+ "bits": 4,
1055
+ "group_size": 64
1056
+ },
1057
+ "language_model.model.layers.23.experts.switch_glu.down_proj": {
1058
+ "bits": 4,
1059
+ "group_size": 64
1060
+ },
1061
+ "language_model.model.layers.24.self_attn.q_proj": {
1062
+ "bits": 8,
1063
+ "group_size": 64
1064
+ },
1065
+ "language_model.model.layers.24.self_attn.k_proj": {
1066
+ "bits": 8,
1067
+ "group_size": 64
1068
+ },
1069
+ "language_model.model.layers.24.self_attn.v_proj": {
1070
+ "bits": 8,
1071
+ "group_size": 64
1072
+ },
1073
+ "language_model.model.layers.24.self_attn.o_proj": {
1074
+ "bits": 4,
1075
+ "group_size": 64
1076
+ },
1077
+ "language_model.model.layers.24.mlp.gate_proj": {
1078
+ "bits": 8,
1079
+ "group_size": 64
1080
+ },
1081
+ "language_model.model.layers.24.mlp.down_proj": {
1082
+ "bits": 8,
1083
+ "group_size": 64
1084
+ },
1085
+ "language_model.model.layers.24.mlp.up_proj": {
1086
+ "bits": 8,
1087
+ "group_size": 64
1088
+ },
1089
+ "language_model.model.layers.24.router.proj": {
1090
+ "bits": 8,
1091
+ "group_size": 64
1092
+ },
1093
+ "language_model.model.layers.24.experts.switch_glu.gate_proj": {
1094
+ "bits": 4,
1095
+ "group_size": 64
1096
+ },
1097
+ "language_model.model.layers.24.experts.switch_glu.up_proj": {
1098
+ "bits": 4,
1099
+ "group_size": 64
1100
+ },
1101
+ "language_model.model.layers.24.experts.switch_glu.down_proj": {
1102
+ "bits": 4,
1103
+ "group_size": 64
1104
+ },
1105
+ "language_model.model.layers.25.self_attn.q_proj": {
1106
+ "bits": 4,
1107
+ "group_size": 64
1108
+ },
1109
+ "language_model.model.layers.25.self_attn.k_proj": {
1110
+ "bits": 8,
1111
+ "group_size": 64
1112
+ },
1113
+ "language_model.model.layers.25.self_attn.v_proj": {
1114
+ "bits": 8,
1115
+ "group_size": 64
1116
+ },
1117
+ "language_model.model.layers.25.self_attn.o_proj": {
1118
+ "bits": 4,
1119
+ "group_size": 64
1120
+ },
1121
+ "language_model.model.layers.25.mlp.gate_proj": {
1122
+ "bits": 8,
1123
+ "group_size": 64
1124
+ },
1125
+ "language_model.model.layers.25.mlp.down_proj": {
1126
+ "bits": 8,
1127
+ "group_size": 64
1128
+ },
1129
+ "language_model.model.layers.25.mlp.up_proj": {
1130
+ "bits": 8,
1131
+ "group_size": 64
1132
+ },
1133
+ "language_model.model.layers.25.router.proj": {
1134
+ "bits": 8,
1135
+ "group_size": 64
1136
+ },
1137
+ "language_model.model.layers.25.experts.switch_glu.gate_proj": {
1138
+ "bits": 4,
1139
+ "group_size": 64
1140
+ },
1141
+ "language_model.model.layers.25.experts.switch_glu.up_proj": {
1142
+ "bits": 4,
1143
+ "group_size": 64
1144
+ },
1145
+ "language_model.model.layers.25.experts.switch_glu.down_proj": {
1146
+ "bits": 4,
1147
+ "group_size": 64
1148
+ },
1149
+ "language_model.model.layers.26.self_attn.q_proj": {
1150
+ "bits": 8,
1151
+ "group_size": 64
1152
+ },
1153
+ "language_model.model.layers.26.self_attn.k_proj": {
1154
+ "bits": 8,
1155
+ "group_size": 64
1156
+ },
1157
+ "language_model.model.layers.26.self_attn.v_proj": {
1158
+ "bits": 8,
1159
+ "group_size": 64
1160
+ },
1161
+ "language_model.model.layers.26.self_attn.o_proj": {
1162
+ "bits": 4,
1163
+ "group_size": 64
1164
+ },
1165
+ "language_model.model.layers.26.mlp.gate_proj": {
1166
+ "bits": 8,
1167
+ "group_size": 64
1168
+ },
1169
+ "language_model.model.layers.26.mlp.down_proj": {
1170
+ "bits": 8,
1171
+ "group_size": 64
1172
+ },
1173
+ "language_model.model.layers.26.mlp.up_proj": {
1174
+ "bits": 8,
1175
+ "group_size": 64
1176
+ },
1177
+ "language_model.model.layers.26.router.proj": {
1178
+ "bits": 8,
1179
+ "group_size": 64
1180
+ },
1181
+ "language_model.model.layers.26.experts.switch_glu.gate_proj": {
1182
+ "bits": 4,
1183
+ "group_size": 64
1184
+ },
1185
+ "language_model.model.layers.26.experts.switch_glu.up_proj": {
1186
+ "bits": 4,
1187
+ "group_size": 64
1188
+ },
1189
+ "language_model.model.layers.26.experts.switch_glu.down_proj": {
1190
+ "bits": 4,
1191
+ "group_size": 64
1192
+ },
1193
+ "language_model.model.layers.27.self_attn.q_proj": {
1194
+ "bits": 8,
1195
+ "group_size": 64
1196
+ },
1197
+ "language_model.model.layers.27.self_attn.k_proj": {
1198
+ "bits": 8,
1199
+ "group_size": 64
1200
+ },
1201
+ "language_model.model.layers.27.self_attn.v_proj": {
1202
+ "bits": 8,
1203
+ "group_size": 64
1204
+ },
1205
+ "language_model.model.layers.27.self_attn.o_proj": {
1206
+ "bits": 4,
1207
+ "group_size": 64
1208
+ },
1209
+ "language_model.model.layers.27.mlp.gate_proj": {
1210
+ "bits": 8,
1211
+ "group_size": 64
1212
+ },
1213
+ "language_model.model.layers.27.mlp.down_proj": {
1214
+ "bits": 8,
1215
+ "group_size": 64
1216
+ },
1217
+ "language_model.model.layers.27.mlp.up_proj": {
1218
+ "bits": 8,
1219
+ "group_size": 64
1220
+ },
1221
+ "language_model.model.layers.27.router.proj": {
1222
+ "bits": 8,
1223
+ "group_size": 64
1224
+ },
1225
+ "language_model.model.layers.27.experts.switch_glu.gate_proj": {
1226
+ "bits": 4,
1227
+ "group_size": 64
1228
+ },
1229
+ "language_model.model.layers.27.experts.switch_glu.up_proj": {
1230
+ "bits": 4,
1231
+ "group_size": 64
1232
+ },
1233
+ "language_model.model.layers.27.experts.switch_glu.down_proj": {
1234
+ "bits": 4,
1235
+ "group_size": 64
1236
+ },
1237
+ "language_model.model.layers.28.self_attn.q_proj": {
1238
+ "bits": 4,
1239
+ "group_size": 64
1240
+ },
1241
+ "language_model.model.layers.28.self_attn.k_proj": {
1242
+ "bits": 8,
1243
+ "group_size": 64
1244
+ },
1245
+ "language_model.model.layers.28.self_attn.v_proj": {
1246
+ "bits": 8,
1247
+ "group_size": 64
1248
+ },
1249
+ "language_model.model.layers.28.self_attn.o_proj": {
1250
+ "bits": 8,
1251
+ "group_size": 64
1252
+ },
1253
+ "language_model.model.layers.28.mlp.gate_proj": {
1254
+ "bits": 8,
1255
+ "group_size": 64
1256
+ },
1257
+ "language_model.model.layers.28.mlp.down_proj": {
1258
+ "bits": 8,
1259
+ "group_size": 64
1260
+ },
1261
+ "language_model.model.layers.28.mlp.up_proj": {
1262
+ "bits": 8,
1263
+ "group_size": 64
1264
+ },
1265
+ "language_model.model.layers.28.router.proj": {
1266
+ "bits": 8,
1267
+ "group_size": 64
1268
+ },
1269
+ "language_model.model.layers.28.experts.switch_glu.gate_proj": {
1270
+ "bits": 4,
1271
+ "group_size": 64
1272
+ },
1273
+ "language_model.model.layers.28.experts.switch_glu.up_proj": {
1274
+ "bits": 4,
1275
+ "group_size": 64
1276
+ },
1277
+ "language_model.model.layers.28.experts.switch_glu.down_proj": {
1278
+ "bits": 4,
1279
+ "group_size": 64
1280
+ },
1281
+ "language_model.model.layers.29.self_attn.q_proj": {
1282
+ "bits": 8,
1283
+ "group_size": 64
1284
+ },
1285
+ "language_model.model.layers.29.self_attn.k_proj": {
1286
+ "bits": 8,
1287
+ "group_size": 64
1288
+ },
1289
+ "language_model.model.layers.29.self_attn.o_proj": {
1290
+ "bits": 8,
1291
+ "group_size": 64
1292
+ },
1293
+ "language_model.model.layers.29.mlp.gate_proj": {
1294
+ "bits": 8,
1295
+ "group_size": 64
1296
+ },
1297
+ "language_model.model.layers.29.mlp.down_proj": {
1298
+ "bits": 8,
1299
+ "group_size": 64
1300
+ },
1301
+ "language_model.model.layers.29.mlp.up_proj": {
1302
+ "bits": 8,
1303
+ "group_size": 64
1304
+ },
1305
+ "language_model.model.layers.29.router.proj": {
1306
+ "bits": 8,
1307
+ "group_size": 64
1308
+ },
1309
+ "language_model.model.layers.29.experts.switch_glu.gate_proj": {
1310
+ "bits": 8,
1311
+ "group_size": 64
1312
+ },
1313
+ "language_model.model.layers.29.experts.switch_glu.up_proj": {
1314
+ "bits": 8,
1315
+ "group_size": 64
1316
+ },
1317
+ "language_model.model.layers.29.experts.switch_glu.down_proj": {
1318
+ "bits": 8,
1319
+ "group_size": 64
1320
+ }
1321
+ },
1322
+ "quantization_config": {
1323
+ "group_size": 64,
1324
+ "bits": 4,
1325
+ "mode": "affine",
1326
+ "language_model.model.embed_tokens": {
1327
+ "bits": 4,
1328
+ "group_size": 64
1329
+ },
1330
+ "language_model.model.layers.0.self_attn.q_proj": {
1331
+ "bits": 8,
1332
+ "group_size": 64
1333
+ },
1334
+ "language_model.model.layers.0.self_attn.k_proj": {
1335
+ "bits": 8,
1336
+ "group_size": 64
1337
+ },
1338
+ "language_model.model.layers.0.self_attn.v_proj": {
1339
+ "bits": 8,
1340
+ "group_size": 64
1341
+ },
1342
+ "language_model.model.layers.0.self_attn.o_proj": {
1343
+ "bits": 8,
1344
+ "group_size": 64
1345
+ },
1346
+ "language_model.model.layers.0.mlp.gate_proj": {
1347
+ "bits": 8,
1348
+ "group_size": 64
1349
+ },
1350
+ "language_model.model.layers.0.mlp.down_proj": {
1351
+ "bits": 8,
1352
+ "group_size": 64
1353
+ },
1354
+ "language_model.model.layers.0.mlp.up_proj": {
1355
+ "bits": 8,
1356
+ "group_size": 64
1357
+ },
1358
+ "language_model.model.layers.0.router.proj": {
1359
+ "bits": 8,
1360
+ "group_size": 64
1361
+ },
1362
+ "language_model.model.layers.0.experts.switch_glu.gate_proj": {
1363
+ "bits": 8,
1364
+ "group_size": 64
1365
+ },
1366
+ "language_model.model.layers.0.experts.switch_glu.up_proj": {
1367
+ "bits": 8,
1368
+ "group_size": 64
1369
+ },
1370
+ "language_model.model.layers.0.experts.switch_glu.down_proj": {
1371
+ "bits": 8,
1372
+ "group_size": 64
1373
+ },
1374
+ "language_model.model.layers.1.self_attn.q_proj": {
1375
+ "bits": 8,
1376
+ "group_size": 64
1377
+ },
1378
+ "language_model.model.layers.1.self_attn.k_proj": {
1379
+ "bits": 8,
1380
+ "group_size": 64
1381
+ },
1382
+ "language_model.model.layers.1.self_attn.v_proj": {
1383
+ "bits": 8,
1384
+ "group_size": 64
1385
+ },
1386
+ "language_model.model.layers.1.self_attn.o_proj": {
1387
+ "bits": 4,
1388
+ "group_size": 64
1389
+ },
1390
+ "language_model.model.layers.1.mlp.gate_proj": {
1391
+ "bits": 8,
1392
+ "group_size": 64
1393
+ },
1394
+ "language_model.model.layers.1.mlp.down_proj": {
1395
+ "bits": 8,
1396
+ "group_size": 64
1397
+ },
1398
+ "language_model.model.layers.1.mlp.up_proj": {
1399
+ "bits": 8,
1400
+ "group_size": 64
1401
+ },
1402
+ "language_model.model.layers.1.router.proj": {
1403
+ "bits": 8,
1404
+ "group_size": 64
1405
+ },
1406
+ "language_model.model.layers.1.experts.switch_glu.gate_proj": {
1407
+ "bits": 4,
1408
+ "group_size": 64
1409
+ },
1410
+ "language_model.model.layers.1.experts.switch_glu.up_proj": {
1411
+ "bits": 4,
1412
+ "group_size": 64
1413
+ },
1414
+ "language_model.model.layers.1.experts.switch_glu.down_proj": {
1415
+ "bits": 4,
1416
+ "group_size": 64
1417
+ },
1418
+ "language_model.model.layers.2.self_attn.q_proj": {
1419
+ "bits": 8,
1420
+ "group_size": 64
1421
+ },
1422
+ "language_model.model.layers.2.self_attn.k_proj": {
1423
+ "bits": 8,
1424
+ "group_size": 64
1425
+ },
1426
+ "language_model.model.layers.2.self_attn.v_proj": {
1427
+ "bits": 8,
1428
+ "group_size": 64
1429
+ },
1430
+ "language_model.model.layers.2.self_attn.o_proj": {
1431
+ "bits": 8,
1432
+ "group_size": 64
1433
+ },
1434
+ "language_model.model.layers.2.mlp.gate_proj": {
1435
+ "bits": 8,
1436
+ "group_size": 64
1437
+ },
1438
+ "language_model.model.layers.2.mlp.down_proj": {
1439
+ "bits": 8,
1440
+ "group_size": 64
1441
+ },
1442
+ "language_model.model.layers.2.mlp.up_proj": {
1443
+ "bits": 8,
1444
+ "group_size": 64
1445
+ },
1446
+ "language_model.model.layers.2.router.proj": {
1447
+ "bits": 8,
1448
+ "group_size": 64
1449
+ },
1450
+ "language_model.model.layers.2.experts.switch_glu.gate_proj": {
1451
+ "bits": 4,
1452
+ "group_size": 64
1453
+ },
1454
+ "language_model.model.layers.2.experts.switch_glu.up_proj": {
1455
+ "bits": 4,
1456
+ "group_size": 64
1457
+ },
1458
+ "language_model.model.layers.2.experts.switch_glu.down_proj": {
1459
+ "bits": 4,
1460
+ "group_size": 64
1461
+ },
1462
+ "language_model.model.layers.3.self_attn.q_proj": {
1463
+ "bits": 8,
1464
+ "group_size": 64
1465
+ },
1466
+ "language_model.model.layers.3.self_attn.k_proj": {
1467
+ "bits": 8,
1468
+ "group_size": 64
1469
+ },
1470
+ "language_model.model.layers.3.self_attn.v_proj": {
1471
+ "bits": 8,
1472
+ "group_size": 64
1473
+ },
1474
+ "language_model.model.layers.3.self_attn.o_proj": {
1475
+ "bits": 8,
1476
+ "group_size": 64
1477
+ },
1478
+ "language_model.model.layers.3.mlp.gate_proj": {
1479
+ "bits": 8,
1480
+ "group_size": 64
1481
+ },
1482
+ "language_model.model.layers.3.mlp.down_proj": {
1483
+ "bits": 8,
1484
+ "group_size": 64
1485
+ },
1486
+ "language_model.model.layers.3.mlp.up_proj": {
1487
+ "bits": 8,
1488
+ "group_size": 64
1489
+ },
1490
+ "language_model.model.layers.3.router.proj": {
1491
+ "bits": 8,
1492
+ "group_size": 64
1493
+ },
1494
+ "language_model.model.layers.3.experts.switch_glu.gate_proj": {
1495
+ "bits": 4,
1496
+ "group_size": 64
1497
+ },
1498
+ "language_model.model.layers.3.experts.switch_glu.up_proj": {
1499
+ "bits": 4,
1500
+ "group_size": 64
1501
+ },
1502
+ "language_model.model.layers.3.experts.switch_glu.down_proj": {
1503
+ "bits": 4,
1504
+ "group_size": 64
1505
+ },
1506
+ "language_model.model.layers.4.self_attn.q_proj": {
1507
+ "bits": 8,
1508
+ "group_size": 64
1509
+ },
1510
+ "language_model.model.layers.4.self_attn.k_proj": {
1511
+ "bits": 8,
1512
+ "group_size": 64
1513
+ },
1514
+ "language_model.model.layers.4.self_attn.v_proj": {
1515
+ "bits": 8,
1516
+ "group_size": 64
1517
+ },
1518
+ "language_model.model.layers.4.self_attn.o_proj": {
1519
+ "bits": 8,
1520
+ "group_size": 64
1521
+ },
1522
+ "language_model.model.layers.4.mlp.gate_proj": {
1523
+ "bits": 8,
1524
+ "group_size": 64
1525
+ },
1526
+ "language_model.model.layers.4.mlp.down_proj": {
1527
+ "bits": 8,
1528
+ "group_size": 64
1529
+ },
1530
+ "language_model.model.layers.4.mlp.up_proj": {
1531
+ "bits": 8,
1532
+ "group_size": 64
1533
+ },
1534
+ "language_model.model.layers.4.router.proj": {
1535
+ "bits": 8,
1536
+ "group_size": 64
1537
+ },
1538
+ "language_model.model.layers.4.experts.switch_glu.gate_proj": {
1539
+ "bits": 4,
1540
+ "group_size": 64
1541
+ },
1542
+ "language_model.model.layers.4.experts.switch_glu.up_proj": {
1543
+ "bits": 4,
1544
+ "group_size": 64
1545
+ },
1546
+ "language_model.model.layers.4.experts.switch_glu.down_proj": {
1547
+ "bits": 4,
1548
+ "group_size": 64
1549
+ },
1550
+ "language_model.model.layers.5.self_attn.q_proj": {
1551
+ "bits": 4,
1552
+ "group_size": 64
1553
+ },
1554
+ "language_model.model.layers.5.self_attn.k_proj": {
1555
+ "bits": 8,
1556
+ "group_size": 64
1557
+ },
1558
+ "language_model.model.layers.5.self_attn.o_proj": {
1559
+ "bits": 4,
1560
+ "group_size": 64
1561
+ },
1562
+ "language_model.model.layers.5.mlp.gate_proj": {
1563
+ "bits": 8,
1564
+ "group_size": 64
1565
+ },
1566
+ "language_model.model.layers.5.mlp.down_proj": {
1567
+ "bits": 8,
1568
+ "group_size": 64
1569
+ },
1570
+ "language_model.model.layers.5.mlp.up_proj": {
1571
+ "bits": 8,
1572
+ "group_size": 64
1573
+ },
1574
+ "language_model.model.layers.5.router.proj": {
1575
+ "bits": 8,
1576
+ "group_size": 64
1577
+ },
1578
+ "language_model.model.layers.5.experts.switch_glu.gate_proj": {
1579
+ "bits": 4,
1580
+ "group_size": 64
1581
+ },
1582
+ "language_model.model.layers.5.experts.switch_glu.up_proj": {
1583
+ "bits": 4,
1584
+ "group_size": 64
1585
+ },
1586
+ "language_model.model.layers.5.experts.switch_glu.down_proj": {
1587
+ "bits": 4,
1588
+ "group_size": 64
1589
+ },
1590
+ "language_model.model.layers.6.self_attn.q_proj": {
1591
+ "bits": 8,
1592
+ "group_size": 64
1593
+ },
1594
+ "language_model.model.layers.6.self_attn.k_proj": {
1595
+ "bits": 8,
1596
+ "group_size": 64
1597
+ },
1598
+ "language_model.model.layers.6.self_attn.v_proj": {
1599
+ "bits": 8,
1600
+ "group_size": 64
1601
+ },
1602
+ "language_model.model.layers.6.self_attn.o_proj": {
1603
+ "bits": 8,
1604
+ "group_size": 64
1605
+ },
1606
+ "language_model.model.layers.6.mlp.gate_proj": {
1607
+ "bits": 8,
1608
+ "group_size": 64
1609
+ },
1610
+ "language_model.model.layers.6.mlp.down_proj": {
1611
+ "bits": 8,
1612
+ "group_size": 64
1613
+ },
1614
+ "language_model.model.layers.6.mlp.up_proj": {
1615
+ "bits": 8,
1616
+ "group_size": 64
1617
+ },
1618
+ "language_model.model.layers.6.router.proj": {
1619
+ "bits": 8,
1620
+ "group_size": 64
1621
+ },
1622
+ "language_model.model.layers.6.experts.switch_glu.gate_proj": {
1623
+ "bits": 4,
1624
+ "group_size": 64
1625
+ },
1626
+ "language_model.model.layers.6.experts.switch_glu.up_proj": {
1627
+ "bits": 4,
1628
+ "group_size": 64
1629
+ },
1630
+ "language_model.model.layers.6.experts.switch_glu.down_proj": {
1631
+ "bits": 4,
1632
+ "group_size": 64
1633
+ },
1634
+ "language_model.model.layers.7.self_attn.q_proj": {
1635
+ "bits": 8,
1636
+ "group_size": 64
1637
+ },
1638
+ "language_model.model.layers.7.self_attn.k_proj": {
1639
+ "bits": 8,
1640
+ "group_size": 64
1641
+ },
1642
+ "language_model.model.layers.7.self_attn.v_proj": {
1643
+ "bits": 8,
1644
+ "group_size": 64
1645
+ },
1646
+ "language_model.model.layers.7.self_attn.o_proj": {
1647
+ "bits": 8,
1648
+ "group_size": 64
1649
+ },
1650
+ "language_model.model.layers.7.mlp.gate_proj": {
1651
+ "bits": 8,
1652
+ "group_size": 64
1653
+ },
1654
+ "language_model.model.layers.7.mlp.down_proj": {
1655
+ "bits": 8,
1656
+ "group_size": 64
1657
+ },
1658
+ "language_model.model.layers.7.mlp.up_proj": {
1659
+ "bits": 8,
1660
+ "group_size": 64
1661
+ },
1662
+ "language_model.model.layers.7.router.proj": {
1663
+ "bits": 8,
1664
+ "group_size": 64
1665
+ },
1666
+ "language_model.model.layers.7.experts.switch_glu.gate_proj": {
1667
+ "bits": 4,
1668
+ "group_size": 64
1669
+ },
1670
+ "language_model.model.layers.7.experts.switch_glu.up_proj": {
1671
+ "bits": 4,
1672
+ "group_size": 64
1673
+ },
1674
+ "language_model.model.layers.7.experts.switch_glu.down_proj": {
1675
+ "bits": 4,
1676
+ "group_size": 64
1677
+ },
1678
+ "language_model.model.layers.8.self_attn.q_proj": {
1679
+ "bits": 8,
1680
+ "group_size": 64
1681
+ },
1682
+ "language_model.model.layers.8.self_attn.k_proj": {
1683
+ "bits": 8,
1684
+ "group_size": 64
1685
+ },
1686
+ "language_model.model.layers.8.self_attn.v_proj": {
1687
+ "bits": 8,
1688
+ "group_size": 64
1689
+ },
1690
+ "language_model.model.layers.8.self_attn.o_proj": {
1691
+ "bits": 8,
1692
+ "group_size": 64
1693
+ },
1694
+ "language_model.model.layers.8.mlp.gate_proj": {
1695
+ "bits": 8,
1696
+ "group_size": 64
1697
+ },
1698
+ "language_model.model.layers.8.mlp.down_proj": {
1699
+ "bits": 8,
1700
+ "group_size": 64
1701
+ },
1702
+ "language_model.model.layers.8.mlp.up_proj": {
1703
+ "bits": 8,
1704
+ "group_size": 64
1705
+ },
1706
+ "language_model.model.layers.8.router.proj": {
1707
+ "bits": 8,
1708
+ "group_size": 64
1709
+ },
1710
+ "language_model.model.layers.8.experts.switch_glu.gate_proj": {
1711
+ "bits": 4,
1712
+ "group_size": 64
1713
+ },
1714
+ "language_model.model.layers.8.experts.switch_glu.up_proj": {
1715
+ "bits": 4,
1716
+ "group_size": 64
1717
+ },
1718
+ "language_model.model.layers.8.experts.switch_glu.down_proj": {
1719
+ "bits": 4,
1720
+ "group_size": 64
1721
+ },
1722
+ "language_model.model.layers.9.self_attn.q_proj": {
1723
+ "bits": 8,
1724
+ "group_size": 64
1725
+ },
1726
+ "language_model.model.layers.9.self_attn.k_proj": {
1727
+ "bits": 8,
1728
+ "group_size": 64
1729
+ },
1730
+ "language_model.model.layers.9.self_attn.v_proj": {
1731
+ "bits": 8,
1732
+ "group_size": 64
1733
+ },
1734
+ "language_model.model.layers.9.self_attn.o_proj": {
1735
+ "bits": 8,
1736
+ "group_size": 64
1737
+ },
1738
+ "language_model.model.layers.9.mlp.gate_proj": {
1739
+ "bits": 8,
1740
+ "group_size": 64
1741
+ },
1742
+ "language_model.model.layers.9.mlp.down_proj": {
1743
+ "bits": 8,
1744
+ "group_size": 64
1745
+ },
1746
+ "language_model.model.layers.9.mlp.up_proj": {
1747
+ "bits": 8,
1748
+ "group_size": 64
1749
+ },
1750
+ "language_model.model.layers.9.router.proj": {
1751
+ "bits": 8,
1752
+ "group_size": 64
1753
+ },
1754
+ "language_model.model.layers.9.experts.switch_glu.gate_proj": {
1755
+ "bits": 4,
1756
+ "group_size": 64
1757
+ },
1758
+ "language_model.model.layers.9.experts.switch_glu.up_proj": {
1759
+ "bits": 4,
1760
+ "group_size": 64
1761
+ },
1762
+ "language_model.model.layers.9.experts.switch_glu.down_proj": {
1763
+ "bits": 4,
1764
+ "group_size": 64
1765
+ },
1766
+ "language_model.model.layers.10.self_attn.q_proj": {
1767
+ "bits": 8,
1768
+ "group_size": 64
1769
+ },
1770
+ "language_model.model.layers.10.self_attn.k_proj": {
1771
+ "bits": 8,
1772
+ "group_size": 64
1773
+ },
1774
+ "language_model.model.layers.10.self_attn.v_proj": {
1775
+ "bits": 8,
1776
+ "group_size": 64
1777
+ },
1778
+ "language_model.model.layers.10.self_attn.o_proj": {
1779
+ "bits": 8,
1780
+ "group_size": 64
1781
+ },
1782
+ "language_model.model.layers.10.mlp.gate_proj": {
1783
+ "bits": 8,
1784
+ "group_size": 64
1785
+ },
1786
+ "language_model.model.layers.10.mlp.down_proj": {
1787
+ "bits": 8,
1788
+ "group_size": 64
1789
+ },
1790
+ "language_model.model.layers.10.mlp.up_proj": {
1791
+ "bits": 8,
1792
+ "group_size": 64
1793
+ },
1794
+ "language_model.model.layers.10.router.proj": {
1795
+ "bits": 8,
1796
+ "group_size": 64
1797
+ },
1798
+ "language_model.model.layers.10.experts.switch_glu.gate_proj": {
1799
+ "bits": 4,
1800
+ "group_size": 64
1801
+ },
1802
+ "language_model.model.layers.10.experts.switch_glu.up_proj": {
1803
+ "bits": 4,
1804
+ "group_size": 64
1805
+ },
1806
+ "language_model.model.layers.10.experts.switch_glu.down_proj": {
1807
+ "bits": 4,
1808
+ "group_size": 64
1809
+ },
1810
+ "language_model.model.layers.11.self_attn.q_proj": {
1811
+ "bits": 4,
1812
+ "group_size": 64
1813
+ },
1814
+ "language_model.model.layers.11.self_attn.k_proj": {
1815
+ "bits": 8,
1816
+ "group_size": 64
1817
+ },
1818
+ "language_model.model.layers.11.self_attn.o_proj": {
1819
+ "bits": 4,
1820
+ "group_size": 64
1821
+ },
1822
+ "language_model.model.layers.11.mlp.gate_proj": {
1823
+ "bits": 8,
1824
+ "group_size": 64
1825
+ },
1826
+ "language_model.model.layers.11.mlp.down_proj": {
1827
+ "bits": 8,
1828
+ "group_size": 64
1829
+ },
1830
+ "language_model.model.layers.11.mlp.up_proj": {
1831
+ "bits": 8,
1832
+ "group_size": 64
1833
+ },
1834
+ "language_model.model.layers.11.router.proj": {
1835
+ "bits": 8,
1836
+ "group_size": 64
1837
+ },
1838
+ "language_model.model.layers.11.experts.switch_glu.gate_proj": {
1839
+ "bits": 4,
1840
+ "group_size": 64
1841
+ },
1842
+ "language_model.model.layers.11.experts.switch_glu.up_proj": {
1843
+ "bits": 4,
1844
+ "group_size": 64
1845
+ },
1846
+ "language_model.model.layers.11.experts.switch_glu.down_proj": {
1847
+ "bits": 4,
1848
+ "group_size": 64
1849
+ },
1850
+ "language_model.model.layers.12.self_attn.q_proj": {
1851
+ "bits": 8,
1852
+ "group_size": 64
1853
+ },
1854
+ "language_model.model.layers.12.self_attn.k_proj": {
1855
+ "bits": 8,
1856
+ "group_size": 64
1857
+ },
1858
+ "language_model.model.layers.12.self_attn.v_proj": {
1859
+ "bits": 8,
1860
+ "group_size": 64
1861
+ },
1862
+ "language_model.model.layers.12.self_attn.o_proj": {
1863
+ "bits": 4,
1864
+ "group_size": 64
1865
+ },
1866
+ "language_model.model.layers.12.mlp.gate_proj": {
1867
+ "bits": 8,
1868
+ "group_size": 64
1869
+ },
1870
+ "language_model.model.layers.12.mlp.down_proj": {
1871
+ "bits": 8,
1872
+ "group_size": 64
1873
+ },
1874
+ "language_model.model.layers.12.mlp.up_proj": {
1875
+ "bits": 8,
1876
+ "group_size": 64
1877
+ },
1878
+ "language_model.model.layers.12.router.proj": {
1879
+ "bits": 8,
1880
+ "group_size": 64
1881
+ },
1882
+ "language_model.model.layers.12.experts.switch_glu.gate_proj": {
1883
+ "bits": 4,
1884
+ "group_size": 64
1885
+ },
1886
+ "language_model.model.layers.12.experts.switch_glu.up_proj": {
1887
+ "bits": 4,
1888
+ "group_size": 64
1889
+ },
1890
+ "language_model.model.layers.12.experts.switch_glu.down_proj": {
1891
+ "bits": 4,
1892
+ "group_size": 64
1893
+ },
1894
+ "language_model.model.layers.13.self_attn.q_proj": {
1895
+ "bits": 8,
1896
+ "group_size": 64
1897
+ },
1898
+ "language_model.model.layers.13.self_attn.k_proj": {
1899
+ "bits": 8,
1900
+ "group_size": 64
1901
+ },
1902
+ "language_model.model.layers.13.self_attn.v_proj": {
1903
+ "bits": 8,
1904
+ "group_size": 64
1905
+ },
1906
+ "language_model.model.layers.13.self_attn.o_proj": {
1907
+ "bits": 8,
1908
+ "group_size": 64
1909
+ },
1910
+ "language_model.model.layers.13.mlp.gate_proj": {
1911
+ "bits": 8,
1912
+ "group_size": 64
1913
+ },
1914
+ "language_model.model.layers.13.mlp.down_proj": {
1915
+ "bits": 8,
1916
+ "group_size": 64
1917
+ },
1918
+ "language_model.model.layers.13.mlp.up_proj": {
1919
+ "bits": 8,
1920
+ "group_size": 64
1921
+ },
1922
+ "language_model.model.layers.13.router.proj": {
1923
+ "bits": 8,
1924
+ "group_size": 64
1925
+ },
1926
+ "language_model.model.layers.13.experts.switch_glu.gate_proj": {
1927
+ "bits": 4,
1928
+ "group_size": 64
1929
+ },
1930
+ "language_model.model.layers.13.experts.switch_glu.up_proj": {
1931
+ "bits": 4,
1932
+ "group_size": 64
1933
+ },
1934
+ "language_model.model.layers.13.experts.switch_glu.down_proj": {
1935
+ "bits": 4,
1936
+ "group_size": 64
1937
+ },
1938
+ "language_model.model.layers.14.self_attn.q_proj": {
1939
+ "bits": 8,
1940
+ "group_size": 64
1941
+ },
1942
+ "language_model.model.layers.14.self_attn.k_proj": {
1943
+ "bits": 8,
1944
+ "group_size": 64
1945
+ },
1946
+ "language_model.model.layers.14.self_attn.v_proj": {
1947
+ "bits": 8,
1948
+ "group_size": 64
1949
+ },
1950
+ "language_model.model.layers.14.self_attn.o_proj": {
1951
+ "bits": 8,
1952
+ "group_size": 64
1953
+ },
1954
+ "language_model.model.layers.14.mlp.gate_proj": {
1955
+ "bits": 8,
1956
+ "group_size": 64
1957
+ },
1958
+ "language_model.model.layers.14.mlp.down_proj": {
1959
+ "bits": 8,
1960
+ "group_size": 64
1961
+ },
1962
+ "language_model.model.layers.14.mlp.up_proj": {
1963
+ "bits": 8,
1964
+ "group_size": 64
1965
+ },
1966
+ "language_model.model.layers.14.router.proj": {
1967
+ "bits": 8,
1968
+ "group_size": 64
1969
+ },
1970
+ "language_model.model.layers.14.experts.switch_glu.gate_proj": {
1971
+ "bits": 4,
1972
+ "group_size": 64
1973
+ },
1974
+ "language_model.model.layers.14.experts.switch_glu.up_proj": {
1975
+ "bits": 4,
1976
+ "group_size": 64
1977
+ },
1978
+ "language_model.model.layers.14.experts.switch_glu.down_proj": {
1979
+ "bits": 4,
1980
+ "group_size": 64
1981
+ },
1982
+ "language_model.model.layers.15.self_attn.q_proj": {
1983
+ "bits": 4,
1984
+ "group_size": 64
1985
+ },
1986
+ "language_model.model.layers.15.self_attn.k_proj": {
1987
+ "bits": 8,
1988
+ "group_size": 64
1989
+ },
1990
+ "language_model.model.layers.15.self_attn.v_proj": {
1991
+ "bits": 8,
1992
+ "group_size": 64
1993
+ },
1994
+ "language_model.model.layers.15.self_attn.o_proj": {
1995
+ "bits": 4,
1996
+ "group_size": 64
1997
+ },
1998
+ "language_model.model.layers.15.mlp.gate_proj": {
1999
+ "bits": 8,
2000
+ "group_size": 64
2001
+ },
2002
+ "language_model.model.layers.15.mlp.down_proj": {
2003
+ "bits": 8,
2004
+ "group_size": 64
2005
+ },
2006
+ "language_model.model.layers.15.mlp.up_proj": {
2007
+ "bits": 8,
2008
+ "group_size": 64
2009
+ },
2010
+ "language_model.model.layers.15.router.proj": {
2011
+ "bits": 8,
2012
+ "group_size": 64
2013
+ },
2014
+ "language_model.model.layers.15.experts.switch_glu.gate_proj": {
2015
+ "bits": 4,
2016
+ "group_size": 64
2017
+ },
2018
+ "language_model.model.layers.15.experts.switch_glu.up_proj": {
2019
+ "bits": 4,
2020
+ "group_size": 64
2021
+ },
2022
+ "language_model.model.layers.15.experts.switch_glu.down_proj": {
2023
+ "bits": 4,
2024
+ "group_size": 64
2025
+ },
2026
+ "language_model.model.layers.16.self_attn.q_proj": {
2027
+ "bits": 4,
2028
+ "group_size": 64
2029
+ },
2030
+ "language_model.model.layers.16.self_attn.k_proj": {
2031
+ "bits": 8,
2032
+ "group_size": 64
2033
+ },
2034
+ "language_model.model.layers.16.self_attn.v_proj": {
2035
+ "bits": 8,
2036
+ "group_size": 64
2037
+ },
2038
+ "language_model.model.layers.16.self_attn.o_proj": {
2039
+ "bits": 4,
2040
+ "group_size": 64
2041
+ },
2042
+ "language_model.model.layers.16.mlp.gate_proj": {
2043
+ "bits": 8,
2044
+ "group_size": 64
2045
+ },
2046
+ "language_model.model.layers.16.mlp.down_proj": {
2047
+ "bits": 8,
2048
+ "group_size": 64
2049
+ },
2050
+ "language_model.model.layers.16.mlp.up_proj": {
2051
+ "bits": 8,
2052
+ "group_size": 64
2053
+ },
2054
+ "language_model.model.layers.16.router.proj": {
2055
+ "bits": 8,
2056
+ "group_size": 64
2057
+ },
2058
+ "language_model.model.layers.16.experts.switch_glu.gate_proj": {
2059
+ "bits": 4,
2060
+ "group_size": 64
2061
+ },
2062
+ "language_model.model.layers.16.experts.switch_glu.up_proj": {
2063
+ "bits": 4,
2064
+ "group_size": 64
2065
+ },
2066
+ "language_model.model.layers.16.experts.switch_glu.down_proj": {
2067
+ "bits": 4,
2068
+ "group_size": 64
2069
+ },
2070
+ "language_model.model.layers.17.self_attn.q_proj": {
2071
+ "bits": 4,
2072
+ "group_size": 64
2073
+ },
2074
+ "language_model.model.layers.17.self_attn.k_proj": {
2075
+ "bits": 8,
2076
+ "group_size": 64
2077
+ },
2078
+ "language_model.model.layers.17.self_attn.o_proj": {
2079
+ "bits": 4,
2080
+ "group_size": 64
2081
+ },
2082
+ "language_model.model.layers.17.mlp.gate_proj": {
2083
+ "bits": 8,
2084
+ "group_size": 64
2085
+ },
2086
+ "language_model.model.layers.17.mlp.down_proj": {
2087
+ "bits": 8,
2088
+ "group_size": 64
2089
+ },
2090
+ "language_model.model.layers.17.mlp.up_proj": {
2091
+ "bits": 8,
2092
+ "group_size": 64
2093
+ },
2094
+ "language_model.model.layers.17.router.proj": {
2095
+ "bits": 8,
2096
+ "group_size": 64
2097
+ },
2098
+ "language_model.model.layers.17.experts.switch_glu.gate_proj": {
2099
+ "bits": 4,
2100
+ "group_size": 64
2101
+ },
2102
+ "language_model.model.layers.17.experts.switch_glu.up_proj": {
2103
+ "bits": 4,
2104
+ "group_size": 64
2105
+ },
2106
+ "language_model.model.layers.17.experts.switch_glu.down_proj": {
2107
+ "bits": 4,
2108
+ "group_size": 64
2109
+ },
2110
+ "language_model.model.layers.18.self_attn.q_proj": {
2111
+ "bits": 8,
2112
+ "group_size": 64
2113
+ },
2114
+ "language_model.model.layers.18.self_attn.k_proj": {
2115
+ "bits": 8,
2116
+ "group_size": 64
2117
+ },
2118
+ "language_model.model.layers.18.self_attn.v_proj": {
2119
+ "bits": 8,
2120
+ "group_size": 64
2121
+ },
2122
+ "language_model.model.layers.18.self_attn.o_proj": {
2123
+ "bits": 4,
2124
+ "group_size": 64
2125
+ },
2126
+ "language_model.model.layers.18.mlp.gate_proj": {
2127
+ "bits": 8,
2128
+ "group_size": 64
2129
+ },
2130
+ "language_model.model.layers.18.mlp.down_proj": {
2131
+ "bits": 8,
2132
+ "group_size": 64
2133
+ },
2134
+ "language_model.model.layers.18.mlp.up_proj": {
2135
+ "bits": 8,
2136
+ "group_size": 64
2137
+ },
2138
+ "language_model.model.layers.18.router.proj": {
2139
+ "bits": 8,
2140
+ "group_size": 64
2141
+ },
2142
+ "language_model.model.layers.18.experts.switch_glu.gate_proj": {
2143
+ "bits": 4,
2144
+ "group_size": 64
2145
+ },
2146
+ "language_model.model.layers.18.experts.switch_glu.up_proj": {
2147
+ "bits": 4,
2148
+ "group_size": 64
2149
+ },
2150
+ "language_model.model.layers.18.experts.switch_glu.down_proj": {
2151
+ "bits": 4,
2152
+ "group_size": 64
2153
+ },
2154
+ "language_model.model.layers.19.self_attn.q_proj": {
2155
+ "bits": 8,
2156
+ "group_size": 64
2157
+ },
2158
+ "language_model.model.layers.19.self_attn.k_proj": {
2159
+ "bits": 8,
2160
+ "group_size": 64
2161
+ },
2162
+ "language_model.model.layers.19.self_attn.v_proj": {
2163
+ "bits": 8,
2164
+ "group_size": 64
2165
+ },
2166
+ "language_model.model.layers.19.self_attn.o_proj": {
2167
+ "bits": 4,
2168
+ "group_size": 64
2169
+ },
2170
+ "language_model.model.layers.19.mlp.gate_proj": {
2171
+ "bits": 8,
2172
+ "group_size": 64
2173
+ },
2174
+ "language_model.model.layers.19.mlp.down_proj": {
2175
+ "bits": 8,
2176
+ "group_size": 64
2177
+ },
2178
+ "language_model.model.layers.19.mlp.up_proj": {
2179
+ "bits": 8,
2180
+ "group_size": 64
2181
+ },
2182
+ "language_model.model.layers.19.router.proj": {
2183
+ "bits": 8,
2184
+ "group_size": 64
2185
+ },
2186
+ "language_model.model.layers.19.experts.switch_glu.gate_proj": {
2187
+ "bits": 4,
2188
+ "group_size": 64
2189
+ },
2190
+ "language_model.model.layers.19.experts.switch_glu.up_proj": {
2191
+ "bits": 4,
2192
+ "group_size": 64
2193
+ },
2194
+ "language_model.model.layers.19.experts.switch_glu.down_proj": {
2195
+ "bits": 4,
2196
+ "group_size": 64
2197
+ },
2198
+ "language_model.model.layers.20.self_attn.q_proj": {
2199
+ "bits": 8,
2200
+ "group_size": 64
2201
+ },
2202
+ "language_model.model.layers.20.self_attn.k_proj": {
2203
+ "bits": 8,
2204
+ "group_size": 64
2205
+ },
2206
+ "language_model.model.layers.20.self_attn.v_proj": {
2207
+ "bits": 8,
2208
+ "group_size": 64
2209
+ },
2210
+ "language_model.model.layers.20.self_attn.o_proj": {
2211
+ "bits": 4,
2212
+ "group_size": 64
2213
+ },
2214
+ "language_model.model.layers.20.mlp.gate_proj": {
2215
+ "bits": 8,
2216
+ "group_size": 64
2217
+ },
2218
+ "language_model.model.layers.20.mlp.down_proj": {
2219
+ "bits": 8,
2220
+ "group_size": 64
2221
+ },
2222
+ "language_model.model.layers.20.mlp.up_proj": {
2223
+ "bits": 8,
2224
+ "group_size": 64
2225
+ },
2226
+ "language_model.model.layers.20.router.proj": {
2227
+ "bits": 8,
2228
+ "group_size": 64
2229
+ },
2230
+ "language_model.model.layers.20.experts.switch_glu.gate_proj": {
2231
+ "bits": 4,
2232
+ "group_size": 64
2233
+ },
2234
+ "language_model.model.layers.20.experts.switch_glu.up_proj": {
2235
+ "bits": 4,
2236
+ "group_size": 64
2237
+ },
2238
+ "language_model.model.layers.20.experts.switch_glu.down_proj": {
2239
+ "bits": 4,
2240
+ "group_size": 64
2241
+ },
2242
+ "language_model.model.layers.21.self_attn.q_proj": {
2243
+ "bits": 8,
2244
+ "group_size": 64
2245
+ },
2246
+ "language_model.model.layers.21.self_attn.k_proj": {
2247
+ "bits": 8,
2248
+ "group_size": 64
2249
+ },
2250
+ "language_model.model.layers.21.self_attn.v_proj": {
2251
+ "bits": 8,
2252
+ "group_size": 64
2253
+ },
2254
+ "language_model.model.layers.21.self_attn.o_proj": {
2255
+ "bits": 4,
2256
+ "group_size": 64
2257
+ },
2258
+ "language_model.model.layers.21.mlp.gate_proj": {
2259
+ "bits": 8,
2260
+ "group_size": 64
2261
+ },
2262
+ "language_model.model.layers.21.mlp.down_proj": {
2263
+ "bits": 8,
2264
+ "group_size": 64
2265
+ },
2266
+ "language_model.model.layers.21.mlp.up_proj": {
2267
+ "bits": 8,
2268
+ "group_size": 64
2269
+ },
2270
+ "language_model.model.layers.21.router.proj": {
2271
+ "bits": 8,
2272
+ "group_size": 64
2273
+ },
2274
+ "language_model.model.layers.21.experts.switch_glu.gate_proj": {
2275
+ "bits": 4,
2276
+ "group_size": 64
2277
+ },
2278
+ "language_model.model.layers.21.experts.switch_glu.up_proj": {
2279
+ "bits": 4,
2280
+ "group_size": 64
2281
+ },
2282
+ "language_model.model.layers.21.experts.switch_glu.down_proj": {
2283
+ "bits": 4,
2284
+ "group_size": 64
2285
+ },
2286
+ "language_model.model.layers.22.self_attn.q_proj": {
2287
+ "bits": 4,
2288
+ "group_size": 64
2289
+ },
2290
+ "language_model.model.layers.22.self_attn.k_proj": {
2291
+ "bits": 8,
2292
+ "group_size": 64
2293
+ },
2294
+ "language_model.model.layers.22.self_attn.v_proj": {
2295
+ "bits": 8,
2296
+ "group_size": 64
2297
+ },
2298
+ "language_model.model.layers.22.self_attn.o_proj": {
2299
+ "bits": 4,
2300
+ "group_size": 64
2301
+ },
2302
+ "language_model.model.layers.22.mlp.gate_proj": {
2303
+ "bits": 8,
2304
+ "group_size": 64
2305
+ },
2306
+ "language_model.model.layers.22.mlp.down_proj": {
2307
+ "bits": 8,
2308
+ "group_size": 64
2309
+ },
2310
+ "language_model.model.layers.22.mlp.up_proj": {
2311
+ "bits": 8,
2312
+ "group_size": 64
2313
+ },
2314
+ "language_model.model.layers.22.router.proj": {
2315
+ "bits": 8,
2316
+ "group_size": 64
2317
+ },
2318
+ "language_model.model.layers.22.experts.switch_glu.gate_proj": {
2319
+ "bits": 4,
2320
+ "group_size": 64
2321
+ },
2322
+ "language_model.model.layers.22.experts.switch_glu.up_proj": {
2323
+ "bits": 4,
2324
+ "group_size": 64
2325
+ },
2326
+ "language_model.model.layers.22.experts.switch_glu.down_proj": {
2327
+ "bits": 4,
2328
+ "group_size": 64
2329
+ },
2330
+ "language_model.model.layers.23.self_attn.q_proj": {
2331
+ "bits": 4,
2332
+ "group_size": 64
2333
+ },
2334
+ "language_model.model.layers.23.self_attn.k_proj": {
2335
+ "bits": 8,
2336
+ "group_size": 64
2337
+ },
2338
+ "language_model.model.layers.23.self_attn.o_proj": {
2339
+ "bits": 4,
2340
+ "group_size": 64
2341
+ },
2342
+ "language_model.model.layers.23.mlp.gate_proj": {
2343
+ "bits": 8,
2344
+ "group_size": 64
2345
+ },
2346
+ "language_model.model.layers.23.mlp.down_proj": {
2347
+ "bits": 8,
2348
+ "group_size": 64
2349
+ },
2350
+ "language_model.model.layers.23.mlp.up_proj": {
2351
+ "bits": 8,
2352
+ "group_size": 64
2353
+ },
2354
+ "language_model.model.layers.23.router.proj": {
2355
+ "bits": 8,
2356
+ "group_size": 64
2357
+ },
2358
+ "language_model.model.layers.23.experts.switch_glu.gate_proj": {
2359
+ "bits": 4,
2360
+ "group_size": 64
2361
+ },
2362
+ "language_model.model.layers.23.experts.switch_glu.up_proj": {
2363
+ "bits": 4,
2364
+ "group_size": 64
2365
+ },
2366
+ "language_model.model.layers.23.experts.switch_glu.down_proj": {
2367
+ "bits": 4,
2368
+ "group_size": 64
2369
+ },
2370
+ "language_model.model.layers.24.self_attn.q_proj": {
2371
+ "bits": 8,
2372
+ "group_size": 64
2373
+ },
2374
+ "language_model.model.layers.24.self_attn.k_proj": {
2375
+ "bits": 8,
2376
+ "group_size": 64
2377
+ },
2378
+ "language_model.model.layers.24.self_attn.v_proj": {
2379
+ "bits": 8,
2380
+ "group_size": 64
2381
+ },
2382
+ "language_model.model.layers.24.self_attn.o_proj": {
2383
+ "bits": 4,
2384
+ "group_size": 64
2385
+ },
2386
+ "language_model.model.layers.24.mlp.gate_proj": {
2387
+ "bits": 8,
2388
+ "group_size": 64
2389
+ },
2390
+ "language_model.model.layers.24.mlp.down_proj": {
2391
+ "bits": 8,
2392
+ "group_size": 64
2393
+ },
2394
+ "language_model.model.layers.24.mlp.up_proj": {
2395
+ "bits": 8,
2396
+ "group_size": 64
2397
+ },
2398
+ "language_model.model.layers.24.router.proj": {
2399
+ "bits": 8,
2400
+ "group_size": 64
2401
+ },
2402
+ "language_model.model.layers.24.experts.switch_glu.gate_proj": {
2403
+ "bits": 4,
2404
+ "group_size": 64
2405
+ },
2406
+ "language_model.model.layers.24.experts.switch_glu.up_proj": {
2407
+ "bits": 4,
2408
+ "group_size": 64
2409
+ },
2410
+ "language_model.model.layers.24.experts.switch_glu.down_proj": {
2411
+ "bits": 4,
2412
+ "group_size": 64
2413
+ },
2414
+ "language_model.model.layers.25.self_attn.q_proj": {
2415
+ "bits": 4,
2416
+ "group_size": 64
2417
+ },
2418
+ "language_model.model.layers.25.self_attn.k_proj": {
2419
+ "bits": 8,
2420
+ "group_size": 64
2421
+ },
2422
+ "language_model.model.layers.25.self_attn.v_proj": {
2423
+ "bits": 8,
2424
+ "group_size": 64
2425
+ },
2426
+ "language_model.model.layers.25.self_attn.o_proj": {
2427
+ "bits": 4,
2428
+ "group_size": 64
2429
+ },
2430
+ "language_model.model.layers.25.mlp.gate_proj": {
2431
+ "bits": 8,
2432
+ "group_size": 64
2433
+ },
2434
+ "language_model.model.layers.25.mlp.down_proj": {
2435
+ "bits": 8,
2436
+ "group_size": 64
2437
+ },
2438
+ "language_model.model.layers.25.mlp.up_proj": {
2439
+ "bits": 8,
2440
+ "group_size": 64
2441
+ },
2442
+ "language_model.model.layers.25.router.proj": {
2443
+ "bits": 8,
2444
+ "group_size": 64
2445
+ },
2446
+ "language_model.model.layers.25.experts.switch_glu.gate_proj": {
2447
+ "bits": 4,
2448
+ "group_size": 64
2449
+ },
2450
+ "language_model.model.layers.25.experts.switch_glu.up_proj": {
2451
+ "bits": 4,
2452
+ "group_size": 64
2453
+ },
2454
+ "language_model.model.layers.25.experts.switch_glu.down_proj": {
2455
+ "bits": 4,
2456
+ "group_size": 64
2457
+ },
2458
+ "language_model.model.layers.26.self_attn.q_proj": {
2459
+ "bits": 8,
2460
+ "group_size": 64
2461
+ },
2462
+ "language_model.model.layers.26.self_attn.k_proj": {
2463
+ "bits": 8,
2464
+ "group_size": 64
2465
+ },
2466
+ "language_model.model.layers.26.self_attn.v_proj": {
2467
+ "bits": 8,
2468
+ "group_size": 64
2469
+ },
2470
+ "language_model.model.layers.26.self_attn.o_proj": {
2471
+ "bits": 4,
2472
+ "group_size": 64
2473
+ },
2474
+ "language_model.model.layers.26.mlp.gate_proj": {
2475
+ "bits": 8,
2476
+ "group_size": 64
2477
+ },
2478
+ "language_model.model.layers.26.mlp.down_proj": {
2479
+ "bits": 8,
2480
+ "group_size": 64
2481
+ },
2482
+ "language_model.model.layers.26.mlp.up_proj": {
2483
+ "bits": 8,
2484
+ "group_size": 64
2485
+ },
2486
+ "language_model.model.layers.26.router.proj": {
2487
+ "bits": 8,
2488
+ "group_size": 64
2489
+ },
2490
+ "language_model.model.layers.26.experts.switch_glu.gate_proj": {
2491
+ "bits": 4,
2492
+ "group_size": 64
2493
+ },
2494
+ "language_model.model.layers.26.experts.switch_glu.up_proj": {
2495
+ "bits": 4,
2496
+ "group_size": 64
2497
+ },
2498
+ "language_model.model.layers.26.experts.switch_glu.down_proj": {
2499
+ "bits": 4,
2500
+ "group_size": 64
2501
+ },
2502
+ "language_model.model.layers.27.self_attn.q_proj": {
2503
+ "bits": 8,
2504
+ "group_size": 64
2505
+ },
2506
+ "language_model.model.layers.27.self_attn.k_proj": {
2507
+ "bits": 8,
2508
+ "group_size": 64
2509
+ },
2510
+ "language_model.model.layers.27.self_attn.v_proj": {
2511
+ "bits": 8,
2512
+ "group_size": 64
2513
+ },
2514
+ "language_model.model.layers.27.self_attn.o_proj": {
2515
+ "bits": 4,
2516
+ "group_size": 64
2517
+ },
2518
+ "language_model.model.layers.27.mlp.gate_proj": {
2519
+ "bits": 8,
2520
+ "group_size": 64
2521
+ },
2522
+ "language_model.model.layers.27.mlp.down_proj": {
2523
+ "bits": 8,
2524
+ "group_size": 64
2525
+ },
2526
+ "language_model.model.layers.27.mlp.up_proj": {
2527
+ "bits": 8,
2528
+ "group_size": 64
2529
+ },
2530
+ "language_model.model.layers.27.router.proj": {
2531
+ "bits": 8,
2532
+ "group_size": 64
2533
+ },
2534
+ "language_model.model.layers.27.experts.switch_glu.gate_proj": {
2535
+ "bits": 4,
2536
+ "group_size": 64
2537
+ },
2538
+ "language_model.model.layers.27.experts.switch_glu.up_proj": {
2539
+ "bits": 4,
2540
+ "group_size": 64
2541
+ },
2542
+ "language_model.model.layers.27.experts.switch_glu.down_proj": {
2543
+ "bits": 4,
2544
+ "group_size": 64
2545
+ },
2546
+ "language_model.model.layers.28.self_attn.q_proj": {
2547
+ "bits": 4,
2548
+ "group_size": 64
2549
+ },
2550
+ "language_model.model.layers.28.self_attn.k_proj": {
2551
+ "bits": 8,
2552
+ "group_size": 64
2553
+ },
2554
+ "language_model.model.layers.28.self_attn.v_proj": {
2555
+ "bits": 8,
2556
+ "group_size": 64
2557
+ },
2558
+ "language_model.model.layers.28.self_attn.o_proj": {
2559
+ "bits": 8,
2560
+ "group_size": 64
2561
+ },
2562
+ "language_model.model.layers.28.mlp.gate_proj": {
2563
+ "bits": 8,
2564
+ "group_size": 64
2565
+ },
2566
+ "language_model.model.layers.28.mlp.down_proj": {
2567
+ "bits": 8,
2568
+ "group_size": 64
2569
+ },
2570
+ "language_model.model.layers.28.mlp.up_proj": {
2571
+ "bits": 8,
2572
+ "group_size": 64
2573
+ },
2574
+ "language_model.model.layers.28.router.proj": {
2575
+ "bits": 8,
2576
+ "group_size": 64
2577
+ },
2578
+ "language_model.model.layers.28.experts.switch_glu.gate_proj": {
2579
+ "bits": 4,
2580
+ "group_size": 64
2581
+ },
2582
+ "language_model.model.layers.28.experts.switch_glu.up_proj": {
2583
+ "bits": 4,
2584
+ "group_size": 64
2585
+ },
2586
+ "language_model.model.layers.28.experts.switch_glu.down_proj": {
2587
+ "bits": 4,
2588
+ "group_size": 64
2589
+ },
2590
+ "language_model.model.layers.29.self_attn.q_proj": {
2591
+ "bits": 8,
2592
+ "group_size": 64
2593
+ },
2594
+ "language_model.model.layers.29.self_attn.k_proj": {
2595
+ "bits": 8,
2596
+ "group_size": 64
2597
+ },
2598
+ "language_model.model.layers.29.self_attn.o_proj": {
2599
+ "bits": 8,
2600
+ "group_size": 64
2601
+ },
2602
+ "language_model.model.layers.29.mlp.gate_proj": {
2603
+ "bits": 8,
2604
+ "group_size": 64
2605
+ },
2606
+ "language_model.model.layers.29.mlp.down_proj": {
2607
+ "bits": 8,
2608
+ "group_size": 64
2609
+ },
2610
+ "language_model.model.layers.29.mlp.up_proj": {
2611
+ "bits": 8,
2612
+ "group_size": 64
2613
+ },
2614
+ "language_model.model.layers.29.router.proj": {
2615
+ "bits": 8,
2616
+ "group_size": 64
2617
+ },
2618
+ "language_model.model.layers.29.experts.switch_glu.gate_proj": {
2619
+ "bits": 8,
2620
+ "group_size": 64
2621
+ },
2622
+ "language_model.model.layers.29.experts.switch_glu.up_proj": {
2623
+ "bits": 8,
2624
+ "group_size": 64
2625
+ },
2626
+ "language_model.model.layers.29.experts.switch_glu.down_proj": {
2627
+ "bits": 8,
2628
+ "group_size": 64
2629
+ }
2630
+ },
2631
+ "text_config": {
2632
+ "attention_bias": false,
2633
+ "attention_dropout": 0.0,
2634
+ "attention_k_eq_v": true,
2635
+ "bos_token_id": 2,
2636
+ "dtype": "bfloat16",
2637
+ "enable_moe_block": true,
2638
+ "eos_token_id": 1,
2639
+ "final_logit_softcapping": 30.0,
2640
+ "global_head_dim": 512,
2641
+ "head_dim": 256,
2642
+ "hidden_activation": "gelu_pytorch_tanh",
2643
+ "hidden_size": 2816,
2644
+ "hidden_size_per_layer_input": 0,
2645
+ "initializer_range": 0.02,
2646
+ "intermediate_size": 2112,
2647
+ "layer_types": [
2648
+ "sliding_attention",
2649
+ "sliding_attention",
2650
+ "sliding_attention",
2651
+ "sliding_attention",
2652
+ "sliding_attention",
2653
+ "full_attention",
2654
+ "sliding_attention",
2655
+ "sliding_attention",
2656
+ "sliding_attention",
2657
+ "sliding_attention",
2658
+ "sliding_attention",
2659
+ "full_attention",
2660
+ "sliding_attention",
2661
+ "sliding_attention",
2662
+ "sliding_attention",
2663
+ "sliding_attention",
2664
+ "sliding_attention",
2665
+ "full_attention",
2666
+ "sliding_attention",
2667
+ "sliding_attention",
2668
+ "sliding_attention",
2669
+ "sliding_attention",
2670
+ "sliding_attention",
2671
+ "full_attention",
2672
+ "sliding_attention",
2673
+ "sliding_attention",
2674
+ "sliding_attention",
2675
+ "sliding_attention",
2676
+ "sliding_attention",
2677
+ "full_attention"
2678
+ ],
2679
+ "max_position_embeddings": 262144,
2680
+ "model_type": "gemma4_text",
2681
+ "moe_intermediate_size": 704,
2682
+ "num_attention_heads": 16,
2683
+ "num_experts": 128,
2684
+ "num_global_key_value_heads": 2,
2685
+ "num_hidden_layers": 30,
2686
+ "num_key_value_heads": 8,
2687
+ "num_kv_shared_layers": 0,
2688
+ "pad_token_id": 0,
2689
+ "rms_norm_eps": 1e-06,
2690
+ "rope_parameters": {
2691
+ "full_attention": {
2692
+ "partial_rotary_factor": 0.25,
2693
+ "rope_theta": 1000000.0,
2694
+ "rope_type": "proportional"
2695
+ },
2696
+ "sliding_attention": {
2697
+ "rope_theta": 10000.0,
2698
+ "rope_type": "default"
2699
+ }
2700
+ },
2701
+ "sliding_window": 1024,
2702
+ "tie_word_embeddings": true,
2703
+ "top_k_experts": 8,
2704
+ "use_bidirectional_attention": "vision",
2705
+ "use_cache": true,
2706
+ "use_double_wide_mlp": false,
2707
+ "vocab_size": 262144,
2708
+ "vocab_size_per_layer_input": 262144
2709
+ },
2710
+ "tie_word_embeddings": true,
2711
+ "transformers_version": "5.5.0.dev0"
2712
+ }
generation_config.json ADDED
@@ -0,0 +1,14 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "bos_token_id": 2,
3
+ "do_sample": true,
4
+ "eos_token_id": [
5
+ 1,
6
+ 106,
7
+ 50
8
+ ],
9
+ "pad_token_id": 0,
10
+ "temperature": 1.0,
11
+ "top_k": 64,
12
+ "top_p": 0.95,
13
+ "transformers_version": "5.5.0.dev0"
14
+ }
model-00001-of-00003.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:72bf520a507f6b5405e9912bf587852d536a38dc088770ed23730cb120f492b8
3
+ size 5340564888
model-00002-of-00003.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:696860ef5a3a6f7e2e2b1eb051abec3da166653de3e147c5cc4e25ee09975907
3
+ size 5266440089
model-00003-of-00003.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:993f4534c438a90da781c8114517ec47e9be4a044867ffc6b17bd88ca2d35511
3
+ size 4981132643
model.safetensors.index.json ADDED
The diff for this file is too large to render. See raw diff
 
tokenizer.json ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:cc8d3a0ce36466ccc1278bf987df5f71db1719b9ca6b4118264f45cb627bfe0f
3
+ size 32169626
tokenizer_config.json ADDED
@@ -0,0 +1,97 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "audio_token": "<|audio|>",
3
+ "backend": "tokenizers",
4
+ "boa_token": "<|audio>",
5
+ "boi_token": "<|image>",
6
+ "bos_token": "<bos>",
7
+ "eoa_token": "<audio|>",
8
+ "eoc_token": "<channel|>",
9
+ "eoi_token": "<image|>",
10
+ "eos_token": "<eos>",
11
+ "eot_token": "<turn|>",
12
+ "escape_token": "<|\"|>",
13
+ "etc_token": "<tool_call|>",
14
+ "etd_token": "<tool|>",
15
+ "etr_token": "<tool_response|>",
16
+ "extra_special_tokens": [
17
+ "<|video|>"
18
+ ],
19
+ "image_token": "<|image|>",
20
+ "is_local": true,
21
+ "local_files_only": false,
22
+ "mask_token": "<mask>",
23
+ "model_max_length": 1000000000000000019884624838656,
24
+ "model_specific_special_tokens": {
25
+ "audio_token": "<|audio|>",
26
+ "boa_token": "<|audio>",
27
+ "boi_token": "<|image>",
28
+ "eoa_token": "<audio|>",
29
+ "eoc_token": "<channel|>",
30
+ "eoi_token": "<image|>",
31
+ "eot_token": "<turn|>",
32
+ "escape_token": "<|\"|>",
33
+ "etc_token": "<tool_call|>",
34
+ "etd_token": "<tool|>",
35
+ "etr_token": "<tool_response|>",
36
+ "image_token": "<|image|>",
37
+ "soc_token": "<|channel>",
38
+ "sot_token": "<|turn>",
39
+ "stc_token": "<|tool_call>",
40
+ "std_token": "<|tool>",
41
+ "str_token": "<|tool_response>",
42
+ "think_token": "<|think|>"
43
+ },
44
+ "pad_token": "<pad>",
45
+ "padding_side": "left",
46
+ "processor_class": "Gemma4Processor",
47
+ "response_schema": {
48
+ "properties": {
49
+ "content": {
50
+ "type": "string"
51
+ },
52
+ "role": {
53
+ "const": "assistant"
54
+ },
55
+ "thinking": {
56
+ "type": "string"
57
+ },
58
+ "tool_calls": {
59
+ "items": {
60
+ "properties": {
61
+ "function": {
62
+ "properties": {
63
+ "arguments": {
64
+ "additionalProperties": {},
65
+ "type": "object",
66
+ "x-parser": "gemma4-tool-call"
67
+ },
68
+ "name": {
69
+ "type": "string"
70
+ }
71
+ },
72
+ "type": "object",
73
+ "x-regex": "call\\:(?P<name>\\w+)(?P<arguments>\\{.*\\})"
74
+ },
75
+ "type": {
76
+ "const": "function"
77
+ }
78
+ },
79
+ "type": "object"
80
+ },
81
+ "type": "array",
82
+ "x-regex-iterator": "<\\|tool_call>(.*?)<tool_call\\|>"
83
+ }
84
+ },
85
+ "type": "object",
86
+ "x-regex": "(\\<\\|channel\\>thought\\n(?P<thinking>.*?)\\<channel\\|\\>)?(?P<tool_calls>\\<\\|tool_call\\>.*\\<tool_call\\|\\>)?(?P<content>(?:(?!\\<turn\\|\\>)(?!\\<\\|tool_response\\>).)+)?(?:\\<turn\\|\\>|\\<\\|tool_response\\>)?"
87
+ },
88
+ "soc_token": "<|channel>",
89
+ "sot_token": "<|turn>",
90
+ "stc_token": "<|tool_call>",
91
+ "std_token": "<|tool>",
92
+ "str_token": "<|tool_response>",
93
+ "think_token": "<|think|>",
94
+ "tokenizer_class": "GemmaTokenizer",
95
+ "tool_parser_type": "gemma4",
96
+ "unk_token": "<unk>"
97
+ }