summaryrefslogtreecommitdiffstats
path: root/desktop/modules/ai/AiModule.qml
diff options
context:
space:
mode:
Diffstat (limited to 'desktop/modules/ai/AiModule.qml')
-rw-r--r--desktop/modules/ai/AiModule.qml7
1 files changed, 7 insertions, 0 deletions
diff --git a/desktop/modules/ai/AiModule.qml b/desktop/modules/ai/AiModule.qml
index 6df3d6b..d58ebfe 100644
--- a/desktop/modules/ai/AiModule.qml
+++ b/desktop/modules/ai/AiModule.qml
@@ -85,6 +85,13 @@ Module {
exec(["sh", "-c", 'pkill -TERM -P "$1"; kill -TERM "$1"', "sh", app.detail]);
}
+ // The router frees the model's VRAM; the next request for it loads it
+ // again. Its answer is not read, the next poll shows whether it worked.
+ function unload(model) {
+ exec(["curl", "-s", "-m", "30", "-X", "POST", "-H", "Content-Type: application/json",
+ "-d", JSON.stringify({ model: model }), "http://127.0.0.1:8181/models/unload"]);
+ }
+
// Detached, so a start outlives a quickshell reload. No exit code comes
// back; the next poll shows whether it worked.
function exec(cmd) {