• v2.8.2-dynamicResilince d1a065fec8

    v2.8.2 „Dynamic Resilience“ (WP20a)
    All checks were successful
    Deploy mindnet to llm-node / deploy (push) Successful in 4s
    Stable

    Lars released this 2025-12-26 17:25:23 +01:00 | 200 commits to main since this release

    🚀 Release Notes v2.8.2 „Dynamic Resilience“

    Status & Versionierung

    • Version: 2.8.2
    • Codename: Dynamic Resilience
    • Datum: 2025-12-26
    • Basis: WP-20 "Deep Resilience" (v2.8.1)

    💎 Zusammenfassung

    Das Release v2.8.2 überführt die in v2.8.1 eingeführten Stabilitäts-Fixes in eine vollständig konfigurierbare Ebene. Es entkoppelt die technischen Schutzmechanismen (Kontext-Drosselung, Timeouts) vom Quellcode und erlaubt eine feingranulare Steuerung über Umgebungsvariablen.


    🛠 Änderungen seit v2.8.1

    1. Dynamische Kontext-Drosselung (Chat API)

    Die Begrenzung des Kontext-Fensters für lokale LLM-Anfragen ist nicht länger statisch im Code verankert.

    • Implementierung: chat.py (v2.7.9) nutzt nun get_settings().MAX_OLLAMA_CHARS zur Laufzeit-Drosselung.
    • Flexibilität: Das Limit kann ohne Code-Änderung an die verfügbare Hardware (VRAM/RAM) angepasst werden.
    • Safety: Standardmäßig ist ein Sicherheitswert von 10.000 Zeichen hinterlegt, um decode: cannot decode batches Fehler zu verhindern.

    2. Synchronisierter LLM-Dispatch (v3.3.7)

    Der LLMService wurde final auf das "Fail-Fast"-Prinzip des Echtzeit-Chats optimiert.

    • Retry-Management: Strikte Beachtung des max_retries=0 Parameters bei Chat-Anfragen zur Vermeidung von kumulativen Timeouts.
    • Rate-Limit Sync: Die interne Cloud-Warteschleife (429 Handling) wird nun durch den max_retries Wert des Aufrufers begrenzt.
    • Memory Guard: Festschreibung von num_ctx: 8192 im Ollama-Payload zur Stabilisierung der lokalen Inferenz.

    3. Gehärtete Konfigurationsschicht (v0.6.7)

    Die zentrale Konfiguration wurde um neue Parameter und Validierungen erweitert.

    • Typ-Casting: Alle kritischen Performance-Parameter (TIMEOUT, RETRIES, WAIT) werden nun strikt in numerische Typen konvertiert.
    • Override-Support: load_dotenv(override=True) stellt sicher, dass manuelle Änderungen in der .env sofort nach dem Dienst-Neustart aktiv werden.

    ⚙️ Erforderliche Konfiguration (.env)

    Folgende Parameter müssen für die volle Funktionalität in der .env definiert sein:

    Variable Empfohlener Wert Zweck
    MAX_OLLAMA_CHARS 10000 Maximale Zeichenanzahl für Ollama-Kontext.
    MINDNET_LLM_TIMEOUT 60.0 Maximalzeit für API-Antworten (verhindert 300s Hänger).
    MINDNET_LLM_RATE_LIMIT_RETRIES 0 oder 1 Verhindert lange Cloud-Wartezeiten im Chat.
    MINDNET_LLM_MODEL phi3:stable Verweis auf das stabilisierte lokale Modell.

    📦 Deployment-Checkliste

    1. Docker: Sicherstellen, dass ulimits (nofile: 65535) in der docker-compose.yaml aktiv sind.
    2. Dateien: Einspielen von chat.py (v2.7.9), llm_service.py (v3.3.7) und config.py (v0.6.7).
    3. Restart: Ausführen von sudo systemctl restart mindnet-prod, um die Konfiguration neu zu laden.
    Downloads