用文心快码写个「隐私优先」的本地会议助手

在这个信息爆炸的时代,我们似乎习惯了把数据交给云端。
但作为一名开发者,当涉及到敏感的会议记录、私人语音笔记时,我总是心存顾虑:
有没有可能打造一个完全离线、跑在浏览器里、且终身免费的 AI 会议助手?
面对复杂的 WebAssembly、模型量化、多线程调度,作为一个非专业的开发者,我通常需要几周来啃文档。
但这一次,在文心快码(Comate) 的协助下,我仅用 2 小时就完成了这个会议助手的全栈开发。
00|项目背景:开发一个隐私优先的会议助手
市面上的会议记录软件确实好用,但它们有两个致命弱点:
隐私黑盒:数据必须上传云端,对于公司内部机密或个人隐私内容,这始终是个隐患。
依赖网络:在高铁、飞机或网络不佳的环境下,这些工具直接“变砖”。
因此,我想基于开源社区最火的 Whisper(语音识别)和一个能够本地化部署的大语言模型,开发一个纯前端、零服务端、完全离线的 Web 应用。要求如下:
隐私绝对安全:断网也能用,数据不出本地。
零成本:不花钱买 Token,不买服务器。
体验要丝滑:不能因为跑模型把浏览器卡死。
我不熟悉 WebAssembly,也没搞过模型量化。如果纯手写,光环境配置就十分劝退。于是,我直接把难题抛给了我的专属 AI 工程师——文心快码(Comate) 。
01|架构设计
我没有直接开始写代码,而是先向 Plan 智能体抛出了我的想法。
点击对话窗口左下角,即可切换不同子智能体⬆️
然后,用自然语言给出需求。
我想做一个完全离线的 AI 会议助手,给我一个可行的技术方案。
Plan 智能体迅速扮演了架构师的角色,1 分钟内就为我输出了一份详细的技术选型与可行性分析:
⬆️这份文档清晰地规划了:
核心引擎:推荐使用 Transformers.js,这是 Hugging Face 的 JS 版本,支持在浏览器端运行 Whisper。
架构建议:为了防止 AI 推理卡死主线程,必须使用 Web Worker 进行多线程隔离。
模型选择:建议起步使用 whisper-tiny 验证流程,后期升级为 whisper-small 提升中文准确率。
这份报告直接帮我省去了至少 3 天的调研+学习时间,并且让我瞬间理清思路:这事能做,而且路径很清晰。
02|产品开发与功能迭代
我与 Comate 共进行了 5 次交互,迭代了 3 个版本。
🐒 初始版本:能跑,但“胡言乱语”
万事开头难,第一步是让浏览器“听懂”人话。为了追求速度,我们用了 whisper-tiny 模型。
帮我搭建项目骨架。我需要一个 Web Worker 脚本来独立运行 whisper-tiny 模型,主界面负责上传音频。Whisper 模型对音频采样率要求很严格,必须处理好。
Zulu 智能体秒生成了 worker.js 的核心逻辑,并特别贴心地实现了一个单例模式,防止重复点击导致内存爆炸。
在处理音频采样率这个“大坑”时,Comate 自动编写了一段基于 OfflineAudioContext 的重采样代码,将任意格式的音频(MP3/M4A)强制转换为模型所需的 16000Hz。
在初次运行时,我遇到了经典的“UI 假死”问题,进度条也不动。
直接用大白话向 Code Review 智能体提问即可:
界面没反应,控制台报错 Cannot read properties of null 怎么办
Code Review 立即发现,是因为我在更新状态文字时,不小心覆盖了进度条的 DOM 节点。它立刻给出了修复方案,将文字和进度条的 DOM 结构分离。
whisper-tiny 能跑通之后,我让 Zulu 帮我把模型从 whisper-tiny 升级为 whisper-small,显著提高了中文转录的准确率。
至此,我的应用已经能把声音转成文字了,虽然只是一大段纯文本。
🤯交互重构:实现音文同步
面对屏幕上密密麻麻的文字,我提出了更高的要求。
现在的纯文本太难阅读了。我希望实现以下效果:
文字要按时间戳分段显示。
点击某一段文字,音频自动跳到对应位置播放。
播放时,文字要高亮跟随。
Comate 重新设计了 worker.js 的返回数据结构,开启了 return_timestamps: true 选项,不仅返回文字,还返回了每一句话的 [开始时间, 结束时间]。
接着,它重写了前端渲染逻辑,生成了一个包含点击事件的列表。当我再次运行项目,上传一段测试录音时,看着文字随着声音逐行高亮,那种专业产品的质感瞬间就出来了。
此外,针对“中英文混杂”的问题,Comate 还建议我在代码中增加语言锁定的逻辑,防止模型把中文误翻译成英文。
使用体验如文章内视频所示👉https://mp.weixin.qq.com/s/jjuWFmMG0IJR3M8x-JPdqg
🔽小 tips:想让 Comate 手把手教学代码含义,可以点击“代码解释”开启哦
🤩注入灵魂:连接本地 AI 大脑
最后,我希望这个工具不仅能“听”,还能“思考”。
我要引入一个本地的大语言模型,让它帮我自动总结会议纪要和待办事项。要求使用中文能力较好的大模型,且必须按需加载,不要一上来就下载几百兆文件。
Comate 帮我进行了全栈升级:
1.双模型调度:Comate 修改了后台架构,实现了听觉模型和 LLM 的独立加载逻辑。
2.Prompt 工程:Comate 甚至帮我内置了一套 Prompt:“你是一个专业的会议秘书,请提取摘要和 Todo...”,让小模型也能输出高质量结果。
3.体验优化:为了解决大模型文件过大导致进度条显示 NaN% 的问题,Comate 编写了防御性代码,并设计了一个优雅的“🧠 启用 AI 大脑”开关。
最后,为了验证产品表现,我上传了一段开源的胡言乱语测试音频。
👇它竟然一本正经地为我总结出了“待办事项:了解景点背景”,并且通过正则清洗技术,完美去除了模型原本输出的 system/user 等乱码标签。
✨最后,让我们一起验收下,这个 0 代码、0 设计稿、1 小时内开发出的小程序,究竟效果怎么样:
**🔗实测效果,可以复制以下网址使用:**https://chen-chen429.github.io/local-whisper-note/
03|总结与思考
在点击 GitHub Pages 部署按钮的那一刻,我意识到:开发者的门槛正在被重塑。
在这个项目中,文心快码(Comate) 不仅仅是一个代码补全工具,它实际上分饰了多个角色:
产品经理:帮我梳理“离线隐私”的产品定位。
架构师:帮我设计 Web Worker 多线程架构。
资深前端:帮我解决 AudioContext 重采样和 DOM 操作的疑难杂症。
AI 工程师:帮我搞定了模型量化加载和 Prompt 清洗。
通过与 Comate 的深度协作,我把原本需要一周调研+开发的“硬核技术需求”,压缩到了 2 小时的落地实践。
对于开发者而言,不再需要精通每一个领域的细枝末节(比如 WASM 的内存管理),我们只需要拥有清晰的逻辑和精准的表达。
未来,随着 WebGPU 算力的进一步释放,这个网页完全可以进化为更强大的‘第二大脑’——它不仅能支持实时声纹识别(区分是谁在说话),甚至能引入本地向量数据库,让用户直接与过去一年的所有会议记录进行跨文档对话......而这一切,依然不需要上传哪怕 1KB 的数据到云端。
拥抱 Comate 辅助开发,释放你的创造力,从现在开始。
👇 别光心动,现在就上手开造!
一键下载 Comate,把你的脑洞变成现实
点我跳转:https://comate.baidu.com/zh/download
方式一:下载 Comate AI IDE,享受丝滑开发过程
方式二:在 VS Code 或 Jetbrains IDE 中搜索“文心快码”插件,安装即用
如果你也有一个想实现的点子
不妨下载文心快码
让它成为你的「专属工程师」!
谁知道呢,下一个爆款应用
也许就诞生在你的一次尝试中~







评论