【吼蛙】Vibe了一个 Mac 听写转文字LLM后处理的App

真是个好东西啊,所以楼主是纯靠Vibe Programming 搞出这么个东西的吗?真是强大,以后我得好好学学了。 (本条回帖由由楼主开发的HoAh语音生成 :doge:)

1 个赞

纯vibe 不过过程也是比较曲折 疯狂vibe框架的时候很快就失控了 后面refactor了好几次

1 个赞

太牛逼了,我想学习学习,对于没有太多基础的人有啥合适的教程吗?
个人有一定的编程基础,但是从来没有设计过任何产品,充其量也就学过数据结构,写点算法题之类的

楼主牛的!Superwhisper 不算主要竞品吗,公司买单整了一个,还挺爽的

厉害:+1:, 刚想在本地部署一个这样的speech to text。 lz考虑移动端吗

给大家安利一个和楼主的产品类似的开会写总结app: meetily

同样是本地whisper STT, 然后用任意指定模型来把text总结成会议记录,如果使用ollama可以做到完全本地运行

我觉得其实付费的都不算吧 这种功能不需要付费

我一开始是有ollama的 体验不好直接砍了

  1. 绝大多数设备本地能跑的模型能力相对弱

  2. 占用过多本地资源,并且latency反而更高

  3. 需要一定配置流程,想做到随时随地开箱即用很难。

今天用了 Spokenly 觉得有点牛逼,尤其是还有 agent mode

确实看起来不错
感觉应该加把劲 上线app store的一直懒得没做
不过我个人觉得加太多功能是画蛇添足 我不喜欢微信那种巨大的单体app
听写是一个非常适合单独拆分出来的功能

豆包语音输入法什么时候上线 桌面端呀。。或者能从豆包 mac app 里 奇技淫巧搞出 豆包语音输入法吗

openai 对于 oauth 的使用管理没有那么严格,我觉得可以加个对 openai oauth 的支持? 总之很感恩

豆包 mac 里一直有语音输入法的 你设置里找到快捷键设置下就能在所有的输入框里用了。现在 mac 上 glm 也出语音输入法了 也可以试试

1 个赞

做个会议总结并不需要非常大的模型,一个8B甚至3B的模型都能做的很好
会议总结最多也就半小时做一次,本地模型总结一次也就20s以内对我来说完全无感
ollama的配置对于程序员来说已经不能更简单了,非程序员在AI指导下应该也能轻松搞定

才发现不支持Ventura :cry:

感谢。跑通了。

用 Fn 键一键切换豆包语音输入(直接替代Typeless)

首先,设定豆包桌面端的语音输入流程是:激活 → 说话 → 回车确认。每次都要按两个不同的快捷键,不太顺手。这里激活的快捷键可以自己设定,我用了Cmd+1

Karabiner-Elements 可以把 Fn 键改成一个状态切换键:

  • 第一次按 FnCmd+1(激活豆包输入)
  • 第二次按 Fn → 发送 Enter(确认输入),注意,这个应该是所有东西都输入完了之后再按。

这样只用一个键就能完成整个语音输入流程,体验接近原生输入法切换。而且这个和typeless就完全match了。

配置方法

1. 安装 Karabiner-Elements

brew install --cask karabiner-elements

安装后首次打开,需要在系统设置中授权辅助功能和输入监控权限。

2. 添加配置文件

将以下内容保存到 ~/.config/karabiner/assets/complex_modifications/doubao-fn-toggle.json:

{
 "title": "Doubao Voice Input Toggle",
 "rules": [
   {
     "description": "Fn toggles Doubao: first press = Cmd+1 (activate), second press = Enter (confirm)",
     "manipulators": [
       {
         "type": "basic",
         "from": {
           "key_code": "fn",
           "modifiers": { "optional": ["any"] }
         },
         "conditions": [
           {
             "type": "variable_if",
             "name": "doubao_active",
             "value": 0
           }
         ],
         "to": [
           {
             "key_code": "1",
             "modifiers": ["left_command"]
           },
           {
             "set_variable": {
               "name": "doubao_active",
               "value": 1
             }
           }
         ]
       },
       {
         "type": "basic",
         "from": {
           "key_code": "fn",
           "modifiers": { "optional": ["any"] }
         },
         "conditions": [
           {
             "type": "variable_if",
             "name": "doubao_active",
             "value": 1
           }
         ],
         "to": [
           {
             "key_code": "return_or_enter"
           },
           {
             "set_variable": {
               "name": "doubao_active",
               "value": 0
             }
           }
         ]
       }
     ]
   }
 ]
}

3. 启用规则

打开 Karabiner-Elements → Complex Modifications → Add Rule → 找到 “Doubao Voice Input Toggle” → 启用。

注意事项

新款 Mac 的 Fn 键同时也是 Globe 键。如果 Karabiner 无法拦截 Fn,需要在系统设置 → 键盘 → “按下 fn
键时"改为"不执行任何操作”,这样 Karabiner 才能接管这个键。

原理

Karabiner 的 complex modifications 支持通过变量(set_variable / variable_if)实现有状态的按键映射。这里用 doubao_active
变量在 0 和 1 之间切换,让同一个 Fn 键在两次按下时分别发送不同的按键。

最终结果

感觉实际上不如Typeless。继续用Typeless了。

2 个赞