mirror of
https://github.com/mudler/LocalAI.git
synced 2026-09-12 22:33:54 -04:00
fix(vram): persist remote probe metadata (#11487)
* fix(vram): persist remote probe metadata The startup warmer repeated remote size and GGUF metadata probes after every restart because both caches lived only in memory. Store successful HTTP probes for 24 hours so frequent restarts reuse the prior results. Bound the cache, reject invalid records, and purge it when gallery data changes. Local model files continue to bypass persistence. Assisted-by: Codex:gpt-5 * fix(vram): check temporary file cleanup The lint gate rejects the unchecked cleanup call in the persistent cache writer. Assisted-by: Codex:gpt-5.6 [golangci-lint] * fix(vram): make persistent cache optional Remote metadata probes can transfer enough data that operators need control over disk reuse and startup warming. Gallery autoload now gates both behaviors, and the runtime setting applies changes immediately. Assisted-by: Codex:gpt-5 * fix(ui): expose gallery startup pre-warm The existing gallery autoload setting also gates the startup metadata warmer. Name both effects in Settings so operators can find the requested boot control. Assisted-by: Codex:gpt-5 --------- Co-authored-by: localai-org-maint-bot <306269227+localai-org-maint-bot@users.noreply.github.com>
This commit is contained in:
1 parent
ffef539866
commit
8f56e4e042
16 files changed
+656
-12
No files matched your search
@@ -460,8 +460,16 @@ context lengths, so you can see whether something will run before installing it.
|
||||
Working that out means reading the metadata of a model's weight files, which for
|
||||
a model you have not installed is a request to the host that serves them. It
|
||||
takes a second or two the first time, and the gallery needs one per row. LocalAI
|
||||
caches the result, and warms that cache in the background at startup so the
|
||||
gallery reads instantly rather than filling in its own numbers while you watch.
|
||||
caches successful remote probes for 24 hours under the LocalAI data directory,
|
||||
and warms that cache in the background at startup so the gallery reads instantly
|
||||
rather than filling in its own numbers while you watch. The on-disk cache is
|
||||
reused after a restart, so frequent restarts do not download the same metadata
|
||||
again. Local model files are always inspected directly. The cache keeps at most
|
||||
4,096 entries and removes the oldest entries when it reaches that limit.
|
||||
Disable **Persist remote VRAM estimates** under **Settings > Galleries**, or set
|
||||
`LOCALAI_VRAM_PERSISTENT_CACHE=false`, to keep estimates in memory only. Setting
|
||||
`LOCALAI_AUTOLOAD_GALLERIES=false` also disables the startup warmer and the
|
||||
persistent cache.
|
||||
|
||||
The same warm-up also describes each entry's **variants** - the alternative
|
||||
builds of the same weights that the picker offers - because that costs the same
|
||||
|
||||
@@ -82,7 +82,7 @@ Manage model and backend galleries:
|
||||
|
||||
- **Model Galleries**: JSON array of gallery objects with `url` and `name` fields, plus an optional `mirrors` list of fallback URLs (see [Gallery mirrors]({{%relref "features/model-gallery#gallery-mirrors" %}}))
|
||||
- **Backend Galleries**: JSON array of backend gallery objects, which accept the same `mirrors` key
|
||||
- **Autoload Galleries**: Automatically load model galleries on startup
|
||||
- **Load and pre-warm galleries on boot**: Load model galleries and pre-warm their remote size and VRAM estimates when LocalAI starts. Disable this setting to skip both startup operations.
|
||||
- **Autoload Backend Galleries**: Automatically load backend galleries on startup
|
||||
|
||||
### Agent Pool Settings
|
||||
@@ -164,6 +164,7 @@ The `runtime_settings.json` file follows this structure:
|
||||
],
|
||||
"autoload_galleries": true,
|
||||
"autoload_backend_galleries": true,
|
||||
"vram_persistent_cache": true,
|
||||
"api_keys": []
|
||||
}
|
||||
```
|
||||
|
||||
@@ -61,6 +61,7 @@ For more information on VRAM management, see [VRAM and Memory Management]({{%rel
|
||||
|-----------|---------|-------------|----------------------|
|
||||
| `--galleries` | | JSON list of galleries | `$LOCALAI_GALLERIES`, `$GALLERIES` |
|
||||
| `--autoload-galleries` | `true` | Automatically load galleries on startup | `$LOCALAI_AUTOLOAD_GALLERIES`, `$AUTOLOAD_GALLERIES` |
|
||||
| `--vram-persistent-cache` | `true` | Persist successful remote VRAM metadata probes across restarts | `$LOCALAI_VRAM_PERSISTENT_CACHE`, `$VRAM_PERSISTENT_CACHE` |
|
||||
| `--preload-models` | | A list of models to apply in JSON at start | `$LOCALAI_PRELOAD_MODELS`, `$PRELOAD_MODELS` |
|
||||
| `--models` | | A list of model configuration URLs to load | `$LOCALAI_MODELS`, `$MODELS` |
|
||||
| `--preload-models-config` | | A list of models to apply at startup. Path to a YAML config file | `$LOCALAI_PRELOAD_MODELS_CONFIG`, `$PRELOAD_MODELS_CONFIG` |
|
||||
|
||||
Reference in new issue
Block a user