mirror of
https://github.com/mudler/LocalAI.git
synced 2026-10-28 09:08:54 -04:00
feat(llama-cpp): add lazy_mode model option (#12743)
* feat(llama-cpp): add lazy_mode model option Expose upstream --lazy-mode (on, auto, off) as a model option, for example `lazy_mode:on`. It controls on-demand reading of large tensors such as per-layer embeddings; `on` requires mmap. The option is also accepted as `lazy-mode` or `lzm`. Invalid values log a warning and keep the upstream default (auto). The pinned llama.cpp already provides the lazy_mode field in common_params. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com> Signed-off-by: Ettore Di Giacinto <mudler@localai.io> * chore(llama-cpp): bump llama.cpp to c0fd78626405 Update the default llama.cpp pin to the current upstream master. The changes since the old pin that the backend touches are additive: a new common_decision_type value, new mtmd audio-stream and download helper declarations. The two server patches still apply in order, and the common_params fields and server headers the backend uses are unchanged. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com> Signed-off-by: Ettore Di Giacinto <mudler@localai.io> --------- Signed-off-by: Ettore Di Giacinto <mudler@localai.io> Co-authored-by: Ettore Di Giacinto <mudler@localai.io> Co-authored-by: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
4 files changed
+46
-1
No files matched your search
@@ -398,6 +398,26 @@ Leave memory for the KV cache, compute buffers, the operating system, and other
|
||||
Reduce `context_size` if the KV cache consumes too much memory.
|
||||
The [GPU auto-fit settings](#gpu-auto-fit-mode) provide a separate way to let llama.cpp choose the allocation.
|
||||
|
||||
#### Lazy tensor loading
|
||||
|
||||
Some models have very large tensors that are used sparsely, such as per-layer embeddings.
|
||||
The `lazy_mode` option (also `lazy-mode`) sets upstream `--lazy-mode`: it controls whether llama.cpp reads those tensors on demand instead of loading them all at startup.
|
||||
|
||||
```yaml
|
||||
backend: llama-cpp
|
||||
options:
|
||||
- lazy_mode:on
|
||||
```
|
||||
|
||||
| Value | Behavior |
|
||||
|---|---|
|
||||
| `auto` | Default. Read on demand only the marked tensors larger than 4 GiB. |
|
||||
| `on` | Read on demand every marked tensor. Requires `mmap` (enabled by default). |
|
||||
| `off` | Load everything at startup. |
|
||||
|
||||
An invalid value logs a warning and keeps the default.
|
||||
The option needs a llama.cpp build that has `--lazy-mode`.
|
||||
|
||||
### Sampling and Generation
|
||||
|
||||
| Field | Type | Default | Description |
|
||||
|
||||
Reference in new issue
Block a user