【免费下载链接】S1-mini-MLX-4bit项目地址https://ai.gitcode.com/hf_mirrors/mlx-community/S1-mini-MLX-4bit点击查看免费下载S1-mini-MLX-4bit 是 Superwhisper 的 S1-mini 语音文本规整模型的MLX 4bit 仿射量化版本由mlx-lm从原始 BF16 权重直接转换而来。本文带你完整复盘这次 4bit 量化转换为什么要用仿射量化、mlx-lm 每一步做了什么、转换产物里藏着哪些线索以及如何在本地快速跑起来验证效果。一、先认识主角S1-mini 是个什么模型S1-mini 不是一个聊天模型而是一个只做一件事的 0.6B 小模型把 ASR语音识别吐出来的原始听写稿改写成干净的文字。口癖um、uh删掉、自我纠正取最终值、标点和大写补齐、口语数字转成书面格式forty two→42。项目说明基座模型Qwen3-0.6B微调而来参数量596M其中 embedding 155.6M词嵌入与输出层共享层数 / 注意力头28 层Q 头 16、KV 头 8GQA词表大小151,936原始精度BF16语言仅英文许可证Apache 2.0 保留名称条款见 LICENSE在上游保留的 7,519 条英文测试集上它的 token 准确率约为94.8%。正因为只有 0.6B量化后单文件约462 MiB在笔记本 CPU 上也能跑得动。二、什么是「仿射 4-bit」量化量化就是把每个权重从 BF1616 bit压缩到 4 bit。而「仿射」affine描述的是压缩时保留的辅助信息权重按group size 64分组每 64 个权重共享一对参数一个scale缩放因子和一个bias零点偏置反量化公式w ≈ (q - bias) × scale对称量化相当于强制bias 0仿射量化则让每组自己学习偏置对分布不对称的权重块精度更友好S1-mini-MLX-4bit 4bit 仿射量化结构示意每 64 个权重共享一组 scale 与 bias实际存储开销大约是4.06 bit/参数每 64 个 4-bit 权重外加 2 个 BF16 的 scale/bias比原始 BF16 缩小约4 倍596M 参数从约 1.2 GB 压到 462 MiB。三、mlx-lm 转换全流程复盘整个转换只有一条主线安装 mlx-lm → 喂入 BF16 原始权重 → 输出 MLX 量化仓库。第 1 步安装转换工具uv tool install mlx-lm本仓库使用mlx-lm0.31.3 完成转换。第 2 步量化转换核心一步mlx-lm 读取上游 BF16 权重对每个线性层q/k/v/o_proj、gate/up/down_proj乃至词嵌入embed_tokens做分组仿射量化把 4-bit 打包权重连同每组的scales、biases一起写入新的model.safetensors。第 3 步原样保留配套资产除了权重转换还完整保留了原始的 tokenizer、chat template、生成配置、模型文档和许可证——仓库里的 chat_template.jinja、tokenizer.json、generation_config.json 都来自上游保证行为一致。四、逐份阅读转换产物关键证据都在这文件你能看到什么config.json新增的quantization字段{group_size: 64, bits: 4, mode: affine}model.safetensors打包后的 4-bit 权重 每组 scale/bias约 462 MiBmodel.safetensors.index.json权重清单total_parameters: 596049920generation_config.jsondo_sample: false贪心解码README.md上游完整文档、评测数据与用法三个值得新手注意的细节三件套命名法。打开 model.safetensors.index.json 的weight_map会发现每个量化层都是.weight/.scales/.biases一组例如model.layers.0.self_attn.q_proj.weight与...q_proj.scales、...q_proj.biases并存——这正是仿射量化的标志。embedding 也被量化了。model.embed_tokens同样带.scales和.biases说明 mlx-lm 没有把词嵌入留在 BF16。torch_dtype仍是bfloat16。config.json 里保留了这个原始元数据它描述的是上游模型不代表本仓库权重还是 16-bit别被误导。五、转换质量怎么验证的转换后作者做了一组确定性 sanity check6 个固定输入跑贪心解码与上游 BF16 参考输出比对——✅ 3 条与参考字符串完全一致⚠️ 其余差异都很小如保留了句首 So,、序数词标点差异、某条自我纠正用例漏了 tomorrow官方明确提醒这只是小功能检查不是上游 7,519 条用例的完整评测4-bit 版本建议在自己的听写场景上自行评估。六、本地跑起来最小步骤uv tool install mlx-lmfrom mlx_lm import generate, load model, tokenizer load(mlx-community/S1-mini-MLX-4bit) # 必须保留 system prompt 控制行并设置 enable_thinkingFalse输入格式是「控制行 换行 原始听写稿」例如[Styling: semi-formal] [Structure: prose] [Context: general] so um send the report by uh friday模型只输出清洗后的文本无任何前言解释。七、新手避坑清单必须enable_thinkingFalseS1-mini 基于 Qwen3 训练时关闭了思考模式漏掉这个参数最常见的结果就是拿到一个空的think块输出全空白。system prompt 和控制行一个字符都不能少它们是模型唯一的「方向盘」。保持贪心解码generation_config.json 已设do_sample: false文本规整是确定性变换采样只会引入噪声。长文本分段单次输入控制在约 1,000 token 以内按句子边界切分。可能输出空字符串输入全是口癖时空输出是正确结果不是报错。总结S1-mini-MLX-4bit 展示了 mlx-lm 量化转换的典型产物形态一条命令把 BF16 权重压成 affine 4-bitgroup 64文件缩到约 1/4同时完整继承 tokenizer、chat template 与生成配置。读懂config.json里的quantization字段和 index 文件里的.scales/.biases三件套你就能分辨任何 MLX 量化模型是怎么炼成的。赞分享【免费下载链接】S1-mini-MLX-4bit项目地址https://ai.gitcode.com/hf_mirrors/mlx-community/S1-mini-MLX-4bit点击查看免费下载相关推荐亲手转换你的7B模型到MLX格式以Mistral-7B-Instruct-v0.3-mlx-4Bit为例的mlx-lm量化转换教程亲手转换你的7B模型到MLX格式以Mistral 7B Instruct v0.3 mlx 4Bit为例的mlx lm量化转换教程 想在 Apple Sili4Bit量化原理深度剖析Phi-4-mini-instruct-mlx-4Bit的affine量化与group_size64机制4Bit量化原理深度剖析Phi 4 mini instruct mlx 4Bit的affine量化与group_size64机制 本文带你读懂 Phi 4Phi-4-mini-instruct-mlx-4Bit Python API实战5行代码加载4Bit量化模型并生成对话Phi 4 mini instruct mlx 4Bit Python API实战5行代码加载4Bit量化模型并生成对话 Phi 4 mini instruc上一篇仓颉 ArkUI ohos.arkui.shape 形状 API 详解BaseShape 基类与 clipShape/maskShape 裁剪遮罩实战下一篇终极指南快速获取B站视频播放链接的完整解决方案创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考