LLM 微调方法选择路由指南基于 agents24 项目 finetuning-method-selection 技能的决定树、逃逸通道与记忆可行性分析【免费下载链接】agentsMulti-harness agentic plugin marketplace for Claude Code, Codex, Cursor, OpenCode, GitHub Copilot, and Google Antigravity项目地址: https://gitcode.com/GitHub_Trending/agents24/agents本指南以 agents24 项目中plugins/llm-finetuning插件内的finetuning-method-selection技能文档为核心系统讲解是否应该微调、该用哪种微调方法、该选什么规模的基座模型这一整套路由决策流程。读完本文你将掌握微调前的四类逃逸通道RAG、提示词工程、继续预训练、不做训练、基于数据形态的方法决策树、模型目录的读取与失效刷新机制以及一套可落地的显存估算公式能够在你自己的微调任务启动前做出有理有据的方法选择。一、技能定位微调生命周期的路由器在 agents24 项目的llm-finetuning插件中finetuning-method-selection是整个微调生命周期fine-tuning lifecycle的入口路由技能router skill。它的职责不是执行训练而是回答三个前置问题这个需求到底需不需要微调如果需要该用哪种方法SFT、DPO/ORPO/KTO、GRPO/RLVR、继续预训练该选什么规模的基座模型技能文档开篇就强调插件内其他所有技能lora-qlora-recipes、preference-optimization、grpo-rlvr-training都假设路由决策已经完成。也就是说在打开这三个执行类技能之前必须先经过本技能的筛选。它适用于以下四类场景开始任何微调工作之前尚未选定框架或基座模型时不确定 RAG 或提示词工程是否比训练更省钱地解决问题时需要在偏好优化DPO 家族与强化学习方法GRPO/RLVR之间为同一任务做选择时在投入一次训练前需要对候选模型/方法组合进行规模预估sizing时。从插件的/finetune命令见 plugins/llm-finetuning/commands/finetune.md可以看到方法选择属于Phase 1Off-Ramps, Method Model Selection由专门的llm-finetuning-architect代理见 plugins/llm-finetuning/agents/llm-finetuning-architect.md负责执行——该代理的工作步骤明确要求先走finetuning-method-selection的决定树逃逸通道优先然后是数据形态路由器。这从实现层面印证了本技能的入口地位。二、快速参考一张表定位你的场景技能文档首先给出一张速查表覆盖最常见的六类情形。这张表是全文的索引每个结论都对应文中更详细的小节情形路由去向事实经常变化价格、文档、新闻RAG而非微调期望行为仍在探索中提示词工程稳定的领域知识文本 ≥500MB先 CPT 再 SFT——参见逃逸通道优先已有输入/输出演示样本SFT——参见lora-qlora-recipes已有偏好对或点赞/点踩DPO/ORPO/KTO——参见preference-optimization已有可验证的通过/失败信号GRPORLVR——参见grpo-rlvr-training还没有评测工具链停下——参见eval-harness-first注意最后一行没有评测工具链时路由结果是停止而不是继续选方法。这与插件评测先行eval-harness-first的设计哲学一致——没有评测基线任何方法选择都没有衡量标准。三、逃逸通道优先Off-Ramps First多数微调需求不该微调技能文档的核心理念非常直接帮我把这个微调一下这类请求大多数用别的方式解决更好也更便宜。所以在打开任何训练流程之前必须先检查三条逃逸通道3.1 知识型且易变volatile facts→ RAG如果缺口是会变化的事实——价格、文档、时事——路由到 RAG而不是微调。原因很朴素微调后的模型把知识烘焙进权重里形成时间快照易变事实会立即过期。用微调去追每周都在变的价格页模型过期的速度甚至比数据源本身还快。3.2 行为型且漂移shifting behavior→ 提示词工程如果期望行为还在摸索中或每次请求都在变路由到提示词工程。微调会把一种行为锁定进模型在行为尚未稳定之前不要锁定它。3.3 稳定、稠密的领域知识 → 按数据量分级的 CPT这是继续预训练continued pretrainingCPT的适用区间。技能文档给出的领域文本量与路由对照表如下领域文本量路由10MB仅 RAG10MB–500MBRAG 微调500MB–10GBCPT然后 SFT10GB必须 CPT同时文档给出关键参数指引CPT 学习率 ≈ 预训练学习率的 10%。需要特别说明的是本插件对 CPT 只做引导guidance-only——数据量与学习率的指引存在于本技能但插件不实际执行 CPT 训练。如果领域文本量在 500MB 以下RAG 或 RAG微调的迭代速度远快于跑一次 CPT。四、方法路由器Method Router完整的决策树排除逃逸通道之后技能文档给出了完整的决策树注明逐字引自本插件所基于的研究新事实 易变 → RAG | 稳定稠密 → CPTLR 约为预训练的10%→ SFT 新行为 漂移 → 提示词工程 | 稳定 演示样本 → SFTLoRA/QLoRA全线性层α2r 偏好对 → DPO有长度偏差用 SimPO显存受限用 ORPO 无配对 / → KTO 可验证的成功 → RLVR GRPO按失败模式选 DAPO/GSPO/Dr.GRPO 部署FP8Hopper| NVFP4Blackwell 级| AWQ旧硬件| GGUFimatrix边缘 以上一切之前评测工具链必须先行存在。阅读这棵树的正确姿势是自上而下先回答是新事实还是新行为然后沿着与手上数据形态匹配的分支走。数据形态决定方法而不是方法决定数据形态——这是全篇最重要的判断准则你有的是演示样本、偏好对、点赞点踩、还是可验证的成功/失败信号决定了你该用 SFT、DPO 家族还是 GRPO。4.1 决策树中的关键方法缩略语为了让你能真正读懂这棵树下面把决策树涉及的每个方法按插件内对应的执行技能展开SFT监督微调适用于有输入/输出演示样本demonstrations的场景执行细节在 lora-qlora-recipes 技能。该技能规定参考配方为LoRA Without RegretThinking Machines/Schulman2025-09目标模块全线性层attention 的q/k/v/o_proj MLP 的gate/up/down_proj其中 MLP 层最关键、lora_alpha 2 * rNeurIPS 2025 intruder dimensions 结论、LoRA 学习率约为等效全量微调学习率的 10 倍QLoRA 标准起点 2e-4。DPO/ORPO/KTO/SimPO偏好优化家族适用于有偏好数据成对偏好或非配对点赞点踩执行细节在 preference-optimization 技能。默认情形用 DPOβ0.1学习率 5e-7 至 1e-61–2 epoch显存受限或无独立 SFT checkpoint 用 ORPO无参考模型SFT 与偏好目标融合为一个 loss非配对二进制信号用 KTO观察到长度偏差且有调参预算才用 SimPO。GRPO/RLVR强化学习适用于可验证的通过/失败信号数学、代码、工具调用执行细节在 grpo-rlvr-training 技能。决策树末行提到的三个变体按失败模式选择熵坍缩/退化长链式思维用DAPO奖励或输出长度与质量脱钩地单调上升用Dr.GRPO训练 MoE 模型用GSPO序列级重要性采样比。部署格式FP8Hopper 硬件、NVFP4Blackwell 规模、AWQ旧硬件、GGUFimatrix边缘设备——这部分由插件的quantized-export技能承接。4.2 四条实战路由示例技能文档给出了四个带引语的示例是理解数据形态如何驱动决策的最佳案例用户希望助手精确遵循我们的支持宏指令。——行为稳定且可从会话记录中提取演示样本 → 演示样本 →SFT。评审者的点赞/点踩给出了好/坏回答的配对数据但未配对。——未配对信号 →KTO而不是 DPODPO 需要配对的偏好对。模型已经能解其中一些数学题且我们可以自动判分。——可验证的成功信号 →GRPORLVR且必须先确认模型至少有时能成功见下文关键路由事实。我们希望模型知道本周的价格页。——易变事实 →RAG完全不需要训练。五、关键路由事实三条被研究支撑的硬结论技能文档用三条负载性事实load-bearing facts约束整个路由决策这些结论全部来自插件所依据的公开研究240 台 H100 的 2026 年研究arXiv 2603.193355.1 损失函数选择是低杠杆的~1 个百分点 vs ~50 个百分点研究显示方法选择的价值约为 1 个百分点而模型规模的价值约为 50 个百分点测试的 20 种 DPO 变体中没有一种打败原生 DPO。且排名会随规模反转——在小规模试点中胜出的变体在部署规模下可能落败。实用含义不要在 DPO 变体对比上纠结路由决策。把精力花在把数据形态和规模做对上而不是花在 DPO 变体选型上。这也解释了为什么本技能的方法选择表刻意保持简短——它编码的是那 1 个百分点的杠杆而不是一份研究已证明跨规模不成立的 DPO 变体排名。5.2 DPO 管品味GRPORLVR 管推理编码主观判断的偏好对语气、风格、哪个回答更好→DPO。有可验证通过/失败信号的任务数学、代码、工具调用→GRPORLVR。这是整个插件贯穿始终的准绳standing rule在grpo-rlvr-training技能中被原样重申。5.3 RL 不是从零教会模型的手段GRPO 等 RL 方法只是锐化已有能力不能从零教出能力。如果模型尚不理解任务或输出格式先跑 SFT只有模型至少有时能成功之后才引入 RL。具体判据模型在所有采样与低温度下从不成功 → 差距是格式或任务理解问题路由回 SFT模型时成功时不成功 → 这才是 GRPO 的甜蜜区。六、常见路由错误四个高频翻车点技能文档总结了四类最常见的路由错误每一类都对应上文某条原则的违背用微调去修每周变化的事实——那是 RAG 问题微调只会比源数据过期得更快。在确认瓶颈是数据质量还是模型规模之前就选 DPO 变体——变体选择是 ~1 个百分点的杠杆不是 ~50 个百分点那个。在模型每次 rollout 都失败的模型上启动 RL——先路由到 SFT让 RL 有东西可以锐化。把 CPT 当作模型不懂我们领域的默认解——先查数据量阈值500MB 以下RAG 或 RAG微调比 CPT 迭代更快。七、模型选择以规模分类优先目录唯一命名基座模型的选择遵循先规模分类后家族的顺序且因为模型排名大约每季度翻新一次技能文档把模型命名集中放在唯一一个地方references/model-catalog.md。7.1 目录的三大设计约束唯一命名源该文件是llm-finetuning和dgx-spark-ops两个插件中唯一命名基座模型家族的地方。本技能与references/memory-math.md都只按规模分类描述模型例如8B 级 LoRA从不写具体模型名。刻意标注日期目录头部带最后验证日期catalog 标注为 2026-07刷新日期 2026-07-14和刷新清单。使用前必须检查日期过期则先按清单刷新检查 Unsloth 支持模型页、各规模分类的开源权重榜单、更新行并更新时间戳至少每季度刷新一次。优先级规则当目录与某个方法技能冲突时——目录每行的 Notes 列只陈述硬件/规模分类可行性不是方法推荐实际方法选择由lora-qlora-recipes的 LoRA vs QLoRA vs 全量微调表按任务形态路由裁决后者优先级更高。7.2 目录2026-07核心内容规模分类文本推荐视觉(VLM)推荐DGX Spark 可行性备注要点≤4BQwen3 4B 级SmolVLM / Gemma 3 4B全量微调可行默认仍可全量微调的最小规模档7–9BQwen3 8B、Llama 级 8BQwen2.5-VL-7B全量微调上限再往上全量微调不再是 Spark 默认12–32BQwen3 14B/32B、Gemma 3 27BQwen2.5-VL-32B仅 LoRA27B 是 pack≤1024 下的 LoRA 上限单台 Spark 实际可跑 LoRA 的最大稠密模型70BLlama 3.3 70B 级用 12–32B 视觉档替代仅 QLoRA约 40GB3 epoch 需 30–48h该规模单台 Spark 上 bf16 不可行100B MoEgpt-oss-120b 级用 12–32B 视觉档替代NVFP4 原生 LoRA社区配方实验性其他 100B MoE 模型需逐模型验证目录还包含视觉模型注意事项LLaVA 已被视为遗留方案不应推荐给新工作仅列出以便识别过期推荐若需 MoE 视觉语言架构InternVL3.5 的 MoE 变体是稠密 Qwen2.5-VL/Qwen3-VL 与 Gemma 3 的替代——但 InternVL3.5 也发布稠密权重需显式选择 MoE 变体而非默认所有 InternVL3.5 都是 MoE。八、记忆可行性Memory Feasibility开跑前先算账在承诺一种方法之前先做规模估算。技能文档给出总记忆占用公式总占用 ≈ 参数 × dtype 字节数 优化器状态 梯度 激活值详细的工作表worked worksheets与规模分类示例位于 references/memory-math.md。文档强调这是规划数学不是保证——宁可留足余量也不要按字节精确卡线。8.1 四个加一个记忆项的逐项拆解① 权重weights参数 × 每参数字节数按 dtype 区分——fp32 为 4 字节/参数bf16/fp16 为 2int8 为 1int4QLoRA NF4为 0.5。这是全量微调时的主导项。公式在所有方法间通用但 dtype 不同结果不同同一参数量的 bf16 LoRA 按 2 字节/参数加载int4 QLoRA 按 0.5 字节/参数加载相差 4 倍。公式可跨方法复用但某一方法 dtype 下算出的权重记忆数绝不能套用到另一种方法上。② 优化器状态optimizer states全量微调为每个可训练参数携带优化器状态LoRA/QLoRA 只为适配器参数携带因此无论基座模型多大该项都可忽略。AdamW fp32 状态为 8 字节/参数4B 动量 4B 方差AdamW 8-bit 约为 2 字节/参数量化动量方差约可将该项压缩到四分之一。③ 梯度gradients与计算精度同 dtype通常 bf162 字节/参数同样只针对可训练参数。全量微调为每个权重付这笔账LoRA/QLoRA 只付适配器部分因为冻结的基座权重从不累积梯度。④ 激活值activations最难精确估计的一项——它随批次大小、序列/打包长度和架构缩放而非仅随参数数量。两个比精确估算更重要的杠杆梯度检查点gradient checkpointing用重计算换显存该术语约节省30%代价是每段检查点增加一次重计算开销。打包/序列长度对这个术语而言是比批次大小更直接的杠杆。⑤ LoRA/QLoRA 适配器开销秩为r的适配器在线性层上增加r × (in out)参数A 为r×inB 为out×r。在常规秩范围RL 用 1–32SFT 大规模用至约 256内这只占基座模型规模的极小百分比——除非秩异常高否则工作表中直接取整为零。8.2 三个工作示例与锚点memory-math.md 给出三个可对照的基准8B 级 LoRAbf16权重约 16GB 可忽略的适配器开销——8B 级模型在单张高显存 GPU 上以 bf16 LoRA 舒适运行的参照点。8B 级 QLoRA权重约 4GB——与 bf16 LoRA 相比约 4 倍缩减。这正是 QLoRA 的价值在同一规模分类下为更大批次或更长打包买余量而不只是能塞进更大模型。70B 级 QLoRA约 40GB 锚点理想公式权重约 35GB十进制 GB仅权重计入量化元数据NF4 双重量化常量与运行时开销后约 40GB 是现实锚点。同一规模分类下估计值远超 40GB 锚点是重新检查 dtype 和方法而非继续加余量的信号——bf16 权重仅此一项就约 140GB远超单设备预算。8.3 使用步骤与 DGX Spark 特例使用顺序从 model-catalog 选规模分类和方法 → 按上表求和权重优化器梯度 → 加上激活值若启用梯度检查点则应用约 30% 节省→ 与最近的锚点对照而非单独信任估算。DGX Spark 特例统一内存unified-memory行为会打破朴素估算——瞬态加载尖峰、nvidia-smi低报、长任务热节流。一旦安装了dgx-spark-ops插件Spark 专属的可行性判断应交给其spark-memory-thermal-ops技能而不是在本技能中重新推导plugins/llm-finetuning/skills/finetuning-method-selection/SKILL.md 明确如此要求。九、路由完成后的交接执行技能链技能文档的相关技能一节明确了交接契约本技能选定方法后交给执行该方法的技能lora-qlora-recipes—— 通过 LoRA/QLoRA 做 SFTplugins/llm-finetuning/skills/lora-qlora-recipes/SKILL.mdpreference-optimization—— DPO、ORPO、KTOplugins/llm-finetuning/skills/preference-optimization/SKILL.mdgrpo-rlvr-training—— 带可验证奖励的 GRPOplugins/llm-finetuning/skills/grpo-rlvr-training/SKILL.md而任何方法被选中之前评测工具链必须已存在——这是 eval-harness-first 技能 定义的 Phase 0 门禁没有eval/baseline-model.json就没有比较基准/finetune命令会在 Phase 1 前直接拦截见 finetune.md 的 Phase 0 Gate。十、在完整生命周期中的位置Phase 1 的输入与产出把本技能放进插件全景中看会更清楚。/finetune命令把微调生命周期分为七个阶段本技能对应Phase 1逃逸通道、方法与模型选择由llm-finetuning-architect代理执行用一句话陈述失败模式事实行为可验证技能确认eval/baseline-model.json存在否则拒绝继续走finetuning-method-selection的决定树逃逸通道优先然后数据形态路由器命中逃逸通道就明确说出并停止不要为更适合别处解决的需求起草训练简报若确需微调从模型目录选规模分类与模型做记忆可行性估算GRPO 路线还需确认奖励函数的 Inspection Rule 已执行按契约写出runs/date-slug/training-brief.md包含 Goal、Chosen Method含决定树分支依据、Base Model含目录最后验证日期、Eval Baseline、Dataset Expectation、Memory Budget、Success Criteria、Risks 等全部字段。值得注意的细节该代理的角色描述要求推荐不微调的次数多于推荐微调——逃逸通道存在的原因正是大多数微调一下的请求用别的方式解决更便宜而默认回答好的我们训练正是这个角色存在的意义所要阻止的失败模式。它引用的所有阈值数字学习率、显存公式、规模阈值都必须指向持有它们的技能或参考文件从不凭记忆引用。结语finetuning-method-selection技能把微调决策从凭感觉选方法变成了按数据形态走决定树的工程流程。它最值得带走的三个判断准则可以浓缩为先看逃逸通道RAG/提示词工程/CPT 按数据量分级再按数据形态选方法演示样本→SFT、偏好对→DPO 家族、可验证信号→GRPO最后用规模分类与显存公式做可行性把关——并且始终记住方法选择的杠杆只有约 1 个百分点模型规模约 50 个百分点评测工具链则是一切的前提。【免费下载链接】agentsMulti-harness agentic plugin marketplace for Claude Code, Codex, Cursor, OpenCode, GitHub Copilot, and Google Antigravity项目地址: https://gitcode.com/GitHub_Trending/agents24/agents创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考