2 分•作者: exploraz•6 个月前
返回首页
最新
1 分•作者: lloydjones•6 个月前
1 分•作者: GaryBluto•6 个月前
1 分•作者: AISAST•6 个月前
1 分•作者: tomcam•6 个月前
2 分•作者: muthukrishnanwz•6 个月前
大家好,HN,
我构建了一个完全在浏览器中运行的语音助手。
没有后端,没有 API 调用。一切都在您的设备上运行。
目标是看看基于浏览器的 AI 发展到了什么程度,以及完整的语音流程是否可以在客户端以可接受的延迟运行。
工作原理:
* 语音转文本:通过 WebAssembly 使用 Whisper tiny en
* LLM:通过 llama.cpp WASM 端口运行 Qwen 2.5 0.5B
* 文本转语音:原生浏览器 SpeechSynthesis API
回复实时流式传输。TTS 在句子生成后立即开始说话,而不是等待完整的回复。
首次加载后,它完全离线工作。任何数据都不会离开设备。
这为什么重要:
* 展示了现代浏览器、小型 LLM 和 WASM 现在可以实现的功能
注意事项:
* 需要 Chrome 或 Edge 90+,因为 WASM 线程需要 SharedArrayBuffer
* 初始下载大约 380MB,之后会被缓存
* 目前仅支持英语
* 0.5B 模型功能有限,但足够小,可以在本地运行
已在 macOS 和 Linux 桌面浏览器上测试。由于内存和线程限制,我无法在移动设备上可靠地运行它。
由于许多底层的 WASM 和浏览器问题,让所有这些在浏览器中运行花费的时间比预期的要长得多。
演示
[https://ava.muthu.co](https://ava.muthu.co)
源代码
[https://github.com/muthuspark/ava](https://github.com/muthuspark/ava)
我非常欢迎反馈,特别是来自任何正在尝试本地 AI 或基于浏览器的 ML 的人,以及关于改进性能或移动设备支持的建议。
1 分•作者: ljf•6 个月前
1 分•作者: 01-_-•6 个月前
1 分•作者: tflux3011•6 个月前
1 分•作者: Tomte•6 个月前
2 分•作者: drfuchs•6 个月前
1 分•作者: Tomte•6 个月前
1 分•作者: ustad•6 个月前
1 分•作者: thunderbong•6 个月前
2 分•作者: thoughtpeddler•6 个月前
3 分•作者: jppope•6 个月前
42 分•作者: psxuaw•6 个月前
1 分•作者: baxtr•6 个月前
1 分•作者: oldnetguy•6 个月前
1 分•作者: notepad0x90•6 个月前