67 lines
3.8 KiB
Markdown
67 lines
3.8 KiB
Markdown
# Lokale Inferenz begrenzen
|
|
|
|
Die Workstation verwendet `hermes-local` als stabilen API-Modellnamen. Das
|
|
Routineprofil lädt Qwen3.5-4B Q4_K_M (Unsloth-Revision
|
|
`e87f176479d0855a907a41277aca2f8ee7a09523`), das große Profil weiterhin das
|
|
vorhandene Qwen3.8-27B. Die tatsächliche Auswahl steht in
|
|
`~/.config/hermes-stack-maintenance/llama.env`.
|
|
|
|
`hermes-stack-model routine` bzw. `hermes-stack-model large` schaltet explizit um
|
|
und beendet dabei laufende Gateway-Anfragen. Beide Dateien bleiben erhalten.
|
|
Es wird nur ein Hauptmodell gleichzeitig geladen. Die lokalen profilspezifischen
|
|
Konfigurationen `llama-routine.env` und `llama-large.env` enthalten absolute
|
|
Modellpfade. `scripts/prepare-workstation.py` prüft bzw. lädt die fest versionierten
|
|
Modelldateien und erzeugt fehlende Profile. Die vollständige Neuinstallation ist
|
|
in [NEW_WORKSTATION.md](NEW_WORKSTATION.md) beschrieben. Der normale Installer
|
|
allein lädt keine Gewichte und erzeugt diese Profile nicht.
|
|
|
|
Die alten Aliasse `qwen38-27b-local` und `qwen36-27b-local` bleiben als
|
|
Kompatibilitätsnamen für bestehende Sitzungen erreichbar. Sie bezeichnen dann
|
|
ebenfalls das aktiv ausgewählte Modell; die tatsächliche Modelldatei zeigt
|
|
`/props.model_path`. Neue Sitzungen und entbundene Cronjobs verwenden `hermes-local`.
|
|
|
|
## Drei Schutzebenen
|
|
|
|
- Der Runner setzt `--n-predict 2048` als Serverstandard. Das ist kein harter
|
|
Schutz gegen abweichende Clientparameter.
|
|
- In Hermes bekommt der lokale Custom-Provider `extra_body.max_tokens: 2048`,
|
|
`t_max_predict_ms: 540000` und ein Request-Timeout von 600 Sekunden. Der native
|
|
Generierungszeitgeber von llama.cpp prüft nur bei Zeilenumbrüchen und ersetzt
|
|
deshalb keine unabhängige Überwachung. `agent.run_budget_seconds: 1800` begrenzt
|
|
einen ganzen Auftrag einschließlich mehrerer Modellaufrufe und Wiederholungen.
|
|
- `hermes-stack-llama-watchdog.timer` prüft alle 15 Sekunden `/slots`. Bleibt
|
|
dieselbe Anfrage 600 Sekunden beobachtet aktiv oder überschreitet sie 2048
|
|
Tokens, startet die Überwachung den Hauptmodellserver neu. Dieses letzte
|
|
Auffangnetz hat eine Verzögerung von bis zu einem Prüfintervall nach erstmaliger
|
|
Beobachtung. Die Tokenzahl kann zwischen zwei Prüfungen überschritten werden.
|
|
|
|
Der Watchdog startet keine absichtlich gestoppten Dienste. Einzelne fehlgeschlagene
|
|
Proben führen nicht zum Neustart; erst 600 Sekunden zusammenhängende Fehler bei
|
|
demselben aktiven Server. Wartung, Modellwechsel und Updater verwenden dieselbe
|
|
Sperre. Neustarts haben mindestens 600 Sekunden Abstand. Ein Bootwechsel setzt
|
|
monotone Zeitstempel zurück. Der Status speichert keine Prompts oder Antworten;
|
|
Diagnosen stehen ausschließlich im lokalen Journal, ohne Chatbenachrichtigung.
|
|
|
|
Die Grenzen stehen in `config.env` (Watchdog), `llama.env` (Serverstandard) und
|
|
`~/.hermes/config.yaml` (Hermes). Bei Änderungen diese Werte gemeinsam pflegen.
|
|
Grenzen gelten pro Hauptmodell; das CPU-Kompressionsmodell bleibt getrennt.
|
|
|
|
## Prüfung und Rücknahme
|
|
|
|
```
|
|
systemctl --user status hermes-stack-llama-watchdog.timer
|
|
journalctl --user -u hermes-stack-llama-watchdog.service
|
|
cat ~/.local/state/hermes-stack-maintenance/llama-watchdog.json
|
|
```
|
|
|
|
Die Bereitstellung sichert vorherige Konfigurationen unter
|
|
`~/.local/state/hermes-stack-maintenance/inference-limits-*`. Ein Rückwechsel
|
|
auf `large` behält die Schutzmaßnahmen bei. Zum vollständigen Rückbau Timer
|
|
deaktivieren, die gesicherten Konfigurationen wiederherstellen und Modellserver
|
|
sowie Gateway neu starten. Cronjob-Modellbindungen sind über `hermes cron edit
|
|
JOB_ID --model MODELL --provider custom` wiederherstellbar.
|
|
|
|
Quellen: [llama.cpp Serverparameter](https://github.com/ggml-org/llama.cpp/blob/master/tools/server/README.md),
|
|
[Qwen3.5-4B](https://huggingface.co/Qwen/Qwen3.5-4B),
|
|
[verwendete GGUF-Dateien](https://huggingface.co/unsloth/Qwen3.5-4B-GGUF/tree/e87f176479d0855a907a41277aca2f8ee7a09523).
|