Define four-profile production matrix with Medium default
This commit is contained in:
1 parent
977f8f5c76
commit
41b9c17f0f
33 files changed
+237
-160
No files matched your search
@@ -20,7 +20,7 @@ Heimnetz / VPN-Clients
|
||||
+-- Profile Controller -- Docker Socket (feste Allowlist)
|
||||
+-- llama-fast --\
|
||||
+-- llama-medium > exakt einer aktiv
|
||||
+-- llama-long --/
|
||||
+-- llama-large --/
|
||||
+-- llama-experimental
|
||||
+-- llama-ultra (256K, text-only, dual GPU)
|
||||
+-- Piper-TTS (CPU, nur intern)
|
||||
@@ -44,8 +44,8 @@ Heimnetz / VPN-Clients
|
||||
| SearXNG/TinySearch | nein | Suchbackend des Web-MCP |
|
||||
|
||||
Nur der Profile Controller erhält den Docker-Socket. Der Router erhält weder
|
||||
Socket noch Shell-Zugriff und kann dem Controller nur `fast`, `medium`, `long`
|
||||
oder `experimental` übergeben. Die llama-Container laufen ohne UI,
|
||||
Socket noch Shell-Zugriff und kann dem Controller nur `fast`, `medium`, `large`,
|
||||
`ultra` oder `experimental` übergeben. Die llama-Container laufen ohne UI,
|
||||
Capabilities und Schreibzugriff auf die Modelldateien.
|
||||
|
||||
## Profilprinzip
|
||||
@@ -60,13 +60,13 @@ halten.
|
||||
| Profil | Ausgangswert | Zweck |
|
||||
|---|---:|---|
|
||||
| fast | 76.800 Kontext, MTP | mindestens ungefähr 80 Token/s anstreben |
|
||||
| medium | 94.208 Kontext | mehr Kontext ohne CPU-FFN-Offload |
|
||||
| long | 131.072 Kontext | maximale Nutzbarkeit, CPU-Offload erlaubt |
|
||||
| medium | 160.000 Kontext, Pure, 90:10, MTP3 | Standardprofil |
|
||||
| large | 192.000 Kontext, Pure, 86:14, MTP3 | große Agenten-/MCP-Sitzungen |
|
||||
| ultra | 262.144 Kontext, Pure, 80:20, MTP2 | maximaler Textkontext |
|
||||
| experimental | 76.800 Kontext | isolierte Tests ohne Produktion zu ändern |
|
||||
|
||||
Diese Werte sind reproduzierbare Startwerte, keine Garantie. Nach Einbau der
|
||||
RTX 3060 werden sie auf dem Zielhost erneut gemessen. Die zweite Karte wird
|
||||
nicht automatisch in die Produktionsprofile aufgenommen.
|
||||
Diese Matrix wurde auf RTX 5080 und RTX 3060 gemessen und ist bis zu einer
|
||||
bewussten Neubewertung der verbindliche Produktionsstandard.
|
||||
|
||||
## Netzwerk
|
||||
|
||||
|
||||
@@ -1,5 +1,9 @@
|
||||
# Athena-Leerhostaufbau – Praxisprotokoll
|
||||
|
||||
> Dieses Dokument ist ein chronologisches Aufbauprotokoll. Darin genannte alte
|
||||
> Profilnamen und Kontextwerte sind keine aktuelle Konfiguration. Seit dem
|
||||
> 22. August 2026 gilt `STANDARD_PROFILE_MATRIX.md`.
|
||||
|
||||
Dieses Protokoll hält die Abweichungen fest, die beim realen Neuaufbau auf
|
||||
einem frischen Debian-13-Host sichtbar wurden. Jede dauerhaft notwendige
|
||||
Korrektur muss zusätzlich im Installer, Restore-Skript oder in der regulären
|
||||
|
||||
+23
-24
@@ -1,8 +1,8 @@
|
||||
# Aktueller produktiver Referenzstand
|
||||
|
||||
Stand: 20. August 2026. Dieses Dokument beschreibt die funktionierende
|
||||
Referenz vor dem geplanten Neuaufbau. Es ist keine Empfehlung, jede Altlast des
|
||||
Hosts zu übernehmen.
|
||||
Stand: 22. August 2026. Dieses Dokument beschreibt die auf Athena installierte
|
||||
und geprüfte Docker-Referenz. Die verbindlichen Profilparameter stehen in
|
||||
`STANDARD_PROFILE_MATRIX.md`.
|
||||
|
||||
## Hardware und Betriebssystem
|
||||
|
||||
@@ -12,10 +12,10 @@ Hosts zu übernehmen.
|
||||
| Kernel | 6.12.101+deb13-amd64 |
|
||||
| CPU | AMD Ryzen 5 5600, 6 Kerne/12 Threads |
|
||||
| RAM | 48 GiB DDR4-2666 |
|
||||
| GPU | NVIDIA GeForce RTX 5080, 16 GiB VRAM |
|
||||
| GPUs | NVIDIA GeForce RTX 5080, 16 GiB + RTX 3060, 12 GiB VRAM |
|
||||
| NVIDIA-Treiber | 610.57.04 |
|
||||
| System-SSD | Samsung 980 PRO 1 TB |
|
||||
| Daten-SSD | Samsung 980 PRO 2 TB |
|
||||
| Daten-SSD | WD Blue SN580 1 TB, unter `/data` |
|
||||
|
||||
Die früher verwendete Radeon RX 470 ist ausgebaut und gehört nicht zur
|
||||
Zielplattform.
|
||||
@@ -28,23 +28,22 @@ Zielplattform.
|
||||
| Repository | `https://github.com/ggml-org/llama.cpp.git` |
|
||||
| Commit | `4df29be4f4c3673f428170fda944a5b19f743bb8` |
|
||||
| Compiler | GCC 14.2 |
|
||||
| Hauptdienst | `mike-ai-llama-ui.service` |
|
||||
| llama.cpp-Port | 8080, auf dem alten Host noch im LAN gebunden |
|
||||
| Hauptdienst | jeweils ein Container `mike-ai-llama-<profil>` |
|
||||
| llama.cpp-Port | 8080, ausschließlich im internen Docker-Netz |
|
||||
| Client-Port | 8081 über den Router |
|
||||
| MCP-Konfiguration | getrennte Container unter `/opt/mike-ai/mcp-containers` |
|
||||
|
||||
### Aktives Fast-Profil
|
||||
### Aktives Standardprofil
|
||||
|
||||
- Qwen3.8-27B IQ4-MIX
|
||||
- Dateigröße: 14.111.614.400 Bytes
|
||||
- SHA256: `54879ae8738d5938f46cb3b8cbf16bf42b8c85b7d68d7c73f062b612ec183e36`
|
||||
- Öffentliche Herkunft ist noch nicht ausreichend dokumentiert; für eine
|
||||
bitgenaue Migration muss die geprüfte Datei vom Referenzhost gesichert werden.
|
||||
- Kontext 76.800
|
||||
- vollständig auf CUDA0
|
||||
- Qwen3.8-27B IQ4_XS Pure
|
||||
- Dateigröße: 14.534.384.640 Bytes
|
||||
- SHA256: `ea5a3c45d407f9b9e5d2c0d647f0ea600f486f6b86b92b56d0823ba073dae675`
|
||||
- Quelle: `jpetrina/Qwen3.8-27B-IQ4_XS-pure-GGUF`
|
||||
- Kontext 160.000
|
||||
- RTX 5080 + RTX 3060 im Verhältnis 90:10
|
||||
- Flash Attention
|
||||
- KV-Cache Q4_0 für K und V
|
||||
- MTP Draft, maximal zwei Tokens
|
||||
- MTP Draft, maximal drei Tokens
|
||||
- sechs Threads und sechs Batch-Threads
|
||||
- Batch 64, Micro-Batch 32
|
||||
- ein paralleler Slot
|
||||
@@ -56,17 +55,17 @@ Zielplattform.
|
||||
| Profil | Virtuelles Modell | Kontext | Besonderheit |
|
||||
|---|---|---:|---|
|
||||
| Fast | `qwen-fast` | 76.800 | IQ4-MIX, MTP2, vollständig GPU, CPU-mmproj |
|
||||
| Medium | `qwen-medium` | 94.208 | IQ4_XS Pure, ohne MTP, CPU-mmproj |
|
||||
| Long | `qwen-long` | 131.072 | IQ4-MIX, MTP2, FFN 0–11 auf CPU, CPU-mmproj |
|
||||
| Medium **(Standard)** | `qwen-medium` | 160.000 | IQ4_XS Pure, MTP3, beide GPUs 90:10, CPU-mmproj |
|
||||
| Large | `qwen-large` | 192.000 | IQ4_XS Pure, MTP3, beide GPUs 86:14, CPU-mmproj |
|
||||
| Ultra | `qwen-ultra` | 262.144 | IQ4_XS Pure, MTP2, beide GPUs 80:20, text-only; 68,2 Tok/s und 220K-Fülltest bestanden |
|
||||
|
||||
## Router
|
||||
|
||||
- Dienst: `mike-ai-profile-router.service`
|
||||
- Container: `mike-ai-router`
|
||||
- Port: 8081
|
||||
- Upstream: `127.0.0.1:8080`
|
||||
- Upstream: `llama-upstream:8080` im internen Inferenznetz
|
||||
- Commit des Plattform-Repositories: siehe jeweils aktuelles `main`
|
||||
- Umschaltskript: `/usr/local/bin/llama-profile`
|
||||
- Umschaltung: `mike-ai-profile-controller` mit fester Container-Allowlist
|
||||
- Timeout für Profilwechsel und Requests: 600 Sekunden
|
||||
|
||||
Der Router übernimmt:
|
||||
@@ -74,7 +73,7 @@ Der Router übernimmt:
|
||||
- OpenAI-kompatibles Chat-Proxying und Streaming
|
||||
- virtuelle Modelle und automatische Profilumschaltung
|
||||
- Tool Calls
|
||||
- direkte integrierte Vision in allen Qwen-Profilen
|
||||
- direkte integrierte Vision in Fast, Medium und Large
|
||||
- FLUX-Hotswap zur Bildgenerierung
|
||||
- Whisper Speech-to-Text
|
||||
- XTTS Text-to-Speech (historische Referenz; Zielsystem verwendet Piper)
|
||||
@@ -87,9 +86,9 @@ Der Router übernimmt:
|
||||
| Text-/Visionmodell | jeweils aktives Qwen3.8-27B-Profil |
|
||||
| Projektor | BF16-mmproj |
|
||||
| Speicherort des Projektors | System-RAM (`--no-mmproj-offload`) |
|
||||
| Kontext | entspricht Fast/Medium/Long |
|
||||
| Kontext | entspricht Fast/Medium/Large; Ultra ist bewusst text-only |
|
||||
|
||||
Vision ist Bestandteil jedes Profils. Der Router prüft Bildgröße und URL,
|
||||
Vision ist Bestandteil von Fast, Medium und Large. Der Router prüft Bildgröße und URL,
|
||||
leitet das Bild dann direkt weiter und führt keinen Modellwechsel mehr aus.
|
||||
|
||||
## Bildgenerierung
|
||||
|
||||
@@ -37,7 +37,7 @@ laufen, sondern alle fachlichen Funktionen geprüft wurden.
|
||||
- [ ] Router-Key erscheint weder im Upstream noch im Journal
|
||||
- [ ] `/status` meldet den richtigen Upstream
|
||||
- [ ] `/v1/models` liefert drei virtuelle Modelle
|
||||
- [ ] `/fast`, `/medium` und `/long` wechseln zuverlässig
|
||||
- [ ] `/fast`, `/medium`, `/large` und `/ultra` wechseln zuverlässig
|
||||
- [ ] automatischer Wechsel über virtuellen Modellnamen funktioniert
|
||||
- [ ] paralleler Wechsel wird sauber gesperrt
|
||||
- [ ] Streaming funktioniert
|
||||
|
||||
+8
-8
@@ -36,8 +36,9 @@ Folgefragen (`task.follow_up.enable=false`). Dieselbe Vorgabe steht zusätzlich
|
||||
als Container-Umgebungswert im Compose-Stack, damit bereits eine frische
|
||||
OpenWebUI-Datenbank ohne Folgefragen startet.
|
||||
|
||||
Der Stabilitätsschutz kennt die drei Profilgrenzen 76.800, 94.208 und 131.072
|
||||
Token. Er reserviert Ausgabetoken und greift vor der harten llama.cpp-Grenze
|
||||
Der Stabilitätsschutz kennt die vier Profilgrenzen 76.800, 160.000, 192.000
|
||||
und 262.144 Token. Für unbekannte Modelle gilt Medium (160.000) als sichere
|
||||
Vorgabe. Er reserviert Ausgabetoken und greift vor der harten llama.cpp-Grenze
|
||||
ein. Bilder bleiben unangetastet; JSON-Werkzeugschemas werden niemals
|
||||
abgeschnitten. Sind allein die ausgewählten Schemas zu groß, wird der
|
||||
Werkzeugzugriff nur für diesen Schritt deaktiviert und das Modell erhält eine
|
||||
@@ -72,15 +73,14 @@ Community Store nachgeladen.
|
||||
| Profil | Virtuelles Modell | Kontext | Zweck |
|
||||
|---|---|---:|---|
|
||||
| Fast | `qwen-fast` | 76.800 | Alltag, Agenten, hohe Geschwindigkeit, integrierte Vision |
|
||||
| Medium | `qwen-medium` | 94.208 | mehr Kontext, reine IQ4_XS-Variante |
|
||||
| Long | `qwen-long` | 131.072 | lange Hermes-/MCP-Sitzungen |
|
||||
| Medium **(Standard)** | `qwen-medium` | 160.000 | IQ4_XS Pure, beide GPUs 90:10, MTP3, integrierte Vision |
|
||||
| Large | `qwen-large` | 192.000 | IQ4_XS Pure, beide GPUs 86:14, MTP3, integrierte Vision |
|
||||
| Ultra | `qwen-ultra` | 262.144 | maximaler Textkontext, IQ4_XS Pure auf RTX 5080 + RTX 3060 (80:20), ohne Vision-Projektor |
|
||||
|
||||
Manuell wird mit `llama-profile fast|medium|long|ultra` gewechselt. Über HTTP stehen
|
||||
`POST /fast`, `/medium`, `/long` und `/ultra` zur Verfügung. Ultra erreichte im
|
||||
Manuell wird mit `llama-profile fast|medium|large|ultra` gewechselt. Über HTTP stehen
|
||||
`POST /fast`, `/medium`, `/large` und `/ultra` zur Verfügung. Ultra erreichte im
|
||||
Referenzlauf etwa 68 Token/s; ein Prompt-Fülltest mit rund 220.000 Tokens war
|
||||
erfolgreich. Für eine spätere Version ist
|
||||
`large` als Alias für `long` vorgesehen; bestehende Namen bleiben kompatibel.
|
||||
erfolgreich. Medium ist das Start- und Standardprofil.
|
||||
|
||||
## Clients
|
||||
|
||||
|
||||
@@ -1,5 +1,9 @@
|
||||
# Router V2 – Migration und Kompatibilität
|
||||
|
||||
> Historischer Stand: Die damalige Bezeichnung `long` wurde am 22. August
|
||||
> 2026 durch `large` ersetzt und um `ultra` ergänzt. Für den aktuellen Betrieb
|
||||
> gilt ausschließlich `STANDARD_PROFILE_MATRIX.md`.
|
||||
|
||||
## Ergebnis
|
||||
|
||||
V2 behält die OpenAI-kompatible Basis-URL und die virtuellen Modelle
|
||||
|
||||
@@ -0,0 +1,33 @@
|
||||
# Verbindliche Standard-Profilmatrix
|
||||
|
||||
Stand: 22. August 2026. Diese vier Profile sind die Produktionsmatrix für
|
||||
Athena. Änderungen gelten erst nach einem vergleichbaren synthetischen Test
|
||||
und einer bewussten Aktualisierung dieser Datei.
|
||||
|
||||
| Profil | Virtuelles Modell | GGUF | Kontext | GPUs / Split | MTP | Vision | gemessene kurze Ausgabe |
|
||||
|---|---|---|---:|---|---:|---|---:|
|
||||
| Fast | `qwen-fast` | IQ4-MIX | 76.800 | RTX 5080 | 2 | ja, Projektor auf CPU | 85,5 Tok/s |
|
||||
| **Medium (Default)** | `qwen-medium` | IQ4_XS Pure | 160.000 | RTX 5080 + RTX 3060, 90:10 | 3 | ja, Projektor auf CPU | 77,2 Tok/s |
|
||||
| Large | `qwen-large` | IQ4_XS Pure | 192.000 | RTX 5080 + RTX 3060, 86:14 | 3 | ja, Projektor auf CPU | 75,3 Tok/s |
|
||||
| Ultra | `qwen-ultra` | IQ4_XS Pure | 262.144 | RTX 5080 + RTX 3060, 80:20 | 2 | nein, text-only | 68,2 Tok/s |
|
||||
|
||||
## Standardverhalten
|
||||
|
||||
- Medium ist nach Neuinstallation und bewusstem Plattformstart das aktive
|
||||
Standardprofil.
|
||||
- Open WebUI erhält `qwen-medium` als Standardmodell.
|
||||
- Ein explizit gewähltes anderes Modell löst den zugehörigen Containerwechsel
|
||||
aus; es ist immer nur ein Inferenzcontainer aktiv.
|
||||
- Ultra reserviert den verfügbaren Speicher für nativen 256K-Textkontext und
|
||||
lädt deshalb keinen Vision-Projektor.
|
||||
- Das gesonderte Experimentalprofil gehört nicht zur Benutzer-Matrix und wird
|
||||
in Open WebUI nicht als reguläres Modell angeboten.
|
||||
|
||||
## Nachweise
|
||||
|
||||
- Fast 76,8K: synthetischer Referenzlauf, 85,50 Tok/s.
|
||||
- Medium 160K: Pure 90:10 mit MTP3, 77,22 Tok/s.
|
||||
- Large 192K: Pure 86:14 mit MTP3, 75,28 Tok/s.
|
||||
- Ultra 256K: Pure 80:20 mit MTP2, 68,19 Tok/s; 220.190 Tokens
|
||||
erfolgreich verarbeitet und Sentinel korrekt wiedergefunden.
|
||||
|
||||
Reference in new issue
Block a user