mindnet/docs/archiv/ARCHITECTURE_SNAPSHOT_v2.2.1.md
2025-12-11 16:58:23 +01:00

1.5 KiB

Architecture Snapshot v2.2.1

Stand: Nach Abschluss von WP-04c Kontext: Wichtig für WP-05 Entwicklung.

1. Neue Komponenten (Seit v2.2.0)

A. Feedback Service (app/services/feedback_service.py)

  • Zweck: Logging von Trainingsdaten für späteres Self-Tuning (WP-08).
  • Storage: Lokale JSONL-Dateien in data/logs/ (Append-Only).
    • search_history.jsonl: Query + Snapshot der Ergebnisse (Scores).
    • feedback.jsonl: User-Rating zu spezifischer node_id.

B. Explanation Layer (app/core/retriever.py)

  • Logik: Der Retriever berechnet nicht nur Scores, sondern generiert Explanation-Objekte.
  • Graph: Subgraph (in graph_adapter.py) führt jetzt auch reverse_adj (Incoming Edges), um zu erklären, warum ein Knoten wichtig ist ("Referenziert von...").

C. DTOs (app/models/dto.py)

Das Datenmodell wurde massiv erweitert. Wichtige Klassen für WP-05:

  • QueryResponse: Enthält jetzt query_id (UUID).
  • QueryHit: Enthält optional explanation (Typ Explanation).
  • FeedbackRequest: Für den Feedback-Loop.

2. Implikationen für WP-05 (Chat)

  1. Logging: Auch der neue /chat Endpoint sollte idealerweise die query_id loggen oder nutzen, um Konsistenz zu wahren.
  2. DTO-Nutzung: Der Chat-Service wird intern den Retriever aufrufen. Er muss mit den QueryHit-Objekten arbeiten, um den Kontext für das LLM zu bauen.
  3. Config: Die Persönlichkeit wird in config/prompts.yaml definiert (Late Binding), nicht im Python-Code hardcodiert.