
Talk to any LLM with hands-free voice interaction, voice interruption, and Live2D talking face. Cloud-API edition: all inference via OpenAI-compatible LLM (default Zeabur AI Hub), Groq Whisper for speech-to-text, and free Edge-TTS for voice output. ⚠️ Pins openllmvtuber/open-llm-vtuber:latest — upstream is in rapid development, so restarting the service can pull breaking changes.
Talk to any LLM with hands-free voice interaction, voice interruption, and Live2D talking face. Cloud-API edition: all inference via OpenAI-compatible LLM (default Zeabur AI Hub), Groq Whisper for speech-to-text, and free Edge-TTS for voice output. ⚠️ Pins openllmvtuber/open-llm-vtuber:latest — upstream is in rapid development, so restarting the service can pull breaking changes.

⚠️ Heads up — upstream is in active development. This template pins the
openllmvtuber/open-llm-vtuber:latestimage tag, so restarting your service can pull in a newer upstream build with breaking changes (config schema, frontend bundle, model defaults, etc.). Take a snapshot of/app/conf/conf.yamlfrom the service console before restarting if you've customized it.
Open-LLM-VTuber is an open-source AI VTuber that talks to any LLM with hands-free voice interaction, voice interruption, and a Live2D talking face. This Cloud API edition runs all inference through cloud APIs — no local GPU required, deploys to any Zeabur server in one click.
| Layer | Provider | Cost |
|---|---|---|
| LLM | OpenAI-compatible (default Zeabur AI Hub) | pay-per-token |
| ASR (speech-to-text) | Groq Whisper-large-v3-turbo | free tier |
| TTS (text-to-speech) | Microsoft Edge-TTS | free, no key |
| Live2D | rendered in browser | free |
About the URL auto-config: Upstream's frontend bundle hardcodes
ws://127.0.0.1:12393as the WebSocket / Base URL defaults (built for local dev). This template injects a tiny script intoindex.htmlat container start that points those defaults at the current page origin, so you don't have to touch the Settings UI. If a future upstream release adds runtime config support, we can drop this patch.
| Provider | LLM_BASE_URL | LLM_MODEL |
|---|---|---|
| Zeabur AI Hub (default) | https://hnd1.aihub.zeabur.ai/v1 | claude-haiku-4-5 |
| OpenAI | https://api.openai.com/v1 | gpt-4o-mini |
| Anthropic | https://api.anthropic.com/v1 | claude-haiku-4-5 |
| Google Gemini | https://generativelanguage.googleapis.com/v1beta/openai/ | gemini-2.5-flash |
| DeepSeek | https://api.deepseek.com/v1 | deepseek-chat |
| Groq | https://api.groq.com/openai/v1 | llama-3.3-70b-versatile |
The 6 env vars above cover the common settings. For anything else — character switch, MCP tools, ASR/TTS provider swap, voice style, etc. — edit /app/conf/conf.yaml directly:
/app/conf/conf.yaml, click to open it in the in-browser editor, make your changes, and save/app/conf is a persistent volume — your edits survive restarts. Env vars listed above are re-applied on each boot and override the corresponding yaml keys, so leave those keys alone in your edits if you want env vars to win.
Use the Open-LLM-VTuber (Local GPU) template — deploys to a GPU-equipped dedicated server with Ollama, local Whisper, and GPT-SoVITS. See the Zeabur Marketplace.
