AREXOpen in interactive Feed

AREX Feed Article

Unsloth 宣布可在本地训练决策模型,自称 Qwen3.5 0.8B 聚合准确率从 20.7% 升至 74.3%、训练仅需 4GB 显存

October 7, 2026

10 月 7 日 16:21 UTC(北京时间 10 月 8 日 0:21),Unsloth AI 在其 X 账号上,用户现在可以在本地训练自己的决策模型(decision model)。帖文举的例子是 Qwen3.5 0.8B:在三项决策基准上的聚合准确率(aggregate accuracy)从 20.7% 提升到 74.3%,训练只占用 4GB 显存。

帖文给出了具体做法:用 Clef head,通过 Unsloth 和 LoRA(低秩适配,r=64)微调一个 epoch(训练轮次),把下游准确率从 30%~37% 提升到 78%;并称「像 Qwen3.8、Gemma 4 这样的任意 LLM」都可以借其开源仓库转成决策模型。帖文附了两个链接: 和一份附代码示例的。以下引用的性能数字均出自 Unsloth 一方发布的帖文与文档。

界面截图来自 Unsloth 训练指南:「Train as」可以从 Language model 切换为 Decision model,示例模型为 Qwen3.5-4B。

「像 Jev 一样」:决策模型训练搬进本地

决策模型是过去几周集中冒出来的一类模型。给它一段状态(一张工单、一段 JSON、一次工具调用的参数)和你定义好的若干问题、候选答案,它会给每个选项打分,返回带概率的结构化结果;因为只能从你给的选项里选,输出天然符合你的 schema(输出结构)。Laurence Moroney 在 10 月 2 日的一篇里写道,这个领域现在大多遵循 TypeSafe 的 API,该 API 定义了三种问题类型:choice(从列表里选一个,每个选项带概率)、score(把内容放到有序刻度上)、noul(某条件为真的概率)。

帖文里被对标的就是 Jev。按 Moroney 的梳理,Jev 由 TypeSafe AI 在 9 月 15 日发布,闭源、只通过托管 API 提供;到 10 月 2 日,社区 Decision Index 上已有 70 个开放参赛者,Together AI、Bespoke Labs、AWS、Cloudflare、Perplexity 都发布了各自的决策模型,Ollama 也在 v0.35.0 里加入了 Jev 兼容的 /v1/systemone 端点。Unsloth 的文档则把 Jev、Laya、Clef 并列为可以对标、也可以继续微调的既有决策模型。

三项基准的分项数据与开销

训练指南把帖文的聚合成绩拆成了三项基准:Qwen3.5-0.8B 在 typed-decisions 上从 36% 升至 73%,在 BANKING77 上从 7% 升至 74%,在 CLINC150 上从 19% 升至 76%。三个起点的算术平均是 20.7%,三个终点的算术平均是 74.3%,与帖文的聚合数字吻合;2B 版本的三项成绩分别是 33%→78%、1%→58%、1%→62%。

指南的表格还给出各组合的准确率、显存与训练时间:Qwen3.5-0.8B:78%、4GB 显存、42 分钟;Qwen3.5-2B:81%、8GB、40 分钟;Llama 3.2 3B:79%、4.1GB、30 分钟;Gemma 4 E4B:77%、14.4GB、49 分钟;对 Laya 继续微调:77%、2.5GB、10 分钟。指南还把微调前的下游准确率形容为「大致是随机水平」。

当天 17:22 UTC,Unsloth 在时又强调了小模型路线:「只用 2.5GB 显存,就能用 Laya 这样的小模型训练你自己的决策模型」,并称训练完全通过 UI 界面完成、视频教程与分析都在指南里。

数据构成上,指南称训练混合了 12 个来源加 typed-decisions:ag_news、arc、banking77、boolq、clinc150、commonsense_qa、mmlu、mnli、prompt_injections、snli、sst5、wanli。测试集共 3,000 行,其中 2,000 行来自 typed-decisions,BANKING77 与 CLINC150 各 500 行,并声明测试集已针对训练数据做去污染(decontamination)处理。

口径上还有一层提醒:Moroney 在综述里写道,这个领域的大部分数字来自各家厂商自己,「独立跨模型榜我只知道 Decision Index 一个」;他在文中提到,该榜当时还没有给 Clef、Clef-Flash 等模型打分。

配方与操作:一个 Clef 式 head,加一轮 LoRA

按指南的说明,训练时 Unsloth 把输入和所有问题、选项放进同一个 prompt(提示词),LLM 只读一遍;一个接在输出端的小型 head(设计上与 Cloudflare 的 Clef 相同),会对 LLM 在每个问题和选项上的输出打分,把所有问题一起决定。它不写文本,因此不需要把显存花在逐词预测上。

帖文与指南开头对这次微调的描述一致:Clef head + LoRA(r=64),只训练一个 epoch。但指南在「推荐设置」一节给的是另一套参数:要复现成绩,把 epoch 设为 2、LoRA rank 设为 16、学习率设为 2e-4,head 默认按 1e-4 训练,并写明「我们在 typed-decisions 上用了 2 个 epoch」。帖文下有用户直接追问:「指南推荐 2 个 epoch,而这次运行用的是 1 个——想复现那张表的人,该按哪套配方来?」()

界面路径是:桌面应用(macOS、Windows、Linux)里的 Train 标签页 → 选底座模型(示例是 unsloth/Qwen3.5-4B)→ 把「Train as」设为 Decision model → 选数据集(typed-decisions 的 Subset 选 all)→ 开始训练;完成后界面报告留出集(holdout)准确率的前后变化并校准置信度,再点「Use in Decision API」把模型接出去。代码路径则是从 unsloth 导入 FastDecisionModel 与 DecisionTrainer:加载 4-bit 模型、挂 r=16 的 LoRA、载入 Hugging Face 上的 LocalLLaMA/typed-decisions 数据集,训练后用 calibrate() 拿到留出集准确率、校准误差(ECE)与 loss;save_pretrained 保存适配器与 head,save_pretrained_merged 保存完整 16-bit 模型。指南还给了几条工程提示:显存不够就把 batch 减半、梯度累积翻倍;推理时最多读 16,384 个 token。

指南中的示例运行界面:留出集准确率 0.37 → 0.54、校准误差 0.09(Epoch 1.00、17 步、耗时 1 分 51 秒);它是训练界面的示例,与上面的基准成绩不是同一组数字。

接进 Jev 兼容的本地 Decision API

训练完的模型要能服务出去,指南给出的路径是:模型出现在 Settings → API 的 Decision API 下;打开 Decision API 后,请求里的模型名写 laya、default 或 jev-latest,都会转到你训练并选中的模型,回答格式与 Laya 一致。用代码训练的模型,可以用 UNSLOTH_SYSTEMONE_MODEL 指向合并后的模型目录再启动服务;模型需要 GPU,第一次请求时才加载,可能要等几分钟;训练正在占用 GPU 时,Decision API 会等训练结束再恢复应答。

Unsloth 的把这条链路说得更直白:Laya 与 Clef 被称为 Jev 的开放替代品,可以通过「兼容 TypeSafe 的 Jev API」对外服务,让现有的 Jev 集成把地址指向本地服务器即可复用;迁移方式是安装 typesafe-sdk,再设置 TYPESAFE_BASE_URL 与 TYPESAFE_API_KEY 两个环境变量。文档也列了两处与 Jev 的差异:confidence 的计算公式不同,按 Jev 调好的阈值不能照搬,应改用 probabilities 设阈值;一个 choice 的选项共享固定 token 预算,描述选项超过约 20 个后标签会被截断。请求侧支持 noul(是/否概率)、choice、score 三种问题类型,单次最多 64 个问题、每个 choice 最多 255 个选项、每个 score 最多 10 档,服务地址是 /v1/systemone,文档强调数据留在本机。

指南里的「Try a decision」示例:一条客服消息被判给 billing(28.6%),account、sales、technical 依次为 27.2%、25.3%、18.9%;默认模型是名为 unsloth_Qwen3.5-2B_1791… 的一次训练运行。

Settings → API 的模型下拉框:除 Multilingual、English、Typed decisions、Clef、Clef-flash 等内置项外,本次训练运行(unsloth_Qwen3.5-4B_1791374934)也在列表里;服务请求走 /v1/systemone。

帖文下的回复:显存门槛、延迟与泛化表现

帖文下有人盯着 4GB 这个数字:「能塞进 4GB 显存,老显卡也能试试」()。也有人直接开问:用户 说他想看的是延迟,「Jev 快得离谱,这个能接近到什么程度?把输出 token 算进去,每次决策的成本是多少?」

另一类问题指向基准之外。用户 写道:「离开那三项基准,它在别的决策上表现如何?小型决策模型的校准,通常正是在未见任务上出问题。」Moroney 的综述也提到,这类模型的移动端与 NPU 延迟都还没有独立数字,他能找到的延迟数据全部来自桌面 GPU、Mac 或服务器级显卡。

帖文与指南给出的成绩都来自那三项基准;对想自己验证这组数字的人,指南给出的快速入口是:把 max_steps 设为 60,Qwen3.5-4B 在一张 L4 上 10 分钟跑到 76%。

参考链接