Arama Yap Mesaj Gönder
Biz Sizi Arayalım
+90
X

Lütfen Ülke (Bölge) Seçiniz

Türkiye (Türkçe)Türkiye (Türkçe) Almanya (German)Almanya (German) Worldwide (English)Worldwide (English)
X

Lütfen Para Birimi Seçiniz

Türk Lirası $ US Dollar Euro
X

Lütfen Ülke (Bölge) Seçiniz

Türkiye (Türkçe)Türkiye (Türkçe) Almanya (German)Almanya (German) Worldwide (English)Worldwide (English)
X

Lütfen Para Birimi Seçiniz

Türk Lirası $ US Dollar Euro

Bize Ulaşın

Konum Halkalı merkez mahallesi fatih cd ozgur apt no 46 , Küçükçekmece , İstanbul , 34303 , TR
EKA SUNUCU · AI MODEL EĞİTİM HATA MERKEZİ

LoRA Target Modules Not Found Hatası: q_proj, v_proj ve all-linear Çözümü

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.

PyTorchTransformersPEFT / TRLSon teknik kontrol: 14 Ağustos 2026
01

Resmî dokümantasyonla doğrulanan temel noktalar

01

PEFT `target_modules` isimleri model mimarisine göre değişir; Llama/Qwen tarzı `q_proj` isimleri BLOOM/GPT-NeoX gibi modellerde aynı olmayabilir.

02

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.

03

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.

02

Hata ne söylüyor?

`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.

03

İlk iş: gerçek module isimlerini listeleyin

İ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.

Teşhis / doğrulama komutları
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
04

Llama/Qwen ile BLOOM/GPT-NeoX neden farklı?

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.

05

`all-linear` ne zaman daha güvenli?

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.

06

Regex ile exact suffix aynı şey değildir

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.

07

Base model sınıfı da önemlidir

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.

08

Version değişince kırılan config'i nasıl teşhis edin?

Ç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.

09

Adapter gerçekten enjekte edildi mi?

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.

Teşhis / doğrulama komutları
python - <<'PY'
# peft_model.print_trainable_parameters()
# for n,p in peft_model.named_parameters():
#     if p.requires_grad: print(n, p.numel())
PY
10

Model-family bazlı karar

İ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.

DIAGNOSTIC MATRIX

Sık görülen target isimleri

Mimari tipiÖrnek isimNot
Llama/Qwen benzeriq_proj, k_proj, v_proj, o_projAyrık projections
BLOOM benzeriquery_key_valueFused QKV
GPT-2 benzeric_attnConv1D/fused
QLoRA genelall-linearMimari bağımsız başlangıç
Üretim ortamı notu

Ç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.

FAQ

Sık sorulan sorular

Her modelde `q_proj`, `v_proj` var mı?

Hayır. Bunlar belirli Transformer mimarilerinde yaygın isimlerdir; gerçek model graph'ını kontrol etmek gerekir.

`all-linear` her zaman en iyi mi?

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.

OFFICIAL SOURCES

Resmî teknik kaynaklar ve proje issue'ları

CLUSTER

İlgili AI eğitim rehberleri

EKA SUNUCU · GPU ALTYAPISI

Eğitim konfigürasyonunuza göre GPU seçin.

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.

GPU Sunucu VPS Destek
Top