Star 历史趋势
数据来源: GitHub API · 生成自 Stargazers.cn
README.md

ByeType

告别打字,用说的。

License: MIT Platform

ByeType 是一个 Markdown 驱动的 AI 语音输入工具。通过编辑 Markdown 格式的提示词,你可以自定义识别规则、专有词汇和文本优化策略,让语音输入最大限度匹配你的行业术语和个人习惯。

此外,ByeType 还内置了 AI 图像文字提取功能(同样由 Markdown 提示词驱动),完美解决终端中 AI 输出的代码因行号、分屏、换行被切碎而无法直接复制使用的问题。

免费开源,使用你自己的 API Key — ByeType 本身不收费、不经手数据,语音和截图直接发送到你选择的 AI 服务商(Google、阿里云百炼等)。支持 macOS、Windows 桌面端,以及 iPhone / iPad(通过 iOS 快捷指令)。

📱 iPhone / iPad

通过 iOS 快捷指令,在手机和平板上也能获得和桌面版一样的自定义词汇和转录效果。

快捷指令模型安装
ByeType GeminiGemini 3 Flash添加到快捷指令

安装后需要在快捷指令中填写你自己的 API Key和规则词汇等,和桌面版共用同一个 Key。

🖥️ macOS / Windows

录音 → 转写 → 优化 → 自动粘贴

🏆 为什么选择 ByeType

ByeType传统语音输入Whisper/ASR 本地方案
安装体积~8 MB系统内置1~6 GB(模型文件)
词汇定制完全自定义(提示词驱动)不支持有限(热词列表,仅提升识别率)
规则转换一次成型,无需后处理不支持需后置 LLM 二次处理
口语清理内置规则,一次生效不支持需后置处理
格式化能力数字、符号、大小写、自动换行需后置处理
中英混合优秀一般
可定制性编辑 Markdown 即可
多场景切换日常口语、正式书写、翻译等快速切换不支持不支持

核心区别:Whisper 类方案是「ASR 转文字 + LLM 后处理」两步架构 — 第一步转错的内容,第二步也救不回来。ByeType 用多模态大模型直接处理原始音频,所有提示词规则在转写时一次生效,没有「先错后纠」的问题。

🔬 真实效果对比

下面这段话一口气说完,不做任何停顿和纠正 — 5 个易混人名、密集技术黑话、中英混杂、口语废话全上齐。

两边用相同的 下划线加粗 标记关键词,方便对比识别差异。

普通语音输出

有标点但不分段、人名全错、术语变谐音、口水词原样保留:

嗯,那个就是昨天张宇秦敏碰了一下,他们说曲华负责的那个deep seek v3项目,在mac mini m4上跑因弗伦斯延迟大概两百毫秒左右,效果还不错。嗯,然后余倩建议用cursor开发,后端fast api泼斯特格瑞赛口部署在微赛尔上,前端next jsapp router搭配莎德恩ui,整体dx我觉得还行,就是ci cd那块git hub actions派testes lint经常飞来可test。然后库伯内提斯集群的hpa配置,余倩说应该把cpu阈值从百分之八十调到百分之六十。另外提醒一下陈述,礼拜五之前把非格码设计稿同步到诺讯上。

ByeType 输出

开启「自动换行」后处理,标点、分段、人名、术语、格式化全部一次到位:

昨天张昱覃旻碰了一下,他们说瞿铧负责的DeepSeek V3项目,在Mac mini M4上跑inference延迟大概200ms左右,效果还不错。

于谦建议用Cursor开发,后端FastAPI + PostgreSQL部署在Vercel上,前端Next.jsApp Router搭配shadcn/ui

整体DX还行,就是CI/CD那块GitHub ActionspytestESLint经常flaky test

Kubernetes集群的HPA配置,于谦说应该把CPU阈值从80%调到60%

另外提醒陈述,礼拜五之前把Figma设计稿同步到Notion上。

对比总结

难点普通语音输出ByeType 输出
易混人名张宇、秦敏、曲华、余倩张昱覃旻瞿铧于谦
人名/动词歧义「陈述」被当动词陈述(识别为人名)
术语谐音因弗伦斯、泼斯特格瑞赛口、莎德恩uiinferencePostgreSQLshadcn/ui
品牌名deep seek v3、微赛尔、非格码、诺讯DeepSeek V3VercelFigmaNotion
数字格式化两百毫秒、百分之八十200ms80%
口水词嗯、那个、就是、我觉得全部清除
自动分段一坨不分段5 个自然段落

📸 图像文字提取 — 不只是 OCR

F6 截图选区,AI 自动识别文字并复制到剪贴板。同样由 Markdown 提示词驱动(text-extract.md),可自定义识别行为。ByeType 用多模态大模型理解截图的视觉布局,能做到传统 OCR 做不到的事:

示例 1:智能换行修复

终端、浏览器、PDF 阅读器里的文字经常因窗口宽度被硬截断。传统 OCR 原样照搬断行,ByeType 理解语义后自动合并为完整段落。

传统 OCR 输出

逐行照搬,保留所有因窗口宽度产生的硬换行:

人工智能(AI)正在迅速发展,它已经开始
改变我们的生活方式和工作方式。从智能
手机助手到自动驾驶汽车,AI技术正在
各个领域展现其潜力。

ByeType 输出

理解语义,自动合并断行为完整段落:

人工智能(AI)正在迅速发展,它已经开始改变我们的生活方式和工作方式。从智能手机助手到自动驾驶汽车,AI技术正在各个领域展现其潜力。

示例 2:终端代码智能还原

在 Claude Code、终端、IDE 里截图代码时,行号、提示符、分屏边界会把代码切得支离破碎。ByeType 能识别哪些是代码、哪些是装饰,还原出干净可用的代码块。

传统 OCR 输出

行号、管道符原样输出,因窗口宽度导致的断行也照搬:

  1 │ fn main() {
  2 │     let items = vec!["hel
  3 │ lo", "world"];
  4 │     for item in &items
  5 │ {
  6 │         println!("{}",
  7 │ item);
  8 │     }
  9 │ }

ByeType 输出

去除行号装饰,修复断行,自动标注语言,输出可直接使用的完整代码:

fn main() {
    let items = vec!["hello", "world"];
    for item in &items {
        println!("{}", item);
    }
}

🤖 AI 模型配置

所有模型在「设置 → 模型管理」中统一配置。

预置模型

模型API ID获取 Key特点
Qwen 3.5 Omni Plusqwen3.5-omni-plus阿里云百炼推荐,国内直连,效果好
Qwen 3.5 Omni Flashqwen3.5-omni-flash同上国内直连,速度更快
MiMo v2.5mimo-v2.5小米 MiMo国内直连,Qwen 的替代方案
Gemini 3.0 Flashgemini-3-flash-previewGoogle AI Studio速度和质量均衡,需代理
Gemini 3.1 Flash Litegemini-3.1-flash-lite-preview同上更快速,适合低延迟场景,需代理
DeepSeek V4 Flashdeepseek-v4-flashDeepSeek仅文本优化,速度快、成本低
DeepSeek V4 Prodeepseek-v4-pro同上仅文本优化,质量更高

OpenRouter 中转:如果无法直接访问 Gemini,可通过 OpenRouter 中转使用以下模型,无需代理:

  • google/gemini-3-flash-preview
  • google/gemini-3.1-flash-lite-preview

✏️ 自定义你的语音输入

ByeType 把所有「AI 该怎么处理你的话」都做成了可编辑的 Markdown 文件,在设置里直接改。

纠正人名和术语(设置 → 转写提示词 → 专有词汇)

- 公司名:ByteDance(不是 byte dance)
- 人名:张三丰(不是 张三峰)

给不同快捷键配不同输出风格(设置 → 转写提示词 → 文本优化提示词)

内置风格效果
自动换行自动加段落和标点
翻译把中文翻译成英文
自定义你想让它做啥都行

也可以新增自己的风格,比如「邮件润色」「微信口吻」「会议纪要」。F4 配一个、第二个快捷键配另一个,不同场景一键切换。

截图取词也一样,在「图像识别提示词」里改,可以让它只识别文字,也可以让它识别后顺便翻译成中文。

❓ 常见问题

macOS 提示"无法验证开发者"

前往「系统设置 → 隐私与安全性」,找到 ByeType 的提示信息,点击「仍要打开」。

没有声音 / 录音失败

检查麦克风权限:「系统设置 → 隐私与安全性 → 麦克风」,确认 ByeType 已获得授权。

按 F4 没有反应

检查辅助功能权限:「系统设置 → 隐私与安全性 → 辅助功能」,确认 ByeType 已获得授权。如果刚授权,可能需要重启应用。

转写结果为空
  • 检查 API Key 是否正确填写
  • 检查网络连接是否正常
  • 如果使用 Gemini 模型,确认能访问 Google 服务(或已配置代理)
转写速度慢
  • 关闭思考模式(设置 → 语音转写 → 思考模式 → 关闭)
  • 切换更轻量的模型(如 Gemini 3.1 Flash Lite)
  • 检查网络延迟
国内网络无法使用 Gemini 模型

两种方案:

  1. 在「设置 → 语音转写」中选择 Qwen 3.5 Omni 等国内直连模型,无需代理
  2. 在「设置 → 通用设置 → 网络与性能 → HTTP 代理地址」中配置代理后使用 Gemini
文本没有自动粘贴到输入框

自动粘贴依赖辅助功能权限。检查「系统设置 → 隐私与安全性 → 辅助功能」是否已授权 ByeType。文本仍会复制到剪贴板,可手动 Cmd+V 粘贴。

🏗️ 技术栈

技术
框架Tauri v2
前端React 19 + TypeScript + Vite
后端Rust(cpal 音频采集、flacenc 编码)
编辑器CodeMirror 6
AIGoogle Gemini API、阿里云百炼 DashScope API、OpenAI 兼容 API

📄 许可证

MIT


如果这个项目对你有帮助,欢迎点一个 Star。

欢迎提 Issue 或直接发 PR。感谢 Linux.do 社区推动。

关于 About

ByeType 是一个 Markdown 驱动的 AI 语音输入工具,用多模态大模型直接处理原始音频(使用自己的APIKEY),编辑 Markdown 文件即可自定义专有词汇、转录规则和格式化策略,人名、术语、口水词、数字格式一次转录到位,减少二次修改。支持 macOS、Windows 和 iOS。

语言 Languages

Rust59.1%
TypeScript32.5%
CSS4.7%
HTML1.9%
Python1.8%

提交活跃度 Commit Activity

代码提交热力图
过去 52 周的开发活跃度
421
Total Commits
峰值: 91次/周
Less
More

核心贡献者 Contributors