Zenaique

Walk through the triage order when a customer support LoRA tanks MMLU by 4 points post-deploy

Order steps·Medium·4.0 · 0·~1 min·Asked atHebbiaLtimindtreeTuring·Relevant atAnthropicDatabricksOpenAI
Attempt it
  • 1Roll back if all four levers fail and re-scope the domain dataset for diversity before attempting another training run.
  • 2Lower the learning rate by 2-3x and re-train; smaller steps reduce how far the weights drift from the pretrained distribution.
  • 3Drop the LoRA rank, which limits the magnitude of the additive delta the adapter can apply to the base weights.
  • 4Mix in 5-10% general instruction data (e.g. a sampled slice of the original SFT corpus or a Tulu/UltraChat replay) on the next training run.
  • 5Reduce the number of training epochs and re-evaluate; over training is the single most common cause of capability regressions on narrow domains.
  • 6Confirm the regression on the MERGED model rather than the adapter loaded one, to rule out adapter stack or serving misconfiguration as the source of the drop.
TL;DR

Confirm the regression on the merged model first, then sequence training levers from least to most invasive (fewer epochs, lower LR, replay data, smaller rank), and roll back only as a last resort with a dataset rescope.

Memory aid
Sign in to see the mnemonic that makes this stick.
Easy to grasp

Imagine a star athlete who practised one specific drill so much that they got worse at every other sport they used to play. The right response is not to retire them. First, check whether they really did get worse or if the new uniform is just confusing the referee. Then try the cheap fixes in order: train fewer days a week, train less intensely, mix in cross-training from their old sport, scale back the size of the specialised drill. Only if nothing works do you bench them and re-design the training program from scratch. The athlete is your fine-tuned model. The original sport is general reasoning measured by MMLU. The drill is the support corpus. Each lever in the order shrinks the gap between the new and the old self by a different mechanism.

Concept explanation~2 min read

Everything you need to truly understand this topic: intuition, mechanics, step by step explanation, code, formulas, and worked example. Click to expand.

Capability regression after narrow-domain fine-tuning is one of the most common operational issues in production LLM teams. A LoRA fine-tune lifts the target task metric, deploys cleanly, and a week later the on-call rotation discovers that MMLU or another general-capability benchmark has dropped several points. The team now has a working model on the narrow task and a regressed model on the general one. The question is what to do, and in what order.

The right answer is not 'try everything at once'. Each lever has a different cost and a different scope. Some levers (epoch reduction, learning rate adjustment) cost a single retraining cycle and stay within the original recipe. Others (replay data, rank changes) require structural changes to the recipe and reset some assumptions of the original training plan. The deepest lever (rollback and dataset rescope) effectively restarts the project. A triage process that respects the cost gradient resolves most regressions in the cheapest steps and saves the deepest intervention for cases where it is genuinely needed.

This question puts the six standard levers in front of the candidate and asks for the right order. The correct sequencing is 0, 1, 2, 3, 4, 5, moving from a verification step that costs nothing through within-recipe knobs to structural changes and finally to a rollback. The principles are: verify before you intervene, and apply cheaper interventions before structural ones.

Step 0: verify the regression on the merged model

The first step in any post-deployment regression is to confirm the regression is real and attributable to the trained weights. Adapter-loaded inference runs through PEFT's dynamic injection of LoRA matrices into base modules, a serving stack that handles quantization and template assembly, and any optimisations the inference framework applies on top. Each of those layers has its own potential for bugs that can produce a regression that has nothing to do with the training itself.

The verification step is straightforward. Take the trained adapter, merge it into the base model to produce a single weight tensor with no adapter overhead, run the merged model through the same eval that flagged the regression, and compare the score. If the merged model passes the eval cleanly, the regression is operational and lives in the adapter-loaded inference path. The investigation moves to the serving stack and the rest of this triage order does not apply.

If the merged model also shows the regression, the regression is in the trained weights themselves and the rest of the order applies. The verification step takes minutes to run and saves potentially days of training experiments chasing a bug that lives in serving configuration. Production teams that skip this step routinely discover, after a week of retraining, that the bug was a template mismatch in the inference stack that an hour of debugging would have fixed.

The step is at position zero rather than as part of the main triage because it is verification, not intervention. It does not change anything about the trained model; it tells you whether the rest of the triage order should run.

Step 1: reduce epochs as the highest-leverage cheap knob
Step 2: lower the learning rate
Step 3: replay general instruction data
Step 4: drop the LoRA rank
Step 5: rollback and dataset rescope
Sign in to unlock the full deep dive.

Situations where this technique stops working.

Sign in to see when this approach fails.

2–4 min · Everything important, quickly.

Sign in to see the quick scan of the deep dive.

Real products, models, and research that use this idea.

  • Tulu 3 and UltraChat are widely used general-capability replay corpora, mixed at 5-10 percent into narrow-domain SFT runs to anchor against MMLU-style regression.
  • Hugging Face TRL and Axolotl both expose checkpoint-level eval hooks that let teams catch general-capability regression mid-run rather than post-deploy.
Sign in to see more production examples.

What an interviewer would ask next. Try answering before peeking at the approach.

QHow would you set up CI gates to catch general-capability regression before deployment?
A

Add an MMLU or equivalent eval to the training loop at every checkpoint. Set a threshold (e.g. no more than 1 point below base) that blocks checkpoint promotion. The gate moves the regression catch from post-deploy to mid-training and reduces triage scope by an order of magnitude.

2 more follow-ups an interviewer would ask next. Sign in to reveal them.

Red flags & common mistakes

The phrases that signal junior thinking. Click to expand.

Most common mistake

Jumping straight to rolling back without trying the cheap training-side levers first. Most capability regressions on narrow domains respond to fewer epochs or a lower learning rate within a single retraining cycle.

Sign in to see all red flags and common mistakes.

60 second bullets to scan on the way to the call.

  • Why merged-model verification rules out serving-layer bugs before training experiments

  • Why epoch count is the largest single driver of post-FT capability regression

Sign in to unlock the revision sheet.

Primary sources. Browse if you want the original framing.

Similar questions

Same topic, related formats. Practice these next.

4 curated
Next question
What is RLHF, and why is it used after pretraining?
MCQ·Easy