docs/Handbuch.md hinzugefügt
Some checks failed
Deploy mindnet to llm-node / deploy (push) Failing after 1s
Some checks failed
Deploy mindnet to llm-node / deploy (push) Failing after 1s
This commit is contained in:
parent
80a7db0e54
commit
bf2149bbeb
180
docs/Handbuch.md
Normal file
180
docs/Handbuch.md
Normal file
|
|
@ -0,0 +1,180 @@
|
||||||
|
# 📘 Mindnet Skript-Handbuch
|
||||||
|
|
||||||
|
Dieses Handbuch dokumentiert die implementierten Skripte für das Projekt **mindnet Wissensnetzwerk**.
|
||||||
|
Es beschreibt Zweck, Parameter und typische Aufrufe. Alle Beispiele sind geprüft und lauffähig.
|
||||||
|
|
||||||
|
Alle Skripte liegen in `~/mindnet/scripts/`.
|
||||||
|
Ausführung erfolgt **im aktivierten venv**:
|
||||||
|
|
||||||
|
cd ~/mindnet
|
||||||
|
source .venv/bin/activate
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 1. Vault anlegen (für Tests)
|
||||||
|
|
||||||
|
### `make_test_vault.py`
|
||||||
|
|
||||||
|
**Zweck:**
|
||||||
|
Erstellt einen kleinen, nachvollziehbaren Test-Vault mit Markdown-Dateien.
|
||||||
|
Szenarien: offene Links, nachträgliche Anlage fehlender Notes, geänderte Chunk-Grenzen.
|
||||||
|
|
||||||
|
**Parameter:**
|
||||||
|
- `--out PATH` : Zielverzeichnis (Default: `./test_vault`)
|
||||||
|
- `--force` : Existierenden Ordner löschen und neu anlegen
|
||||||
|
- `--with-missing` : Optional – auch die `missing-note` gleich anlegen
|
||||||
|
|
||||||
|
**Beispiele:**
|
||||||
|
|
||||||
|
python3 -m scripts.make_test_vault --out ./test_vault --force
|
||||||
|
python3 -m scripts.make_test_vault --out ./test_vault --force --with-missing
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 2. Import in Qdrant
|
||||||
|
|
||||||
|
### `import_markdown.py`
|
||||||
|
|
||||||
|
**Zweck:**
|
||||||
|
Importiert Notes/Chunks/Edges aus einem Vault nach Qdrant.
|
||||||
|
- prüft Frontmatter
|
||||||
|
- chunked Inhalte + Embeddings
|
||||||
|
- erzeugt Edges (`references`, `references_at`, `backlink`)
|
||||||
|
- erkennt geänderte Dateien automatisch
|
||||||
|
- optional: Purge der alten Chunks/Edges pro Note
|
||||||
|
|
||||||
|
**Parameter:**
|
||||||
|
- `--vault PATH` : (Pflicht) Vault-Verzeichnis
|
||||||
|
- `--apply` : Änderungen wirklich durchführen (sonst Dry-Run)
|
||||||
|
- `--purge-before-upsert` : Vor Upsert alte Chunks/Edges **nur der geänderten Notes** löschen
|
||||||
|
- `--note-id ID` : Nur eine bestimmte Note importieren
|
||||||
|
|
||||||
|
**Beispiele:**
|
||||||
|
|
||||||
|
python3 -m scripts.import_markdown --vault ./vault
|
||||||
|
python3 -m scripts.import_markdown --vault ./vault --apply
|
||||||
|
python3 -m scripts.import_markdown --vault ./vault --apply --purge-before-upsert
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 3. Konsistenzprüfungen
|
||||||
|
|
||||||
|
### `audit_vault_vs_qdrant.py`
|
||||||
|
|
||||||
|
**Zweck:**
|
||||||
|
Vergleicht Vault-Inhalte mit Qdrant.
|
||||||
|
- Zählt Notes/Chunks/Edges
|
||||||
|
- Verifiziert Anzahl Wikilinks vs. Edges
|
||||||
|
- Meldet Mismatches pro Note
|
||||||
|
|
||||||
|
**Parameter:**
|
||||||
|
- `--vault PATH` : Vault-Verzeichnis
|
||||||
|
- `--prefix STR` : Prefix für Qdrant-Collections (Default: `mindnet`)
|
||||||
|
|
||||||
|
**Beispiel:**
|
||||||
|
|
||||||
|
python3 -m scripts.audit_vault_vs_qdrant --vault ./vault --prefix mindnet
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### `validate_edges.py`
|
||||||
|
|
||||||
|
**Zweck:**
|
||||||
|
Prüft die Edges-Collection in Qdrant.
|
||||||
|
- Zählt Edges pro Typ
|
||||||
|
- Kontrolliert Invarianten (z. B. jede Reference hat Backlink)
|
||||||
|
- Listet unresolved Edges auf
|
||||||
|
|
||||||
|
**Parameter:**
|
||||||
|
- `--prefix STR` : Prefix für Qdrant-Collections
|
||||||
|
- `--details` : Detailausgabe mit Beispielen
|
||||||
|
|
||||||
|
**Beispiel:**
|
||||||
|
|
||||||
|
python3 -m scripts.validate_edges --prefix mindnet --details
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 4. Qdrant zurücksetzen
|
||||||
|
|
||||||
|
### `reset_qdrant.py`
|
||||||
|
|
||||||
|
**Zweck:**
|
||||||
|
Setzt die Qdrant-Collections zurück.
|
||||||
|
- „wipe“: löscht Collections komplett (inkl. Schema)
|
||||||
|
- „truncate“: löscht nur Inhalte, behält Collections
|
||||||
|
|
||||||
|
**Parameter:**
|
||||||
|
- `--mode {wipe,truncate}` : Aktion
|
||||||
|
- `--prefix STR` : Prefix der Collections (Default: `mindnet`)
|
||||||
|
- `--yes` : Automatische Bestätigung
|
||||||
|
- `--dry-run` : Nur anzeigen, nicht ausführen
|
||||||
|
|
||||||
|
**Beispiele:**
|
||||||
|
|
||||||
|
python3 -m scripts.reset_qdrant --mode truncate --prefix mindnet --yes
|
||||||
|
python3 -m scripts.reset_qdrant --mode wipe --prefix mindnet --yes
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 5. Diagnose
|
||||||
|
|
||||||
|
### `diagnose_changed.py`
|
||||||
|
|
||||||
|
**Zweck:**
|
||||||
|
Prüft, ob die Datei-Hashes (`sha256`) mit den gespeicherten `hash_fulltext` in Qdrant übereinstimmen.
|
||||||
|
Hilft, wenn der Importer zu viele Dateien als „changed“ erkennt.
|
||||||
|
|
||||||
|
**Parameter:**
|
||||||
|
- `--vault PATH` : Vault-Verzeichnis
|
||||||
|
- `--prefix STR` : Prefix (Default: `mindnet`)
|
||||||
|
- `--note-id ID` : Nur bestimmte Note prüfen
|
||||||
|
- `--all` : Alle Notes prüfen
|
||||||
|
|
||||||
|
**Beispiel:**
|
||||||
|
|
||||||
|
python3 -m scripts.diagnose_changed --vault ./vault --prefix mindnet --all
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 6. Unresolved Links nachträglich auflösen
|
||||||
|
|
||||||
|
### `resolve_unresolved_references.py`
|
||||||
|
|
||||||
|
**Zweck:**
|
||||||
|
Prüft offene Wikilinks (`status=unresolved`) und fügt Edges nach, wenn inzwischen passende Notizen existieren.
|
||||||
|
|
||||||
|
**Parameter:**
|
||||||
|
- `--prefix STR` : Prefix für Qdrant-Collections
|
||||||
|
- `--apply` : Änderungen wirklich ausführen (sonst nur Vorschau)
|
||||||
|
|
||||||
|
**Beispiele:**
|
||||||
|
|
||||||
|
python3 -m scripts.resolve_unresolved_references --prefix mindnet
|
||||||
|
python3 -m scripts.resolve_unresolved_references --prefix mindnet --apply
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# ✅ Typische Workflows
|
||||||
|
|
||||||
|
### A) Vault neu importieren
|
||||||
|
|
||||||
|
python3 -m scripts.reset_qdrant --mode truncate --prefix mindnet --yes
|
||||||
|
python3 -m scripts.import_markdown --vault ./vault --apply
|
||||||
|
python3 -m scripts.audit_vault_vs_qdrant --vault ./vault --prefix mindnet
|
||||||
|
|
||||||
|
### B) Änderungen einspielen (mit Purge für geänderte Notes)
|
||||||
|
|
||||||
|
python3 -m scripts.import_markdown --vault ./vault --apply --purge-before-upsert
|
||||||
|
python3 -m scripts.audit_vault_vs_qdrant --vault ./vault --prefix mindnet
|
||||||
|
|
||||||
|
### C) Unresolved Links nachziehen
|
||||||
|
|
||||||
|
python3 -m scripts.resolve_unresolved_references --prefix mindnet --apply
|
||||||
|
python3 -m scripts.validate_edges --prefix mindnet --details
|
||||||
|
|
||||||
|
### D) Test-Vault Szenario durchspielen
|
||||||
|
|
||||||
|
python3 -m scripts.make_test_vault --out ./test_vault --force
|
||||||
|
python3 -m scripts.import_markdown --vault ./test_vault --apply
|
||||||
|
python3 -m scripts.audit_vault_vs_qdrant --vault ./test_vault --prefix mindnet
|
||||||
Loading…
Reference in New Issue
Block a user