Parlor logo

Parlor

★★★★ 4.2/5
访问官网
分类
音视频
定价
免费
访问
直连可用

快速结论

Parlor 适合想在受控机器上实验实时语音与视觉对话的开发者。它是 Apache 2.0 许可的研究预览项目:浏览器采集麦克风和摄像头,经 WebSocket 把音频与 JPEG 画面发给 FastAPI 服务;服务使用 Gemma 4 E2B 理解输入,再用 Kokoro 合成语音返回。项目明确提醒会有粗糙体验和 Bug。截至 2026-07-21,GitHub 没有正式 Release,pyproject.toml 版本虽为 0.1.0,也不等于已经发布稳定包。

“本地运行”必须按网络拓扑理解。当前服务启动时监听 0.0.0.0,而 /ws 没有应用层登录、令牌校验或明确的 Origin 白名单;只要端口被局域网、容器映射或入口服务暴露,别的来源就可能尝试连接。前端还通过 innerHTML 插入模型回答与转写文本,没有先做 HTML 转义,存在 DOM XSS 风险。默认页面会从 Google Fonts 和 jsDelivr 加载字体、ONNX Runtime Web 与 VAD 脚本,因此默认体验也不是完全离线。Parlor 可用于单机研究,但不能未经加固就当成多人服务。

核心功能

  • 语音与视觉输入:浏览器获取麦克风和摄像头,把 16 kHz 音频与压缩画面编码后发给服务端。
  • 本地多模态推理:Gemma 4 E2B 通过 LiteRT-LM 处理音频、图像和对话上下文。
  • 本地语音合成:Kokoro 在 macOS 走 MLX 相关后端,在 Linux 走 ONNX 相关后端。
  • 浏览器 VAD:Silero VAD 判断语音起止,支持免按键对话;用户说话时可中断正在播放的回答。
  • 句级音频流:服务把回答拆成句子,逐段生成 PCM 音频并通过 WebSocket 返回。
  • 单连接会话:每个 WebSocket 连接创建独立对话状态,断开后结束该会话。
  • 性能参考:项目在 Apple M3 Pro 上给出的端到端数据约为 2.5 至 3.0 秒,而不是旧介绍所称的亚秒级完整响应。

适合人群

  • 想研究浏览器采集、VAD、多模态推理和流式 TTS 串联方式的开发者。
  • 拥有 Apple Silicon,或带兼容 GPU 的 Linux 机器,并能处理模型依赖的人。
  • 需要在单机上制作语言练习、物体讲解或语音视觉交互原型的研究者。
  • 愿意读源码、固定 commit、补安全控制并接受预览版故障的技术用户。
  • 不适合没有运维能力的普通用户、需要正式支持与稳定版本的团队,或计划直接把端口开放给多人使用的组织。

使用场景

个人实验时,可以在同一台可信机器上启动服务,用浏览器访问 localhost,授权麦克风和摄像头后测试对话、打断和画面理解。语言练习、桌面物品描述、无障碍交互原型和本地多模态性能研究都比较契合。项目给出的 M3 Pro 参考中,语音与视觉理解约 1.8 至 2.2 秒,短回答生成约 0.3 秒,TTS 约 0.3 至 0.7 秒;实际速度仍取决于硬件、回答长度和后端。

若浏览器与服务不在同一台机器,麦克风、画面、转写和回答会跨网络传输。此时必须使用受信入口、传输加密、身份验证、Origin 校验和最小网络范围。不要简单映射 8000 端口。当前 WebSocket 处理没有显式消息大小、连接数或速率限制,每个连接又会占用模型对话、CPU、GPU 和 TTS 资源;恶意或误配置客户端发送超大 base64 音频、连续画面或大量并发连接,可能耗尽内存和计算资源。

价格与版本

Parlor 源码按 Apache 2.0 免费提供,没有项目订阅费。运行成本包括兼容硬件、电力、约 2.6 GB 的 Gemma 模型下载、TTS 模型、内存与维护时间。README 建议预留约 3 GB 空闲内存给模型,但完整进程、浏览器和图形后端还会占用更多资源。模型首次下载和默认 CDN 资产也需要网络可用。

截至 2026-07-21,仓库没有正式 Release。复现实验应固定 commit,而不是长期直接跟随 main。Python 条件必须以 pyproject.toml 为准:>=3.12,<3.13,也就是当前应使用 Python 3.12,不能因为 README 简写成“3.12+”就使用 3.13。Apache 2.0 只覆盖 Parlor 仓库代码;Gemma 模型、Kokoro、Silero VAD、LiteRT-LM、ONNX Runtime、字体和其他依赖各有自己的许可证或使用条款,需要分别核对。

国内访问与使用体验

启动步骤是克隆仓库、进入 src、执行 uv syncuv run server.py,再访问 http://localhost:8000。模型会在首次运行时自动下载,也可以通过 MODEL_PATH 指向已有文件。依赖和模型是否能顺利取得取决于对应代码托管、模型托管和 CDN 的当时可用性。更严格的离线环境应提前下载并校验模型,同时把字体、ONNX Runtime Web 和 VAD 资源改成本地托管。

浏览器会请求摄像头和麦克风权限,用户应能清楚看到授权状态并随时关闭页面或设备权限。当前前端的摄像头开关主要控制是否附带画面,不能替代浏览器级权限管理。要供真实用户试用,应把模型文本和转写当作不可信字符串,用 textContent 或可靠清洗库渲染;设置严格 CSP,移除不必要的第三方脚本,给固定资源增加完整性校验,并为 WebSocket 增加身份、Origin、消息大小、连接数、超时和速率控制。

优点

  • 浏览器、FastAPI、多模态模型和 TTS 的数据流清楚,适合学习和修改。
  • 语音、相机、VAD、打断与句级播放组成了完整的实时交互原型。
  • 推理与语音合成可在本机完成,不需要按次购买模型 API。
  • Apache 2.0 许可证明确,仓库规模较小,便于安全审阅。
  • 项目公开了 M3 Pro 分阶段性能数据,预期比模糊的“实时”宣传更容易校准。
  • Apple Silicon 与兼容 Linux GPU 均有对应后端路径。

不足

  • 明确处于 research preview,且没有正式 Release、兼容承诺或生产支持。
  • Python 只支持 >=3.12,<3.13,环境窗口比 README 的简写更窄。
  • 服务监听 0.0.0.0,WebSocket 没有应用层身份验证和明确 Origin 限制,误暴露风险高。
  • 前端用 innerHTML 渲染模型回答与转写,未转义内容可能形成 DOM XSS。
  • 默认依赖 Google Fonts 与 jsDelivr 脚本,离线性、供应链和资源完整性需要额外处理。
  • 缺少显式连接数、消息大小和速率控制,音视频与模型计算可能被滥用而耗尽资源。
  • 本地代码许可不代表 Gemma、Kokoro、Silero 及其他依赖拥有相同条款。
  • 摄像头画面按消息上传给服务端;跨机器部署后,它不再是“仅设备内”的简单边界。

替代品对比

工具更适合谁主要差异
Ollama需要通用本地模型运行与 API 的开发者模型管理更成熟,但不自带 Parlor 的浏览器语音视觉交互
Open WebUI想要多用户本地模型聊天界面的团队账号与界面能力更多,实时相机和 VAD 不是核心
LocalAI需要兼容 API 和多后端部署的人服务端能力更广,需要自行组装浏览器媒体体验
ElevenLabs优先追求托管语音质量与多语言的人语音服务成熟,但数据、计费和部署边界不同
HeyGen需要成品数字人视频工作流的内容团队产品化程度高,不是可修改的单机研究运行时

常见问题 FAQ

Parlor 是稳定产品吗?

不是。仓库将它标为 research preview,并提醒存在粗糙体验和 Bug;截至 2026-07-21 也没有正式 GitHub Release。

Parlor 应该使用哪个 Python 版本?

当前 pyproject.toml 要求 >=3.12,<3.13,所以应使用 Python 3.12。README 的“3.12+”不能覆盖项目文件给出的上限。

Parlor 是否完全离线?

模型推理和 TTS 可以在本机完成,但默认页面会从外部 CDN 加载字体和 VAD 相关脚本,首次运行还要下载模型。严格离线使用需要预下载并本地托管这些资源。

可以把 8000 端口开放给其他人吗?

不应直接开放。当前服务监听所有接口,WebSocket 没有完整鉴权、Origin 白名单、消息大小和速率控制。共享前必须增加加密入口、身份验证、网络限制和资源保护。

为什么模型和依赖条款要单独检查?

Apache 2.0 适用于 Parlor 仓库代码,不会自动改变 Gemma 权重、Kokoro、Silero VAD、LiteRT-LM、ONNX Runtime 或字体的条款。分发应用或商用前要逐项确认。

总结

Parlor 是一个结构清楚、便于研究的本地语音视觉原型,不是开箱即用的安全多人服务。正确的试用方式是固定 commit、使用 Python 3.12、在同一可信机器通过 localhost 运行,并核对全部模型与依赖条款。只要浏览器和服务跨机器,就要重新评估媒体传输边界;只要端口对外,就必须先修复无鉴权 WebSocket、innerHTML 注入、CDN 依赖和资源耗尽风险。完成这些工作前,应把它保留在隔离的研究环境中。

最后更新:2026年7月21日

同类工具推荐