ARTICLE · INTELLIGENCE

战地情报 · 详情页

来自尧图项目组的一线实战观察与深度解析

认识S1-mini-MLX-8bit:0.6B语音识别文本规范化模型完全解析

认识S1-mini-MLX-8bit:0.6B语音识别文本规范化模型完全解析

【免费下载链接】S1-mini-MLX-8bit

项目地址:https://ai.gitcode.com/hf_mirrors/mlx-community/S1-mini-MLX-8bit
点击查看免费下载

S1-mini-MLX-8bit 是由 Superwhisper 的 S1-mini(0.6B 参数)转换而来的MLX 8-bit 量化版本,专为语音识别(ASR)输出的文本规范化设计:把带口头禅、无标点的原始转写稿,改写成干净的书面英文。整个模型只有462 MiB,可以在笔记本 CPU 上流畅运行,是苹果 Apple Silicon 设备上做语音输入、会议记录后处理的理想选择。🎯

一、S1-mini 到底是个什么模型?

S1-mini不是聊天模型,它只做一件事:文本后处理。语音识别流程通常是:

音频 ──▶ ASR(Whisper、Parakeet 等)──▶ S1-mini ──▶ 干净文本

ASR 给出的原始转写通常是全小写、无标点、带 "um""uh" 等口头禅的,例如:

so um i need to like send the the report by uh friday no wait make that thursday

经过 S1-mini 处理后,输出是:

I need to send the report by Thursday.

它一次能搞定四件事:

  • 🧹 删除填充词(um、uh、like 等)
  • 🔄 解决口误与自我纠正(取说话人最终确认的值)
  • ✒️ 自动加标点和正确大小写
  • 🔢 数字、日期、时间、货币、邮箱的书面化(即逆文本规范化 ITN)

比如在 7,519 条英文测试集上达到94.8% 的 token 准确率。

二、模型档案:关键参数速览

本仓库是 S1-mini 的 MLX 8-bit 量化版(用mlx-lm从 BF16 权重转换,量化组大小 64,affine 模式),保留了原始分词器、聊天模板与生成配置。

项目参数
模型类型因果语言模型(单一转换任务微调)
基础模型Qwen3-0.6B(微调而来)
参数量5.96 亿(596M,去重后)
层数28
注意力头Q 16 个 / KV 8 个(GQA)
量化精度8-bit affine,group_size 64
模型文件大小约 462 MiB
支持语言仅英文(v1 版本)
许可协议Apache 2.0 + 命名条款

详细配置可查阅 config.json:其中quantization字段记录了bits: 8、group_size: 64、mode: affine,model.safetensors.index.json 的 metadata 显示总参数量 596,049,920。

📌 小知识:Hub 侧栏可能显示 0.8B 参数,这是因为lm_head.weight被存成了输入嵌入的实体副本,导致词嵌入被重复计算。上表统计的是去重后的真实参数量。

三、控制行:三个开关精准指挥模型

S1-mini 不接受通用指令,它的"方向盘"是输入第一行的控制行,格式固定:

[Styling: <值>] [Structure: <值>] [Context: <值>] <原始转写文本>

三个轴相互独立,所有组合都经过训练:

1️⃣ Styling(文体)——决定书面化程度

取值效果
casual全小写、去撇号、保留口语化表达
semi-casual保留说话人口吻,"I" 及其缩写大写
semi-formal标准书面英文,gonna改写为going to(推荐默认值)
formal在 semi-formal 基础上展开缩写(I am、cannot)

同一段输入 "hmm im gonna be late theres a cute dog outside…" 在semi-formal下输出:

I'm going to be late. There's a cute dog outside. I can't just walk past him.

2️⃣ Structure(结构)——prose保持段落行文;lists允许把可枚举内容拆成 Markdown 列表(至少 3 项,保守判断)。

3️⃣ Context(场景)——general输出流畅文本;email会重排成"问候行 + 正文 + 落款"的邮件版式。

四、Apple Silicon 快速上手 MLX

本仓库专为 MLX 生态准备,安装依赖后几行 Python 即可调用:

uv tool install mlx-lm
from mlx_lm import generate, load model, tokenizer = load("mlx-community/S1-mini-MLX-8bit") # 构造 system 提示 + 控制行 + 原始转写后,apply_chat_template 生成 prompt print(generate(model, tokenizer, prompt=prompt, max_tokens=128))

⚠️ 两个关键点:

  1. 必须设置enable_thinking=False。模板来自 Qwen3,默认开启思考模式;若不关闭,模型会输出一个空think块然后停止——这是该模型最常见的"空白输出"陷阱。模板文件 chat_template.jinja 已随仓库提供。
  2. 系统提示词必须逐字使用官方文档中的版本,它与控制行共同构成模型训练时的输入格式,改动措辞可能导致输出乱码。

五、最佳实践清单 ✅

  1. 贪心解码:generation_config.json 已内置do_sample: false——规范化是确定性任务,采样只会引入噪声。
  2. 按输入长度设上限:输出长度约等于输入长度,1.3 × 输入token数 + 32是安全的max_new_tokens上限。
  3. 长文本分块:单次输入建议不超过 1,000 tokens,在句子边界处切分。
  4. 空输出是正常的:如果输入只有 "um" 这类纯噪声,模型会返回空字符串,请在流水线中把它当作合法结果而非错误。

六、仓库文件一览

文件说明
README.md完整文档:用法、控制行、部署示例
config.json模型结构 + 8-bit 量化配置
generation_config.json生成参数(贪心解码)
chat_template.jinja聊天模板(含 thinking 开关逻辑)
model.safetensors8-bit 量化权重(Git LFS 存储)
model.safetensors.index.json权重索引
tokenizer.json / tokenizer_config.json分词器
LICENSEApache 2.0 + 命名条款

七、许可证注意事项

S1-mini 采用Apache 2.0 加一条命名条款:任何使用场景都必须保留 "S1-mini" by "Superwhisper" 的名称与原始大小写。该协议对开源和商业软件都友好,可用于听写应用、会议记录工具、实时字幕等场景——但分发前请务必阅读 LICENSE 确认条款覆盖你的用例。


总结:S1-mini-MLX-8bit 是语音识别流水线上一个"小而美"的后处理组件——0.6B 参数、462 MiB 体积、94.8% 的 token 准确率,且借助 MLX 8-bit 量化在 Apple Silicon 上即开即用。把它接在你现有的 ASR 模型之后,就能获得出版级的听写文本质量。🚀

【免费下载链接】S1-mini-MLX-8bit

项目地址:https://ai.gitcode.com/hf_mirrors/mlx-community/S1-mini-MLX-8bit
点击查看免费下载
上一篇:【亲测免费】 开源项目【hidpi】下载与安装教程
下一篇:如何在7天内通过A Tour of Go快速掌握Go语言编程基础

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

RELATED READING

延伸阅读

更多一线实战笔记与深度复盘,助您持续精进