|
All checks were successful
Deploy mindnet to llm-node / deploy (push) Successful in 4s
Reviewed-on: #11 Merge branch 'feature/v2.7.0-smart-stability-cleanup' into develop **WP-14 & WP-15: Consolidated Release & Cleanup (v2.7.0)** Dieses Merge führt die Arbeiten an der Systemstabilität (Async/Fixes), der neuen Chunking-Intelligenz und der massiven Code-Bereinigung zusammen. **Zusammenfassung der Änderungen:** --------------------------------- 1. **API / Core:** - Umbau von `/ingest/save` auf FastAPI BackgroundTasks (Async). - Implementierung `SemanticAnalyzer` für Edge-Filterung. - Traffic Control via `asyncio.Semaphore` im `LLMService`. 2. **Ingestion Logic:** - **Multi-Hash:** Implementierung von Body vs. Full Hash in `note_payload.py`. - **Chunker:** Rewrite von `chunker.py` auf Hybrid-Strategie (Strict Heading + Safety Net). - **Config:** Fix der Hierarchie (Frontmatter > Type > Default). 3. **Refactoring & Cleanup:** - **DELETION:** Entfernung von "Dead Code" (Legacy `mindnet_embed`, alte Router v0.1, ungenutzte UI-Files wie `ui_editor.py`). - **Structure:** Durchsetzung der 4-Säulen-Architektur im `Developer Guide`. - **Docs:** Vollständiges Update aller Tech-Docs (`03_*.md`) auf v2.7.0 Stand sowie Generierung neuer Referenztabellen. **🔧 CONSOLIDATION REPORT (Conflict Resolution):** --------------------------------- Die parallelen Entwicklungsstränge (Bugfix vs. Feature vs. Cleanup) wurden wie folgt gelöst: - **`app/core/ingestion.py`:** - Konflikt: WP-14 entfernte Argumente, WP-15 fügte Smart-Edge-Logik hinzu. - Lösung: Neue Signatur nutzt ENV-Vars für Hashes, ruft aber den neuen Chunker mit `smart_edge`-Flag auf. - **`config/types.yaml`:** - Konflikt: WP-14 verließ sich auf alte Profile, WP-15 führte neue ein. - Lösung: Datei wurde auf WP-15 Stand (v2.6.0+) gehoben, inkl. `structured_smart_edges_strict`. - **`app/frontend/ui.py`:** - Das UI reagiert nun auf den `queued` Status (WP-14), visualisiert aber keine Wartezeit mehr, da der Prozess im Hintergrund läuft. UI-Code für synchrone Warteschlangen wurde entfernt. - **Legacy Removal:** - Alle Dateien, die im AST-Scan `used_by: []` aufwiesen und keine Entrypoints waren (z.B. `app/routers/embed_router.py`), wurden aus dem Git-Index entfernt. **Post-Merge Actions:** --------------------------------- 1. `pip install -r requirements.txt` (Prüfen auf neue Async-Libs). 2. **CRITICAL:** `app/embed_server.py` und andere "Zombie"-Dateien müssen lokal gelöscht werden. 3. `.env` anpassen (`MINDNET_LLM_BACKGROUND_LIMIT`). 4. **FULL REBUILD** erforderlich (`import_markdown --force`). |
||
|---|---|---|
| .gitea/workflows | ||
| .vscode | ||
| app | ||
| config | ||
| docker | ||
| docs | ||
| scripts | ||
| tests | ||
| vault | ||
| vault_master/leitbild2025 | ||
| README.md | ||
| requirements.txt | ||
mindnet API (bundle)
This bundle provides a minimal FastAPI app for embeddings and Qdrant upserts/queries plus a Markdown importer.
Quick start
python3 -m venv .venv && source .venv/bin/activate
pip install -r requirements.txt
# Environment (adjust as needed)
export QDRANT_URL=http://127.0.0.1:6333
export MINDNET_PREFIX=mindnet
export MINDNET_MODEL=sentence-transformers/all-MiniLM-L6-v2
# Run API
uvicorn app.main:app --host 0.0.0.0 --port 8001 --workers 1
# (optional) Ensure collections exist (or use setup_mindnet_collections.py you already have)
# python3 scripts/setup_mindnet_collections.py --qdrant-url $QDRANT_URL --prefix $MINDNET_PREFIX --dim 384 --distance Cosine
# Import some notes
python3 scripts/import_markdown.py --vault /path/to/Obsidian
Endpoints
POST /embed→{ "texts": [...] }→ 384-d vectorsPOST /qdrant/upsert_notePOST /qdrant/upsert_chunkPOST /qdrant/upsert_edgePOST /qdrant/query→ semantic search over chunks with optional filters
See scripts/quick_test.sh for a runnable example.
Anmerkung: Diese Datei ist veraltet und muss auf Stand 2.6.0 gebracht werden