Created
August 11, 2026 18:08
-
-
Save ardeshir/a6205726d684cb30a2d5f2f24a26e027 to your computer and use it in GitHub Desktop.
fine-tuning
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| 1. Start now with QLoRA SFT on an 8B instruct modelin LLaMA-Factory or Axolotl: r=16–32, α=32, all-linear, LR 2e-4, 3 epochs,train_on_inputs:false. Dataset = (request → tool call → grounded answer). Target metric: tool-call schema-validity and solver-acceptance rate, not loss.Threshold to advance:if validity ≥ your bar, ship; if not, continue. | |
| 2. If behavior issues remain, add a LoRA DPO pass(β=0.1, LR 5e-6) on (faithful-tool-call vs fabricated) pairs. Cheap, low-risk. | |
| 3. Only if validity/acceptance still misses the bar, run a GRPO stagewith the solver as a composed verifiable reward (format + canonical-ID + solver-acceptance), in TRL (or Unsloth if single-GPU), with vLLM andloss_type="dr_grpo". Budget ≥2 GPUs and real monitoring.Change trigger:adopt GRPO when the gap between “imitatable” and “verifiable-correct” behavior is what’s blocking you. | |
| 4. Serving on Azure/AKS:use vLLM with multi-LoRA to host the merged/adapter model; the same vLLM stack doubles as GRPO’s generation backend, so standardizing on it early pays off twice. | |
| 5. Pin your stack.bitsandbytes/CUDA and TRL/Unsloth versions are the top upgrade-breakage sources; containerize (or use NeMo’s pinned images) and freeze versions per training run. | |
| 5. Avoid torchtune/Forge and LLM Foundry for this project— torchtune is unmaintained, Forge is paused/experimental, and LLM Foundry lacks DPO/GRPO and only partially supports LoRA. |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment