Fine-Tuning Mô Hình AI (Phần 2): Kỹ Thuật LoRA và PEFT
Khám phá kỹ thuật LoRA (Low-Rank Adaptation) và thư viện PEFT giúp tối ưu bộ nhớ GPU khi fine-tune LLM.
Parameter-Efficient Fine-Tuning (PEFT), đặc biệt là LoRA (Low-Rank Adaptation), đã làm thay đổi hoàn toàn cách chúng ta tinh chỉnh các mô hình lớn mà không cần cụm máy chủ đắt đỏ.
Cơ chế hoạt động của LoRA#
Thay vì cập nhật trực tiếp ma trận trọng số , LoRA cố định ma trận gốc và bổ sung hai ma trận hạng thấp và :
Với và (), số lượng tham số cần huấn luyện giảm đi hàng trăm lần.
Triển khai LoRA với Hugging Face PEFT#
lora_config.py
from peft import LoraConfig, get_peft_model
peft_config = LoraConfig(
r=8,
lora_alpha=16,
target_modules=["q_proj", "v_proj"], # [!code focus]
lora_dropout=0.05,
bias="none",
task_type="CAUSAL_LM"
)
# model = get_peft_model(model, peft_config)pythonƯu điểm của LoRA#
- Tiết kiệm vRAM: Giảm vRAM bộ nhớ huấn luyện tới 60-70%.
- Dễ dàng chia sẻ: Chỉ cần lưu trữ các checkpoint adapter cực nhẹ (vài MB đến vài chục MB).
- Không tăng latency khi inference: Có thể merge ma trận trực tiếp vào khi deploy.