build: document local model runtime
This commit is contained in:
@@ -12,6 +12,8 @@ Alle wesentlichen Projektänderungen werden hier in verständlicher Form dokumen
|
|||||||
- Eng begrenzte projektinterne Codex-Agentenrollen.
|
- Eng begrenzte projektinterne Codex-Agentenrollen.
|
||||||
- Abhängigkeitsfreier Strukturprüfer.
|
- Abhängigkeitsfreier Strukturprüfer.
|
||||||
- Phasenbezogene Empfehlung für Entwicklungswerkzeuge, VS-Code-Erweiterungen, Obsidian und lokale Modelllaufzeiten.
|
- 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
|
### 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.
|
- 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.
|
- Isolierte Python-3.12-Entwicklungsumgebung mit uv-Lockfile und Ruff vorbereitet.
|
||||||
- Offizielle VS-Code-Erweiterungen für Python, Pylance und Python Environments eingerichtet.
|
- 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
|
### Security
|
||||||
|
|
||||||
|
|||||||
+30
-9
@@ -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`.
|
- 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.
|
- 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.
|
- 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.
|
- Kein Obsidian-, Laptop- oder Rootserverzugriff wurde implementiert.
|
||||||
- Keine KI-, Sprach-, Mobil- oder Statusfunktion ist implementiert.
|
- Keine KI-, Sprach-, Mobil- oder Statusfunktion ist implementiert.
|
||||||
|
|
||||||
@@ -83,6 +87,11 @@ Rootserver:
|
|||||||
- Handoff-Verdichtung als Commit `e6eb995` nach `origin/main` gepusht.
|
- Handoff-Verdichtung als Commit `e6eb995` nach `origin/main` gepusht.
|
||||||
- Branch `feat/core-chat` von diesem Stand erstellt.
|
- Branch `feat/core-chat` von diesem Stand erstellt.
|
||||||
- uv, CPython 3.12, lokale `.venv`, Ruff, Lockfile und offizielle VS-Code-Python-Erweiterungen eingerichtet.
|
- 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.
|
- Obsidian, Ubuntu-Laptop und Rootserver blieben unverändert.
|
||||||
|
|
||||||
## Aktuelle Tests
|
## Aktuelle Tests
|
||||||
@@ -99,7 +108,18 @@ Letzter bestätigter Grundgerüststand:
|
|||||||
- Python in `.venv`: 3.12.13
|
- Python in `.venv`: 3.12.13
|
||||||
- Ruff in `.venv`: 0.16.0
|
- 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
|
## Git-Stand
|
||||||
|
|
||||||
@@ -108,7 +128,7 @@ Für den Textchat existieren noch keine Funktions- oder Modell-Smoke-Tests.
|
|||||||
- Grundgerüstcommit: `6d04171`
|
- Grundgerüstcommit: `6d04171`
|
||||||
- letzter Commit vor der Handoff-Verdichtung: `0e82748`
|
- letzter Commit vor der Handoff-Verdichtung: `0e82748`
|
||||||
- Handoff-Verdichtung auf `main`: `e6eb995`
|
- 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
|
- `origin` verwendet HTTPS
|
||||||
- kein Force-Push und keine umgeschriebene Historie
|
- 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
|
- `0e82748`: Werkzeug-, Token- und Handoff-Regeln
|
||||||
- `e6eb995`: einmalige Archivierung und Verdichtung des Handoffs
|
- `e6eb995`: einmalige Archivierung und Verdichtung des Handoffs
|
||||||
- aktuell: isolierte Python-Toolchain und reproduzierbare Entwicklungsumgebung
|
- aktuell: isolierte Python-Toolchain und reproduzierbare Entwicklungsumgebung
|
||||||
|
- aktuell: portable Ollama-Laufzeit und `qwen3:8b` außerhalb von Git verifiziert
|
||||||
|
|
||||||
## Offene Entscheidungen und Fehler
|
## Offene Entscheidungen und Fehler
|
||||||
|
|
||||||
- endgültiger Produkt-/Repositoryname bleibt offen
|
- 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
|
- 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
|
- 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
|
- 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`:
|
Der genehmigte nächste Meilenstein ist `feat/core-chat`:
|
||||||
|
|
||||||
1. Ollama als einfachere Windows-Laufzeit installieren; llama.cpp bleibt dokumentierte Alternative
|
1. vorbereiteten lokalen CLI-Chat mit Provider-Schnittstelle und SQLite-Sitzungen
|
||||||
2. genau `qwen3:8b` (`Q4_K_M`, 5,2 GB, Apache-2.0) herunterladen und auf der RTX 3060 messen
|
in den Feature-Branch übernehmen
|
||||||
3. echten lokalen CLI-Chat mit Provider-Schnittstelle und SQLite-Sitzungen implementieren
|
2. Unit-, Ruff-, Persistenz-, Secret- und echten CLI-Modell-Smoke-Test ausführen
|
||||||
4. Unit-, Ruff-, Persistenz-, Secret- und echten Modell-Smoke-Test ausführen
|
3. Dokumentation und Handoff auf den tatsächlichen Endstand bringen
|
||||||
5. nur bei vollständig erfüllter Abnahme nach `main` mergen
|
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.
|
Nicht Teil dieses Meilensteins: Obsidian-Integration, Serverzugriff, Sprache, Mobile Client oder Living-Mind-Code.
|
||||||
|
|||||||
@@ -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.
|
||||||
@@ -2,7 +2,8 @@
|
|||||||
|
|
||||||
## Ziel
|
## 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
|
## Vor Änderungen erneut prüfen
|
||||||
|
|
||||||
@@ -13,10 +14,10 @@ Nächstes Arbeitspaket auf `feat/core-chat`: genau eine lokale Modelllaufzeit un
|
|||||||
|
|
||||||
## Vorgeschlagener Umfang
|
## 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
|
- lokale Konfiguration, Provider-Schnittstelle und SQLite-Sitzungen implementieren
|
||||||
- CLI mit neuen, gelisteten und fortsetzbaren Sitzungen
|
- 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
|
## Nicht beginnen
|
||||||
|
|
||||||
|
|||||||
+10
-3
@@ -1,6 +1,6 @@
|
|||||||
# Projektstatus
|
# Projektstatus
|
||||||
|
|
||||||
Stand: Toolchain-Arbeitspaket auf `feat/core-chat`, 30.07.2026.
|
Stand: lokale Modelllaufzeit auf `feat/core-chat`, 30.07.2026.
|
||||||
|
|
||||||
## Erreicht
|
## 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
|
- 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
|
- lokale `.venv`, reproduzierbares `uv.lock` und Ruff 0.16.0 eingerichtet
|
||||||
- offizielle VS-Code-Erweiterungen Python, Pylance und Python Environments installiert
|
- 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
|
## 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
|
## Git
|
||||||
|
|
||||||
@@ -29,4 +34,6 @@ KI, Chat, Provider, Gedächtnis, Obsidian-Adapter, Tools, Serverzugriff, Sprache
|
|||||||
|
|
||||||
## Bekannte Einschränkung
|
## 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.
|
||||||
|
|||||||
Reference in New Issue
Block a user