173 lines
5.8 KiB
Markdown
173 lines
5.8 KiB
Markdown
# Aktueller produktiver Referenzstand
|
||
|
||
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
|
||
|
||
| Bereich | Referenz |
|
||
|---|---|
|
||
| Betriebssystem | Debian 13 `trixie` |
|
||
| Kernel | 6.12.101+deb13-amd64 |
|
||
| CPU | AMD Ryzen 5 5600, 6 Kerne/12 Threads |
|
||
| RAM | 48 GiB DDR4-2666 |
|
||
| 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 | WD Blue SN580 1 TB, unter `/data` |
|
||
|
||
Die früher verwendete Radeon RX 470 ist ausgebaut und gehört nicht zur
|
||
Zielplattform.
|
||
|
||
## Produktiver Text-Stack
|
||
|
||
| Eigenschaft | Aktueller Wert |
|
||
|---|---|
|
||
| Runtime | llama.cpp |
|
||
| Repository | `https://github.com/ggml-org/llama.cpp.git` |
|
||
| Commit | `4df29be4f4c3673f428170fda944a5b19f743bb8` |
|
||
| Compiler | GCC 14.2 |
|
||
| 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 Standardprofil
|
||
|
||
- 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 drei Tokens
|
||
- sechs Threads und sechs Batch-Threads
|
||
- Batch 64, Micro-Batch 32
|
||
- ein paralleler Slot
|
||
- Jinja und automatisches Reasoning
|
||
- Temperatur 0,2, Top-p 0,8, Top-k 20
|
||
|
||
### Profile
|
||
|
||
| Profil | Virtuelles Modell | Kontext | Besonderheit |
|
||
|---|---|---:|---|
|
||
| Fast | `qwen-fast` | 76.800 | IQ4-MIX, MTP2, Text auf RTX 5080, mmproj auf RTX 3060 |
|
||
| Medium **(Standard)** | `qwen-medium` | 160.000 | IQ4_XS Pure, MTP3, beide GPUs 90:10, mmproj auf RTX 3060 |
|
||
| Large | `qwen-large` | 192.000 | IQ4_XS Pure, MTP3, beide GPUs 86:14, mmproj auf RTX 3060 |
|
||
| 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
|
||
|
||
- Container: `mike-ai-router`
|
||
- Port: 8081
|
||
- Upstream: `llama-upstream:8080` im internen Inferenznetz
|
||
- Commit des Plattform-Repositories: siehe jeweils aktuelles `main`
|
||
- Umschaltung: `mike-ai-profile-controller` mit fester Container-Allowlist
|
||
- Timeout für Profilwechsel und Requests: 600 Sekunden
|
||
|
||
Der Router übernimmt:
|
||
|
||
- OpenAI-kompatibles Chat-Proxying und Streaming
|
||
- virtuelle Modelle und automatische Profilumschaltung
|
||
- Tool Calls
|
||
- 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)
|
||
- Zustands- und Modellendpunkte
|
||
|
||
## Vision
|
||
|
||
| Bereich | Referenz |
|
||
|---|---|
|
||
| Text-/Visionmodell | jeweils aktives Qwen3.8-27B-Profil |
|
||
| Projektor | BF16-mmproj |
|
||
| Speicherort des Projektors | RTX 3060 (`MTMD_BACKEND_DEVICE=CUDA1`) |
|
||
| Kontext | entspricht Fast/Medium/Large; Ultra ist bewusst text-only |
|
||
|
||
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
|
||
|
||
- Modell: FLUX.2 Klein 4B Distilled, Apache-2.0
|
||
- Runtime: eigener PyTorch-2.11/CUDA-12.8-/Diffusers-0.40-Container
|
||
- fest auf vier Schritte und Guidance 1,0 destilliert
|
||
- Worker läuft ausschließlich auf der RTX 5080 und ist im Normalbetrieb gestoppt
|
||
- der Controller beendet Qwen vor dem Job; Bildprompts bleiben im internen Netz
|
||
- Worker wird nach jedem Job vollständig beendet
|
||
- Qwen wird anschließend mit exakt dem vorherigen Profil wiederhergestellt
|
||
- gemessene reine Bildgenerierung bei 1024 × 1024: 11,67 bis 14,59 Sekunden
|
||
- gemessener kompletter Hot-Swap einschließlich Qwen-Wiederherstellung: etwa 31 Sekunden
|
||
- OpenWebUI ist global auf den OpenAI-kompatiblen Router-Endpunkt, vier Schritte
|
||
und 1024 × 1024 Pixel vorkonfiguriert
|
||
|
||
## Sprache
|
||
|
||
### Whisper
|
||
|
||
- Modell: large-v3-turbo
|
||
- lokale Standardsprache: Deutsch
|
||
- CPU-Ausführung
|
||
- acht Threads im produktiven Worker
|
||
- Port 8084, nur localhost
|
||
- ffmpeg für Eingabeumwandlung
|
||
|
||
### XTTS
|
||
|
||
Dieser Abschnitt beschreibt ausschließlich den alten Referenzhost. Im neuen
|
||
Docker-Zielsystem ersetzt Piper (`de_DE-thorsten-high`) diesen Dienst.
|
||
|
||
- Modell: Coqui XTTS-v2
|
||
- CPU-only
|
||
- Stimme: `claribel`
|
||
- Deutsch und Englisch
|
||
- Port 8085, auf dem alten Host noch im LAN gebunden
|
||
- eigenes Python-3.11-Venv
|
||
|
||
## Websuche
|
||
|
||
- Docker Compose
|
||
- SearXNG, per Digest gepinnt
|
||
- TinySearch 0.5.1, per Digest gepinnt
|
||
- TinySearch nur auf `127.0.0.1:8000`
|
||
- lokale ONNX-Embeddings
|
||
- kompakte Web-MCP-Fassade mit vier Werkzeugen
|
||
- strukturierte API-Pfade für GitHub und Hugging Face
|
||
|
||
## MCP-Referenz
|
||
|
||
Aktuell existieren funktionale Adapter für:
|
||
|
||
- Websuche
|
||
- Home Assistant
|
||
- Sonarr/Radarr
|
||
- Unraid read-only
|
||
- eigener Unraid-Administrationsserver
|
||
|
||
Der frühere allgemeine Shell-MCP und doppelte, schreibende Werkzeuge gehören
|
||
nicht zum Sicherheitsziel und werden nicht ungeprüft wiederhergestellt.
|
||
|
||
## Bekannte Probleme des alten Hosts
|
||
|
||
- Systempartition vollständig gefüllt
|
||
- Datenpartition nahezu vollständig gefüllt
|
||
- etwa 1,27 TB Modelle, darunter Duplikate
|
||
- mehrere alte llama.cpp-Builds
|
||
- RX-Dienste trotz ausgebauter Karte
|
||
- aktivierte Benchmark-/Race-Dienste
|
||
- alte systemd-Overrides und Sicherungskopien
|
||
- unvollständiger großer Modelldownload
|
||
- zu viele MCP-Werkzeuge gleichzeitig im Kontext
|
||
|
||
Diese Punkte erklären den Neuaufbau, sind aber keine Bestandteile der neuen
|
||
Plattform.
|
||
|
||
Zusätzliche bekannte Sicherheitsabweichung: llama.cpp auf Port 8080 und XTTS
|
||
auf Port 8085 sind im alten Zustand breiter gebunden als im Zielsystem. Beim
|
||
Neuaufbau werden beide auf localhost begrenzt; Clients verwenden ausschließlich
|
||
den Router auf Port 8081.
|