diff --git a/mock/app.js b/mock/app.js index a2c07e0..1bcdacb 100644 --- a/mock/app.js +++ b/mock/app.js @@ -122,7 +122,11 @@ async function warmLLM() { } catch {} warming = false; } -setInterval(() => { if (llmOn && !scriptBusy) warmLLM(); }, 120000); // keep the model warm while the tab is open +// Keep-alive is DISABLED by default: the probe pins the big model (Qwen3.8-27B-dual) +// on the LM Studio server and prevents loading other models. Opt in per session +// with ?warm=1 in the URL (accepts the cold first turn cost, see above). +const warmEnabled = new URLSearchParams(location.search).has('warm'); +setInterval(() => { if (warmEnabled && llmOn && !scriptBusy) warmLLM(); }, 120000); // ---------------- web search client (SearXNG via the /search proxy) ------ // Live facts (opening hours, fees, seasonal notes) with provenance URLs — // the third leg of the 3-source blend. Enrichment APPENDS to suggestion