Diction:iOS 语音键盘的自托管网关开源了
Diction: Open-Source Self-Hosted Gateway for iOS Voice Dictation Keyboard
Apple 的原生听写有一个限制:它被沙箱隔离在当前 App 内,切 App 就失效。
Diction 绕开了这个限制。它注册成 iOS 系统键盘,作为自定义键盘挂载后,语音输入在任意文本框里都能用——备忘录、微信、邮件、终端,都没区别。
本次开源的是 Diction 的自托管后端网关。
GitHub: https://github.com/DictionLabs/Diction | MIT | Go
三种模式
| 模式 | 部署 | 隐私 | 费用 |
|---|---|---|---|
| 本地(on-device) | 无服务器,纯离线 | 最高 | 免费 |
| Diction One 云 | 官方托管 | 第三方处理 | 付费订阅 |
| 自托管网关 | 自备服务器 | 完全自控 | 基础设施自担 |
本地模式支持 99 种语言,完全离线,但依赖设备端模型精度。自托管模式精度取决于你挂的 STT 后端。
网关架构
网关是一个 Go 服务,协议是 WebSocket 流式传输,接口兼容 OpenAI Transcription API 规范。
这意味着任何实现了这套 API 的 STT 后端都可以挂上去。DictionLabs 官方发布了两个 Docker 镜像:
dictionlabs/whisper-server— 基于 Whisper 的通用多语言方案dictionlabs/parakeet— NVIDIA Parakeet 模型,针对 25 种欧洲语言优化
安全层:键盘与网关之间端到端 AES-256-GCM 加密,录音不明文传输。
可选功能:LLM 后处理,对转录文本做润色或格式化。
自托管部署
docker compose up
启动后,在 iOS 的 Diction App 设置里填入网关地址,绑定完成。
诚实评估
没有 benchmark 支撑的数字:项目标榜”5x faster”,没有说比谁快、在什么条件下测的。这是未经证实的营销说法。
App Store 评分积累不足:产品还在非常早期,公开评价很少,无法从用户反馈判断真实体验。
Solo developer 风险:单人维护,长期支持和路线图不确定。
语言覆盖依赖后端选择:Parakeet 只覆盖 25 种欧洲语言,中文等亚洲语言需要用 Whisper 路径,精度和延迟自行评估。
无遥测是设计选择:对隐私有利,但也意味着没有公开的用量数据来验证项目活跃度。
适合谁
- 需要跨 App 语音输入、不信任云端 STT 的用户
- 想用私有服务器替代 Apple 沙箱的开发者
- 希望自控 STT 后端(精度、语言、成本)的场景
MIT 许可。DictionLabs 开发,网关代码 GitHub 已上线,iOS App 在 App Store(ID: 6759807364)。自报数字需打折核实。开源仅供学习参考。
Diction: Open-Source Self-Hosted Gateway for iOS Voice Dictation Keyboard
Apple’s native dictation has a hard constraint: it’s sandboxed per-app. Switch apps, it stops.
Diction works around this. It registers as an iOS system keyboard — once installed, voice input works in any text field: Notes, WhatsApp, email, terminal. No exceptions.
What just went open source is Diction’s self-hosted backend gateway.
GitHub: https://github.com/DictionLabs/Diction | MIT | Go
Three Modes
| Mode | Deployment | Privacy | Cost |
|---|---|---|---|
| On-device | No server, fully offline | Maximum | Free |
| Diction One cloud | Official hosting | Third-party processes audio | Paid subscription |
| Self-hosted gateway | Your own server | Fully self-controlled | Infrastructure at your cost |
On-device mode supports 99 languages, completely offline. Self-hosted accuracy depends on your chosen STT backend.
Gateway Architecture
The gateway is a Go service using WebSocket streaming, implementing the OpenAI Transcription API spec.
This means any STT backend that implements this spec can be plugged in. DictionLabs publishes two official Docker images:
dictionlabs/whisper-server— general-purpose multilingual via Whisperdictionlabs/parakeet— NVIDIA Parakeet model, optimized for 25 European languages
Security layer: AES-256-GCM end-to-end encryption between the keyboard and gateway. Audio never travels in plaintext.
Optional: LLM post-processing pass on transcribed text for cleanup or formatting.
Self-Hosting
docker compose up
Then paste the gateway URL into Diction’s iOS app settings. Done.
Honest Assessment
Unverified claim: The project claims “5x faster” with no stated comparison baseline or benchmark methodology. Treat as marketing copy until validated.
Very early stage: App Store ratings insufficient to draw conclusions on real-world UX. Product Hunt listing shows no tracked reviews.
Solo developer risk: Single maintainer, uncertain roadmap longevity.
Language coverage: Parakeet covers only 25 European languages — CJK and other languages need the Whisper path; accuracy and latency should be tested for your specific use case.
No telemetry: Good for privacy, but also means no public usage data to validate adoption.
Who It’s For
- Users who need cross-app voice input without trusting cloud STT
- Developers who want to replace Apple’s sandbox with a private server
- Setups that require controlling STT backend (accuracy, language, cost)
MIT license. DictionLabs, gateway code on GitHub, iOS app on App Store (ID: 6759807364). Self-reported numbers should be independently verified. For technical reference only.
关于本站 · 免责声明
🍄 Mushroom Research Blog 是非营利、免费公开的个人科技观察博客与公众号 XStack18,不接受商业合作、不代表任何企业或机构立场,也不谋求商业利益。我们以个人视角客观中立地记录和分析 AI、Web3 等领域的最新模型发布与技术动态——不止转述新闻标题或二手信息,而是给出有独立思考的深入分析,希望帮更多人获得有价值的一手科技认知。
⚠️ 文中介绍的开源代码与模型,仅供学习交流与技术借鉴。它们大多仍处于早期阶段,有待进一步研究和验证,请勿直接用于工作或生产环境;如需采用,请先自行充分测试,并核实其许可证与安全性。
Open-source code and models featured here are shared for learning and reference only. Most are early-stage and still need further study and verification — please don't use them directly in your work or in production. Test them thoroughly and check their licenses and security first.
- 本站文章均为作者基于公开信息的个人研究与观点整理,不代表文中提及的任何公司、产品、模型的官方立场,未与其构成商业关联或合作关系。
- 科技行业信息更新极快,我们尽力保证内容准确、及时,但不对完整性、实时性做绝对保证,具体请以相关企业/项目官方公告为准。
- 文中引用的第三方商标、产品名称、图片、数据等版权归原权利人所有,我们会尽量注明来源;如你认为存在版权疑问或侵权,请通过下方邮箱联系我们,收到通知后会尽快核实处理(更正、加注来源或删除)。
- 文章内容仅为技术科普与个人观点,不构成投资、法律或其他专业建议,据此进行任何决策的后果需自行判断和承担。
📮 侵权 / 勘误 / 合作咨询:[email protected]
💬 评论与讨论
使用 GitHub 账号登录后发表评论