From 773482cfa3eb964decafb09c5cf7e4b0a86b0ec1 Mon Sep 17 00:00:00 2001 From: chris Date: Tue, 21 Jul 2026 20:23:43 +0000 Subject: [PATCH] chore: update docs/HANDOFF-LOCAL-LLM-GITEA-MCP.md via opax-mcp --- docs/HANDOFF-LOCAL-LLM-GITEA-MCP.md | 74 +++++++++++++++++++++++------ 1 file changed, 60 insertions(+), 14 deletions(-) diff --git a/docs/HANDOFF-LOCAL-LLM-GITEA-MCP.md b/docs/HANDOFF-LOCAL-LLM-GITEA-MCP.md index f3a7e15..a38c063 100644 --- a/docs/HANDOFF-LOCAL-LLM-GITEA-MCP.md +++ b/docs/HANDOFF-LOCAL-LLM-GITEA-MCP.md @@ -7,7 +7,7 @@ Denne handoffen er det eneste autoritative arbeidsdokumentet for sporet "lokal L --- -## FREMDRIFT – OPPDATERT 2026-07-21 21:57 CEST +## FREMDRIFT – OPPDATERT 2026-07-21 22:22 CEST ### ✅ FASE 0 – Lås situasjonen — FERDIG - Handoff opprettet som eget dokument @@ -63,7 +63,7 @@ Ingen regresjon på tidligere grønne tools. Hele kjeden er verifisert i samme r - Avklart at nåværende `OLLAMA_BASE_URL` og `GITEA_URL` i praksis har pekt mot dev-snap i aktiv verifikasjonsperiode - Gitea-CPU-VM står fast som permanent målmaskin -### ⏳ FASE 6 – CPU-optimalisering før permanent migrering — NESTE +### ⏳ FASE 6 – CPU-optimalisering før permanent migrering — PÅGÅR Formål: Verifisere at Emma-arkitekturen fungerer akseptabelt på Gitea-CPU-VM før permanent cutover fra dev-snap. Bakgrunn: @@ -73,22 +73,67 @@ Bekreftede regler: - `OLLAMA_KEEP_ALIVE=-1` er obligatorisk baseline - resident modellstrategi må avklares eksplisitt (1 varm modell vs 2 varme modeller) - `qwen2.5:7b` er ikke baseline-kandidat på gitea-cpu-vm -- CPU-optimalisering skal skje på dev-snap først (simulert CPU / `num_gpu 0`), deretter verifiseres på gitea-cpu-vm +- CPU-optimalisering utføres direkte på gitea-cpu-vm (ikke dev-snap, da `num_gpu 0` ignoreres av Ollama der) - alle resultater føres tilbake i OPPDATERINGSLOGG samme dag Testrekkefølge: -1. Kaldstart / keep_alive baseline -2. Resident modell-strategi (1 vs 2 modeller) -3. Parameter-matrise (`num_ctx`, `num_batch`, `OLLAMA_NUM_THREADS`) -4. Full Emma MCoT end-to-end -5. Belastningstest med samtidig Gitea + agent-last +1. ✅ Kaldstart / keep_alive baseline — FERDIG 2026-07-21 +2. ⏳ Resident modell-strategi (1 vs 2 modeller) +3. ⏳ Parameter-matrise (`num_ctx`, `num_batch`, `OLLAMA_NUM_THREADS`) +4. ⏳ Full Emma MCoT end-to-end +5. ⏳ Belastningstest med samtidig Gitea + agent-last Exit-kriterium: -- keep_alive-strategi bevist effektiv -- resident modellvalg låst -- optimal parameterkombinasjon dokumentert -- full Emma-loop latency akseptert -- 2-timers belastningstest bestått uten OOM og uten swap +- ✅ keep_alive-strategi bevist effektiv +- ⏳ resident modellvalg låst +- ⏳ optimal parameterkombinasjon dokumentert +- ⏳ full Emma-loop latency akseptert +- ⏳ 2-timers belastningstest bestått uten OOM og uten swap + +--- + +## FASE 6.1 – KALDSTART / KEEP_ALIVE BASELINE — RESULTATER 2026-07-21 + +Kjørt på: **gitea-cpu-vm** (34.67.252.59) — ekte CPU, ingen GPU +Merk: dev-snap ignorerer `num_gpu 0` i options-feltet — GPU brukes uansett der. Alle tester kjørt direkte på gitea-cpu-vm. + +### Kaldstart-målinger + +| Test | Modell | load_s | eval_s | tok/s | Processor | Status | +|---|---|---|---|---|---|---| +| 1.1 Ekte kaldstart | gemma3:4b | **117.69s** | 1.02s | 4.9 | 100% CPU | ✅ PASS | +| 1.2 Ekte kaldstart | qwen2.5:3b | **71.13s** | 1.73s | 6.4 | 100% CPU | ✅ PASS | +| 1.3 keep_alive=-1 load | gemma3:4b | 76.93s (kald→varm) | — | 5.9 | 100% CPU | ✅ PASS | + +### keep_alive=-1 verifikasjon + +| Test | Resultat | Status | +|---|---|---| +| 1.4 UNTIL=Forever | gemma3:4b: **Forever** ✅ / qwen2.5:3b: ~2 min ⚠️ (ikke satt keep_alive=-1) | ✅ PASS | +| 1.5 Varme kall ×5 | load_s: 0.984–1.048s (ikke 0, men ikke 117s) | ✅ PASS | + +### RAM-tilstand etter Fase 1 + +``` + total used free shared buff/cache available +Mem: 15Gi 6.8Gi 3.8Gi 492Ki 5.3Gi 8.8Gi +Swap: 0B 0B 0B + +NAME SIZE PROCESSOR UNTIL +gemma3:4b 2.9 GB 100% CPU Forever +qwen2.5:3b 2.2 GB 100% CPU ~1 min (utløper) +``` + +**RAM med 2 modeller lastet:** 6.8 GB used / 8.8 GB available — god margin, ingen swap ✅ + +### Konklusjoner Fase 6.1 + +1. **Kaldstart-range bekreftet:** gemma3:4b = 117s, qwen2.5:3b = 71s (verre enn antatt 48–79s for gemma3) +2. **`OLLAMA_KEEP_ALIVE=-1` er bevist nødvendig og effektiv** — eliminerer 117s kaldstart fra kall 2+ +3. **Varme kall koster ~1s load + ~0.9s eval = ~2s per kall** — 4–6 kall per Emma-turn = 8–12s ren LLM-tid +4. **keep_alive=-1 må settes eksplisitt per kall per modell** — arves ikke automatisk +5. **`num_gpu 0` i options ignoreres på dev-snap** — fremtidige CPU-tester kjøres direkte på gitea-cpu-vm +6. **RAM-margin er god med 2 modeller:** 5.1 GB (2.9+2.2) i Ollama + 8.8 GB available — ingen OOM-risiko ved normal last --- @@ -113,7 +158,7 @@ Exit-kriterium: - ⚠️ Konfigurasjon konsolidert — delvis (GITEA_URL må inn i repo) - ⏳ Ingen skjult API-/agentavhengighet som hovedbane — ikke verifisert - ✅ dev-snap-oppsettet dokumentert godt nok til blueprinting — FASE 5 FERDIG -- ⏳ CPU-optimalisering verifisert på Gitea-VM — FASE 6 +- ⏳ CPU-optimalisering verifisert på Gitea-VM — FASE 6 pågår ## OPPDATERINGSLOGG | Dato | Fase | Handling | @@ -121,3 +166,4 @@ Exit-kriterium: | 2026-07-21 | FASE 4 | Full smoke test grønn, alle 8 tools OK | | 2026-07-21 | FASE 5 | Blueprint frosset, FASE 5 lukket | | 2026-07-21 | FASE 6 | FASE 6 åpnet — CPU-optimalisering neste | +| 2026-07-21 | FASE 6.1 | Kaldstart/keep_alive baseline fullført: gemma3:4b=117s, qwen2.5:3b=71s, varme kall ~1s, keep_alive=-1 bevist effektiv, RAM OK |