docs: reconcile Athena overview with verified live deployment
This commit is contained in:
@@ -1,5 +1,12 @@
|
|||||||
# Athena – Betriebsanleitung
|
# Athena – Betriebsanleitung
|
||||||
|
|
||||||
|
Stand: **12. September 2026**, auf Athena geprüft. Produktiv läuft
|
||||||
|
**llama.cpp b10930** (`56381e407c0ccfb3a6f71e668a27a901001d22ce`).
|
||||||
|
Der [geprüfte Live-Stand](docs/LIVE_STATE.md) beschreibt Profile, GPUs und die
|
||||||
|
Abweichung zwischen dem bereitgestellten Stack und dem Git-Checkout.
|
||||||
|
Der [Updatebericht](docs/LLAMA_B10930_UPDATE_20260912.md) enthält Tests und Rückfallstand.
|
||||||
|
|
||||||
|
|
||||||
Diese Datei ist der kurze, verbindliche Einstieg für Menschen und Agenten.
|
Diese Datei ist der kurze, verbindliche Einstieg für Menschen und Agenten.
|
||||||
|
|
||||||
## Rolle
|
## Rolle
|
||||||
@@ -10,8 +17,8 @@ Sie betreibt:
|
|||||||
|
|
||||||
- llama.cpp mit genau einem aktiven Qwen-Profil,
|
- llama.cpp mit genau einem aktiven Qwen-Profil,
|
||||||
- den OpenAI-kompatiblen Profile Router,
|
- den OpenAI-kompatiblen Profile Router,
|
||||||
- FLUX.2-klein-4B für Textbilder und Referenzbild-Bearbeitung,
|
- FLUX.2 Klein 9B FP8 Beta für Textbilder und Referenzbild-Bearbeitung,
|
||||||
- Qwen3-TTS und Piper für Sprache,
|
- Qwen3-TTS und TTS-Gateway für Sprache,
|
||||||
- das Athena-Dashboard,
|
- das Athena-Dashboard,
|
||||||
- Portainer CE als optionale Ansicht auf die laufenden Docker-Container,
|
- Portainer CE als optionale Ansicht auf die laufenden Docker-Container,
|
||||||
- WireGuard-Gateway und Datenbackup,
|
- WireGuard-Gateway und Datenbackup,
|
||||||
@@ -31,7 +38,7 @@ werden keine zweiten Instanzen dieser Dienste angelegt.
|
|||||||
| `/etc/mike-ai` | lokale Konfiguration und Secrets, niemals Git |
|
| `/etc/mike-ai` | lokale Konfiguration und Secrets, niemals Git |
|
||||||
|
|
||||||
Portainer läuft als separater, optionaler Verwaltungscontainer
|
Portainer läuft als separater, optionaler Verwaltungscontainer
|
||||||
`mike-ai-portainer`, teilt den Netzwerk-Namespace des WireGuard-Gateways und
|
`mike-ai-portainer`, hat einen eigenen Netzwerk-Namespace im Netz `mike-ai_frontend` und
|
||||||
ist unter `https://192.168.1.212:9443` erreichbar. Seine Einstellungen liegen
|
ist unter `https://192.168.1.212:9443` erreichbar. Seine Einstellungen liegen
|
||||||
im Docker-Volume `portainer_data`, das vom Athena-Backup mitgesichert wird.
|
im Docker-Volume `portainer_data`, das vom Athena-Backup mitgesichert wird.
|
||||||
Portainer beobachtet beziehungsweise
|
Portainer beobachtet beziehungsweise
|
||||||
@@ -56,12 +63,13 @@ Qwen-Profil wird vom Profile Controller verwaltet.
|
|||||||
- Fast: kurze, interaktive Aufgaben
|
- Fast: kurze, interaktive Aufgaben
|
||||||
- Medium/Large/Ultra: steigende Kontextgrößen desselben lokalen Qwen-Modells
|
- Medium/Large/Ultra: steigende Kontextgrößen desselben lokalen Qwen-Modells
|
||||||
- Uncensored: separates lokales Profil
|
- Uncensored: separates lokales Profil
|
||||||
- FLUX.2-klein-4B: Bildgenerierung und Editing; Qwen wird dafür kurz entladen und danach
|
- FLUX.2 Klein 9B FP8 Beta: Bildgenerierung und Editing; Qwen wird dafür kurz entladen und danach
|
||||||
automatisch wiederhergestellt
|
automatisch wiederhergestellt
|
||||||
- Qwen3-TTS 1.7B: RTX 3060; Piper bleibt CPU-Fallback
|
- Qwen3-TTS 1.7B: RTX 3060; kein Piper-Fallback
|
||||||
|
|
||||||
Die verbindlichen Werte stehen in `config/profile-matrix.json` und
|
Die geprüften Live-Werte stehen in [docs/LIVE_STATE.md](docs/LIVE_STATE.md).
|
||||||
`docs/STANDARD_PROFILE_MATRIX.md`.
|
`config/profile-matrix.json` und `docs/STANDARD_PROFILE_MATRIX.md` im Repository
|
||||||
|
enthalten zusätzlich `beta1`, das auf Athena nicht installiert ist.
|
||||||
|
|
||||||
## Globale Modellrichtlinie
|
## Globale Modellrichtlinie
|
||||||
|
|
||||||
@@ -82,8 +90,10 @@ eingebaut.
|
|||||||
|
|
||||||
## Sicherheitsgrenze
|
## Sicherheitsgrenze
|
||||||
|
|
||||||
Ohne ausdrücklichen aktuellen Auftrag niemals Shutdown, Reboot, Kernel,
|
**Athena niemals herunterfahren oder neu starten. Die Erreichbarkeit darf
|
||||||
Bootloader, Partitionen, Mounts, SSH, LAN, WireGuard oder Firewall ändern.
|
nicht gefährdet werden.** Keine Änderungen an Host, Treibern, SSH, LAN oder
|
||||||
|
WireGuard im Rahmen eines Modell- oder Dokumentationsupdates.
|
||||||
|
Verbindlich sind die [Remote-Host-Regeln](docs/REMOTE_HOST_RULES.md).
|
||||||
Secrets dürfen lokal verwendet, aber nie in Git, Logs oder Chatantworten
|
Secrets dürfen lokal verwendet, aber nie in Git, Logs oder Chatantworten
|
||||||
veröffentlicht werden.
|
veröffentlicht werden.
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,13 @@
|
|||||||
# Athena AI
|
# Athena AI
|
||||||
|
|
||||||
Athena ist die lokale Inferenzmaschine. Der reproduzierbare Docker-Stack stellt
|
Stand: **12. September 2026**, auf Athena geprüft. Produktiv läuft
|
||||||
|
**llama.cpp b10930** (`56381e407c0ccfb3a6f71e668a27a901001d22ce`).
|
||||||
|
Der [geprüfte Live-Stand](docs/LIVE_STATE.md) beschreibt Profile, GPUs und die
|
||||||
|
Abweichung zwischen dem bereitgestellten Stack und dem Git-Checkout.
|
||||||
|
Der [Updatebericht](docs/LLAMA_B10930_UPDATE_20260912.md) enthält Tests und Rückfallstand.
|
||||||
|
|
||||||
|
|
||||||
|
Athena ist die lokale Inferenzmaschine. Der Docker-Stack stellt
|
||||||
Qwen über eine kleine OpenAI-kompatible Router-API bereit und übernimmt lokale
|
Qwen über eine kleine OpenAI-kompatible Router-API bereit und übernimmt lokale
|
||||||
Bild- und Sprachausgabe. **Hermes und die Fach-MCPs laufen auf Unraid.**
|
Bild- und Sprachausgabe. **Hermes und die Fach-MCPs laufen auf Unraid.**
|
||||||
|
|
||||||
@@ -10,9 +17,9 @@ Bild- und Sprachausgabe. **Hermes und die Fach-MCPs laufen auf Unraid.**
|
|||||||
|
|
||||||
- genau ein aktives llama.cpp-Profil: Fast, Medium, Large, Ultra oder Uncensored
|
- genau ein aktives llama.cpp-Profil: Fast, Medium, Large, Ultra oder Uncensored
|
||||||
- Profile Router auf Port 8081
|
- Profile Router auf Port 8081
|
||||||
- FLUX.2-klein-4B für Textbilder und Referenzbild-Bearbeitung auf der RTX 5080
|
- FLUX.2 Klein 9B FP8 Beta: Transformer/VAE auf RTX 5080, Textencoder auf RTX 3060
|
||||||
- Qwen3-TTS 1.7B auf der RTX 3060 mit Piper als CPU-Fallback
|
- Qwen3-TTS 1.7B auf der RTX 3060 hinter dem TTS-Gateway; kein Piper-Fallback
|
||||||
- Whisper.cpp `large-v3-turbo` auf der CPU für lokale deutsche Spracherkennung
|
- Whisper.cpp `small` auf der CPU für lokale deutsche Spracherkennung
|
||||||
- Live-Dashboard mit 21 Tagen Detailhistorie auf Port 8099
|
- Live-Dashboard mit 21 Tagen Detailhistorie auf Port 8099
|
||||||
- Portainer CE als optionale Container-Ansicht auf Port 9443
|
- Portainer CE als optionale Container-Ansicht auf Port 9443
|
||||||
- WireGuard-Gateway, Datenbackup und Athena-Operator
|
- WireGuard-Gateway, Datenbackup und Athena-Operator
|
||||||
@@ -33,14 +40,19 @@ ist nicht mehr Bestandteil der produktiven Architektur.
|
|||||||
## Verifizierte Bildauflösung auf dem Live-System
|
## Verifizierte Bildauflösung auf dem Live-System
|
||||||
|
|
||||||
Der am 12. September geprüfte Live-Worker verwendet **FLUX.2 Klein 9B FP8
|
Der am 12. September geprüfte Live-Worker verwendet **FLUX.2 Klein 9B FP8
|
||||||
Beta** und weicht damit vom oben beschriebenen 4B-Stand ab. Im Auflösungstest
|
Beta**. Die frühere 4B-Angabe war veraltet. Im Auflösungstest
|
||||||
war **1024 × 1024 erfolgreich**, während **1280 × 1280 einen CUDA-OOM** auf
|
war **1024 × 1024 erfolgreich**, während **1280 × 1280 einen CUDA-OOM** auf
|
||||||
der RTX 5080 auslöste. Höhere Auflösungen sind damit nicht freigegeben;
|
der RTX 5080 auslöste. Höhere Auflösungen sind damit nicht freigegeben;
|
||||||
Zwischenwerte wurden nicht getestet. Die produktive 1024-Begrenzung bleibt
|
Zwischenwerte wurden nicht getestet. Die produktive 1024-Begrenzung bleibt
|
||||||
bestehen. Messwerte, Testbedingungen und die Korrektur früherer optimistischer
|
bestehen. Messwerte, Testbedingungen und die Korrektur früherer optimistischer
|
||||||
Schätzungen stehen in [Auflösungstest vom 12. September](docs/FLUX_RESOLUTION_TEST_20260912.md).
|
Schätzungen stehen in [Auflösungstest vom 12. September](docs/FLUX_RESOLUTION_TEST_20260912.md).
|
||||||
|
|
||||||
## Installation – ein Befehl
|
## Installation des Repository-Stands
|
||||||
|
|
||||||
|
Der Live-Stack enthält zusätzliche, noch nicht vollständig in Git übernommene
|
||||||
|
Anpassungen. Ein frischer Clone bildet daher nicht automatisch den kompletten
|
||||||
|
Live-Stand einschließlich Spezialdiensten ab. Vor Wiederherstellung den
|
||||||
|
gesicherten bereitgestellten Quellstand und [LIVE_STATE.md](docs/LIVE_STATE.md) berücksichtigen.
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
cp config/install.env.example /root/mike-ai-install.env
|
cp config/install.env.example /root/mike-ai-install.env
|
||||||
@@ -137,16 +149,9 @@ Unraid-DockerMan-Templates. Details stehen in
|
|||||||
|
|
||||||
## Wiederherstellung
|
## Wiederherstellung
|
||||||
|
|
||||||
Nach einer frischen Debian-Installation und erneut eingehängtem `/data`:
|
Der Sicherungsumfang und die Grenzen eines Neuaufbaus aus dem Repository stehen
|
||||||
|
in [docs/RECOVERY.md](docs/RECOVERY.md). Der gesicherte Live-Quellstand enthält
|
||||||
```bash
|
zusätzliche Anpassungen und muss erhalten bleiben.
|
||||||
sudo ./install.sh --config /root/mike-ai-install.env
|
|
||||||
sudo ./restore.sh --check /data/docker-backups/athena-latest.tar.gz
|
|
||||||
sudo ./restore.sh /data/docker-backups/athena-latest.tar.gz
|
|
||||||
sudo ./smoke-test.sh
|
|
||||||
```
|
|
||||||
|
|
||||||
Der genaue Sicherungsumfang steht in [docs/RECOVERY.md](docs/RECOVERY.md).
|
|
||||||
|
|
||||||
## Sicherheitsregeln
|
## Sicherheitsregeln
|
||||||
|
|
||||||
@@ -156,7 +161,8 @@ Der genaue Sicherungsumfang steht in [docs/RECOVERY.md](docs/RECOVERY.md).
|
|||||||
[docs/REMOTE_HOST_RULES.md](docs/REMOTE_HOST_RULES.md)).
|
[docs/REMOTE_HOST_RULES.md](docs/REMOTE_HOST_RULES.md)).
|
||||||
- `config/install.env` ist lokal, Modus 0600, und wird ignoriert.
|
- `config/install.env` ist lokal, Modus 0600, und wird ignoriert.
|
||||||
- API-, Controller-, WebUI- und WireGuard-Schlüssel entstehen erst am Host.
|
- API-, Controller-, WebUI- und WireGuard-Schlüssel entstehen erst am Host.
|
||||||
- Nur der kleine Profile Controller sieht den Docker-Socket.
|
- Docker-Zugriff ist auf Verwaltungsdienste begrenzt; unter anderem benötigen
|
||||||
|
Profile Controller, Portainer und Backup Zugriff auf den Docker-Socket.
|
||||||
- llama.cpp veröffentlicht weder Port noch WebUI.
|
- llama.cpp veröffentlicht weder Port noch WebUI.
|
||||||
- Ein Blackhole-Fallback verhindert Traffic-Leaks bei WireGuard-Ausfall.
|
- Ein Blackhole-Fallback verhindert Traffic-Leaks bei WireGuard-Ausfall.
|
||||||
- Das Uni-Netz und das Heimnetz dürfen diesen Host nicht als Transit benutzen.
|
- Das Uni-Netz und das Heimnetz dürfen diesen Host nicht als Transit benutzen.
|
||||||
@@ -164,7 +170,9 @@ Der genaue Sicherungsumfang steht in [docs/RECOVERY.md](docs/RECOVERY.md).
|
|||||||
## Verbindliche Dokumentation
|
## Verbindliche Dokumentation
|
||||||
|
|
||||||
- [ATHENA.md](ATHENA.md) – kurze Betriebsanleitung
|
- [ATHENA.md](ATHENA.md) – kurze Betriebsanleitung
|
||||||
- [docs/STANDARD_PROFILE_MATRIX.md](docs/STANDARD_PROFILE_MATRIX.md) – Profile
|
- [docs/LIVE_STATE.md](docs/LIVE_STATE.md) – tatsächlich bereitgestellte Profile und Versionen
|
||||||
|
- [docs/CONTAINER_INVENTORY.md](docs/CONTAINER_INVENTORY.md) – vorhandene Container
|
||||||
|
- [docs/STANDARD_PROFILE_MATRIX.md](docs/STANDARD_PROFILE_MATRIX.md) – Repository-Matrix, einschließlich nicht installiertem beta1
|
||||||
- [docs/MCP_SERVERS.md](docs/MCP_SERVERS.md) – produktive Werkzeuge
|
- [docs/MCP_SERVERS.md](docs/MCP_SERVERS.md) – produktive Werkzeuge
|
||||||
- [docs/RECOVERY.md](docs/RECOVERY.md) – Backup und Neuaufbau
|
- [docs/RECOVERY.md](docs/RECOVERY.md) – Backup und Neuaufbau
|
||||||
- [docs/REMOTE_HOST_RULES.md](docs/REMOTE_HOST_RULES.md) – Regeln für den Remote-Host
|
- [docs/REMOTE_HOST_RULES.md](docs/REMOTE_HOST_RULES.md) – Regeln für den Remote-Host
|
||||||
|
|||||||
+14
-8
@@ -6,9 +6,9 @@ flowchart LR
|
|||||||
H -->|OpenAI API| R[Profile Router<br/>Athena :8081]
|
H -->|OpenAI API| R[Profile Router<br/>Athena :8081]
|
||||||
R --> P[Profile Controller]
|
R --> P[Profile Controller]
|
||||||
P --> Q[genau ein llama.cpp-Profil<br/>Qwen Fast / Medium / Large / Ultra / Uncensored]
|
P --> Q[genau ein llama.cpp-Profil<br/>Qwen Fast / Medium / Large / Ultra / Uncensored]
|
||||||
R --> I[FLUX.2-klein-4B<br/>RTX 5080, Text + Editing]
|
R --> I[FLUX.2 Klein 9B FP8 Beta<br/>RTX 5080, Text + Editing]
|
||||||
R --> T[XTTS RTX 3060<br/>Piper CPU-Fallback]
|
R --> T[Qwen3-TTS 1.7B RTX 3060<br/>TTS-Gateway]
|
||||||
R --> STT[Whisper.cpp large-v3-turbo<br/>CPU, lokale Spracherkennung]
|
R --> STT[Whisper.cpp small<br/>CPU, lokale Spracherkennung]
|
||||||
|
|
||||||
H --> U[MUA / Unraid MCP]
|
H --> U[MUA / Unraid MCP]
|
||||||
H --> A[ARR-MCP]
|
H --> A[ARR-MCP]
|
||||||
@@ -25,6 +25,13 @@ flowchart LR
|
|||||||
K[Backup alle 5 Stunden] --> DATA[/data und /etc/mike-ai]
|
K[Backup alle 5 Stunden] --> DATA[/data und /etc/mike-ai]
|
||||||
```
|
```
|
||||||
|
|
||||||
|
Stand: 12. September 2026. Versionen und Abweichungen: [Live-Stand](LIVE_STATE.md).
|
||||||
|
FLUX nutzt beide GPUs und pausiert dafür LLM und Qwen3-TTS. Dashboard und
|
||||||
|
Portainer besitzen eigene Netzwerk-Namespaces in `mike-ai_frontend`; der Router
|
||||||
|
läuft in `mike-ai_control`. Der Gateway vermittelt den privaten Zugriff.
|
||||||
|
Zusätzliche Musik-, Audio-, Voice- und 3D-Container stehen im
|
||||||
|
[Container-Inventar](CONTAINER_INVENTORY.md); ihre Anwesenheit ist kein neuer Funktionstest.
|
||||||
|
|
||||||
## Verantwortung
|
## Verantwortung
|
||||||
|
|
||||||
- **Unraid** hält Hermes, Chats, Skills, Fach-MCPs und deren Appdata.
|
- **Unraid** hält Hermes, Chats, Skills, Fach-MCPs und deren Appdata.
|
||||||
@@ -37,7 +44,7 @@ flowchart LR
|
|||||||
## Dynamische Qwen-Profile
|
## Dynamische Qwen-Profile
|
||||||
|
|
||||||
Der Profile Router hält immer nur ein Qwen-Profil aktiv. Ein Wechsel lädt
|
Der Profile Router hält immer nur ein Qwen-Profil aktiv. Ein Wechsel lädt
|
||||||
dasselbe 27B-Modell mit der zum Profil gehörenden GPU-Aufteilung und
|
das zum Profil gehörende 27B-Modell mit der zum Profil gehörenden GPU-Aufteilung und
|
||||||
Kontextgröße:
|
Kontextgröße:
|
||||||
|
|
||||||
| Profil | Kontextfenster |
|
| Profil | Kontextfenster |
|
||||||
@@ -48,7 +55,6 @@ Kontextgröße:
|
|||||||
| Ultra | 262.144 Token |
|
| Ultra | 262.144 Token |
|
||||||
| Uncensored | 80.000 Token |
|
| Uncensored | 80.000 Token |
|
||||||
|
|
||||||
Die visuelle Fassung liegt als `athena-architecture-map.png` neben dieser Datei.
|
Die PNG-Karten `athena-architecture-map.png` und `athena-gpu-allocation-map.png`
|
||||||
Eine zweite Detailkarte, `athena-gpu-allocation-map.png`, zeigt die
|
sind historische Darstellungen. Bei abweichenden Modell- oder Netzwerkangaben
|
||||||
profilabhängige Layer-Verteilung auf RTX 5080 und RTX 3060 sowie die festen
|
gelten diese Textdokumentation und der geprüfte Live-Stand.
|
||||||
GPU-Zuordnungen von FLUX.2, Vision-Projektor und XTTS.
|
|
||||||
|
|||||||
@@ -0,0 +1,51 @@
|
|||||||
|
# Container-Inventar auf Athena
|
||||||
|
|
||||||
|
Stand: 12. September 2026
|
||||||
|
|
||||||
|
Athena besteht beim lesenden Abgleich aus 25 Docker-Containern. Nicht jeder Container enthält
|
||||||
|
ein KI-Modell: Router, Oberflächen, Netzwerk, Steuerung und Sicherung sind
|
||||||
|
gewöhnliche Dienste. Die rechenintensiven GPU-Worker werden absichtlich nur bei
|
||||||
|
Bedarf gestartet. Ein Container im Zustand `Created` oder `Exited (0)` ist daher
|
||||||
|
nicht automatisch ein ungenutzter Rest.
|
||||||
|
|
||||||
|
| Container | Modell oder wesentliche Komponente | Aufgabe |
|
||||||
|
|---|---|---|
|
||||||
|
| `mike-ai-backup` | kein Modell; Offen Docker Volume Backup | Sichert `/data`, `/etc/mike-ai`, den Stack und die persistenten Docker-Volumes im Fünf-Stunden-Takt. |
|
||||||
|
| `mike-ai-applio-studio` | Applio/RVC; Stimmenmodelle werden nutzerseitig ergänzt | Vollständige RVC-Oberfläche für Inferenz, Modellverwaltung und Training auf der RTX 5080. Für eine Konvertierung ist ein importiertes oder trainiertes `.pth`-Modell nötig; eine Referenzaufnahme allein reicht nicht. |
|
||||||
|
| `mike-ai-image-worker` | FLUX.2 Klein 9B FP8, Qwen3-8B NF4 Textencoder und VAE | Erzeugt und bearbeitet Bilder transaktional; nutzt während eines Auftrags RTX 5080 und RTX 3060. |
|
||||||
|
| `mike-ai-llama-dashboard` | kein Modell | Zeigt Telemetrie, Profile, GPU-Nutzung und Betriebsarten an und bietet die Modusumschaltung. |
|
||||||
|
| `mike-ai-llama-fast` | Qwen3.8-27B `IQ4-MIX`, Qwen-MMProj BF16 | Schnelles Q4-Text-/Vision-Profil mit 76.800 Token Kontext. |
|
||||||
|
| `mike-ai-llama-large` | Qwen3.8-27B `IQ4_XS-pure`, Qwen-MMProj BF16 | Q4-Text-/Vision-Profil mit 192.000 Token Kontext und Verteilung auf beide GPUs. |
|
||||||
|
| `mike-ai-llama-medium` | Qwen3.8-27B `IQ4_XS-pure`, Qwen-MMProj BF16 | Standard-Q4-Text-/Vision-Profil mit 160.000 Token Kontext und Verteilung auf beide GPUs. |
|
||||||
|
| `mike-ai-llama-ultra` | Qwen3.8-27B `IQ4_XS-pure`, ohne Vision-Projektor | Maximales Langkontextprofil mit 262.144 Token Kontext und Verteilung auf beide GPUs. |
|
||||||
|
| `mike-ai-llama-uncensored` | Qwen3.8-27B Abliterated `Q4_K_M`, eigener MMProj F16 | Spezialprofil mit 80.000 Token Kontext und gelockerten Modellgrenzen. |
|
||||||
|
| `mike-ai-mcp-athena-operator` | kein Modell | Stellt Hermes begrenzte Werkzeuge zum Prüfen, Ändern, Testen, Sichern und Versionieren von Athena bereit. |
|
||||||
|
| `mike-ai-music-acestep-test` | ACE-Step 1.5 XL-SFT und `acestep-5Hz-lm-1.7B` | Generiert Musik im exklusiven Musikmodus auf der RTX 5080. |
|
||||||
|
| `mike-ai-music-ui` | kein Modell; `fspecii/ace-step-ui` | Community-Oberfläche für ACE-Step; bleibt als leichte UI verfügbar, während der GPU-Worker bedarfsgesteuert läuft. |
|
||||||
|
| `mike-ai-portainer` | kein Modell; Portainer CE | Optionale Docker-Verwaltungsoberfläche. |
|
||||||
|
| `mike-ai-profile-controller` | kein Modell | Startet und stoppt ausschließlich freigegebene Modellprofile und Spezialworker in einer sicheren Reihenfolge. |
|
||||||
|
| `mike-ai-qwen3-tts` | `Qwen/Qwen3-TTS-12Hz-1.7B-Base`, Stimme Serena | Hochwertige deutsche Sprachausgabe auf der RTX 3060 im LLM-Betrieb. |
|
||||||
|
| `mike-ai-router` | kein eigenes Modell | Einzige OpenAI-kompatible Modelladresse; koordiniert Profile, Bildaufträge, Sprache und Betriebsarten. |
|
||||||
|
| `mike-ai-stem-separator` | BS-RoFormer Viperx 1297, `htdemucs_ft`, `htdemucs_6s`, `MossFormer2_SE_48K` | Trennt Gesang, Instrumente oder Sprache/Hintergrundgeräusche im exklusiven Separationsmodus. |
|
||||||
|
| `mike-ai-tts-gateway` | kein eigenes Modell | Normalisiert Text, konvertiert Ausgabeformate und stellt Qwen3-TTS sowie natives PCM-Streaming über eine stabile interne API bereit. |
|
||||||
|
| `mike-ai-voice-studio` | `k2-fsa/OmniVoice` 0.2.1 mit Whisper-ASR | Erzeugt Text-to-Speech mit einer Referenzstimme; kein Audio-to-Audio-Voice-Changer. |
|
||||||
|
| `mike-ai-whisper` | Whisper.cpp `ggml-small` | Lokale deutsche Spracherkennung auf der CPU über `/v1/audio/transcriptions`. |
|
||||||
|
| `mike-ai-wireguard-gateway` | kein Modell | Veröffentlicht Dashboard und Fachoberflächen ausschließlich über den privaten WireGuard-Pfad. |
|
||||||
|
| `mike-ai-xvc-studio` | `chenxie95/X-VC`, GLM-4-Voice-Tokenizer und optional Resemble Enhance | Wandelt eine vorhandene Sprachaufnahme anhand einer Referenzstimme in Audio zu Audio um; gibt das native 16-kHz-Ergebnis und optional eine neural restaurierte 44,1-kHz-Fassung aus. |
|
||||||
|
| `mike-ai-yue2-playground` | Image `mike-ai/yue2:3b-0.1.6` | Vorhandener, gestoppter Playground; in diesem Abgleich nicht funktional getestet. |
|
||||||
|
| `mike-ai-trellis-studio` | Image `mike-ai/trellis-studio:0.6.0-q8` | Vorhandener, gestoppter 3D-Worker; in diesem Abgleich nicht funktional getestet. |
|
||||||
|
| `mike-ai-mikes-applio-ui` | Image `mike-ai/mikes-applio-ui:latest` | Laufende zusätzliche Applio-Oberfläche. |
|
||||||
|
|
||||||
|
Alle fünf llama-Container verwenden b10930. Beim Abgleich lief Medium;
|
||||||
|
die anderen vier waren gestoppt. Der Image-Worker stand auf Created.
|
||||||
|
Die übrigen GPU-Spezialworker waren gestoppt, die Infrastruktur und die
|
||||||
|
Musik-/Applio-Oberflächen liefen. Diese Zustände ändern sich mit der Nutzung.
|
||||||
|
Die Detailbeschreibungen der Spezialmodelle stammen aus der bestehenden
|
||||||
|
Betriebsdokumentation; dieses Update prüfte deren Containerbestand, nicht
|
||||||
|
sämtliche Modellgewichte oder Funktionen neu.
|
||||||
|
|
||||||
|
## Aufräumregel
|
||||||
|
|
||||||
|
Gestoppte Container sind nicht automatisch Testreste. Vor einer Entfernung
|
||||||
|
Compose-Zuordnung, Mounts und Controller-Verweise prüfen. Die vorhandenen
|
||||||
|
Spezialcontainer wurden durch den FLUX-Auflösungstest weder angelegt noch entfernt.
|
||||||
@@ -1,65 +1,20 @@
|
|||||||
# Aktueller produktiver Laufzustand
|
# Aktuelle Laufzeitnotizen
|
||||||
|
|
||||||
Stand: 3. September 2026
|
Stand: 12. September 2026.
|
||||||
|
|
||||||
## Lokale Spracherkennung
|
Der verbindliche Abgleich steht im [geprüften Live-Stand](LIVE_STATE.md).
|
||||||
|
Produktiv läuft **llama.cpp b10930**, zuvor b10872. Die frühere Angabe b10781
|
||||||
|
war veraltet. Alle fünf installierten Profile wurden aktualisiert; die
|
||||||
|
Startoption wurde auf `--load-mode none` migriert.
|
||||||
|
|
||||||
Athena betreibt Whisper.cpp v1.9.1 mit `large-v3-turbo` als CPU-Dienst. Der
|
[B10930-Updatebericht](LLAMA_B10930_UPDATE_20260912.md): Version, Image-ID,
|
||||||
Profile Router veröffentlicht ihn als OpenAI-kompatiblen Endpunkt
|
Funktionsproben, Vergleichsmessungen und gesicherter Rückfallstand.
|
||||||
`/v1/audio/transcriptions`; Standardsprache ist Deutsch. Modell und Download
|
|
||||||
bleiben im persistenten Docker-Volume `whisper-data` erhalten.
|
|
||||||
|
|
||||||
Ein lokaler Rundlauftest (Athena-TTS → WAV → Athena-STT) wurde erfolgreich
|
FLUX verwendet **9B FP8 Beta** mit Textencoder auf der RTX 3060.
|
||||||
durchgeführt. OpenClaw ist ebenfalls auf diesen lokalen Endpunkt eingestellt
|
[Auflösungstest](FLUX_RESOLUTION_TEST_20260912.md): 1024 erfolgreich,
|
||||||
und wurde mit `openclaw infer audio transcribe` erfolgreich geprüft. Für den
|
1280 CUDA-OOM; produktive Begrenzung weiterhin 1024.
|
||||||
lokalen Provider ist der Zugriff auf Athenas private IP ausdrücklich erlaubt;
|
Sprachausgabe: Qwen3-TTS 1.7B ohne Piper. Spracherkennung: Whisper.cpp small auf CPU.
|
||||||
andere private Ziele werden dadurch nicht freigeschaltet.
|
|
||||||
|
|
||||||
## Produktive llama.cpp-Runtime
|
Datierte ältere Testberichte beschreiben ihre damaligen Versuchsbedingungen,
|
||||||
|
keine automatische Freigabe für den heutigen Betrieb. Die Repository-Matrix
|
||||||
Aktualisiert am 12. September 2026: Alle fünf Textprofilcontainer verwenden
|
enthält zusätzlich beta1; auf Athena sind nur fünf Textprofile installiert.
|
||||||
llama.cpp **Build 10930**, Commit
|
|
||||||
`56381e407c0ccfb3a6f71e668a27a901001d22ce`.
|
|
||||||
|
|
||||||
Der tatsächliche vorherige Live-Build war 10872
|
|
||||||
(`b31b71f3a076bfc4278daad442203a9c51c6e676`), nicht der hier zuvor
|
|
||||||
angegebene Build 10781. Er bleibt unter
|
|
||||||
`mike-ai/llama.cpp:b10872-pre-b10930` als Rückfallimage erhalten.
|
|
||||||
|
|
||||||
Das Update enthält den Fix für die Drafter-Position nach Bildeingaben
|
|
||||||
[#28715](https://github.com/ggml-org/llama.cpp/pull/28715). Modellgewichte,
|
|
||||||
Profilkontexte, GPU-Aufteilung, Vision, Slots und MTP-Parameter bleiben
|
|
||||||
unverändert. Details und Testgrenzen stehen im
|
|
||||||
[Updateprotokoll](LLAMA_B10930_UPDATE_20260912.md).
|
|
||||||
|
|
||||||
## Qwen Medium: Vision-Projektor wieder aktiviert
|
|
||||||
|
|
||||||
`qwen-medium` läuft wieder mit dem Qwen-Vision-Projektor. Der Projektor wird
|
|
||||||
über `--mmproj-offload --mmproj-device CUDA1` gezielt auf der RTX 3060 geladen.
|
|
||||||
Der vorübergehende Text-only-Workaround ist damit auf ausdrücklichen Wunsch
|
|
||||||
beendet.
|
|
||||||
|
|
||||||
Dabei gilt ausdrücklich:
|
|
||||||
|
|
||||||
- Der Gesamtkontext bleibt bei **160.000 Tokens**.
|
|
||||||
- Das Profil verwendet wieder **einen Slot**. Die getestete Zwei-Slot-Variante
|
|
||||||
ist nicht produktiv.
|
|
||||||
- **MTP / Speculative Decoding bleibt aktiviert**; MTP wurde nicht entfernt.
|
|
||||||
- Modell, Quantisierung, GPU-Aufteilung und KV-Cache-Quantisierung bleiben
|
|
||||||
unverändert.
|
|
||||||
- Bildanalyse ist im Medium-Profil wieder verfügbar.
|
|
||||||
- Der bekannte llama.cpp-/MMProj-Cachefehler kann weiterhin vollständige
|
|
||||||
Prompt-Neuverarbeitung in späteren Turns auslösen. Diese Einschränkung wird
|
|
||||||
zugunsten der benötigten Vision-Funktion bewusst akzeptiert.
|
|
||||||
|
|
||||||
Referenz:
|
|
||||||
|
|
||||||
- https://github.com/ggml-org/llama.cpp/issues/19858
|
|
||||||
- https://github.com/ggml-org/llama.cpp/issues/21133
|
|
||||||
|
|
||||||
## Separates bekanntes Problem
|
|
||||||
|
|
||||||
Automatische Hermes-Hintergrundanfragen können weiterhin den einzigen aktiven
|
|
||||||
llama.cpp-Slot belegen und damit den Cache eines großen Chats verdrängen. Dieses
|
|
||||||
Slot-Eviction-Problem ist unabhängig vom MMProj-Workaround und muss separat in
|
|
||||||
der Hermes-Auxiliary-/Hintergrundverarbeitung geklärt werden.
|
|
||||||
|
|||||||
@@ -0,0 +1,68 @@
|
|||||||
|
# Geprüfter Live-Stand auf Athena
|
||||||
|
|
||||||
|
Stand: 12. September 2026. Quelle: SSH-Abgleich von Containerbestand,
|
||||||
|
Startkonfiguration und den dokumentierten Laufzeittests auf Athena.
|
||||||
|
|
||||||
|
## Laufzeit und Profile
|
||||||
|
|
||||||
|
Debian 13, RTX 5080 mit 16 GB und RTX 3060 mit 12 GB.
|
||||||
|
Alle fünf Textprofilcontainer verwenden llama.cpp **b10930**, Commit
|
||||||
|
`56381e407c0ccfb3a6f71e668a27a901001d22ce`, Image `mike-ai/llama.cpp:local`
|
||||||
|
beziehungsweise `mike-ai/llama.cpp:b10930`.
|
||||||
|
Image-ID: `sha256:c9d78a9375143877574f3d7c6e0dea94ecfebb264e8dd9f57ac4e03f1c96044e`.
|
||||||
|
Die Startoption lautet `--load-mode none`; `--no-mmap` ist entfernt.
|
||||||
|
|
||||||
|
| Profil | Qwen3.8-27B-Variante | Kontext | GPU-Konfiguration 5080:3060 | Vision | MTP Draft |
|
||||||
|
|---|---|---:|---|---|---:|
|
||||||
|
| Fast | IQ4-MIX | 76.800 | Textmodell nur 5080 | ja | 2 |
|
||||||
|
| Medium | IQ4_XS Pure | 160.000 | 85:15 | ja | 3 |
|
||||||
|
| Large | IQ4_XS Pure | 192.000 | 86:14 | ja | 3 |
|
||||||
|
| Ultra | IQ4_XS Pure | 262.144 | 80:20 | nein | 2 |
|
||||||
|
| Uncensored | Abliterated Q4_K_M | 80.000 | 90:10 | ja | 2 |
|
||||||
|
|
||||||
|
Alle Profile nutzen einen Slot. Die GPU-Verhältnisse sind konfigurierte
|
||||||
|
Tensor-Splits, keine gemessenen VRAM-Prozentsätze; KV-Cache, Projektor und
|
||||||
|
weitere Dienste benötigen zusätzlich Speicher. Uncensored nutzt beide Karten,
|
||||||
|
der Vision-Projektor liegt auf der 3060.
|
||||||
|
|
||||||
|
Im LLM-Modus läuft genau ein Textprofil. Zum Abschluss des Buildtests war
|
||||||
|
Uncensored aktiv; beim späteren Dokumentationsabgleich war Medium aktiv.
|
||||||
|
Das aktive Profil ist ein veränderlicher Betriebszustand.
|
||||||
|
`beta1` steht zusätzlich in der Repository-Matrix, ist auf Athena aber nicht
|
||||||
|
installiert und wurde beim Update nicht getestet.
|
||||||
|
|
||||||
|
## Bild und Sprache
|
||||||
|
|
||||||
|
- FLUX.2 Klein **9B FP8 Beta**, Transformer und VAE auf 5080,
|
||||||
|
Qwen3-8B-Textencoder in NF4 auf 3060.
|
||||||
|
- Bildaufträge pausieren LLM und Qwen3-TTS und stellen sie danach wieder her.
|
||||||
|
Produktiv maximal 1024 × 1024, vier Schritte, Guidance 1,
|
||||||
|
höchstens vier Referenzbilder und 128 Textencoder-Tokens.
|
||||||
|
- 1024 × 1024 erfolgreich; 1280 × 1280 CUDA-OOM. Zwischenwerte und höhere
|
||||||
|
Größen nicht geprüft. Keine Freigabe oberhalb 1024.
|
||||||
|
- Qwen3-TTS 1.7B auf 3060 hinter TTS-Gateway. Kein Piper-Container/Fallback.
|
||||||
|
- Whisper.cpp small (`/models/ggml-small.bin`) auf CPU, persistentes Whisper-Volume.
|
||||||
|
|
||||||
|
## Git und bereitgestellte Dateien
|
||||||
|
|
||||||
|
Der Live-Checkout `/opt/mike-ai/stack` zeigt beim Abgleich Git-HEAD `5d8abd4`.
|
||||||
|
Seine Arbeitsdateien enthalten jedoch neuere Änderungen und zusätzliche
|
||||||
|
Spezialdienste. Der HEAD ist daher **kein Nachweis der laufenden Buildversion**.
|
||||||
|
Das b10930-Update wurde in Gitea mit Commit `2415b27` dokumentiert und gepinnt.
|
||||||
|
Dieses Dokumentationsupdate gleicht die zentralen Markdown-Dateien zwischen
|
||||||
|
Git und Athena ab; es setzt den Live-Checkout nicht zurück und übernimmt
|
||||||
|
nicht pauschal seine übrigen uncommitteten Änderungen.
|
||||||
|
Ein frischer Clone ist deshalb noch kein vollständiges Abbild aller Live-Dienste.
|
||||||
|
|
||||||
|
## Prüfumfang und Belege
|
||||||
|
|
||||||
|
Alle fünf Textprofile bestanden kurze Textproben. Für Uncensored und Medium
|
||||||
|
wurden zusätzlich Tools und Vision geprüft; Uncensored bestand einen
|
||||||
|
72.802-Token-Kontexttest. Kein Vollkontext- oder Langzeittest aller Profile.
|
||||||
|
Die übrigen Spezialcontainer wurden bei diesem Abgleich nur inventarisiert.
|
||||||
|
|
||||||
|
- [Build, Tests und Rückfall](LLAMA_B10930_UPDATE_20260912.md)
|
||||||
|
- [FLUX-Auflösungstest](FLUX_RESOLUTION_TEST_20260912.md)
|
||||||
|
- [Container-Inventar](CONTAINER_INVENTORY.md)
|
||||||
|
- [Backup-Stand](RECOVERY.md)
|
||||||
|
- [Verbindliche Host-Regeln](REMOTE_HOST_RULES.md)
|
||||||
@@ -71,6 +71,7 @@ Startoption `--no-mmap`; nur das Image umzuschalten reicht nicht. Die gesicherte
|
|||||||
Compose-Datei dient als Referenz. Spätere Änderungen dürfen beim Rückfall
|
Compose-Datei dient als Referenz. Spätere Änderungen dürfen beim Rückfall
|
||||||
nicht durch blindes Überschreiben verloren gehen.
|
nicht durch blindes Überschreiben verloren gehen.
|
||||||
|
|
||||||
Nach der Prüfung ist wieder genau das zuvor aktive Profil **Uncensored**
|
Zum Abschluss der Updateprüfung wurde das zuvor aktive Profil **Uncensored**
|
||||||
aktiv. Die übrigen Profile bleiben bedarfsgesteuert gestoppt. Host, Treiber,
|
wiederhergestellt. Dies ist ein historischer Abschlusszustand; beim späteren
|
||||||
|
Dokumentationsabgleich war Medium aktiv. Die übrigen Profile bleiben bedarfsgesteuert gestoppt. Host, Treiber,
|
||||||
SSH, LAN, Firewall und WireGuard wurden nicht verändert oder neu gestartet.
|
SSH, LAN, Firewall und WireGuard wurden nicht verändert oder neu gestartet.
|
||||||
|
|||||||
+27
-37
@@ -1,49 +1,39 @@
|
|||||||
# Backup und Wiederherstellung
|
# Backup und Wiederherstellung
|
||||||
|
|
||||||
## Athena
|
## Athena – geprüfter Sicherungsstand vom 12. September 2026
|
||||||
|
|
||||||
`mike-ai-backup` erzeugt alle fünf Stunden ein Archiv unter
|
`mike-ai-backup` läuft und sichert im Fünf-Stunden-Takt nach
|
||||||
`/data/docker-backups` und behält 14 Tage. Gesichert werden:
|
`/data/docker-backups` (14 Tage Aufbewahrung). Die aktuell geprüften Mounts sichern:
|
||||||
|
|
||||||
- `/etc/mike-ai` mit lokaler Konfiguration,
|
- `/etc/mike-ai` einschließlich lokaler Konfiguration und Secrets,
|
||||||
- Router-Zustand und erzeugte Bilder,
|
- `/opt/mike-ai` einschließlich des bereitgestellten, teilweise uncommitteten Stacks,
|
||||||
- Piper-Daten,
|
- die Volumes `router-images`, `router-state` und `portainer_data`.
|
||||||
- der kanonische Stack als zusätzlicher Snapshot.
|
|
||||||
|
|
||||||
Nicht in das Archiv gehören die großen Modellgewichte unter `/data/models`.
|
Piper-Daten sind kein aktueller Sicherungsbestand. Modellgewichte unter
|
||||||
Sie bleiben auf der Daten-SSD oder werden anhand der gepinnten Angaben in
|
`/data/models` und das reproduzierbare Whisper-Volume gehören nicht zu diesen
|
||||||
`config/install.env.example` erneut geladen. Die Dashboard-Historie liegt
|
Backup-Mounts. Ein Backup ausschließlich auf `/data` schützt nicht vor deren Ausfall.
|
||||||
dauerhaft unter `/data/llama-dashboard`.
|
|
||||||
|
|
||||||
Portainers lokale Konfiguration liegt im Docker-Volume `portainer_data` und
|
Zusätzlich existieren die externe Restic-Sicherung über
|
||||||
wird zusammen mit den übrigen nicht reproduzierbaren Volumes gesichert und
|
`athena-disaster-backup.timer` und verschlüsselte Notfallpakete über
|
||||||
wiederhergestellt.
|
`athena-export-backup.timer`. Bei beiden zugehörigen Services wurden
|
||||||
|
`Result=success` und `ExecMainStatus=0` gelesen. Das bestätigt den letzten
|
||||||
|
Dienstabschluss, keinen in diesem Auftrag geprüften vollständigen Restore.
|
||||||
|
Die Notfallpakete liegen unter `/data/emergency-backups`; Schutz vor
|
||||||
|
Datenplattenausfall setzt eine außerhalb Athenas aufbewahrte Kopie voraus.
|
||||||
|
|
||||||
### Neuaufbau
|
### Wiederherstellung und Versionsgrenze
|
||||||
|
|
||||||
1. Debian installieren und `/data` wieder am bisherigen Pfad einhängen.
|
Der bereitgestellte Quellstand muss aus der Sicherung erhalten bleiben:
|
||||||
2. Dieses Repository klonen.
|
Ein frischer Git-Clone enthält noch nicht sämtliche Live-Anpassungen und
|
||||||
3. Installationsdatei ausfüllen und Installation starten:
|
Spezialdienste, siehe [Live-Stand](LIVE_STATE.md). Vor einem Restore sind
|
||||||
|
Archivinhalt, Aktualität und Kompatibilität der zugehörigen Restore-Skripte
|
||||||
|
zu prüfen. Bestehende lokale Änderungen niemals blind überschreiben.
|
||||||
|
|
||||||
```bash
|
Die Host-Regel gilt unverändert: **Athena niemals herunterfahren oder neu
|
||||||
sudo ./install.sh --config /root/mike-ai-install.env
|
starten und ihre Erreichbarkeit nicht gefährden.** Eine Neuinstallation ist
|
||||||
```
|
keine normale Wartungsmaßnahme am erreichbaren Remote-Host.
|
||||||
|
Für den begrenzten Rückfall des Modellservers stehen altes Image und gesicherte
|
||||||
4. Letztes Datenarchiv einspielen:
|
Startkonfiguration im [b10930-Updatebericht](LLAMA_B10930_UPDATE_20260912.md).
|
||||||
|
|
||||||
```bash
|
|
||||||
sudo ./restore.sh --check /data/docker-backups/athena-latest.tar.gz
|
|
||||||
sudo ./restore.sh /data/docker-backups/athena-latest.tar.gz
|
|
||||||
sudo ./smoke-test.sh
|
|
||||||
```
|
|
||||||
|
|
||||||
`--check` liest das komplette gzip-Archiv und prüft dessen sichere
|
|
||||||
`/backup`-Struktur sowie die benötigten Konfigurations- und Volume-Bäume, ohne
|
|
||||||
Container oder Dateien zu verändern. Der reguläre Restore extrahiert und
|
|
||||||
verwendet anschließend ausschließlich diesen einen geprüften Baum.
|
|
||||||
|
|
||||||
Das Restore verändert weder SSH noch LAN, WireGuard, Kernel, Partitionen oder
|
|
||||||
Mounts.
|
|
||||||
|
|
||||||
## Unraid
|
## Unraid
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user