[GH-ISSUE #9319] Title generation not working when worker model set to private #30986

Closed
opened 2026-04-25 05:05:25 -05:00 by GiteaMirror · 2 comments
Owner

Originally created by @JKratto on GitHub (Feb 4, 2025).
Original GitHub issue: https://github.com/open-webui/open-webui/issues/9319

Bug Report


Installation Method

Docker

Environment

  • Open WebUI Version: 0.5.7

Confirmation:

  • I have read and followed all the instructions provided in the README.md.
  • I am on the latest version of both Open WebUI and Ollama.
  • I have included the Docker container logs.
  • I have provided the exact steps to reproduce the bug in the "Steps to Reproduce" section below.

Expected Behavior:

Administrator sets up a bunch of models. Some of them are accessible for users A, some of them for users B etc. That is great and working and helps mitigate confusion! So I also have a worker model, that is specifically tuned for e.g. chat name generation. As this model is explicitly set as the worker model, anyone can access it from backend, but noone can select it in the chat-models-dropdown.

Actual Behavior:

But making the worker model private makes nobody (except for the admin) chat names to be generated, because it is "not accessible".
The same goes for the embedding model. But here - working as expected! That is great!

Description

Bug Summary:
Worker model should not have to be accessible (selectable in chat-models-dropdown) to be able to generate chat names or prompt completions.

Reproduction Details

Steps to Reproduce:

  1. set worker model
  2. make it private
  3. log in as unprivileged user
  4. watch your chat names not to be generated

Logs and Screenshots

Docker Container Logs:

DEBUG [open_webui.routers.tasks] generating chat title using model foobar:8b-instruct-q4_K_M for user foo@bar.com
ERROR [open_webui.routers.tasks] Exception occurred
Traceback (most recent call last):
  File "/app/backend/open_webui/routers/tasks.py", line 192, in generate_title
    return await generate_chat_completion(request, form_data=payload, user=user)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/app/backend/open_webui/utils/chat.py", line 84, in generate_chat_completion
    raise e
  File "/app/backend/open_webui/utils/chat.py", line 82, in generate_chat_completion
    check_model_access(user, model)
  File "/app/backend/open_webui/utils/models.py", line 245, in check_model_access
    raise Exception("Model not found")
Exception: Model not found
Originally created by @JKratto on GitHub (Feb 4, 2025). Original GitHub issue: https://github.com/open-webui/open-webui/issues/9319 # Bug Report --- ## Installation Method Docker ## Environment - **Open WebUI Version:** 0.5.7 **Confirmation:** - [x] I have read and followed all the instructions provided in the README.md. - [x] I am on the latest version of both Open WebUI and Ollama. - [x] I have included the Docker container logs. - [x] I have provided the exact steps to reproduce the bug in the "Steps to Reproduce" section below. ## Expected Behavior: Administrator sets up a bunch of models. Some of them are accessible for users A, some of them for users B etc. That is great and working and helps mitigate confusion! So I also have a worker model, that is specifically tuned for e.g. chat name generation. As this model is explicitly set as the worker model, anyone can access it from backend, but noone can select it in the chat-models-dropdown. ## Actual Behavior: But making the worker model private makes nobody (except for the admin) chat names to be generated, because it is "not accessible". The same goes for the embedding model. But here - working as expected! That is great! ## Description **Bug Summary:** Worker model should not have to be accessible (selectable in chat-models-dropdown) to be able to generate chat names or prompt completions. ## Reproduction Details **Steps to Reproduce:** 1. set worker model 2. make it private 3. log in as unprivileged user 4. watch your chat names not to be generated ## Logs and Screenshots **Docker Container Logs:** ``` DEBUG [open_webui.routers.tasks] generating chat title using model foobar:8b-instruct-q4_K_M for user foo@bar.com ERROR [open_webui.routers.tasks] Exception occurred Traceback (most recent call last): File "/app/backend/open_webui/routers/tasks.py", line 192, in generate_title return await generate_chat_completion(request, form_data=payload, user=user) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/app/backend/open_webui/utils/chat.py", line 84, in generate_chat_completion raise e File "/app/backend/open_webui/utils/chat.py", line 82, in generate_chat_completion check_model_access(user, model) File "/app/backend/open_webui/utils/models.py", line 245, in check_model_access raise Exception("Model not found") Exception: Model not found ```
Author
Owner

@tjbck commented on GitHub (Feb 4, 2025):

Expected behaviour.

<!-- gh-comment-id:2632878851 --> @tjbck commented on GitHub (Feb 4, 2025): Expected behaviour.
Author
Owner

@JKratto commented on GitHub (Feb 4, 2025):

@tjbck Thank you. As for embedding models it (thankfully) works, that they does not have to be accessible to be used, how can I make the model not appear in the model selector and still be able to use it as a worker model? I do not want the users to be confused. Is there a way? Can we make a way?

From my point of view, this makes a better UX.

@tjbck also thank you very much for your work. Very very appreciated.

<!-- gh-comment-id:2632886526 --> @JKratto commented on GitHub (Feb 4, 2025): @tjbck Thank you. As for embedding models it (thankfully) works, that they does not have to be accessible to be used, how can I make the model not appear in the model selector and still be able to use it as a worker model? I do not want the users to be confused. Is there a way? Can we make a way? From my point of view, this makes a better UX. @tjbck also thank you very much for your work. Very very appreciated.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github-starred/open-webui#30986