Tuning Large Language Models for Real-World ApplicationsChapter 513
Reflection Questions
Section 13 of 13-~ 3 min read-Synced from Cuantum content
Before moving to the Chapter 2 Quiz, ask yourself these questions to solidify your understanding:
- When would you choose LoRA over full SFT?
- LoRA is preferred when you have limited compute resources, need to fine-tune multiple task-specific variants, or want to preserve most of the base model's general capabilities.
- Full supervised fine-tuning (SFT) might be necessary when you need to fundamentally change the model's knowledge base or when you have abundant compute and want maximum performance on a single specialized task.
- When is QLoRA mandatory?
- QLoRA becomes essential when your GPU VRAM cannot accommodate even LoRA in FP16 (typically when training models ≥7B on GPUs with <24GB VRAM).
- It's also valuable in production environments where you want to maximize GPU utilization by running multiple fine-tuning jobs or serving multiple models simultaneously.
- How does LoRA rank affect expressiveness?
- Higher rank (r) gives the adapter more capacity to learn complex patterns and deviate from the base model's behavior, but increases trainable parameters and VRAM usage.
- Lower rank restricts the adapter to simpler updates, which can be sufficient for style adaptation or instruction-following but may be inadequate for substantial task changes.
- There's a sweet spot (often r=8 to r=32) that balances expressiveness with efficiency, which you learn to find through experimentation.
- What risks does quantization introduce?
- Quantization can cause numerical instability, gradient degradation, or subtle quality loss, especially with aggressive compression (4-bit or lower).
- Some model layers or tasks are more sensitive to quantization than others, requiring careful validation on your specific use case.
- Improper quantization configuration (wrong data types, missing double quantization) can lead to training divergence or poor final performance.
- Why is modular adapter storage powerful for deployment?
- You can deploy one base model and dynamically load different adapters for different tasks, users, or contexts without duplicating the massive base weights.
- This reduces storage costs from linear (N full models) to constant (1 base model + N small adapters), which is critical when serving dozens or hundreds of specialized variants.
- It enables rapid experimentation and A/B testing since you can train and swap adapters in minutes rather than deploying entirely new model endpoints.
- It allows personalization at scale: different users or customers can have their own adapters without requiring separate infrastructure.
If you can answer these questions clearly with concrete examples from your own training experience, you truly understand parameter-efficient fine-tuning and are ready to apply these techniques to real-world problems.