我把 Typeless 删啦!开源产品 Airtype 终于支持本地模型,本地优先的语音输入真香!
摘要
Airtype v0.13.0 接入 Qwen3-ASR 与 Apple MLX,不再要求 API Key,也不必把录音上传到云端,语音转文字可以完整地在 Mac 本地完成。
我做的开源 macOS 语音输入工具 AirType,刚刚发布了 v0.13.0,完整代码可以在 GitHub 开源仓库查看。这个版本只增加了一项主要功能,却改变了整个产品最基础的一条路径:语音转文字现在可以完全在 Mac 本地运行。从此本地优先,隐私优先的语音输入,让你我他她它,用着更安心!
不需要注册账户,不需要填写 API Key,录音也不必上传到云端。第一次下载好模型后,按住快捷键说话,Qwen3-ASR 会直接在 Apple Silicon 上完成识别,再把文字放到当前光标所在的位置。
我把新版首页的主标题改成了:
Your voice. Your Mac. Nothing else.

这篇我想利用 Airtype v0.13.0 的实现,讲清楚“完全本地”具体改变了什么,以及一个开源语音模型要真正进入原生 macOS 应用,中间还需要补齐哪些部分。期望对大家有所帮助。
为什么要把识别搬回 Mac
Airtype 原来的工作方式很常见:录制声音,(可选地)把音频交给 OpenAI、ElevenLabs、Mistral 或豆包等服务完成转写,再将结果插入当前应用。
这条路径能够使用不同服务商的模型,也方便快速接入新的能力,但用户需要自己准备 API Key。每次说话产生的录音还要经过网络发送出去,转写是否可用也会受到网络和外部服务状态的影响。
对于一个长期待在菜单栏、随时可能被唤起的语音输入工具,这些摩擦很难忽略。用户说出的内容可能是一封尚未发出的邮件、一段代码、会议笔记,也可能只是一个还没有整理成形的想法。即使云端服务提供完善的隐私政策,本地完成仍然是一条更短、更容易理解的数据路径。
此外,数据隐私性也是许多用户非常关心的。用第三方的语音服务,个人的语音数据会交付出去,这让大量用户降低了使用的信心。本地模型恰好完美解决了这个问题。你再也不用担心自己说的话泄露出去咯!
v0.13.0 没有移除原有云端服务,而是增加了 MLX Local。选择它之后,Airtype 的基本过程变成:
麦克风录音
↓
Mac 本地音频文件
↓
Qwen3-ASR
↓
MLX 在 Apple Silicon 上推理
↓
文字出现在当前光标位置
除了第一次安装模型需要联网,识别过程不需要连接转写 API。API Key、按分钟计费和音频上传也就不再是使用语音输入的前提。
本地模型不是下拉框里的一个名字
开始研究 Qwen3-ASR 时,一个很自然的误解是:Airtype 已经支持很多语音模型,再向模型列表里添加两个名字是否就够了?
答案是不够。云端模型背后已经有服务商负责模型文件、GPU、推理服务和版本更新,应用只需要组织一次网络请求。本地模型把这些责任带回了客户端。
要让普通用户在 Airtype 里选择一个模型并开始说话,至少需要三层能力:
- 模型选择 - 告诉应用运行 0.6B 还是 1.7B。
- 模型管理 - 完成首次下载、缓存检查、安装状态显示和删除。
- 本地推理 - 读取录音,用对应模型生成文字,并把结果接回 Airtype 原有的输入流程。
因此,这次改动最后涉及 13 个文件,新增和调整了约 840 行代码。项目里加入了独立的本地 ASR 接口、模型管理器、MLX 转写服务和 Qwen3-ASR 适配层;设置页与首次启动流程也必须理解一种“不需要 API Key 的 Provider”。
这部分界面应该尽量简单。用户不需要知道权重文件存在哪个缓存目录,也不需要理解模型转换参数。他只需要选择 MLX Local,选择一个模型,点击安装。
Qwen3-ASR、MLX 和 4-bit
Qwen3-ASR 官方发布了 0.6B 和 1.7B 两个主要尺寸,支持自动语言识别、30 种语言和 22 种中文方言。官方常见的运行方式是 Python、Transformers 或 vLLM,这些方案适合服务器和 Python 环境,却不是原生 Swift 菜单栏应用最自然的依赖方式。
Airtype 使用的是 MLX Community 转换的两个版本:
| Airtype 中的模型 | 下载大小 | 适合的选择 |
|---|---|---|
Qwen3-ASR-0.6B-4bit | 约 708 MB | 默认选择,占用更低 |
Qwen3-ASR-1.7B-4bit | 约 1.6 GB | 更看重识别质量 |
它们不是 MLX Community 重新训练的另一套模型,而是从 Qwen 官方权重转换并量化而来。这里的 4-bit 指主要模型权重经过低比特量化,模型文件和内存占用随之降低,更适合在个人电脑上运行;代价是与官方 BF16 权重相比,理论上可能存在少量精度损失。
MLX 则是 Apple 面向 Apple Silicon 推出的机器学习框架。Airtype 通过 Swift 依赖直接加载模型,利用 Mac 的统一内存和 GPU 完成推理,不需要在后台再启动一个 Python 服务。模型文件来自 Hugging Face 的 mlx-community 仓库;Apple 提供运行框架和 Metal 加速,但并不托管这两个 Qwen 模型。
换句话说,这条本地链路由几部分共同组成:Qwen 提供模型,MLX Community 完成适合 Apple Silicon 的转换与量化,Hugging Face 托管权重,MLX 在 Mac 上执行推理,Airtype 负责把这一切变成一个安装按钮和一组快捷键。
从能够编译到能够发布
这次开发还有一个很实际的过程:代码可以编译,不等于功能已经能够公开发布。
最初的实现已经接通了模型选择、下载和转写,但发布审计仍然发现了一些问题。例如 MLX Audio 依赖跟踪的是不断变化的 main 分支;设置里出现了尚未真正影响推理的计算模式;改动中还夹带了与本次版本无关的 GLM-ASR 实验。
最终发布时,我把范围收敛到两个 Qwen3-ASR 4-bit 模型,并将 MLX Audio 固定在经过构建验证的提交上。由于这套依赖需要更新的 Swift 与 Metal 工具链,GitHub Actions 的发布环境也从原来的 Xcode 16.2 调整到了 Xcode 26.2。
随后才是原生 macOS 应用公开分发必须经过的部分:Release Archive、Developer ID 签名、Apple 公证、stapling、DMG 打包和 GitHub Release。第一次 CI 在公证阶段遇到 Apple 开发者协议过期,接受协议后重新运行,v0.13.0 才完整发布。
这也解释了为什么“支持一个本地模型”最终不是增加两个枚举值。模型能够返回文字只是中间一步;用户能下载、能安装、能离线使用,并且可以拿到签名和公证过的应用,才是一个完成的功能。
现在怎样使用
Airtype 是一个原生 SwiftUI 菜单栏应用,需要 macOS 14 或更高版本。安装 v0.13.0 后,可以这样启用本地识别:
- 打开 Airtype 设置,在 Voice Input 中选择
MLX Local。 - 先选择
Qwen3-ASR-0.6B-4bit,点击 Install 下载模型。 - 下载完成后,按住默认快捷键
Option + Space说话。 - 松开快捷键,识别出的文字会插入当前应用的光标位置。
0.6B 更适合作为第一次使用的选择。如果机器内存充足,并且更看重识别质量,可以再安装 1.7B 比较自己的真实使用场景。模型安装完成后,日常转写不需要 API Key,也不会把录音交给云端语音服务。
云端 Provider 仍然保留。它们适合需要特定模型或服务能力的用户;MLX Local 则让最基础的语音输入不再依赖任何外部账户。对 Airtype 来说,这不是多了一个 Provider,而是终于让“Your voice. Your Mac.”成为了产品实际运行的方式。
相关文章
2026年7月23日
吴恩达开源 OpenWorker:一个交付成品而不是对话的 AI 智能体桌面应用
吴恩达和 Rohit Prasad 开源了 OpenWorker - 一个跑在桌面上的 AI 智能体应用,交给你的是能打开的成品:文档、带数字的 Slack 回复、理好的日历。我读了后端代码,聊聊它在交付形态、分层风险模型、无人值守 inbox、self-wake、本地优先上的实现选择。
2026年4月4日
Paperclip 实战:一个人搭一个 AI 公司,从安装到跑起来
一行命令装好,CEO 自己招了 CTO,CTO 自己领了任务,16 个 Issue 自动生成。全程 $0 费用。这是我用 Paperclip 搭建 AI Agent 团队的完整记录。
2026年3月12日
OpenClaw 龙虾市集:大厂排队取餐,创始人买单
百度在公司楼下办了个龙虾市集帮人装 OpenClaw,腾讯爬光了 ClawHub 做了个 SkillHub。创始人 steipete 说:你们吃得很开心,账单能看一眼吗?
最近一封 · Sample
跑个 Docker 容器,就是 Agent 沙箱了吗?还差关键一层
“把 Coding Agent 放进 Docker,保护的首先是宿主机,不等于限制它能把读到的数据带到哪里。Vercel 与 Docker Sandboxes 的新做法,都把网络访问边界和凭据控制放进了 Agent Sandbox。”
—— william
来信
里面装的是
- 新文章 — 写完一篇就寄一封,不攒货
- 这周读到的、看到的、好用的工具
- 正在折腾的实验,附带翻车记录
约莫 1–2 周一封 · 随时退订
合作伙伴
CompeteMap — 英国及爱尔兰学生竞赛一站式搜索
数学、编程、科学、写作等各类竞赛信息汇总,支持按年龄和科目筛选,再也不错过报名截止日。