From e5e5d7fa4d638697cf2eee71a5f5749935ddf598 Mon Sep 17 00:00:00 2001 From: Mikei386 <44135113+Mikei386@users.noreply.github.com> Date: Thu, 10 Sep 2026 13:32:35 +0200 Subject: [PATCH] Document current Athena stack and storage --- Erklärung.txt | 305 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 305 insertions(+) create mode 100644 Erklärung.txt diff --git a/Erklärung.txt b/Erklärung.txt new file mode 100644 index 0000000..e33e692 --- /dev/null +++ b/Erklärung.txt @@ -0,0 +1,305 @@ +ATHENA – AUFBAU VON UNTEN NACH OBEN +==================================== + +Stand: 10.09.2026 nach Entfernung von Beta 1 und Piper. +Athena besitzt derzeit 23 Container, fünf auswählbare LLM-Profile und vier +verwendete Docker-Volumes. Verwaiste Docker-Volumes gibt es nicht. + + + +--------------------------------------+ + | PHYSISCHER RECHNER: ATHENA | + | | + | CPU, RAM, Systemplatte, Netzwerk | + | NVIDIA RTX 5080 + NVIDIA RTX 3060 | + +------------------+-------------------+ + | + v + +--------------------------------------+ + | DEBIAN-HOSTSYSTEM | + | | + | - startet den Rechner | + | - verwaltet Netzwerk und Datenträger | + | - stellt NVIDIA-Treiber bereit | + | - führt Docker aus | + +------------------+-------------------+ + | + +-------------------+-------------------+ + | | + v v + +----------------------------------+ +----------------------------------+ + | DOCKER-STACK | | DAUERHAFTE DATEN AUF DEM HOST | + | | | | + | - Router und Profilsteuerung | | - Modelle und Modellgewichte | + | - llama.cpp-Modellserver | | - Trainingsdatensätze | + | - Athena-Dashboard | | - trainierte Stimmen | + | - Bild-, Musik- und Audiodienste | | - Checkpoints und Ergebnisse | + | - Applio und Mikes Applio UI | | - Konfigurationen und Logs | + | - Hilfs- und Netzwerkdienste | | | + +----------------+-----------------+ | Hauptpfade: | + | | /data | + | liest und schreibt | /etc/mike-ai | + +-------------------->| | + +----------------+-----------------+ + | + v + +----------------------------------+ + | BACKUP | + | | + | Sichert ausgewählte dauerhafte | + | Daten und Konfigurationen. | + +----------------------------------+ + + +DOCKER-STACK: CONTAINER-INVENTAR +================================ + +Bestandsaufnahme vom 10.09.2026. "Gestoppt/bereit" bedeutet hier nicht +automatisch defekt: GPU-intensive Dienste werden absichtlich nur im passenden +Betriebsmodus gestartet. Zum Zeitpunkt der Aufnahme war Applio/RVC aktiv. + ++-----------------------------------+-------------------+----------------------------------------------+ +| Container | Zustand | Aufgabe | ++-----------------------------------+-------------------+----------------------------------------------+ +| mike-ai-router | läuft | Zentrale API; leitet Text-, Bild-, Audio- | +| | | und Profilanfragen an den passenden Dienst. | ++-----------------------------------+-------------------+----------------------------------------------+ +| mike-ai-profile-controller | läuft | Schaltet Profile und Betriebsmodi und sorgt | +| | | dafür, dass sich GPU-Dienste nicht stören. | ++-----------------------------------+-------------------+----------------------------------------------+ +| mike-ai-llama-fast | gestoppt/bereit | llama.cpp-Textmodell mit kleinem Kontext und | +| | | hoher Geschwindigkeit. | ++-----------------------------------+-------------------+----------------------------------------------+ +| mike-ai-llama-medium | gestoppt/bereit | llama.cpp-Textmodell mit mittlerem Kontext. | ++-----------------------------------+-------------------+----------------------------------------------+ +| mike-ai-llama-large | gestoppt/bereit | llama.cpp-Textmodell mit großem Kontext. | ++-----------------------------------+-------------------+----------------------------------------------+ +| mike-ai-llama-ultra | gestoppt/bereit | llama.cpp-Textmodell mit maximalem Kontext. | ++-----------------------------------+-------------------+----------------------------------------------+ +| mike-ai-llama-uncensored | gestoppt/bereit | Separates ungefiltertes llama.cpp-Profil. | ++-----------------------------------+-------------------+----------------------------------------------+ +| mike-ai-image-worker | gestoppt/bereit | Lokale Bildgenerierung und Bildbearbeitung; | +| | | wird nur für Bildaufträge geladen. | ++-----------------------------------+-------------------+----------------------------------------------+ +| mike-ai-qwen3-tts | gestoppt/bereit | Hochwertige GPU-Sprachausgabe mit Qwen3-TTS. | ++-----------------------------------+-------------------+----------------------------------------------+ +| mike-ai-tts-gateway | läuft | Normalisiert Text, wandelt Audioformate und | +| | | streamt die Ausgabe von Qwen3-TTS. | ++-----------------------------------+-------------------+----------------------------------------------+ +| mike-ai-whisper | läuft | Lokale Spracherkennung: Sprache zu Text. | ++-----------------------------------+-------------------+----------------------------------------------+ +| mike-ai-music-acestep-test | gestoppt/bereit | ACE-Step 1.5: erzeugt und bearbeitet Musik. | ++-----------------------------------+-------------------+----------------------------------------------+ +| mike-ai-music-ui | läuft | Community-Weboberfläche für ACE-Step; das | +| | | eigentliche Musikmodell wird separat geladen.| ++-----------------------------------+-------------------+----------------------------------------------+ +| mike-ai-stem-separator | gestoppt/bereit | Trennt Gesang, Begleitung und Instrumente | +| | | mit BS-RoFormer und Demucs. | ++-----------------------------------+-------------------+----------------------------------------------+ +| mike-ai-voice-studio | gestoppt/bereit | Voice Studio für Text-zu-Stimme und | +| | | referenzbasierte Stimmerzeugung. | ++-----------------------------------+-------------------+----------------------------------------------+ +| mike-ai-xvc-studio | gestoppt/bereit | X-VC für direkte Stimme-zu-Stimme-Umwandlung | +| | | ohne vorheriges RVC-Training. | ++-----------------------------------+-------------------+----------------------------------------------+ +| mike-ai-applio-studio | läuft | Applio/RVC-Backend: Training, Modelle, | +| | | Sprachumwandlung und Original-Weboberfläche. | ++-----------------------------------+-------------------+----------------------------------------------+ +| mike-ai-mikes-applio-ui | läuft | Eigene geführte Oberfläche für das Applio- | +| | | Backend; enthält selbst kein RVC-Modell. | ++-----------------------------------+-------------------+----------------------------------------------+ +| mike-ai-llama-dashboard | läuft | Athena-Dashboard: Zustand, Telemetrie und | +| | | Umschaltung der Betriebsmodi. | ++-----------------------------------+-------------------+----------------------------------------------+ +| mike-ai-portainer | läuft | Allgemeine Webverwaltung und Einsicht für | +| | | Docker-Container, Images, Netze und Volumes. | ++-----------------------------------+-------------------+----------------------------------------------+ +| mike-ai-wireguard-gateway | läuft | Stellt die Athena-Webdienste ausschließlich | +| | | über den privaten WireGuard-Zugang bereit. | ++-----------------------------------+-------------------+----------------------------------------------+ +| mike-ai-mcp-athena-operator | läuft | Kontrollierte Verwaltungswerkzeuge für | +| | | Athena, unter anderem für Hermes. | ++-----------------------------------+-------------------+----------------------------------------------+ +| mike-ai-backup | läuft | Sichert regelmäßig die dauerhaften Daten und | +| | | Konfigurationen von Athena. | ++-----------------------------------+-------------------+----------------------------------------------+ + +Die Container gehören technisch zu mehreren Compose-Projekten, werden hier +aber gemeinsam als Athena-Docker-Stack betrachtet: + +- Kernsystem: /opt/mike-ai/stack +- Applio/RVC: /opt/mike-ai/stack/experiments/applio-rvc +- Mikes Applio UI: /opt/mike-ai/Mikes-Applio-UI +- ACE-Step-Musik: /opt/mike-ai/acestep-test +- Spurentrennung: /opt/mike-ai/stem-separator +- Voice Studio: /opt/mike-ai/omnivoice-studio +- X-VC: /opt/mike-ai/xvc-studio + + +LLM-PROFILE +=========== + +Es läuft immer höchstens eines dieser Profile. Fast, Medium, Large und +Uncensored können zusätzlich den Vision-Projektor verwenden. Ultra reserviert +den verfügbaren Speicher für den maximalen Textkontext und läuft ohne Vision. + ++------------+-------------------+----------------+-----------------------------+ +| Profil | API-Modell | Kontext | Zweck | ++------------+-------------------+----------------+-----------------------------+ +| Fast | qwen-fast | 76.800 Token | Hohe Geschwindigkeit und | +| | | | kurze bis mittlere Aufgaben.| ++------------+-------------------+----------------+-----------------------------+ +| Medium | qwen-medium | 160.000 Token | Ausgewogenes Standardprofil.| ++------------+-------------------+----------------+-----------------------------+ +| Large | qwen-large | 192.000 Token | Umfangreiche Dokumente und | +| | | | lange technische Arbeiten. | ++------------+-------------------+----------------+-----------------------------+ +| Ultra | qwen-ultra | 262.144 Token | Maximaler Textkontext; ohne | +| | | | Vision-Projektor. | ++------------+-------------------+----------------+-----------------------------+ +| Uncensored | qwen-uncensored | 80.000 Token | Weniger restriktives | +| | | | Spezialprofil. | ++------------+-------------------+----------------+-----------------------------+ + +Die produktiven Standardprofile verwenden Qwen3.8-27B in Q4-Quantisierung. +Das frühere Beta-1-Profil mit GSQ-RCO IQ3_S wurde entfernt: Es benötigte zwar +weniger Speicher, war im gemessenen Betrieb aber überwiegend langsamer und +brachte keinen belastbaren Qualitäts- oder Geschwindigkeitsvorteil. + + +BETRIEBSMODI UND GPU-UMSCHALTUNG +=============================== + +Die großen GPU-Dienste laufen gegenseitig exklusiv. Der Router speichert den +gewählten Zustand und die Profilsteuerung entlädt vor einem Wechsel die nicht +benötigten Modelle. + ++---------------+------------------------------------------------------------+ +| Modus | Geladener Hauptdienst | ++---------------+------------------------------------------------------------+ +| LLM | Ein Qwen-LLM-Profil und Qwen3-TTS. | ++---------------+------------------------------------------------------------+ +| Musik | ACE-Step 1.5 für Musikgenerierung. | ++---------------+------------------------------------------------------------+ +| Audio trennen | BS-RoFormer, Demucs oder MossFormer2. | ++---------------+------------------------------------------------------------+ +| Voice Studio | OmniVoice für referenzbasierte Text-zu-Sprache-Ausgabe. | ++---------------+------------------------------------------------------------+ +| X-VC | Direkte Stimme-zu-Stimme-Umwandlung. | ++---------------+------------------------------------------------------------+ +| Applio / RVC | RVC-Inferenz, Modellverwaltung und Stimmtraining. | ++---------------+------------------------------------------------------------+ + +Qwen3-TTS läuft nur im LLM-Modus. In einem exklusiven Spezialmodus bleibt das +leichte TTS-Gateway als API-Dienst gesund, meldet aber "ready: false", weil das +eigentliche Qwen3-TTS-Modell absichtlich entladen ist. + + +TTS-AUFBAU +=========== + + +-----------------------------+ + | Router / OpenAI-TTS-Endpunkt| + +--------------+--------------+ + | + v + +-----------------------------+ + | mike-ai-tts-gateway | + | - Text normalisieren | + | - Ausgabeformat umwandeln | + | - PCM-Streaming | + +--------------+--------------+ + | + v + +-----------------------------+ + | mike-ai-qwen3-tts | + | Qwen3-TTS 1.7B / Serena | + +-----------------------------+ + +Piper und sein CPU-Fallback wurden vollständig entfernt. Das TTS-Gateway +bleibt notwendig, weil es die stabile Schnittstelle und die Verarbeitung um +Qwen3-TTS herum bereitstellt. Wenn Qwen3-TTS nicht geladen ist, steht keine +Sprachausgabe zur Verfügung; es wird nicht mehr auf ein zweites Modell +zurückgegriffen. + + +DAUERHAFTE DOCKER-VOLUMES +========================= + +Bestandsprüfung vom 10.09.2026: Alle vier Volumes sind einem vorhandenen +Container zugeordnet. "docker volume ls -f dangling=true" liefert keine +Treffer. + ++-------------------------+-----------------------------------------------+ +| Volume | Verwendung | ++-------------------------+-----------------------------------------------+ +| mike-ai_router-state | Persistenter Routerzustand und Betriebsmodus. | ++-------------------------+-----------------------------------------------+ +| mike-ai_router-images | Vom Router und Bilddienst erzeugte Bilder. | ++-------------------------+-----------------------------------------------+ +| mike-ai_whisper-data | Lokales Whisper-Modell für Sprache-zu-Text. | ++-------------------------+-----------------------------------------------+ +| portainer_data | Einstellungen und Daten von Portainer. | ++-------------------------+-----------------------------------------------+ + +Das frühere Volume "mike-ai_piper-data" wurde zusammen mit Piper gelöscht. +Beta 1 besaß kein eigenes Docker-Volume; seine rund 12 GB Modellgewichte lagen +als Hostverzeichnis unter /data/models und wurden ebenfalls gelöscht. + +Viele Fachdienste verwenden statt Docker-Volumes direkte Hostverzeichnisse. +Die wichtigsten davon sind: + +- /data/models Modellgewichte und Modell-Caches +- /data/voice/applio Applio-Datensätze, Logs und Stimmenmodelle +- /data/music Musikprojekte und generierte Titel +- /data/audio/separation Ergebnisse der Audio- und Spurentrennung +- /data/llama-dashboard Verlauf und Zustandsdaten des Dashboards +- /etc/mike-ai betriebliche Konfiguration und Geheimnisse +- /data/docker-backups erzeugte Sicherungsarchive + +Diese Verzeichnisse sind keine Docker-Volumes. Ein leerer Docker-Volume-Check +beweist deshalb nicht automatisch, dass unter /data keine alten Experiment- +oder Modelldateien mehr liegen. + + +AKTUELLER UMFANG DES BACKUP-CONTAINERS +====================================== + +Der Container mike-ai-backup sichert derzeit im Fünf-Stunden-Takt: + +- /etc/mike-ai +- /opt/mike-ai/stack +- mike-ai_router-state +- mike-ai_router-images +- portainer_data + +Das Volume mike-ai_whisper-data wird nicht archiviert. Das Whisper-Modell wird +bei einem leeren Volume automatisch erneut heruntergeladen. Die großen +Hostverzeichnisse unter /data/models, /data/voice, /data/music und +/data/audio sind ebenfalls nicht automatisch Bestandteil dieses +Docker-Volume-Backups. Besonders eigene Trainingsdaten und trainierte +Stimmenmodelle benötigen deshalb eine zusätzliche Datensicherung, wenn sie +nicht reproduzierbar sind. + + +ENTFERNTE KOMPONENTEN +===================== + +- Beta 1 / qwen-beta-1: Profil, Containerdefinition, Container und + GSQ-RCO-IQ3_S-Modellgewichte entfernt. Der historische Testbericht bleibt + erhalten, damit das Modell nicht versehentlich erneut getestet wird. +- Piper: Containerdefinition, Container, Image, Datenvolume, Konfiguration und + WireGuard-Port 8091 entfernt. + + +WICHTIGES GRUNDPRINZIP +====================== + +Die Anwendungen laufen überwiegend in Docker-Containern. Container selbst +sind austauschbar und können aus den versionierten Stack-Dateien neu gebaut +werden. Modelle, Trainingsmaterial, Ergebnisse und betriebliche Einstellungen +liegen dagegen dauerhaft auf dem Debian-Host und werden in die Container +eingebunden. + +Ein neu gebauter Container darf deshalb keine Nutzdaten vernichten. Für eine +vollständige Wiederherstellung werden jedoch sowohl das Git-Repository mit dem +Stack als auch eine Sicherung der dauerhaften Hostdaten benötigt.