From 96efad173564a6d5074e318265416c19290d3494 Mon Sep 17 00:00:00 2001 From: Egor Date: Mon, 24 Nov 2025 03:43:19 -0800 Subject: [PATCH] strip query params from URLs for model downloads, less spam on macOS for lines that start with ggml_* --- package.json | 8 ++--- .../modules/koboldcpp/launcher/patches.ts | 2 +- src/main/modules/koboldcpp/model-download.ts | 4 ++- yarn.lock | 32 +++++++++---------- 4 files changed, 24 insertions(+), 22 deletions(-) diff --git a/package.json b/package.json index 1b04b1d..bf8ec77 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "gerbil", "productName": "Gerbil", - "version": "1.10.0", + "version": "1.10.1", "description": "Run Large Language Models locally", "main": "out/main/index.js", "homepage": "./", @@ -40,7 +40,7 @@ "devDependencies": { "@eslint/js": "^9.39.1", "@types/node": "^24.10.1", - "@types/react": "^19.2.6", + "@types/react": "^19.2.7", "@types/react-dom": "^19.2.3", "@types/yauzl": "^2.10.3", "@typescript-eslint/eslint-plugin": "^8.47.0", @@ -70,8 +70,8 @@ "@codemirror/view": "^6.38.8", "@fontsource/inter": "^5.2.8", "@huggingface/gguf": "^0.3.2", - "@mantine/core": "^8.3.8", - "@mantine/hooks": "^8.3.8", + "@mantine/core": "^8.3.9", + "@mantine/hooks": "^8.3.9", "@uiw/react-codemirror": "^4.25.3", "electron-updater": "^6.6.2", "execa": "^9.6.0", diff --git a/src/main/modules/koboldcpp/launcher/patches.ts b/src/main/modules/koboldcpp/launcher/patches.ts index 2705f86..026f5ab 100644 --- a/src/main/modules/koboldcpp/launcher/patches.ts +++ b/src/main/modules/koboldcpp/launcher/patches.ts @@ -132,7 +132,7 @@ export function filterSpam(output: string) { /^llama_kv_cache/, /^set_abort_callback:/, /^attach_threadpool:/, - /^ggml_vulkan:/, + /^ggml_/, /^Namespace\(/, /^==========$/, /^Loading Chat Completions Adapter:/, diff --git a/src/main/modules/koboldcpp/model-download.ts b/src/main/modules/koboldcpp/model-download.ts index 362017b..12f9a60 100644 --- a/src/main/modules/koboldcpp/model-download.ts +++ b/src/main/modules/koboldcpp/model-download.ts @@ -32,10 +32,12 @@ function parseHuggingFaceUrl(url: string) { ); if (hfMatch) { + const pathWithQuery = hfMatch[3]; + const pathWithoutQuery = pathWithQuery.split('?')[0]; return { author: hfMatch[1], model: hfMatch[2], - filename: basename(hfMatch[3]), + filename: basename(pathWithoutQuery), }; } diff --git a/yarn.lock b/yarn.lock index 9ba8f8e..661bf85 100644 --- a/yarn.lock +++ b/yarn.lock @@ -981,9 +981,9 @@ __metadata: languageName: node linkType: hard -"@mantine/core@npm:^8.3.8": - version: 8.3.8 - resolution: "@mantine/core@npm:8.3.8" +"@mantine/core@npm:^8.3.9": + version: 8.3.9 + resolution: "@mantine/core@npm:8.3.9" dependencies: "@floating-ui/react": "npm:^0.27.16" clsx: "npm:^2.1.1" @@ -992,19 +992,19 @@ __metadata: react-textarea-autosize: "npm:8.5.9" type-fest: "npm:^4.41.0" peerDependencies: - "@mantine/hooks": 8.3.8 + "@mantine/hooks": 8.3.9 react: ^18.x || ^19.x react-dom: ^18.x || ^19.x - checksum: 10c0/7027f8b632262b7fc2e29f61a7d8e6f6bc6426f7e5ea93baf031484cf915615e9e36e4799e849cc85d29a2eddc57557d041310c16286a537ed0779bca72cda92 + checksum: 10c0/552e114b41738149b432dbf721155b8ea433106568185cd0bf8eddae791166de42e575d999e13f86ad78d34a8290620feaed6c86ddda3becd517923654a0e70b languageName: node linkType: hard -"@mantine/hooks@npm:^8.3.8": - version: 8.3.8 - resolution: "@mantine/hooks@npm:8.3.8" +"@mantine/hooks@npm:^8.3.9": + version: 8.3.9 + resolution: "@mantine/hooks@npm:8.3.9" peerDependencies: react: ^18.x || ^19.x - checksum: 10c0/5b140aad8881b27b2930c82bc39886c8076ad88ca41ab7c177e3e5fc5d480564189c1449a2acee4a90bd7beeb21a0458e0c3952bb45be75ac2d2e16d27865238 + checksum: 10c0/c414ea2b8b725a40a3115cbd1346d43f68b350a1b6472295a72e346c19bc06b524b13915dbeda73a0f29c391868413ff77bc2afeb8b28a1c950945bc725ad50c languageName: node linkType: hard @@ -1431,12 +1431,12 @@ __metadata: languageName: node linkType: hard -"@types/react@npm:^19.2.6": - version: 19.2.6 - resolution: "@types/react@npm:19.2.6" +"@types/react@npm:^19.2.7": + version: 19.2.7 + resolution: "@types/react@npm:19.2.7" dependencies: csstype: "npm:^3.2.2" - checksum: 10c0/23b1100f88662ce9f9e4fcca3a2b4ef9fff1ecde24ede2b2dcbd07731e48d6946fd7fd156cd133f5b25321694b0569cd9b8dd30b22c4e076d1cf4c8cdd9a75cb + checksum: 10c0/a7b75f1f9fcb34badd6f84098be5e35a0aeca614bc91f93d2698664c0b2ba5ad128422bd470ada598238cebe4f9e604a752aead7dc6f5a92261d0c7f9b27cfd1 languageName: node linkType: hard @@ -3769,10 +3769,10 @@ __metadata: "@eslint/js": "npm:^9.39.1" "@fontsource/inter": "npm:^5.2.8" "@huggingface/gguf": "npm:^0.3.2" - "@mantine/core": "npm:^8.3.8" - "@mantine/hooks": "npm:^8.3.8" + "@mantine/core": "npm:^8.3.9" + "@mantine/hooks": "npm:^8.3.9" "@types/node": "npm:^24.10.1" - "@types/react": "npm:^19.2.6" + "@types/react": "npm:^19.2.7" "@types/react-dom": "npm:^19.2.3" "@types/yauzl": "npm:^2.10.3" "@typescript-eslint/eslint-plugin": "npm:^8.47.0"