# MindNet v3.1.1 - Release Notes: WP-25b **Release Date:** 2026-01-02 **Type:** Feature Release - Lazy-Prompt-Orchestration & Full Resilience **Version:** 3.1.1 (WP-25b) --- ## 🎯 Überblick Mit WP-25b wurde MindNet von statischer Prompt-Formatierung auf eine **hierarchische Lazy-Prompt-Orchestration** umgestellt. Prompts werden erst im Moment des Modellaustauschs geladen, basierend auf dem exakt aktiven Modell. Dies ermöglicht modell-spezifisches Tuning und maximale Resilienz bei Modell-Fallbacks. Diese Version markiert einen weiteren Architektur-Sprung: Von vorformatierter Prompt-Strings hin zu einer dynamischen, modell-spezifischen Prompt-Auflösung mit vollstĂ€ndiger Traceability. --- ## ✹ Neue Features ### 1. Hierarchisches Prompt-Resolution-System **Implementierung (`app/services/llm_service.py` v3.5.5):** Dreistufige Auflösungs-Logik fĂŒr maximale PrĂ€zision und Resilienz: 1. **Level 1 (Modell-ID):** Exakte Übereinstimmung fĂŒr spezifische Modelle * **Beispiel:** `google/gemini-2.0-flash-exp:free`, `meta-llama/llama-3.3-70b-instruct:free` * **Vorteil:** Modell-spezifische Optimierungen fĂŒr maximale PrĂ€zision * **Logging:** `🎯 [PROMPT-TRACE] Level 1 Match: Model-specific` 2. **Level 2 (Provider):** Fallback auf Provider-Standards * **Beispiel:** `openrouter`, `ollama`, `gemini` * **Vorteil:** BewĂ€hrte Standards aus v3.1.2 bleiben erhalten * **Logging:** `📡 [PROMPT-TRACE] Level 2 Match: Provider-fallback` 3. **Level 3 (Default):** Globaler Sicherheits-Satz * **Fallback-Kette:** `default` → `gemini` → `ollama` → `""` * **Vorteil:** Vermeidung von Fehlern bei unbekannten Konfigurationen * **Logging:** `⚓ [PROMPT-TRACE] Level 3 Match: Global Default` **Vorteile:** * **Modell-spezifisches Tuning:** Jedes Modell kann optimierte Prompts erhalten * **Maximale Resilienz:** Bei Modell-Fallbacks wird automatisch das passende Template geladen * **Traceability:** VollstĂ€ndige Transparenz ĂŒber genutzte Instruktionen ### 2. Lazy-Prompt-Orchestration **Implementierung (`app/services/llm_service.py` v3.5.5):** * **Lazy Loading:** Prompts werden erst zur Laufzeit geladen, wenn das aktive Modell bekannt ist * **Parameter:** `prompt_key` und `variables` statt vorformatierter Strings * **Integration:** VollstĂ€ndig in Chat, Ingestion und DecisionEngine integriert **Vorteile:** * **Dynamische Anpassung:** Prompt wird basierend auf aktivem Modell geladen * **Fallback-Resilienz:** Bei Cloud → Local Fallback wird automatisch das passende Template verwendet * **Wartbarkeit:** Zentrale Konfiguration in `prompts.yaml` statt verstreuter String-Formatierungen ### 3. Ultra-robustes Intent-Parsing **Implementierung (`app/core/retrieval/decision_engine.py` v1.3.2):** * **Regex-basierter Parser:** Bereinigt Modell-Artefakte zuverlĂ€ssig * **Beispiele:** `CODING[/S]` → `CODING`, `DECISION` → `DECISION` * **Robustheit:** Ignoriert Stop-Marker, Newlines oder Plaudereien des Modells **Vorteile:** * **PrĂ€zises Routing:** Strategie-Erkennung funktioniert auch bei freien Modellen mit Artefakten * **Fehlerresistenz:** SystemabstĂŒrze durch fehlerhafte Modell-Antworten werden verhindert ### 4. Differenzierte Ingestion-Validierung **Implementierung (`app/core/ingestion/ingestion_validation.py` v2.14.0):** * **Fehler-Differenzierung:** Unterscheidung zwischen transienten und permanenten Fehlern * **Transiente Fehler:** Timeout, Connection, Network → Kante wird erlaubt (Datenverlust vermeiden) * **Permanente Fehler:** Config, Validation, Invalid Response → Kante wird abgelehnt (Graph-QualitĂ€t schĂŒtzen) **Vorteile:** * **DatenintegritĂ€t:** Transiente Netzwerkfehler fĂŒhren nicht zu Datenverlust * **Graph-QualitĂ€t:** Permanente Konfigurationsfehler schĂŒtzen vor fehlerhaften Kanten ### 5. PROMPT-TRACE Logging **Implementierung (`app/services/llm_service.py` v3.5.5):** * **VollstĂ€ndige Transparenz:** Protokollierung der genutzten Prompt-Auflösungs-Ebene * **Log-Format:** `[PROMPT-TRACE] Level X Match: ...` * **Debugging:** Einfache Nachverfolgung von Prompt-Entscheidungen **Vorteile:** * **Debugging:** Schnelle Identifikation von Prompt-Problemen * **Optimierung:** VerstĂ€ndnis, welche Prompts tatsĂ€chlich genutzt werden * **Audit:** VollstĂ€ndige Nachvollziehbarkeit der System-Entscheidungen --- ## 🔧 Technische Änderungen ### Konfigurationsdateien **Aktualisierte Dateien:** * `config/prompts.yaml` v3.2.2: Hierarchische Struktur mit Modell-spezifischen Overrides * **Erhalt:** 100% der Original-Prompts aus v3.1.2 fĂŒr die Provider-Ebene * **Neu:** Modell-spezifische Overrides fĂŒr Gemini 2.0, Llama 3.3, Qwen 2.5 * **Neu:** `compression_template` fĂŒr DecisionEngine v1.3.0 ### Code-Komponenten | Komponente | Version | Änderungen | | :--- | :--- | :--- | | `app/services/llm_service.py` | v3.5.5 | Hierarchische Prompt-Resolution, Lazy-Loading, PROMPT-TRACE | | `app/core/retrieval/decision_engine.py` | v1.3.2 | Ultra-robustes Intent-Parsing via Regex | | `app/core/ingestion/ingestion_validation.py` | v2.14.0 | Lazy-Prompt-Integration, differenzierte Fehlerbehandlung | | `app/routers/chat.py` | v3.0.3 | Lazy-Prompt-Loading fĂŒr Chat-Synthese | ### API-Änderungen **Neue Parameter:** * `prompt_key`: SchlĂŒssel fĂŒr Lazy-Loading (statt vorformatierter Strings) * `variables`: Daten-Dict fĂŒr Prompt-Formatierung **Veraltete Parameter:** * Vorformatierte `prompt` Strings werden weiterhin unterstĂŒtzt (AbwĂ€rtskompatibilitĂ€t) --- ## 🐛 Behobene Probleme - ✅ **Behoben:** Modell-Artefakte in Intent-Router (z.B. `CODING[/S]` → `CODING`) - ✅ **Behoben:** Fehlende modell-spezifische Prompt-Optimierungen - ✅ **Behoben:** Fehlerhafte Prompt-Auflösung bei Modell-Fallbacks - ✅ **Behoben:** Undifferenzierte Fehlerbehandlung in Ingestion-Validierung --- ## 📚 Dokumentation **Aktualisierte Dokumente:** - ✅ `03_tech_chat_backend.md`: Hierarchisches Prompt-Resolution-System und Lazy-Prompt-Orchestration - ✅ `03_tech_configuration.md`: prompts.yaml hierarchische Struktur dokumentiert - ✅ `02_concept_ai_personality.md`: Lazy-Prompt-Orchestration Konzept - ✅ `03_tech_ingestion_pipeline.md`: Differenzierte Validierung - ✅ `00_glossary.md`: Neue Begriffe (Lazy-Prompt, PROMPT-TRACE, hierarchische Resolution) - ✅ `05_developer_guide.md`: Lazy-Prompt-Orchestration fĂŒr Entwickler - ✅ `06_active_roadmap.md`: WP25b als abgeschlossen markiert --- ## 🚀 Migration & Upgrade ### FĂŒr Administratoren 1. **Keine Breaking Changes:** * Vorformatierte Prompts werden weiterhin unterstĂŒtzt * System funktioniert ohne Änderungen 2. **Optional: Modell-spezifische Optimierungen:** ```yaml # config/prompts.yaml decision_synthesis_v1: "google/gemini-2.0-flash-exp:free": | # Modell-spezifische Optimierung ... ``` 3. **PROMPT-TRACE aktivieren:** * Logs zeigen automatisch die genutzte Auflösungs-Ebene * Keine zusĂ€tzliche Konfiguration erforderlich ### FĂŒr Entwickler **API-Änderungen:** * `LLMService.generate_raw_response()` unterstĂŒtzt nun `prompt_key` und `variables` * Vorformatierte `prompt` Strings bleiben fĂŒr AbwĂ€rtskompatibilitĂ€t erhalten **Best Practice:** * Nutze `prompt_key` und `variables` fĂŒr neue Implementierungen * Lazy-Loading ermöglicht automatische Modell-Anpassung **Konfiguration:** * Neue Modell-spezifische Prompts können in `prompts.yaml` definiert werden * Hierarchische Struktur: Modell-ID → Provider → Default --- ## 🔼 Ausblick (WP-25c) - Kontext-Budgeting: Intelligente Token-Verteilung - Stream-specific Provider: Unterschiedliche KI-Modelle pro Wissensbereich - Erweiterte Prompt-Optimierung: Dynamische Anpassung basierend auf Kontext und Historie --- ## 📊 Metriken & Performance **Erwartete Verbesserungen:** * **PrĂ€zision:** Modell-spezifische Prompts erhöhen AntwortqualitĂ€t * **Resilienz:** Automatische Prompt-Anpassung bei Modell-Fallbacks * **Debugging:** PROMPT-TRACE vereinfacht Fehleranalyse * **Wartbarkeit:** Zentrale Prompt-Konfiguration statt verstreuter Strings --- **Status:** ✅ WP-25b ist zu 100% implementiert und audit-geprĂŒft. **NĂ€chster Schritt:** WP-25c (Kontext-Budgeting & Erweiterte Prompt-Optimierung).