الفصل 1: مكتبة Transformers
أساس تدريب النماذج اللغوية الحديثة
توفر مكتبة Transformers كل ما يلزم لتحميل وتكوين وتدريب النماذج اللغوية.
المكونات الأساسية
AutoModelForCausalLM
from transformers import AutoModelForCausalLM
model = AutoModelForCausalLM.from_pretrained(
"meta-llama/Llama-3.1-8B",
torch_dtype=torch.bfloat16,
device_map="auto",
trust_remote_code=True,
)
AutoTokenizer
from transformers import AutoTokenizer
tokenizer = AutoTokenizer.from_pretrained("meta-llama/Llama-3.1-8B")
tokenizer.pad_token = tokenizer.eos_token
tokenizer.padding_side = "right"
خيارات تحميل النموذج
model = AutoModelForCausalLM.from_pretrained(
model_name,
# Precision
torch_dtype=torch.bfloat16,
# Device placement
device_map="auto", # or "cuda:0"
# Quantization
quantization_config=bnb_config,
# Flash Attention 2
attn_implementation="flash_attention_2",
# Remote code
trust_remote_code=True,
)
الترميز
# Basic tokenization
inputs = tokenizer("Hello, world!", return_tensors="pt")
# With padding and truncation
inputs = tokenizer(
texts,
padding=True,
truncation=True,
max_length=512,
return_tensors="pt",
)
# Chat template
messages = [{"role": "user", "content": "Hello!"}]
text = tokenizer.apply_chat_template(messages, tokenize=False)
النقاط الرئيسية
✅ AutoModelForCausalLM لنماذج توليد النصوص ✅ استخدم torch_dtype=bfloat16 للكفاءة ✅ device_map="auto" للتوزيع التلقائي ✅ تعيين pad_token = eos_token للتدريب