mirror of
https://github.com/open-webui/open-webui.git
synced 2026-05-06 19:08:59 -05:00
[GH-ISSUE #20813] feat: add ability to define custom models with config files #19295
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @t18n on GitHub (Jan 20, 2026).
Original GitHub issue: https://github.com/open-webui/open-webui/issues/20813
Check Existing Issues
Verify Feature Scope
Problem Description
Open WebUI’s model system is powerful, but it lacks effective tooling for large-scale management. The current UI is not intuitive for managing a large number of custom models.
I would prefer a code-driven workflow. For example, I want to define and manage models programmatically—generate or modify 50+ custom models for different use cases via an AI agent or scripts, restart the server, and have all model definitions in /models automatically loaded, validated, and ready for testing and refinement.
This approach would allow me to quickly tweak configurations, create and maintain variants of assistants (e.g., Senior Programmer – gpt-5.2, Senior Programmer – opus), and efficiently update or delete models with proper version control. The current UI-based workflow does not support this kind of scalable, reproducible model management.
Desired Solution you'd like
Dual model sources (UI + filesystem):
Open WebUI loads models from the existing source (database / UI‑managed) and additionally from a
/modelsdirectory containing JSON model definitions. Both sources can be used together. File‑based models are loaded on app/container startup and, ideally, support dynamic reload without restart.Declarative, version‑controlled models:
Self‑hosters can manage models as JSON files in
/models, enabling automation, fast iteration, and version control, while UI‑managed models continue to work unchanged.UI compatibility and clarity:
File‑managed models appear in the UI alongside UI‑created ones, clearly marked as config‑managed, and are fully usable in chat without forcing users away from the existing UI workflow.
Alternatives Considered
Allow defining a logical assistant (e.g., “Senior Programmer”) with a default base model (e.g., GPT‑5.2). In chat, users can optionally swap the underlying base model (e.g., Opus) without duplicating assistant definitions.
Additional Context
No response