2025-02-11 08:13:21 -05:00
# DeepSeek-V3 Ağı rlı k Dosyası Dokümantasyonu
2024-12-26 06:01:57 -05:00
2025-02-11 08:13:21 -05:00
## `config.json` İçindeki Yeni Alanlar
2024-12-26 06:01:57 -05:00
2025-02-11 08:13:21 -05:00
- **model_type**: Model türünü belirtir, bu sürümde `deepseek_v3` olarak güncellenmiştir.
- **num_nextn_predict_layers**: Çoklu Token Tahmin (MTP) Modüllerinin sayı sı nı belirtir. Açı k kaynaklı V3 ağı rlı kları **1 MTP Modülü** içerir.
- **quantization_config**: FP8 kuantizasyonu için yapı landı rmayı tanı mlar.
2024-12-26 06:01:57 -05:00
---
2025-02-11 08:13:21 -05:00
## Ağı rlı k Yapı sı Genel Bakı ş
2024-12-26 06:01:57 -05:00
2025-02-11 08:13:21 -05:00
DeepSeek-V3 ağı rlı k dosyası iki ana bileşenden oluşur: **Ana Model Ağı rlı kları ** ve **MTP Modülleri** .
2024-12-26 06:01:57 -05:00
2025-02-11 08:13:21 -05:00
### 1. Ana Model Ağı rlı kları
2024-12-26 06:01:57 -05:00
2025-02-11 08:13:21 -05:00
- **Bileşenler**:
- Giriş/çı kı ş gömme katmanları ve toplam 61 Transformer gizli katmanı .
- **Parametre Sayı sı **:
- Toplam parametreler: **671B**
- Aktivasyon parametreleri: **36.7B** (0.9B Gömme ve 0.9B Çı kı ş Kafası dahil).
2024-12-26 06:01:57 -05:00
2025-02-11 08:13:21 -05:00
#### Yapı sal Detaylar
2024-12-26 06:01:57 -05:00
2025-02-11 08:13:21 -05:00
- **Gömme Katmanı **:
2024-12-26 06:01:57 -05:00
- `model.embed_tokens.weight`
2025-02-11 08:13:21 -05:00
- **Transformer Gizli Katmanları **:
- `model.layers.0` - `model.layers.60` , toplamda `num_hidden_layers` katman.
- **Çı kı ş Katmanı **:
2024-12-26 06:01:57 -05:00
- `model.norm.weight`
- `lm_head.weight`
2025-02-11 08:13:21 -05:00
### 2. Çoklu Token Tahmin (MTP) Modülleri
2024-12-26 06:01:57 -05:00
2025-02-11 08:13:21 -05:00
- **Bileşenler**:
- `num_nextn_predict_layers` alanı tarafı ndan tanı mlanan ek MTP Modülleri. Bu modelde değer **1** olarak ayarlanmı ştı r.
- **Parametre Sayı sı **:
- **11.5B benzersiz parametre**, (paylaşı lan 0.9B Gömme ve 0.9B Çı kı ş Kafası hariç).
- Aktivasyon parametreleri: **2.4B** (paylaşı lan 0.9B Gömme ve 0.9B Çı kı ş Kafası dahil).
2024-12-26 06:01:57 -05:00
2025-02-11 08:13:21 -05:00
#### Yapı sal Detaylar
2024-12-26 06:01:57 -05:00
2025-02-11 08:13:21 -05:00
- **embed_tokens**: **Ana Model ağı rlı kları nı n Gömme katmanı ile parametreleri paylaşı r** .
- **enorm & hnorm**: Spekülatif kod çözme için gerekli olan RMSNorm parametreleri.
- **eh_proj**: Norm sonuçları üzerinde boyut indirgeme projeksiyon parametreleri.
- **Ek Transformer Gizli Katmanı **:
- `model.layers.61.self_attn & mlp` (Ana Model gizli katmanları yla aynı yapı dadı r).
- **shared_head**: **Ana Model ağı rlı kları nı n Çı kı ş Kafası ile parametreleri paylaşı r** .
2024-12-26 06:01:57 -05:00
---
2025-02-11 08:13:21 -05:00
### Yükleme Kuralları
2024-12-26 06:01:57 -05:00
2025-02-11 08:13:21 -05:00
- **Ana Model Ağı rlı kları **: `config.json` içindeki `num_hidden_layers` parametresi kullanı larak yüklenir.
- **MTP Modülleri**: `num_nextn_predict_layers` parametresi ile yüklenir ve katman kimlikleri Ana Model gizli katmanları ndan hemen sonra eklenir. Örneğin:
- Eğer `num_hidden_layers = 61` ve `num_nextn_predict_layers = 1` ise, MTP Modülünün katman kimliği `61` olur.
2024-12-26 06:01:57 -05:00
---
2025-02-11 08:13:21 -05:00
## FP8 Ağı rlı k Dokümantasyonu
2024-12-26 06:01:57 -05:00
2025-02-11 08:13:21 -05:00
DeepSeek-V3, 128x128 blok ölçeklendirmesiyle FP8 ağı rlı k formatı nı yerel olarak destekler.
2024-12-26 06:01:57 -05:00
2025-02-11 08:13:21 -05:00
### FP8 Yapı landı rması
2024-12-26 06:01:57 -05:00
2025-02-11 08:13:21 -05:00
FP8 ağı rlı k dosyası , kuantizasyon yöntemini tanı mlayan bir `quantization_config` alanı içerir. Örnek yapı landı rma aşağı da verilmiştir:
2024-12-26 06:01:57 -05:00
```json
"quantization_config": {
"activation_scheme": "dynamic",
"fmt": "e4m3",
"quant_method": "fp8",
"weight_block_size": [128, 128]
}
```
2025-02-11 08:13:21 -05:00
- **Kuantizasyon Formatı **:
- Format türü: `fp8` ve `e4m3` (karşı lı ğı `torch.float8_e4m3fn` ).
- Ağı rlı k blok boyutu: `128x128` .
- **Aktivasyon Kuantizasyon Şeması **:
- Dinamik aktivasyon kuantizasyonu kullanı r (`dynamic`).
2024-12-26 06:01:57 -05:00
2025-02-11 08:13:21 -05:00
### De-kuantizasyon Yöntemi
2024-12-26 06:01:57 -05:00
2025-02-11 08:13:21 -05:00
FP8 ağı rlı k dosyası , her ağı rlı k bloğu için de-kuantizasyon ölçeğini depolayan `weight_scale_inv` alanı nı içerir.
2024-12-26 06:01:57 -05:00
2025-02-11 08:13:21 -05:00
- **Depolama Formatı **: `float32 Tensor` , ağı rlı k verileriyle birlikte saklanı r.
- **De-kuantizasyon Formülü**:
- Ağı rlı k bloğu 128’ e hizalanmamı şsa, önce 128’ e sı fı r dolgu yapı lı r, ardı ndan ölçek hesaplanı r. Kuantizasyondan sonra dolgu kı smı kaldı rı lı r.
- De-kuantizasyon işlemi şu şekilde gerçekleştirilir: `(128x128 ağı rlı k bloğu) * weight_scale_inv` .
2024-12-26 06:01:57 -05:00
2025-02-11 08:13:21 -05:00
FP8 ağı rlı kları nı n de-kuantizasyonu sayesinde, çalı şma zamanı işlemleri **token başı na 128 kanal granülerliği** ile çevrimiçi kuantizasyona olanak tanı r.
2024-12-26 06:01:57 -05:00
---
2025-02-11 08:13:21 -05:00
```
Bu çeviri, hem teknik doğruluğu hem de Markdown uyumluluğunu koruyarak çevrilmiştir.
2025-02-11 08:16:13 -05:00
[@can-deliktas ](https://github.com/can-deliktas )
2025-02-11 08:13:21 -05:00
```