Descriere & Utilizare
Familia de clase AutoModel... instalează arhitectura PyTorch exactă a unui model pe baza fișierului său config.json. Pentru toate modelele mari de limbaj generative care prezic tokenul următor (Decoder-only), clasa folosită este AutoModelForCausalLM.
Doi parametri sunt absolut critici la încărcarea modelelor mari:
1. torch_dtype=torch.bfloat16 (sau torch.float16): încarcă greutățile pe 16 biți în loc de 32 de biți (cât este implicit în PyTorch), înjumătățind instantaneu consumul de memorie VRAM (un model de 7B parametri ocupă ~14 GB în loc de ~28 GB) fără pierdere de acuratețe.
2. device_map='auto' (necesită pachetul accelerate): distribuie automat straturile modelului pe placa video disponibilă, iar dacă nu încape complet, mută restul straturilor în memoria RAM de sistem.
Cum să o reții ușor
💡 Ca montarea motorului potrivit pe șasiul mașinii: îi spui doar seria de șasiu (`from_pretrained`), iar fabrica asamblează automat arhitectura exactă cu pistoanele și supapele calibrate pe placa ta video.
Opțiuni și parametri tehnici
- Citește
config.jsonși instanțiază clasa specifică (ex:LlamaForCausalLMsauQwen2ForCausalLM). - Încarcă greutățile din fișierele
.safetensorsdirect pe dispozitivul țintă (meta device loading). - Adaugă peste rețeaua de bază stratul liniar final (
lm_head) care proiectează stările ascunse pe dimensiunea vocabularului.
Exemple practice și cazuri de utilizare
- Activare Flash Attention 2 pentru viteză dublă pe plăci NVIDIA RTX 3000/4000+:
AutoModelForCausalLM.from_pretrained(model_id, torch_dtype=torch.bfloat16, attn_implementation='flash_attention_2', device_map='auto') - Verificare pe ce dispozitive au fost plasate straturile:
print(model.hf_device_map)
Sfaturi de configurare & capcane
Nu apela niciodată AutoModelForCausalLM.from_pretrained() pe un LLM modern fără să specifici torch_dtype=torch.bfloat16 (sau dtype='auto') ori o configurație de cuantizare, altfel PyTorch va aloca memorie FP32 dublă!
Comenzi și ghiduri înrudite
autotokenizer: Resursă asociată din acest modul.model-generate: Resursă asociată din acest modul.bitsandbytes-quantization: Resursă asociată din acest modul.