feat(model-manager): "Free GPU memory" button to unload ComfyUI models
ComfyUI caches the last model when RAM is plentiful (unified memory), so memory doesn't drop after switching models even though models are being swapped, not accumulated. Add a sidebar "Free GPU memory" button that proxies ComfyUI's POST /free (unload_models + free_memory) via a new /api/comfyui/free endpoint (COMFYUI_URL env). Verified it releases ~7GB. README documents this plus the --disable-smart-memory auto-unload option. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -663,6 +663,24 @@ $("#saveSettings").addEventListener("click", async () => {
|
||||
}
|
||||
});
|
||||
|
||||
// ---- free GPU memory ------------------------------------------------------
|
||||
|
||||
$("#freeMemBtn").addEventListener("click", async () => {
|
||||
const btn = $("#freeMemBtn");
|
||||
const msg = $("#freeMemMsg");
|
||||
btn.disabled = true;
|
||||
msg.className = "form-msg"; msg.textContent = "Unloading…";
|
||||
try {
|
||||
await api("/api/comfyui/free", { method: "POST" });
|
||||
msg.className = "form-msg ok"; msg.textContent = "Models unloaded.";
|
||||
} catch (err) {
|
||||
msg.className = "form-msg err"; msg.textContent = err.message;
|
||||
} finally {
|
||||
btn.disabled = false;
|
||||
setTimeout(() => { msg.textContent = ""; }, 4000);
|
||||
}
|
||||
});
|
||||
|
||||
// ---- boot -----------------------------------------------------------------
|
||||
|
||||
(async function init() {
|
||||
|
||||
Reference in New Issue
Block a user