Commit Graph

725 Commits

Author SHA1 Message Date
8436f4192d neuer chunker und smart test 2025-12-12 08:47:12 +01:00
13ab2b7d68 chunker mit LLM initial 2025-12-11 23:21:24 +01:00
714763f92f pfad auf types.yaml angepasst 2025-12-11 22:48:31 +01:00
a1cd0741c9 smarter chunker initial 2025-12-11 22:39:35 +01:00
c741cc7d1b vault
All checks were successful
Deploy mindnet to llm-node / deploy (push) Successful in 3s
2025-12-11 22:29:03 +01:00
e8b8c9a350 types.yaml angepasst
All checks were successful
Deploy mindnet to llm-node / deploy (push) Successful in 4s
2025-12-11 22:02:44 +01:00
f016a16c68 Merge pull request 'WP11' (#8) from WP11 into main
All checks were successful
Deploy mindnet to llm-node / deploy (push) Successful in 3s
Reviewed-on: #8
# Merge Request: WP-11 Backend Intelligence & Async Core (v2.4.0)

**Branch:** `feature/wp11-backend-intelligence` → `main`
**Reviewer:** @Mindmaster
**Status:**  Ready to Merge

## 🎯 Zielsetzung
Dieses Update implementiert die "Active Intelligence" Architektur. Das System wechselt von einer reaktiven Suche zu einem proaktiven Assistenten, der während des Schreibens im Editor semantische Verknüpfungen vorschlägt. Zudem wurde der gesamte Core auf `asyncio` umgestellt, um Timeouts bei der Generierung zu verhindern.

## 🛠 Technische Änderungen

### 1. Async & Performance
* **Ingestion:** `scripts/import_markdown.py` und `app/core/ingestion.py` laufen nun asynchron.
* **Embeddings:** Neuer `EmbeddingsClient` nutzt `httpx` statt `requests` (Non-blocking).
* **Semaphore:** Import nutzt max. 5 parallele Tasks, um Ollama-Überlastung zu verhindern.

### 2. Quality Upgrade (Nomic)
* **Modell:** Wechsel von `sentence-transformers` (384 dim) auf `nomic-embed-text` (768 dim).
* **Effekt:** Massiv verbesserte semantische Trefferquote (siehe "Italien-Test").

### 3. Intelligence Features
* **Active Intelligence:** Neuer Endpoint `/ingest/analyze` analysiert Drafts mittels "Sliding Window".
* **Exact Match:** Erkennt Aliases (z.B. "KI-Gedächtnis") zuverlässig.
* **Matrix Logic:** `DiscoveryService` wählt Kanten-Typen kontextsensitiv (z.B. `experience` + `value` -> `based_on`).

### 4. Frontend Integration
* **UI:** Neuer Tab "🧠 Intelligence" im manuellen Editor.
* **State:** "Resurrection Pattern" verhindert Datenverlust beim Tab-Wechsel.

## ⚠️ Breaking Changes (WICHTIG für Deployment)

Dieses Release ist **nicht abwärtskompatibel** zur Datenbank von v2.3!

1.  **Vektor-Dimension:** Geändert von 384 auf 768.
2.  **Ollama:** Modell `nomic-embed-text` ist PFLICHT.
3.  **Config:** `.env` benötigt `VECTOR_DIM=768` und `MINDNET_EMBEDDING_MODEL`.

## 🧪 Test-Protokoll

| Test | Befehl | Status |
| :--- | :--- | :--- |
| **Alias Lookup** | `python debug_analysis.py` |  Pass |
| **Async Import** | `python -m scripts.import_markdown ...` |  Pass |
| **API Intelligence** | `curl ... /ingest/analyze` |  Pass |
| **UI Interaction** | Editor öffnen -> Analyse -> Link einfügen |  Pass |

## 🔄 Deployment Schritte

Nach dem Merge auf dem Server ausführen:
1. `git pull`
2. `pip install -r requirements.txt`
3. `ollama pull nomic-embed-text`
4. **DB Reset:** `python -m scripts.reset_qdrant --mode wipe --prefix mindnet --yes`
5. **Re-Import:** `python -m scripts.import_markdown --vault ./vault --prefix mindnet --apply --force`
6. `sudo systemctl restart mindnet-prod mindnet-ui-prod`
2025-12-11 17:00:37 +01:00
5bf91d51da Dokumentation WP11 2025-12-11 16:58:23 +01:00
00aecf692d UI Texteditor merkt sich den Inhalt bei Umschalten 2025-12-11 15:12:30 +01:00
b815f6235f mehrdimensionale matrix für Kanten 2025-12-11 14:59:59 +01:00
a1a58727fd discovery opt - deduplicate, last 300 Zeichen 2025-12-11 14:46:56 +01:00
b1cf89982b anpassung an 786 vector 2025-12-11 14:28:46 +01:00
5fa02aed2d bug fix 2025-12-11 14:20:00 +01:00
1fde4ed72a reset qdrant überarbeitet mit .env parametern 2025-12-11 13:57:19 +01:00
52210a91fd update aus WP11 2025-12-11 13:50:40 +01:00
9d792e11ce ui change 2025-12-11 13:26:14 +01:00
2677ad7269 bug fix ui 2025-12-11 13:15:43 +01:00
98c395b5de Ui bug fix 2025-12-11 13:05:05 +01:00
b4ebbe5c28 WP10 ui mit text buffer 2025-12-11 12:56:16 +01:00
88e2cbf254 WP10, neue UI mit echtem manuellem Editor/Import 2025-12-11 12:40:39 +01:00
b153571933 hard mode ingestion 2025-12-11 12:23:06 +01:00
aba6f0c38b render draft_editor in ui.py 2025-12-11 12:11:55 +01:00
f4299db347 WP10 Überarbeitung 2025-12-11 12:04:08 +01:00
06f77fe8b7 debug mode im router 2025-12-11 11:35:27 +01:00
54e38d58c3 UI um debug Modus 2025-12-11 11:28:16 +01:00
fd47a954bd bug fix 2025-12-11 11:11:01 +01:00
5aae33f578 bug fixing 2025-12-11 10:46:37 +01:00
4ed04039e5 async 2025-12-11 10:32:56 +01:00
e7cec6acc6 new ingestion, asyn writing, robust 2025-12-11 10:23:23 +01:00
a7cda3f51c bugfix 2025-12-11 08:18:41 +01:00
d2ee48555a angepasste UI 2025-12-11 07:46:27 +01:00
8639791914 payload angepasst 2025-12-11 07:34:31 +01:00
765fad6a8d neuer discovery mode 2025-12-11 07:25:24 +01:00
408c4ace93 import auf .env 2025-12-10 22:22:56 +01:00
565d34fb7b Ergänzung und Korrektur 2025-12-10 22:17:40 +01:00
0170d9291f erster Stand 2025-12-10 22:05:35 +01:00
865b261294 neuer Importer mit eigenem Service 2025-12-10 21:41:43 +01:00
62aa24a4bc Merge pull request 'WP07' (#7) from WP07 into main
All checks were successful
Deploy mindnet to llm-node / deploy (push) Successful in 3s
Reviewed-on: #7
# Feature: Interview Assistent & Draft Editor (WP-07 + WP-10a)

**PR Typ:** Feature
**Version:** v2.4.0
**Status:**  Tested & Documented

## 📝 Zusammenfassung
Dieser Merge transformiert Mindnet von einem reinen RAG-System (Lesen) in ein **Co-Creation-System (Schreiben)**.
Implementiert wurden der **One-Shot Interview Modus**, der auf Basis von User-Prompts strukturierte Markdown-Entwürfe generiert, sowie ein **Frontend-Editor**, um diese Entwürfe zu finalisieren und herunterzuladen.

## 🛠 Technische Änderungen

### Backend (WP-07)
* **`app/routers/chat.py`**:
    * Neue Logikweiche für Intent `INTERVIEW` (kein RAG-Retrieval).
    * Implementierung von `_detect_target_type` (Keyword-Matching für Schemas).
    * Dynamische Injektion von Pflichtfeldern in den Prompt.
* **`config/decision_engine.yaml`**:
    * Neuer Intent `INTERVIEW` definiert.
    * **Late Binding Schemas:** Definition der Pflichtfelder für `project`, `decision`, `goal`, etc.
* **`config/prompts.yaml`**:
    * Neues `interview_template` mit "One-Shot Extraction" Logik und striktem Markdown-Output-Format.

### Frontend (WP-10a)
* **`app/frontend/ui.py`**:
    * Neues Widget `render_draft_editor`: Erkennt Drafts und rendert `st.text_area`.
    * **Sanitizer:** `normalize_meta_and_body` repariert halluzinierte YAML-Header des LLMs.
    * Export-Funktion (Download als `.md`).

### Dokumentation (WP-14)
* Update auf **v2.4.0** für alle Core-Docs (`Overview`, `Tech Arch`, `User Guide`, `Admin Guide`).
* Aktualisierung `Programmplan_V2.2.md` (WP-07/10a auf Grün).

##  Test-Coverage
* [x] Intent `INTERVIEW` wird via Keywords ("neues projekt") erkannt.
* [x] One-Shot Extractor liefert validen Markdown-Codeblock.
* [x] UI rendert Editor statt Chat-Blase.
* [x] Sanitizer fängt falsche YAML-Keys (z.B. 'situation') ab und schiebt sie in den Body.
2025-12-10 18:57:14 +01:00
f2de556c16 dokumentation 2025-12-10 18:55:38 +01:00
67d865d373 ui und prompt 2025-12-10 18:13:35 +01:00
5c0a36c9ea Debug 2 2025-12-10 17:43:03 +01:00
f50ae4c934 debug mode gui 2025-12-10 17:35:21 +01:00
1fefc538ac UI Work 2025-12-10 17:14:51 +01:00
a520b62d08 spezial UI für das Bearbeiten von MD 2025-12-10 16:55:56 +01:00
1063c94f5d UI Anpasung für WP07 2025-12-10 16:41:21 +01:00
954e21ca81 anpassung one shot 2025-12-10 16:16:51 +01:00
fd39211801 neuer prompt 2025-12-10 14:12:53 +01:00
ff23ce6f00 testscript 2025-12-10 14:03:07 +01:00
86464cec11 erster Entwurf WP07 2025-12-10 13:48:13 +01:00
ba57e8b43f Merge pull request 'WP10' (#6) from WP10 into main
All checks were successful
Deploy mindnet to llm-node / deploy (push) Successful in 12s
Reviewed-on: #6
# Merge Request: WP-10 (Chat Interface & Frontend Architecture)

**Branch:** `feature/WP10-chat-interface` → `main`
**Status:**  Ready for Merge
**Version Bump:** v2.3.1 → v2.3.2

## Zusammenfassung
Dieser Merge führt das **Web-Frontend (Streamlit)** ein. Damit wird Mindnet von einer reinen Terminal-Applikation zu einem interaktiven System mit grafischer Benutzeroberfläche.
Das Frontend visualisiert die Entscheidungen der **Decision Engine** (WP-06) und ermöglicht strukturiertes Feedback für das zukünftige **Self-Tuning** (WP-08).

## 🚀 Neue Features (User Perspective)
* **Web Chat UI:** ChatGPT-ähnliches Interface mit persistenter History.
* **Intent Visualisierung:** Badges zeigen an, in welchem Modus (FACT, DECISION, EMPATHY) das System antwortet und *warum* (Keyword vs. LLM).
* **Transparent Sources:** Verwendete Quellen werden als expandierbare Karten unter der Antwort angezeigt, inkl. "Why"-Erklärung.
* **Feedback Loop:**
    * **Global (Antwort):** 1-5 Sterne Rating.
    * **Granular (Quellen):** Faces-Rating (Mapped auf Score 1-5) für spezifische Chunks.

## 🛠️ Technische Änderungen (Backend/Infra)
* **Neue Komponente:** `app/frontend/ui.py` (Streamlit App).
* **Dependencies:** `streamlit` zu `requirements.txt` hinzugefügt.
* **Deployment:** Konfiguration für getrennte Services in Prod und Dev:
    * **PROD:** Backend `:8001` ↔ Frontend `:8501`
    * **DEV:** Backend `:8002` ↔ Frontend `:8502`
* **Logging:** Integration der Feedback-Logik in `data/logs/feedback.jsonl`.

## ⚠️ Deployment Hinweise
Nach dem Merge müssen auf dem Server folgende Schritte ausgeführt werden:

1.  **Dependencies:** `pip install -r requirements.txt` (für Streamlit).
2.  **Systemd:** Neue Service-Files für die UI anlegen (`mindnet-ui-prod.service`).
3.  **Firewall:** Port `8501` (Prod) und `8502` (Dev) in `ufw` freigeben.

## Checkliste
- [x] UI startet und verbindet sich mit API.
- [x] Chat-Flow (Request/Response) funktioniert.
- [x] Intent-Badge zeigt korrekte Source an.
- [x] Feedback wird in `feedback.jsonl` geschrieben.
- [x] Dokumentation (Admin Guide, User Guide, Arch) ist aktualisiert.
2025-12-10 10:29:10 +01:00