LFM3视频聊天:2B模型用ONNX在CPU上跑,HN仅2分
原创LFM3视频聊天:2B模型用ONNX在CPU上跑,HN仅2分
项目速览:从麦克风摄像头到语音打断
我第一次在 Hacker News 上看到这个帖子时,以为又是一个演示完就丢的玩具。标题写着 LFM3 video chat,点进去发现仓库结构完整,README 写得清楚。用你自己的麦克风和摄像头,跟一个 2B 参数的模型说话,它用文本和音频回你,你还能随时打断它 来源:GitHub。
启动方式不复杂。你需要 uv 和 Python 3.12,在项目目录跑一遍 uv sync,然后启动服务,打开 http://localhost:8000。这里有个细节,摄像头和麦克风在 localhost 上访问不需要 SSL 证书,省掉了自签证书那一堆麻烦事 来源:GitHub。
对话流程很直接。点开始对话,允许权限,说一段话,停顿,模型就开始生成回复,音频边生成边播放。想打断它,直接说话或者点 Interrupt & speak。项目 README 还提醒了一句,戴耳机有助于防止扬声器回声导致误触发打断 来源:GitHub。这句话看得出作者自己用过,知道问题在哪。
技术实现:ONNX 量化让 2B 模型在 CPU 上跑
真正让我停下往下读的,是 ONNX 版本。仓库里有一个 src-onnx 目录,用独立的 uv 环境管理。这个版本不需要装 PyTorch,支持同样的摄像头、语音和打断控制 来源:GitHub。
量化选项也写明了。q4 给 CPU 用,q4f16 给 NVIDIA GPU 用。一个 2B 参数的模型做 q4 量化后,在普通 CPU 上就能跑,不需要独显。这对本地部署来说是个实际的便利 来源:GitHub。
下载和启动命令都很直接。模型从 Hugging Face 拉,命令是 uv run hf download LiquidAI/LFM3-Omni-2B --local-dir resources/models/lfm3-omni-2b。启动用 uv run serve --model resources/models/lfm3-omni-2b。如果你已经把模型放在 HF 缓存里,可以省略 --model,服务端会自己找 来源:GitHub。
多源交叉验证:HN 冷遇 vs. GitHub 活跃
这个项目在 Hacker News 上只拿到 2 个点,0 条评论 来源:HN。我截取数据的时候它就是这个状态,后面有没有变化我不确定。但一个功能完整、有 ONNX 版本、能处理语音打断的项目,在 HN 上无人讨论,这个反差本身就说明点什么。
GitHub 仓库里显示 12 个提交 来源:GitHub。这数字不大,但结合 README 里那些细节,比如提醒用户戴耳机防回声,比如特意说明 localhost 不需要 SSL 证书,看得出作者是在真实使用中迭代,不是一次性提交就完事。
最让我觉得有意思的地方,是这个模型只有 2B 参数 来源:GitHub。2B 是个什么概念,现在动辄几百 B 的模型满天飞,2B 在很多人眼里连玩具都算不上。可它做的事情不简单,摄像头看画面,麦克风听声音,实时对话,还能中途打断。在 CPU 上跑起来的 ONNX 版本,进一步降低了硬件门槛。一个 2B 模型能做到这一步,说明架构和训练方法比参数数量更值得关注。
我翻了一下仓库结构,src 和 src-onnx 分开,tests 目录也在,pyproject.toml 和 README 写得规整。下载命令直接指向模型名,不需要额外构建步骤 来源:GitHub。这说明项目从设计之初就考虑过怎么让用户少踩坑。
HN 的冷遇不能说明项目质量。2 个点 0 条评论,可能是时机不对,可能是标题不够吸引人,也可能就是运气不好。但一个 2B 模型能通过摄像头和麦克风进行实时多模态对话,在 CPU 上就能跑,并且允许你随时打断它,这件事本身就有价值。它解决的是一个具体问题,而不是在追逐参数规模。我不会因为 HN 上没人讨论就低估它。
原文:
Show HN: LFM3 Video Chat · 来源:Hacker News
作者:itfan123 值班编辑 · 发布于 2026年10月29日
版权声明
所有资源都来源于爬虫采集,如有侵权请联系我们,我们将立即删除
itfan123



