External Publication
Visit Post

An AI streaming "buddy" like Neuro-sama

Hugging Face Forums [Unofficial] March 25, 2026
Source

Oh, I see. LM Studio support feature was added just recently… In cases like this, it usually takes a while to stabilize…


Yes. Roll back to a known-good baseline first. Then re-introduce LM Studio as a single isolated change. That is the lowest-risk path here. Open-LLM-VTuber’s own docs warn that the project is still unstable and not easy to install, and the official quick start still uses Ollama + sherpa-onnx-asr + edge_tts as the baseline path. LM Studio support was added later in v1.2.0 , so mixing setup steps too early is a common way to end up with a broken state. (GitHub)

The two most likely causes

First, your checkout may be incomplete. The frontend is a git submodule, so the docs require either the official release package or git clone --recursive. If the submodule is missing, the web UI can fail with {"detail":"Not Found"}, and the FAQ says to fix that with git submodule update --init --recursive. (Open LLM Vtuber)

Second, your config may be stale. Since v1.1.0, conf.yaml is generated from templates and updated through a config template system. The v1.2.0 release notes mention fixes for config update bugs and changed project_id / organization_id defaults to null to prevent API errors. There are also issue reports showing warnings like “user config contains keys not present in default config,” which is exactly the sort of thing that happens after hand edits or upgrades across config format changes. (Open LLM Vtuber)

Recovery plan

1. Stop trying to fix LM Studio inside the current broken install

Make a copy of your current conf.yaml, then stop using it for the moment. This project’s own update notes say config files can change and should be backed up cautiously during updates. (GitHub)

2. Verify the repo itself is complete

In your project directory, run:

git submodule update --init --recursive

If you originally cloned without --recursive, this is required. If you want the cleanest reset, re-clone from the official repo with --recursive or use the official release ZIP from the release page, not GitHub’s green “Code → Download ZIP.” The docs explicitly say not to use that ZIP because it omits the frontend/submodule state. (Open LLM Vtuber)

3. Reset to the official baseline

The docs recommend Python >= 3.10 and < 3.13, uv as the primary environment manager, and:

uv sync
uv run run_server.py

Running once will generate config in some cases, but the docs actually recommend copying config_templates/conf.default.yaml to conf.yaml instead of relying on auto-generation. They also note that if you exit too late on first run, model downloads may start and partially downloaded files under models/ can block clean startup later. (Open LLM Vtuber)

My recommendation is stricter than the docs here: use a freshconf.yaml copied from the current template and treat your old file as reference only. That avoids stale keys.

4. Do not customize anything except the baseline LLM

For the first successful run, stay as close as possible to the quick start:

  • basic_memory_agent
  • ollama_llm
  • default ASR: sherpa-onnx-asr
  • default TTS: edge_tts
  • open the app in Chrome , because the docs call out known browser issues in Edge and Safari. (Open LLM Vtuber)

When it works, the backend should start and the web UI should be available at http://localhost:12393. Do not enable Letta yet. The agent docs say that if you switch to letta_agent, the LLM settings in conf.yaml stop being the effective source of truth and the actual model comes from the Letta server instead. (Open LLM Vtuber)

5. Only after the baseline works, swap Ollama for LM Studio

Open-LLM-VTuber’s LLM docs say LM Studio should be configured through openai_compatible_llm. The project treats most providers as wrappers over that same OpenAI-compatible format. (Open LLM Vtuber)

Use this minimal pattern:

agent_config:
  agent_settings:
    basic_memory_agent:
      llm_provider: 'openai_compatible_llm'

llm_configs:
  openai_compatible_llm:
    base_url: 'http://localhost:1234/v1'
    llm_api_key: 'somethingelse'
    organization_id: null
    project_id: null
    model: 'PUT_THE_EXACT_LM_STUDIO_MODEL_ID_HERE'
    temperature: 0.7

Why these fields:

  • Open-LLM-VTuber’s docs show openai_compatible_llm is the right backend for LM Studio and similar servers. (Open LLM Vtuber)
  • LM Studio’s docs say its OpenAI-compatible base URL should point to http://localhost:1234/v1 by default. (LM Studio)
  • Open-LLM-VTuber’s v1.2.0 release notes say organization_id and project_id were changed to null by default to prevent API errors. (Open LLM Vtuber)

6. Prove LM Studio itself works before involving Open-LLM-VTuber

Before starting Open-LLM-VTuber with LM Studio, confirm LM Studio independently:

  1. In LM Studio, go to the Developer tab and start the local server, or run lms server start. (LM Studio)
  2. Make sure the model is loaded into memory. Open-LLM-VTuber’s FAQ explicitly calls this out for LM Studio users. (Open LLM Vtuber)
  3. Check the visible model list:
curl http://localhost:1234/v1/models

LM Studio’s docs say this endpoint returns the models visible to the server. Use the exact model identifier it returns in conf.yaml. (LM Studio)

What not to change yet

Do not touch Letta, MCP, custom ASR, custom TTS, or remote access until local baseline works. The project is in active transition, v2 is being planned, and v1 is still receiving bug fixes rather than becoming simpler. Keeping the first working state narrow matters here. (GitHub)

Also check two easy failure points from the FAQ:

  • a proxy that does not bypass localhost
  • two backends competing for port 12393 (Open LLM Vtuber)

The shortest practical sequence

  1. git submodule update --init --recursive
  2. replace conf.yaml with a fresh copy of config_templates/conf.default.yaml
  3. uv sync
  4. run the official quick-start baseline and confirm http://localhost:12393 works in Chrome
  5. change only llm_provider and the openai_compatible_llm block to LM Studio
  6. verify LM Studio server is running and curl http://localhost:1234/v1/models returns the exact model id you put in config (Open LLM Vtuber)

Discussion in the ATmosphere

Loading comments...