build: document local model runtime

This commit is contained in:
2026-07-30 16:59:25 +02:00
parent fa90a5c5de
commit 10d7cd7662
5 changed files with 108 additions and 15 deletions
+3
View File
@@ -12,6 +12,8 @@ Alle wesentlichen Projektänderungen werden hier in verständlicher Form dokumen
- Eng begrenzte projektinterne Codex-Agentenrollen.
- Abhängigkeitsfreier Strukturprüfer.
- Phasenbezogene Empfehlung für Entwicklungswerkzeuge, VS-Code-Erweiterungen, Obsidian und lokale Modelllaufzeiten.
- Dokumentierte, portable Ollama-Laufzeit 0.32.5 und genau ein lokales Modell
`qwen3:8b` außerhalb des Repositories.
### Changed
@@ -21,6 +23,7 @@ Alle wesentlichen Projektänderungen werden hier in verständlicher Form dokumen
- Vollständigen Erst-Handoff einmalig archiviert und die laufende Übergabe auf einen kompakten aktuellen Stand umgestellt.
- Isolierte Python-3.12-Entwicklungsumgebung mit uv-Lockfile und Ruff vorbereitet.
- Offizielle VS-Code-Erweiterungen für Python, Pylance und Python Environments eingerichtet.
- `qwen3:8b` mit echten deutschen Antworten und GPU-/Zeitmessungen auf der RTX 3060 geprüft.
### Security
+30 -9
View File
@@ -53,7 +53,11 @@ Rootserver:
- Toolchain eingerichtet: uv 0.11.32 und CPython 3.12.13 isoliert unter `D:\Javis-Tools`; Ruff 0.16.0 in der lokalen `.venv`.
- Offizielle VS-Code-Erweiterungen installiert: Python 2026.4.0, Pylance 2026.3.1, Python Environments 1.36.0 und Debugpy 2026.6.0.
- Windows-PATH und vorhandene Python-Installationen wurden nicht verändert.
- Ollama oder llama.cpp sind noch nicht installiert.
- Ollama 0.32.5 ist portabel unter `D:\Javis-Tools\ollama` installiert.
- Genau ein Modell ist installiert: `qwen3:8b`, GGUF `Q4_K_M`, 5,2 GB, Apache-2.0.
- Modelle liegen außerhalb von Git unter `D:\Javis-Data\ollama-models`.
- Der lokale Ollama-Dienst bindet nur an `127.0.0.1:11434`; PATH, Registry,
Autostart und Windows-Dienste blieben unverändert.
- Kein Obsidian-, Laptop- oder Rootserverzugriff wurde implementiert.
- Keine KI-, Sprach-, Mobil- oder Statusfunktion ist implementiert.
@@ -83,6 +87,11 @@ Rootserver:
- Handoff-Verdichtung als Commit `e6eb995` nach `origin/main` gepusht.
- Branch `feat/core-chat` von diesem Stand erstellt.
- uv, CPython 3.12, lokale `.venv`, Ruff, Lockfile und offizielle VS-Code-Python-Erweiterungen eingerichtet.
- Ollama und llama.cpp anhand offizieller Quellen verglichen; Ollama als einfachere
erste Windows-Laufzeit gewählt.
- Ollama-Archiv gegen die offizielle SHA-256-Prüfsumme verifiziert und portabel installiert.
- `qwen3:8b` außerhalb des Repositories geladen und mit zwei echten deutschen
Modellantworten auf der RTX 3060 geprüft.
- Obsidian, Ubuntu-Laptop und Rootserver blieben unverändert.
## Aktuelle Tests
@@ -99,7 +108,18 @@ Letzter bestätigter Grundgerüststand:
- Python in `.venv`: 3.12.13
- Ruff in `.venv`: 0.16.0
Für den Textchat existieren noch keine Funktions- oder Modell-Smoke-Tests.
Lokaler Modell-Smoke-Test:
- Ollama-Version/API: 0.32.5, localhost erreichbar
- Modell: 5.225.388.164 Byte, 8,2B, Q4_K_M, Apache-2.0
- kalter Aufruf: 36,19 s Wandzeit, davon 17,53 s Laden, ungefähr 7,22 Token/s
- warmer kurzer Aufruf: 0,56 s Wandzeit, ungefähr 55,51 Token/s
- GPU-Belegung: 1.418 MiB vorher, 6.842 MiB mit geladenem Modell
- Ollama meldet 100 % GPU und 5,6 GB Modellbelegung
Zwölf vorbereitete Unit-Tests für Konfiguration, SQLite, Kern, Provider und CLI
laufen in der Arbeitskopie bereits erfolgreich; sie sind noch nicht in den
Feature-Branch übernommen.
## Git-Stand
@@ -108,7 +128,7 @@ Für den Textchat existieren noch keine Funktions- oder Modell-Smoke-Tests.
- Grundgerüstcommit: `6d04171`
- letzter Commit vor der Handoff-Verdichtung: `0e82748`
- Handoff-Verdichtung auf `main`: `e6eb995`
- aktueller Feature-Commit ist über `git log -1 --oneline` zu bestimmen
- Python-Entwicklungsumgebung auf dem Feature-Branch: `fa90a5c`
- `origin` verwendet HTTPS
- kein Force-Push und keine umgeschriebene Historie
@@ -119,11 +139,12 @@ Für den Textchat existieren noch keine Funktions- oder Modell-Smoke-Tests.
- `0e82748`: Werkzeug-, Token- und Handoff-Regeln
- `e6eb995`: einmalige Archivierung und Verdichtung des Handoffs
- aktuell: isolierte Python-Toolchain und reproduzierbare Entwicklungsumgebung
- aktuell: portable Ollama-Laufzeit und `qwen3:8b` außerhalb von Git verifiziert
## Offene Entscheidungen und Fehler
- endgültiger Produkt-/Repositoryname bleibt offen
- lokale Modelllaufzeit und erstes Modell sind noch nicht installiert oder benchmarked
- Startmechanismus für Ollama ist noch bewusst manuell und nur pro Prozess konfiguriert
- genauer späterer Obsidian-Schreibbereich ist nicht freigegeben
- endgültiger Secret-Provider ist offen; lokale Klartext-XML wäre nur restriktiv geschützt und Git-ignoriert zulässig
- Gaming-PC zeigt derzeit nur 8 statt 16 logische CPU-Prozessoren; Ursache ungeklärt
@@ -143,10 +164,10 @@ Für den Textchat existieren noch keine Funktions- oder Modell-Smoke-Tests.
Der genehmigte nächste Meilenstein ist `feat/core-chat`:
1. Ollama als einfachere Windows-Laufzeit installieren; llama.cpp bleibt dokumentierte Alternative
2. genau `qwen3:8b` (`Q4_K_M`, 5,2 GB, Apache-2.0) herunterladen und auf der RTX 3060 messen
3. echten lokalen CLI-Chat mit Provider-Schnittstelle und SQLite-Sitzungen implementieren
4. Unit-, Ruff-, Persistenz-, Secret- und echten Modell-Smoke-Test ausführen
5. nur bei vollständig erfüllter Abnahme nach `main` mergen
1. vorbereiteten lokalen CLI-Chat mit Provider-Schnittstelle und SQLite-Sitzungen
in den Feature-Branch übernehmen
2. Unit-, Ruff-, Persistenz-, Secret- und echten CLI-Modell-Smoke-Test ausführen
3. Dokumentation und Handoff auf den tatsächlichen Endstand bringen
4. Feature-Branch pushen und nur bei vollständig erfüllter Abnahme nach `main` mergen
Nicht Teil dieses Meilensteins: Obsidian-Integration, Serverzugriff, Sprache, Mobile Client oder Living-Mind-Code.
+61
View File
@@ -0,0 +1,61 @@
# Lokales Modell
Stand: 30.07.2026, erster Windows-Test auf dem Gaming-PC.
## Auswahl
- Laufzeit: Ollama `0.32.5`, portable Windows-Version
- Modell: `qwen3:8b`
- Format: GGUF
- Quantisierung: `Q4_K_M`
- Parameter: 8,2 Milliarden
- Kontext laut Modellmetadaten: 40.960 Token; Ollama-Testkontext: 4.096
- Downloadgröße laut lokaler Ollama-API: 5.225.388.164 Byte, ungefähr 5,2 GB
- Lizenz: Apache License 2.0
Ollama wurde gegenüber llama.cpp für diesen ersten Windows-Test gewählt, weil die
offizielle portable Laufzeit ohne Build, Installer, PATH-Änderung oder Systemdienst
eine stabile lokale HTTP-Schnittstelle bereitstellt. llama.cpp bleibt eine mögliche
spätere Alternative, falls auf schwächerer Hardware feinere Kontrolle über Kontext,
Offloading oder Quantisierung benötigt wird.
`qwen3:8b` wurde gewählt, weil die Variante unter 10 GB bleibt, vollständig in den
12-GB-VRAM der RTX 3060 passt, deutschsprachige Antworten liefert und nach dem
Download offline über localhost nutzbar ist.
## Speicherorte
- portable Laufzeit: `D:\Javis-Tools\ollama`
- Modellablage: `D:\Javis-Data\ollama-models`
- Repository: enthält weder Laufzeit noch Modell
Die Ablage wird beim Start des Dienstes über `OLLAMA_MODELS` nur für diesen Prozess
gesetzt. PATH, Registry, Autostart und Windows-Dienste wurden nicht verändert.
## Gemessener Test
Hardware: AMD Ryzen 7 9700X, 64 GB RAM, Nvidia RTX 3060 12 GB, Windows 11.
- Laufzeit-Archiv: 1.457.824.795 Byte
- verifizierte SHA-256:
`7c941ae084569d298062d29f8139163a3187c76dbca0479c70d085e78fd8c7bb`
- kalter deutscher Zweitsatz-Test: 36,19 Sekunden Wandzeit
- davon Modell-Ladezeit: 17,53 Sekunden
- Ausgabe: 49 Token mit ungefähr 7,22 Token/Sekunde
- warmer kurzer Test: 0,56 Sekunden Wandzeit
- Ausgabe: 19 Token mit ungefähr 55,51 Token/Sekunde
- GPU-Grundbelegung vor Laden: 1.418 MiB
- GPU-Belegung bei geladenem Modell/Test: 6.842 MiB
- beobachtete zusätzliche VRAM-Belegung: ungefähr 5.424 MiB
- `ollama ps`: 5,6 GB, 100 % GPU, Kontext 4.096
Die Messwerte sind Momentaufnahmen und hängen von Prompt, Kontext, bereits belegtem
VRAM und Warmzustand ab.
## Grenze
Dieses Modell ist der bestätigte erste Gaming-PC-Test, nicht automatisch das
endgültige Modell für den ASUS-Laptop mit GTX 1050 4 GB. Dort müssen später
kleineres Modell, stärkere Quantisierung, teilweises CPU-Offloading und tatsächliche
Antwortqualität separat gemessen werden. Ein Laptop-Deployment gehört nicht zu
diesem Arbeitspaket.
+4 -3
View File
@@ -2,7 +2,8 @@
## Ziel
Nächstes Arbeitspaket auf `feat/core-chat`: genau eine lokale Modelllaufzeit und ein echter lokaler CLI-Textchat mit SQLite-Sitzungen.
Nächstes Arbeitspaket auf `feat/core-chat`: den vorbereiteten lokalen CLI-Textchat
mit SQLite-Sitzungen übernehmen, vollständig testen und dokumentieren.
## Vor Änderungen erneut prüfen
@@ -13,10 +14,10 @@ Nächstes Arbeitspaket auf `feat/core-chat`: genau eine lokale Modelllaufzeit un
## Vorgeschlagener Umfang
- Ollama und llama.cpp offiziell vergleichen; nur eine Laufzeit und ein Modell unter ungefähr 10 GB installieren
- lokale Konfiguration, Provider-Schnittstelle und SQLite-Sitzungen implementieren
- CLI mit neuen, gelisteten und fortsetzbaren Sitzungen
- Unit-, Ruff-, Persistenz-, Secret- und echter Modell-Smoke-Test
- Unit-, Ruff-, Persistenz-, Secret- und echter CLI-Modell-Smoke-Test
- Feature-Branch pushen und nur bei erfüllter Abnahme nach `main` mergen
## Nicht beginnen
+10 -3
View File
@@ -1,6 +1,6 @@
# Projektstatus
Stand: Toolchain-Arbeitspaket auf `feat/core-chat`, 30.07.2026.
Stand: lokale Modelllaufzeit auf `feat/core-chat`, 30.07.2026.
## Erreicht
@@ -15,10 +15,15 @@ Stand: Toolchain-Arbeitspaket auf `feat/core-chat`, 30.07.2026.
- uv 0.11.32 und CPython 3.12.13 isoliert unter `D:\Javis-Tools` installiert
- lokale `.venv`, reproduzierbares `uv.lock` und Ruff 0.16.0 eingerichtet
- offizielle VS-Code-Erweiterungen Python, Pylance und Python Environments installiert
- Ollama 0.32.5 portabel und ohne Systemänderungen unter `D:\Javis-Tools` installiert
- `qwen3:8b` (Q4_K_M, 5,2 GB, Apache-2.0) unter `D:\Javis-Data` geladen
- zwei echte deutsche Modellantworten erfolgreich vollständig auf der RTX 3060 erzeugt
- kalter Test 36,19 s, warmer Kurztest 0,56 s; geladene GPU-Belegung 6.842 MiB
## Nicht implementiert
KI, Chat, Provider, Gedächtnis, Obsidian-Adapter, Tools, Serverzugriff, Sprache, Mobile Client und Living-Mind-Frontend.
CLI-Chat, Provider im Repository, Sitzungsspeicher, Obsidian-Adapter, Tools,
Serverzugriff, Sprache, Mobile Client und Living-Mind-Frontend.
## Git
@@ -29,4 +34,6 @@ KI, Chat, Provider, Gedächtnis, Obsidian-Adapter, Tools, Serverzugriff, Sprache
## Bekannte Einschränkung
Die Toolchain ist nutzbar, ohne den Windows-`PATH` zu verändern. Eine lokale Modelllaufzeit und der Textchat sind noch nicht implementiert.
Toolchain und lokale Modelllaufzeit sind nutzbar, ohne den Windows-`PATH`, Registry,
Autostart oder Windows-Dienste zu verändern. Der Textchat ist als Nächstes in den
Feature-Branch zu übernehmen und vollständig gegen das reale Modell zu prüfen.