issue: an arena model fails with "Model not found" when the models it includes are disabled
Before Submitting
- I searched open and closed issues and discussions for an existing report.
- I checked whether this is already fixed on the
devbranch or latest source. - I understand that maintainers want a well-written issue before any code pull request.
- I am using the latest available version of Open WebUI for my install method.
- This is not a security vulnerability.
Installation Method
Git Clone
Open WebUI Version
dev at 58b36765a7c20f5943a3180bd289de48876d0878
Operating System
Ubuntu 26.04.1 LTS
Browser
Firefox 155.0
Ollama Version
0.34.0
Summary
An arena model that includes only specific models still picks from those models after they are disabled. When every model it includes is disabled, each message sent to the arena model fails with the error "Model not found".
Expected Behavior
An arena model picks only from the models it includes that are still available. When none of them are available, it does not try to use a disabled model.
Actual Behavior
The reply to every message shows the error "Model not found", and no model answers.
Steps to Reproduce
- Go to Settings, then Evaluations under Admin, and turn on Arena Models.
- Add an arena model, leave its model filter on include, add two models to it, and save.
- Go to Models under Admin and turn off both of those models.
- Start a new chat, select the arena model, and send any message.
- The reply shows the error "Model not found".
Logs, Screenshots, and Config
The error on the reply:
I did not capture browser console or server logs.
Additional Information
Anchored to 58b36765a7c20f5943a3180bd289de48876d0878.
Turning a model off removes it from the server's list of available models. https://github.com/open-webui/open-webui/blob/58b36765a7c20f5943a3180bd289de48876d0878/backend/open_webui/utils/models.py#L183-L206
An arena model on include picks at random from the model IDs saved in its settings without checking that list, and the chat completion picks again the same way. The picked model is then looked up and not found. https://github.com/open-webui/open-webui/blob/58b36765a7c20f5943a3180bd289de48876d0878/backend/open_webui/utils/middleware.py#L2384-L2408 https://github.com/open-webui/open-webui/blob/58b36765a7c20f5943a3180bd289de48876d0878/backend/open_webui/utils/chat.py#L229-L249 https://github.com/open-webui/open-webui/blob/58b36765a7c20f5943a3180bd289de48876d0878/backend/open_webui/utils/chat.py#L203-L205
Both picks fall back to all available models only when the saved list is empty. Exclude mode and the default arena model already pick from available models. The same code suggests that when only some included models are disabled, only the messages that pick a disabled model fail.
Source: open-webui/open-webui