Open-LLM-VTuber语音交互部署指南:10分钟在本地跑起Live2D虚拟主播
【免费下载链接】Open-LLM-VTuberTalk to any LLM with hands-free voice interaction, voice interruption, and Live2D avatar running locally across platforms项目地址: https://gitcode.com/GitHub_Trending/op/Open-LLM-VTuber
Open-LLM-VTuber 是一个支持实时语音交互、语音打断和 Live2D 形象的 AI 伴侣项目,所有 LLM、语音识别、语音合成模块均可在本机离线运行,解决的是"语音对话数据不想上传云端"的本地化部署需求。
能力一览
- 语音交互:麦克风实时对话,支持语音打断,AI 不会听到自己的声音
- Live2D 形象:内置模型与表情映射,支持导入自定义模型
- 视觉感知:摄像头、屏幕录制与截图,AI 可以"看到"你的屏幕
- 模块化后端:LLM、ASR、TTS 均可通过配置文件切换,无需改代码
三步完成本地部署
环境要求:Python 3.10–3.12,以及 uv 包管理工具。
第 1 步:获取代码并安装依赖
git clone https://gitcode.com/GitHub_Trending/op/Open-LLM-VTuber cd Open-LLM-VTuber uv syncuv sync会按 pyproject.toml 自动安装全部依赖,含 torch、sherpa-onnx 等语音相关组件。
第 2 步:初始化配置文件
cp config_templates/conf.default.yaml conf.yaml默认配置基于英文角色模板;如需中文角色,可改拷conf.ZH.default.yaml,并确认 characters/ 下有对应的角色 YAML。
第 3 步:启动服务
uv run run_server.py启动成功后访问http://localhost:12393(端口可在conf.yaml的system_config.port中修改),首次启动会自动初始化前端子模块并下载所需模型。
用起来的三种典型场景
像聊天一样和AI对话
点击界面左侧麦克风即可开始语音对话,ASR 负责识别、LLM 负责回复、TTS 负责朗读,全程无需打字。AI 说话过程中继续说话即可打断,支持无耳机环境。
让AI看到你的屏幕
开启屏幕共享或摄像头后,AI 能对当前画面内容进行描述和问答,例如"这段代码哪里报错"或"这个页面在讲什么"。浏览器端界面如下,适合边工作边和角色交流。
边写代码边调角色
桌面客户端支持窗口模式与透明背景的桌宠模式切换,角色可以置顶悬浮在 IDE 旁边,配合点击、拖拽等触摸反馈进行互动,调试角色配置时无需离开开发环境。
配置与调优
怎么改角色、模型和背景
- 主配置:conf.yaml 控制服务端端口、默认角色、LLM/ASR/TTS 引擎选择,改后重启服务生效
- 角色切换:在 characters/ 目录新增或替换 YAML 文件即可定义人设,例如
zh_米粒.yaml、en_nuke_debate.yaml,前端可直接切换 - Live2D 模型:模型位于 live2d-models/,模型与配置的对应关系记录在 model_dict.json
- 背景图:把图片放入 backgrounds/ 目录即可在前端界面中切换
跑不动怎么办
硬件参考(按本地跑 LLM + ASR + TTS 估算):
- 内存:8 GB 以上较稳妥,4 GB 可运行但建议 LLM 走云 API
- 磁盘:预留 10 GB 存放依赖与模型
- GPU:有 NVIDIA 显卡可明显加速;纯 CPU 环境可把资源密集型模块切到轻量方案
参数调整顺序建议:先把 LLM 换成 Ollama 小参数模型或 OpenAI 兼容 API → 再把 ASR 换为 sherpa-onnx → 最后考虑 TTS 降级为 pyttsx3 或 MeloTTS 等本地轻引擎。
排障速查
uv sync安装失败→ 确认 Python 版本在 3.10–3.12 区间,并检查 uv 是否可用;模型下载慢时可加--hf_mirror参数启动- 浏览器打开是
Not Found→ 前端是 git 子模块,手动执行git submodule update --init --recursive后重启 - 麦克风按钮不可用→ 浏览器仅在 localhost 或 https 下开放麦克风,远程访问需配置反向代理加 https
- 语音识别不准→ 在
conf.yaml中把 ASR 引擎换成 FunASR 或 Faster-Whisper,或换一支指向性更好的麦克风 - 响应太慢→ LLM 切到本地小模型或云 API,避免大参数模型全量本地推理
下一步
建议先按 doc/ 中的示例配置(doc/sample_conf/下有多个 sherpa-onnx 组合)跑通一条完整链路,再尝试自定义角色人设和导入自己的 Live2D 模型。项目开源,欢迎提交 issue 或参与贡献。
【免费下载链接】Open-LLM-VTuberTalk to any LLM with hands-free voice interaction, voice interruption, and Live2D avatar running locally across platforms项目地址: https://gitcode.com/GitHub_Trending/op/Open-LLM-VTuber
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考