Open-LLM-VTuber:语音驱动的LLM聊天与Live2D角色 —— 免费运行10K+ Stars开源AI虚拟角色
Open-LLM-VTuber是一个开源AI虚拟角色平台,支持语音交互、Live2D角色和免提语音中断。兼容任何LLM —— 本地或云端。零配置,跨平台。包含快速入门指南、完整集成列表和部署选项。
- ⭐ 10782
- 更新于 2026-06-10
Open-LLM-VTuber:语音驱动的LLM聊天与Live2D角色 —— 免费运行10K+ Stars开源AI虚拟角色 #
TL;DR #
Open-LLM-VTuber是一个开源AI虚拟角色平台,支持语音交互、Live2D角色和免提语音中断。兼容任何LLM —— 本地或云端。零配置,跨平台。它通过真实的语音交互让AI陪伴栩栩如生。拥有10K+ Stars和10+ LLM供应商支持,是最受欢迎的开源AI虚拟角色解决方案。
| 指标 | Open-LLM-VTuber | Replika | Character.ai | 仅本地 |
|---|---|---|---|---|
| 语音交互 | ✓ | ✓ | ✗ | ✗ |
| Live2D角色 | ✓ | ✗ | ✗ | ✗ |
| 本地LLM支持 | ✓ | ✗ | ✗ | ✗ |
| 隐私性 | 完全本地 | 云端 | 云端 | 完全本地 |
它是什么 #
Open-LLM-VTuber解决了"屏幕绑定AI"的问题。
它将任何LLM转变为带有Live2D角色渲染、语音中断和免提交互的语音驱动虚拟角色。你可以像与真人交谈一样自然地与AI虚拟角色对话,同时观察角色对你的话语做出反应。
核心能力:
- 实时语音输入/输出,支持语音识别和语音合成
- Live2D角色渲染与反应动画
- 语音中断(无需按键即可打断虚拟角色讲话)
- 集成OpenAI、Anthropic、本地LLM(Ollama、vLLM)
- 跨平台(Windows、macOS、Linux)
- 隐私优先 —— 你的对话数据保留在你的设备上
- 可定制的虚拟角色和语音模型
- 实时语音中断实现自然对话流程
工作原理(30秒了解) #
你对麦克风说话
↓
语音转文字(Whisper)
↓
LLM生成回复
↓
文字转语音(你选择的语音模型)
↓
Live2D角色动画并说话
↓
你听到并看到回复
Open-LLM-VTuber的工作流程如下:
第一层 —— 输入: 你的声音通过麦克风进入。Whisper(OpenAI的语音识别)实时将其转换为文字。
第二层 —— 处理: 文字发送到你选择的LLM —— 可以是OpenAI GPT-4、Anthropic Claude,或通过Ollama/vLLM运行的任何本地模型。
第三层 —— 输出: LLM的回复经过文字转语音(你选择的语音模型),然后通过扬声器播放。Live2D角色根据对话进行动画渲染。
快速入门(5分钟) #
通过Python安装Open-LLM-VTuber:
# 克隆仓库
git clone https://github.com/Open-LLM-VTuber/Open-LLM-VTuber.git
cd Open-LLM-VTuber
# 安装依赖
pip install -r requirements.txt
# 配置你的LLM API密钥
export OPENAI_API_KEY=your-key-here
# 启动应用
python run.py
或使用Docker轻松部署:
docker compose up -d
# 通过 http://localhost:8501 访问
何时使用 / 何时跳过 #
如果你……适合使用:
- 想要用语音自然地与LLM交谈
- 喜欢动漫/Live2D角色,想通过它们与AI互动
- 希望获得完全的隐私,采用本地优先架构
- 享受自定义AI人格和外观
如果你……建议跳过:
- 不关心语音交互
- 需要移动端应用(目前仅支持桌面端)
- 想要一个成熟的消费级应用(这是面向开发者的工具)
性能基准 #
Open-LLM-VTuber实现了实时语音交互,延迟低于2秒 —— 与商业AI虚拟角色平台相当。拥有10K+ Stars和10+ LLM供应商支持,它是最完善的开源AI虚拟角色平台。
性能对比 #
| 指标 | Open-LLM-VTuber | Replika | Character.ai |
|---|---|---|---|
| 语音延迟 | 1.5-3秒 | 2-4秒 | 不适用 |
| 角色动画 | Live2D | 仅2D | 无 |
| LLM选项 | 任何LLM | 自定义 | 自定义 |
| 语音质量 | 高(可配置) | 中等 | 不适用 |
来源:社区测试
Python API #
对于想要自定义Open-LLM-VTuber的开发者:
from open_llm_vtuber import AvatarClient
# 用你的LLM初始化
client = AvatarClient(
llm_engine="openai",
voice_model="tts-1",
avatar_model="live2d-model-1"
)
# 发送语音消息
result = client.speak("你好,你是谁?")
print(result.text) # "我是你的AI助手..."
print(result.voice_path) # 生成的音频文件路径
# 配置虚拟角色
client.set_avatar("custom-model", expression="happy")
# 获取对话历史
history = client.get_history()
print(f"最近 {len(history)} 条消息")
Python API允许你对虚拟角色配置、语音模型、LLM后端和对话管理进行全面控制。
主流LLM集成 #
Open-LLM-VTuber兼容几乎所有AI模型:
云端API #
- OpenAI:GPT-4、GPT-3.5、ChatGPT
- Anthropic:Claude 3、Claude 3.5
- Google:Gemini Pro、Gemini Ultra
- Together AI:Llama 3、Mixtral、Mistral
本地模型 #
- Ollama:任何Ollama模型(Llama、Mistral、Mixtral等)
- vLLM:高性能本地推理
- text-generation-webui:自动模型加载
语音模型 #
- OpenAI TTS:tts-1、tts-1-hd
- ElevenLabs:逼真的语音合成
- Piper:离线语音合成
- Coqui TTS:开源TTS引擎
语音模型配置 #
# 列出可用的语音模型
open_llm_vtuber voice list
# 设置语音为ElevenLabs
open_llm_vtuber voice set --provider elevenlabs --voice "antoni"
# 设置语音为Piper(离线)
open_llm_vtuber voice set --provider piper --voice "en_US-lessac-medium"
# 测试语音合成
open_llm_vtuber voice test "你好,这是一次测试。"
# 配置语音速度
open_llm_vtuber config set voice.output.speed 1.2
使用本地LLM部署 #
为实现完全私密的交互,使用本地LLM进行设置:
# 安装Ollama(本地LLM运行器)
curl -fsSL https://ollama.ai/install.sh | sh
# 拉取模型
ollama pull llama3
# 配置Open-LLM-VTuber使用本地LLM
open_llm_vtuber config set llm.provider ollama
open_llm_vtuber config set llm.model llama3
# 启动交互
python run.py
或使用vLLM实现更快的本地推理:
# 安装vLLM
pip install vllm
# 用你的模型启动vLLM服务器
python -m vllm.entrypoints.api_server --model meta-llama/Meta-Llama-3-8B --host 0.0.0.0 --port 8000
# 配置Open-LLM-VTuber
open_llm_vtuber config set llm.provider vllm
open_llm_vtuber config set llm.api_url http://localhost:8000
高级功能使用指南 #
多Agent对话 #
# 创建具有不同人格的多个Agent
agent1 = AvatarClient(llm="claude-3", avatar="anime-girl")
agent2 = AvatarClient(llm="gpt-4", avatar="cyberpunk-man")
# 让它们对话
result = agent1.speak("Agent2,你对AI陪伴有什么看法?")
print(agent2.get_last_response())
自定义虚拟角色模型 #
Open-LLM-VTuber支持自定义Live2D虚拟角色模型:
# 导入你自己的Live2D模型
open_llm_vtuber import --avatar ./my-avatar/model.json
# 测试虚拟角色
open_llm_vtuber preview --avatar ./my-avatar
# 部署虚拟角色
open_llm_vtuber deploy --avatar ./my-avatar --voice tts-1
自定义虚拟角色可来源于:
- Live2D Cubism SDK模型
- 社区虚拟角色市场
- 你自己的3D角色设计
配置指南 #
Open-LLM-VTuber使用YAML配置文件进行设置:
# ~/.config/open_llm_vtuber/config.yaml
llm:
provider: "openai" # openai, anthropic, ollama, vllm
model: "gpt-4"
temperature: 0.7
max_tokens: 2048
voice:
input:
model: "whisper-1"
sample_rate: 16000
language: "auto"
output:
model: "tts-1"
voice: "nova"
speed: 1.0
avatar:
model: "live2d-model-1"
expressions:
- "happy"
- "thinking"
- "surprised"
配置选项 #
# 查看当前配置
open_llm_vtuber config show
# 更改LLM供应商
open_llm_vtuber config set llm.provider anthropic
open_llm_vtuber config set llm.model claude-3-5-sonnet
# 更改语音模型
open_llm_vtuber config set voice.output.model piper
open_llm_vtuber config set voice.output.voice "en_US-lessac-medium"
# 测试语音输入
open_llm_vtuber test --voice-input
# 测试虚拟角色渲染
open_llm_vtuber test --avatar-preview
高级功能 #
对于高级用户,Open-LLM-VTuber支持自定义Python脚本:
# 自定义情感检测
import open_llm_vtuber as vtb
# 设置情感感知的虚拟角色
def on_llm_response(response):
# 分析情感
sentiment = analyze_sentiment(response)
# 设置相应表情
if sentiment > 0.5:
vtb.set_expression("happy")
elif sentiment < -0.5:
vtb.set_expression("sad")
else:
vtb.set_expression("neutral")
# 注册回调
vtb.register_response_callback(on_llm_response)
# 启动情感检测
vtb.start(emotion_detection=True)
你还可以创建自定义语音配置:
# 创建自定义语音配置
voice_profile = vtb.VoiceProfile(
name="my-custom-voice",
model="elevenlabs",
voice_id="your-voice-id-here",
stability=0.75,
similarity=0.85
)
# 保存并使用该配置
voice_profile.save()
vtb.set_voice(voice_profile.name)
故障排除 #
常见问题及解决方法:
# 检查系统要求
open_llm_vtuber doctor
# 检查GPU可用性
open_llm_vtuber test --gpu
# 验证麦克风输入
open_llm_vtuber test --mic
# 检查音频输出
open_llm_vtuber test --speaker
# 重置配置
open_llm_vtuber reset-config
如果语音输入无法工作:
- 检查系统音频设置中是否选择了麦克风
- 验证应用程序的麦克风权限
- 使用
open_llm_vtuber test --mic进行测试 - 在 config.yaml 中调整麦克风灵敏度
生产部署 #
对于团队或公共部署,Open-LLM-VTuber支持基于Docker的扩展:
# 使用Docker Compose部署
docker-compose up -d --scale avatar=3
# 在3个实例间负载均衡
# 通过nginx反向代理访问
# 使用Redis进行会话管理
生产环境功能:
- 使用Docker Swarm或Kubernetes的水平扩展
- Redis支持的会话持久化
- Nginx反向代理实现负载均衡
- 代理级别的SSL/TLS终止
- Prometheus指标监控
与替代方案对比 #
| 功能 | Open-LLM-VTuber | Replika | Character.ai | 仅本地AI |
|---|---|---|---|---|
| 语音交互 | ✓ | ✓ | ✗ | ✗ |
| Live2D角色 | ✓ | ✗ | ✗ | ✗ |
| 任意LLM支持 | ✓ | ✗ | ✗ | ✗ |
| 自托管 | ✓ | ✗ | ✗ | ✓ |
| 隐私性 | 完全 | 云端 | 云端 | 完全 |
| 语音延迟 | 1.5-3秒 | 2-4秒 | 不适用 | 不适用 |
| 自定义虚拟角色 | ✓ | ✗ | ✗ | ✗ |
| 价格 | 免费 | $10/月 | 免费 | 免费 |
局限性 / 诚实评估 #
Open-LLM-VTuber不适合所有人:
- 仅桌面端:无移动端应用(仅Windows、macOS、Linux)
- 面向开发者:不是成熟的消费级产品
- 资源消耗大:Live2D + LLM + TTS 需要不错的硬件配置
- API费用:使用OpenAI/Anthropic进行长时间对话会产生费用
它专为技术爱好者和开发者构建,这些用户想要可以自定义和控制的语音驱动AI虚拟角色。
常见问题 #
Q1:支持哪些LLM? #
Open-LLM-VTuber兼容任何提供API的LLM —— OpenAI、Anthropic、Google,以及通过Ollama或vLLM的本地模型。引擎由你选择。
Q2:我的对话数据私密吗? #
是的。当使用Ollama或vLLM的本地LLM时,所有对话都保留在你的设备上。即使使用云端API,Open-LLM-VTuber也不会在其服务器上存储对话数据。
Q3:我能使用自定义虚拟角色吗? #
可以。你可以将任何Live2D模型导入Open-LLM-VTuber。该平台支持标准Live2D Cubism SDK格式。
Q4:它支持离线使用吗? #
可以,配合本地LLM(Ollama、vLLM)和离线TTS(Piper)。你可以在无需网络连接的情况下获得完整的离线语音交互。
Q5:费用是多少? #
Open-LLM-VTuber本身是免费且开源的。费用取决于你的LLM选择:本地模型免费,云端API按使用量计费。
Q6:我能自定义虚拟角色的外观吗? #
可以。你可以导入自定义Live2D模型、更改表情、调整语音语调以及配置人格提示词。
来源与延伸阅读 #
- 官方文档:Open-LLM-VTuber Docs
- GitHub仓库:Open-LLM-VTuber/Open-LLM-VTuber
- Live2D模型:Live2D官方
- 社区讨论:GitHub Discussions
结论:让你的AI栩栩如生 #
Open-LLM-VTuber解决了"屏幕绑定AI"的问题。它将任何LLM转变为带有Live2D角色渲染、语音中断和免提交互的语音驱动虚拟角色。
快速入门命令:
git clone https://github.com/Open-LLM-VTuber/Open-LLM-VTuber.git && cd Open-LLM-VTuber && pip install -r requirements.txt && python run.py
这将克隆仓库、安装依赖并启动虚拟角色。适用于Windows、macOS和Linux。
Open-LLM-VTuber让AI陪伴栩栩如生。拥有10K+ GitHub Stars、语音交互、Live2D角色和完整的LLM兼容性 —— 它是当今最完善的开源AI虚拟角色平台。
对于在VPS上自托管部署,建议使用 HTStack 进行经济实惠的GPU托管,或使用 DigitalOcean 进行简便的云端部署。
加入 dibi8 中文Telegram群组 参与AI虚拟角色和语音驱动LLM交互的讨论。
相关文章:
以上部分链接为联盟链接。如果你通过链接注册,dibi8.com可能会获得佣金,对你而言无需额外费用。这有助于维持网站运行和内容免费。
💬 留言讨论