Model scan
Configure Models DIR, finish copying files, then use Rescan Models. Discovery includes local GGUF models and .nemo speech checkpoints. It does not download models or guarantee compatibility.
Administration covers users, model access, account flows, chat administration tools, and security boundaries for the local LLM Controller instance.
Admin actions affect the local LLM Controller instance. Destructive chat and user actions should be used carefully.
Admins can create standard user accounts from the Admin Users page. The app generates a temporary password, shows it to the admin, and prompts the new user to change it after login.
Admins can delete non-admin users and choose whether to retain or purge that user's chats. Admins cannot delete their own account from that page.
The Admin Users page offers Basic, Moderate, Strong, and Custom policies. Custom rules can require character classes and a minimum length. Policy length is bounded to 6–72 characters; the separate bcrypt limit is 72 UTF-8 bytes, so non-ASCII characters can reach that boundary sooner.
Green registry state means enabled, yellow means present but disabled, and red means missing. Runtime readiness is separate. MMPROJ identifies a projector asset; Speech-to-Text designates a compatible speech checkpoint and excludes it from chat, title, and benchmark choices.
For images, save the matching projector filename for the language model in the registry, then stop/reload the model. The projector must exist within Models DIR. An Images suitability label alone does not enable vision.
Configure Models DIR, finish copying files, then use Rescan Models. Discovery includes local GGUF models and .nemo speech checkpoints. It does not download models or guarantee compatibility.
Split files using a pattern such as -00001-of-00002.gguf are grouped as one model when the expected shards are present. The first shard path is used for launch.
Admins can enable, disable, favorite, and set benchmark eligibility. Metadata includes optional Friendly Names, notes, and usage profiles. Show friendly names in Model picker controls picker labels; names do not change the model file or its capabilities.
Load/stop the main model and save launch defaults; GPU layers of 0 selects CPU-only loading. Selection and running state are distinct. Optional title selection follows the managed title lifecycle rather than independent user Start/Stop controls.
Account Settings shows the signed-in email and separates Instructions, Email, and Password tabs. Personal System Instructions affect subsequent browser chats; see instructions and Projects.
| Flow | Behavior |
|---|---|
| Forgot password | The public response stays generic. A reset link is sent only when SMTP settings and the auth public base URL are configured. |
| Email confirmation | Confirmation links use the configured auth public base URL. Tokens are stored hashed, and consumed or expired tokens are rejected. |
| Resend confirmation | The public resend response stays generic and uses the same configured email-link requirements. |
| Email change | Signed-in users request email changes from account settings using their current password. The current email remains active until the new address is confirmed through the emailed link. |
| Request throttling | Forgot-password, resend-confirmation, and email-change requests use lightweight throttling by IP and normalized email where applicable. |
Admin tools can list users with recorded chat activity and show usage summaries such as token totals.
Admins can export a selected user's chats or all chats as JSON, CSV, or Markdown.
Admins can delete a selected user's chats or delete all chat history. These are destructive actions.
Admin Settings → API Access controls the optional API and CE-issued key. See enablement, key rotation/revocation, and limits.
The speech settings card is below API Access. It needs the dedicated speech environment’s Python executable and a separate local port. Enable and designate a compatible speech checkpoint, then explicitly start it through Model → Speech-to-Text. See Local Voice setup.
Before an upgrade or restoration, stop CE and preserve a coordinated backup of MySQL, chats.sqlite, bootstrap_config.json, and the matching flask_secret.key, plus local files and runtime/settings information needed to reproduce the installation. Database backups, restoration, and migrations are manual operator actions.
Keep backups outside public web folders. The matching Flask secret also supplies key material for stored SMTP credential encryption; if it is unavailable after restoration, enter SMTP credentials again.
Versioned JSON exports preserve chats, Projects, Project Instructions, membership, and empty Projects within the export scope. Legacy JSON lacks Project metadata; CSV is chat interchange and Markdown is a read-only archive. These exports do not replace a full installation backup.
Administrators can import compatible SQLite backups with Project metadata after source header, integrity, schema, and ownership checks. Maximum Chat Import Size and host resource limits still apply. Review format and restore behaviour and the release backup guidance before replacing data.
www.llmcontroller.comLLM Controller on GitHub