PEFT `target_modules` isimleri model mimarisine göre değişir; Llama/Qwen tarzı `q_proj` isimleri BLOOM/GPT-NeoX gibi modellerde aynı olmayabilir.
PEFT ValueError: Target modules not found hatasını model mimarisi, named_modules, q_proj/v_proj farkları, regex, all-linear ve sürüm uyuşmazlığıyla teşhis edin.
PEFT `target_modules` isimleri model mimarisine göre değişir; Llama/Qwen tarzı `q_proj` isimleri BLOOM/GPT-NeoX gibi modellerde aynı olmayabilir.
Güncel PEFT QLoRA tarzı eğitim için `target_modules='all-linear'` seçeneğini destekler ve mimariye özgü isimleri tek tek yazma ihtiyacını azaltır.
Mayıs 2026'da bile `target_modules` string parsing davranışıyla ilgili yeni PEFT issue'ları açılmıştır; sürüm farkı gerçekten önemlidir.
`ValueError: Target modules ... not found in the base model` PEFT'in adapter enjekte etmek istediği layer isimlerini model graph'ında bulamadığını söyler. Bu genellikle GPU/CUDA sorunu değil model architecture/config eşleşmesi problemidir.
İnternetten başka model için kopyalanmış `['q_proj','v_proj']` listesini doğrudan kullanmayın. `model.named_modules()` ile gerçek linear/attention layer isimlerini çıkartın; son segmentleri frekanslarıyla gruplayın. Böylece `query_key_value`, `c_attn`, `Wqkv` gibi farklı isimleri görürsünüz.
python - <<'PY'
from collections import Counter
# model already loaded
mods=[]
for n,m in model.named_modules():
if m.__class__.__name__ in {'Linear','Conv1D'}:
mods.append(n)
print('\n'.join(mods[:200]))
print(Counter(x.split('.')[-1] for x in mods))
PY
Birçok Llama türevi attention projection'ları `q_proj/k_proj/v_proj/o_proj` olarak ayırır. BLOOM gibi mimariler fused `query_key_value`, GPT-2 ailesi `c_attn`, başka modeller farklı isimler kullanabilir. Adapter target listesi model config'inin mimarisine göre seçilmelidir.
QLoRA tarzı SFT'de tüm linear katmanlara adapter uygulamak istiyorsanız PEFT'in `all-linear` seçeneği mimariye özel suffix listesi tutmaktan daha dayanıklıdır. Fakat output layer hariç tutulma ve özel multimodal projection'lar gibi model-specific etkiler yine kontrol edilmelidir.
PEFT'te string verirseniz regex davranışı, list verirseniz exact/end-with matching davranışı devreye girebilir. Eski sürümde çalışan karmaşık regex'in yeni sürümde davranışı değişebilir. Önce basit suffix veya `all-linear` ile doğrulayın.
Bazı kullanıcılar `LlamaModel` gibi head'siz base class yükleyip örnekte `AutoModelForCausalLM` için verilmiş target isimlerini uyguladığında farklı graph görebilir. Task type ile model class uyumlu olmalıdır.
Çalışan ortamın `peft`, `transformers`, `torch` sürümlerini kaydedin. Yeni sürümde hata varsa aynı modelde module listesi ve config serialization'ını karşılaştırın. 2026 PEFT issue'ları string parsing regresyonlarının mümkün olduğunu gösteriyor.
Hata kalktıktan sonra `print_trainable_parameters()` ile trainable parametre oranını kontrol edin. Beklenenden sıfır veya aşırı yüksek çıkıyorsa target seçimi yanlış olabilir. Birkaç layer adında `lora_A/lora_B` modüllerini doğrulayın.
python - <<'PY'
# peft_model.print_trainable_parameters()
# for n,p in peft_model.named_parameters():
# if p.requires_grad: print(n, p.numel())
PY
İlk tercih model kartı/örnek PEFT config'i; ikinci tercih gerçek `named_modules()` çıktısı; üçüncü tercih QLoRA için `all-linear`. Başka modelden target listesi kopyalamak en son tercih olmalıdır.
| Mimari tipi | Örnek isim | Not |
|---|---|---|
| Llama/Qwen benzeri | q_proj, k_proj, v_proj, o_proj | Ayrık projections |
| BLOOM benzeri | query_key_value | Fused QKV |
| GPT-2 benzeri | c_attn | Conv1D/fused |
| QLoRA genel | all-linear | Mimari bağımsız başlangıç |
Çalışan eğitim ortamında paketleri rastgele güncellemeyin. GPU modeli, driver, CUDA/PyTorch runtime, transformers, accelerate, peft, trl, bitsandbytes/diffusers sürümleri ile model revision ve dataset fingerprint bilgisini her run için kaydedin. Önce minimal reproducible test oluşturun, sonra production eğitime müdahale edin.
Hayır. Bunlar belirli Transformer mimarilerinde yaygın isimlerdir; gerçek model graph'ını kontrol etmek gerekir.
Hayır. QLoRA için güçlü varsayımdır ama özel multimodal/head layer'larında gereksiz adapter ekleyebilir; model dokümanını kontrol edin.
Model boyutu, precision, context, batch, LoRA/QLoRA veya full fine-tuning yöntemi ve multi-GPU ihtiyacınızı birlikte değerlendirin; yalnız GPU model adına bakarak kapasite seçmeyin.