Files

9.8 KiB
Raw Permalink Blame History

Athena AI

Stand: 21. September 2026, auf Athena geprüft. Die Textprofil-Images verwenden llama.cpp 0.4.1 (b29c606). Der geprüfte Live-Stand beschreibt Profile, GPUs und die Abweichung zwischen dem bereitgestellten Stack und dem Git-Checkout. Der Update- und Aufräumbericht vom 15. September enthält Versionsvergleich, 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 Bild- und Sprachausgabe. Hermes, OpenClaw und die Fach-MCPs laufen auf Unraid.

Die Router-Korrekturen vom 20. September dokumentieren den ausgerollten Stand, reduzierte Statuslatenzen und Tests.

Aktueller Aufbau

Athena

  • genau ein aktives llama.cpp-Profil: Fast, Medium, Large, Ultra oder Uncensored
  • Profile Router auf Port 8081
  • Qwen-Image-2.1 INT8 als produktiver Bildworker auf der RTX 5080
  • offizielle Qwen-Image-2.1 Prompt-Enhancer T2I und I2I als kurzlebige Q5-Worker auf der RTX 3060
  • FLUX.2 Klein 9B FP8 Beta als gestoppter Rückfallcontainer
  • Qwen3-TTS 1.7B auf der RTX 3060 hinter dem TTS-Gateway; kein Piper-Fallback
  • Qwen3-ASR 0.6B Q8 auf der CPU für lokale deutsche Spracherkennung
  • EmbeddingGemma 300M Q8 auf der CPU für OpenClaws hybride Memory-Suche
  • Live-Dashboard mit 21 Tagen Detailhistorie für GPUs und Slot-Kontextbelegung auf Port 8099
  • Portainer CE als optionale Container-Ansicht auf Port 9443
  • WireGuard-Gateway, Datenbackup und Athena-Operator
  • keine produktive Hermes-, OpenWebUI- oder portable Fach-MCP-Instanz

Unraid

  • offizieller Hermes-Agent mit persistentem Appdata
  • je ein eigener Container für ARR, Deemix, Navidrome, STRATO und Nginx Proxy Manager
  • MUA/Unraid-MCP als Unraid-Plugin
  • Media-Tools als nachrüstbare Werkzeugkiste
  • Sicherung durch das vorhandene Unraid-Appdata-Backup

Hermes nutzt Athenas Router unter http://192.168.1.212:8081/v1. Ein MCPHub ist nicht mehr Bestandteil der produktiven Architektur.

Produktiver Bildpfad

Bildanfragen an den Router verwenden seit dem 21. September Qwen-Image-2.1 INT8 über gepinntes ComfyUI. Der Worker läuft mit Low-VRAM auf der RTX 5080, 25 Schritten, CFG 1 und kann bis zu vier Referenzbilder verarbeiten. Vor dem Rendern schreibt der passende offizielle Q5-Prompt- Enhancer den kurzen Text automatisch um: PE-T2I für reine Textaufträge und PE-I2I für Referenzbilder. Er läuft dafür vorübergehend auf der RTX 3060. OpenClaw benötigt weder ein neues Werkzeug noch besondere Promptregeln. Das aktive Textprofil und TTS werden für den Auftrag angehalten und anschließend wiederhergestellt. Der bisherige FLUX.2-Worker und seine Gewichte bleiben als gestoppter, explizit allowlist-beschränkter Rückfallpfad erhalten. Reproduzierbarer Stand und Rückschaltung: Qwen-Image-2.1.

Installation des Repository-Stands

Der produktive Quellstand ist mit diesem Repository abgeglichen. Ein frischer Clone enthält den Athena-Kern, die Spezialprofile sowie die LTX-Erweiterungen. Modelle, Laufzeitdaten und geheime Konfiguration bleiben außerhalb von Git und werden über die dokumentierten Sicherungen wiederhergestellt.

cp config/install.env.example /root/mike-ai-install.env
# Werte in /root/mike-ai-install.env eintragen und chmod 600 setzen
sudo ./install.sh --config /root/mike-ai-install.env

Das Installationsskript baut llama.cpp und die lokalen Images, lädt die versionierten Modellartefakte und startet ausschließlich den Athena-Kern.

Betrieb

# Konfiguration prüfen
./manage.sh validate

# Gesamten Athena-Kern gezielt aktualisieren
./manage.sh deploy core

# Nur einen Dienst ausrollen
./manage.sh deploy router

# Eindeutige Altcontainer entfernen
./manage.sh purge-legacy

# Read-only Ende-zu-Ende-Test
sudo ./smoke-test.sh

Reasoning-Stufen

Der Router übersetzt die Auswahl eines OpenAI-kompatiblen Clients in echte, pro Anfrage geltende llama.cpp-Denkbudgets. Off deaktiviert Thinking; die aktiven Stufen sind auf 256 (Minimal), 768 (Low), 2048 (Medium), 4096 (High) und 8192 Tokens (XHigh/Max/Ultra) begrenzt. Die Modellserver dürfen deshalb kein festes --reasoning-budget setzen, da dieses die dynamischen Budgets von llama.cpp übersteuern würde. Clients, die direkt thinking_budget_tokens senden, behalten ihren expliziten Wert.

Ein oder zwei Modell-Slots

Fast, Large, Ultra und Uncensored laufen mit einem Slot. Medium läuft seit dem 19. September in einem kontrollierten OpenClaw-Praxistest mit zwei Slots. Beide Medium-Slots teilen sich durch --kv-unified einen 160.000-Token-KV-Pool; es entstehen keine zwei unabhängigen 160K-Kontextfenster. Belegt ein Slot beispielsweise 30.000 Token, stehen dem zweiten höchstens noch etwa 130.000 Token aus diesem Pool zur Verfügung. Das Dashboard zeigt diese aktuell erreichbare Kapazität und den freien gemeinsamen Pool dynamisch an.

Die Live-Einstellung liegt auf Athena in /etc/mike-ai/stack.env:

MEDIUM_PARALLEL_SLOTS=2

Zum Umschalten wird nur Medium neu erstellt:

sed -i 's/^MEDIUM_PARALLEL_SLOTS=.*/MEDIUM_PARALLEL_SLOTS=1/' /etc/mike-ai/stack.env
cd /opt/mike-ai/stack
docker compose --env-file /etc/mike-ai/stack.env up -d --no-deps --force-recreate llama-medium

Für zwei Slots wird im ersten Befehl wieder 2 gesetzt. Der Compose- und Installationsstandard bleibt bewusst 1; damit wird der Versuchsstand bei einer Neuinstallation nicht unbemerkt zur Vorgabe. Der aktuelle Live-Test mit OpenClaw kann zwei gleichzeitige Anforderungen annehmen. Sehr große parallele Prefills konkurrieren weiterhin um Rechenleistung und den gemeinsamen KV-Pool.

Endpunkte

  • Router: http://192.168.1.212:8081/v1
  • Embeddings: http://192.168.1.212:8082/v1
  • Athena-Dashboard: http://192.168.1.212:8099

Der Router stellt Sprache OpenAI-kompatibel bereit: Sprachausgabe über /v1/audio/speech und Spracherkennung über /v1/audio/transcriptions. Spracherkennung nutzt Qwen3-ASR-0.6B Q8 auf der CPU; das Modell liegt unter /data/models/qwen3-asr-0.6b-q8. Der Adapter liefert reinen Text unter qwen3-asr; OpenClaw und die Voice-Brücke verwenden denselben Modellnamen. Whisper-Container, Image und Modellvolume sind entfernt. Audiodaten werden lokal auf Athena verarbeitet. Für OpenClaw Talk liegt der lokale Realtime-Provider unter integrations/openclaw-athena-talk. Er verbindet Mikrofon → Athena STT → normalen OpenClaw-Agenten → aktives Athena-TTS, sodass Modell, Werkzeuge und Memory auch im Sprachmodus erhalten bleiben. Die Installation landet in OpenClaws persistentem Datenverzeichnis und bleibt deshalb bei normalen Container-Updates bestehen. Die separate Diktierfunktion verarbeitet seit Plugin-Version 1.3.0 längere Aufnahmen bereits während des Sprechens in überlappenden Sechs-Sekunden- Abschnitten. Beim Loslassen bleibt nur der kurze Rest für OpenClaws festes Fünf-Sekunden-Abschlussfenster. Dafür wurden weder OpenClaw selbst verändert noch ein weiterer Container angelegt.

OpenClaw wird über den Provider llama.cpp → Existing llama-server mit http://192.168.1.212:8081/v1 verbunden. Der Router beantwortet sowohl /models als auch /v1/models mit allen fünf virtuellen Profilen. Dadurch erkennt OpenClaw die vollständige Auswahl automatisch, während Laden, Entladen und Umschalten weiterhin ausschließlich der Athena Profile Router übernimmt.

OpenClaws Memory-Suche verwendet den separaten CPU-Dienst mike-ai-embedding. Dadurch bleiben die GPUs vollständig für Qwen, Vision und TTS verfügbar. Die verbindliche Konfiguration, Prüfung und Wiederherstellung stehen in OpenClaw Memory.

  • Portainer: https://192.168.1.212:9443
  • Hermes-Dashboard auf Unraid: http://192.168.1.2:9119

Die Adressen sind nur über die vorgesehenen privaten Netze erreichbar.

Ausgegliederte MCPs

Weitere produktive Container verwenden ihre jeweiligen Upstream-Images und Unraid-DockerMan-Templates. Details stehen in docs/MCP_SERVERS.md.

Wiederherstellung

Der Sicherungsumfang und die Grenzen eines Neuaufbaus aus dem Repository stehen in docs/RECOVERY.md. Der vor dem Update gesicherte Live-Quellstand dient als Rückfallstand.

Sicherheitsregeln

  • Wichtigste Regel: Der Host steht physisch in einer anderen Stadt. Er wird niemals heruntergefahren oder neu gestartet, und es wird keine Aktion ausgeführt, die seine Erreichbarkeit gefährdet (Details: docs/REMOTE_HOST_RULES.md).
  • config/install.env ist lokal, Modus 0600, und wird ignoriert.
  • API-, Controller-, WebUI- und WireGuard-Schlüssel entstehen erst am Host.
  • 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.
  • Ein Blackhole-Fallback verhindert Traffic-Leaks bei WireGuard-Ausfall.
  • Das Uni-Netz und das Heimnetz dürfen diesen Host nicht als Transit benutzen.

Verbindliche Dokumentation

Git enthält keine Secrets, Chatdaten oder Modellgewichte.