From 58116e7e7aad3c5eb708a335b389be29e1dfb86d Mon Sep 17 00:00:00 2001 From: Manan17 Date: Wed, 18 Feb 2026 07:08:32 +0000 Subject: [PATCH] fix the linear path on backend --- studio/backend/core/training/trainer.py | 8 +++++++- studio/frontend/src/features/training/api/mappers.ts | 4 +--- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/studio/backend/core/training/trainer.py b/studio/backend/core/training/trainer.py index 9468e282ef..9de384cbe3 100644 --- a/studio/backend/core/training/trainer.py +++ b/studio/backend/core/training/trainer.py @@ -214,7 +214,13 @@ class UnslothTrainer: return True # LoRA/QLoRA mode - apply PEFT - if target_modules is None or (isinstance(target_modules, list) and len(target_modules) == 0): + # "all-linear" is a PEFT keyword that targets every linear layer + if isinstance(target_modules, list) and "all-linear" in target_modules: + if len(target_modules) == 1: + target_modules = "all-linear" + else: + target_modules = [m for m in target_modules if m != "all-linear"] + elif target_modules is None or (isinstance(target_modules, list) and len(target_modules) == 0): target_modules = ["q_proj", "k_proj", "v_proj", "o_proj", "gate_proj", "up_proj", "down_proj"] diff --git a/studio/frontend/src/features/training/api/mappers.ts b/studio/frontend/src/features/training/api/mappers.ts index f3b0629754..510cc542b8 100644 --- a/studio/frontend/src/features/training/api/mappers.ts +++ b/studio/frontend/src/features/training/api/mappers.ts @@ -46,9 +46,7 @@ export function buildTrainingStartPayload( lora_r: config.loraRank, lora_alpha: config.loraAlpha, lora_dropout: config.loraDropout, - target_modules: adapterMethod - ? config.targetModules.filter((m) => m !== "all-linear") - : [], + target_modules: adapterMethod ? config.targetModules : [], gradient_checkpointing: config.gradientCheckpointing, use_rslora: config.loraVariant === "rslora", use_loftq: config.loraVariant === "loftq",