@fugood/buttress-server 2.26.0-beta.13 → 2.26.0-beta.15
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +19 -3
- package/config/sample.toml +6 -0
- package/lib/index.mjs +63 -62
- package/package.json +8 -8
package/README.md
CHANGED
|
@@ -216,6 +216,8 @@ Most ggml-llm `[generators.model]` keys can also live in `[runtime]` as defaults
|
|
|
216
216
|
| `no_extra_bufts` | boolean | Disable extra compute buffer types |
|
|
217
217
|
| `cpu_mask`, `cpu_strict` | string / boolean | CPU affinity (advanced) |
|
|
218
218
|
| `devices` | string[] | Restrict to specific GGML devices |
|
|
219
|
+
| `split_mode` | `"none"` / `"layer"` / `"row"` / `"tensor"` | ggml-llm GPU splitting: single GPU, layers + KV (default), weight rows, or weights + KV (experimental tensor parallelism) |
|
|
220
|
+
| `tensor_split` | number[]\|string | ggml-llm per-GPU proportions, e.g. `[3, 1]` or `"3,1"`; unset uses the native automatic split |
|
|
219
221
|
| Speculative keys | various | `speculative`, `spec_type`, `spec_draft_n_max/n_min/p_min/p_split`, plus draft-model GPU/cache settings |
|
|
220
222
|
|
|
221
223
|
### `[autodiscover]`
|
|
@@ -277,6 +279,10 @@ Additional keys honored by **ggml-llm**, **ggml-stt** and **ggml-tts** (mlx-llm
|
|
|
277
279
|
|
|
278
280
|
Loads a GGUF LLM. Runtime keys above can be overridden per-generator under `[generators.model]`; `[generators.backend]` only controls backend selection and resource planning.
|
|
279
281
|
|
|
282
|
+
GPU splitting (`split_mode`, `tensor_split`) is currently configurable only in Buttress.
|
|
283
|
+
TODO: Expose these options in the LLM (GGML) generator. The experimental `tensor` mode
|
|
284
|
+
requires a compatible GPU backend and model architecture.
|
|
285
|
+
|
|
280
286
|
**`[generators.backend]`**
|
|
281
287
|
|
|
282
288
|
| Key | Type | Default | Notes |
|
|
@@ -292,6 +298,7 @@ Loads a GGUF LLM. Runtime keys above can be overridden per-generator under `[gen
|
|
|
292
298
|
| ----------------------------------------------------------------------------- | ---------------- | -------------------------------------------------------------------- |
|
|
293
299
|
| `n_ctx` | number | Context window. Auto-capped at the model's training context. |
|
|
294
300
|
| `n_gpu_layers` | number\|`"auto"` | Layers offloaded to GPU (default `"auto"`) |
|
|
301
|
+
| `split_mode`, `tensor_split` | string / number[]\|string | Per-model overrides for the GPU split defaults in `[runtime]` |
|
|
295
302
|
| `n_batch` | number | Prompt batch size (default `512`) |
|
|
296
303
|
| `embedding` | boolean | Enable llama.cpp embedding mode for a dedicated embedding model (default `false`) |
|
|
297
304
|
| `pooling_type` | string | Optional embedding pooling override such as `mean` |
|
|
@@ -364,12 +371,21 @@ spec_draft_cache_type_v = "f16"
|
|
|
364
371
|
|
|
365
372
|
Loads a Whisper GGML model for speech-to-text.
|
|
366
373
|
|
|
374
|
+
With `@fugood/whisper.node` 1.2.0-rc.0, `snapdragon` enables experimental
|
|
375
|
+
Whisper Hexagon NPU acceleration on Linux arm64 with a working Qualcomm
|
|
376
|
+
HTP/FastRPC runtime. This variant does not include OpenCL. Install it with
|
|
377
|
+
`--ggml-variant=snapdragon` (the default CPU package remains available for fallback).
|
|
378
|
+
The platform package includes the HTP libraries; the loader defaults
|
|
379
|
+
`ADSP_LIBRARY_PATH` to that package directory and `GGML_HEXAGON_NDEV` to `16`,
|
|
380
|
+
without overriding explicit environment values. Hexagon always enables flash
|
|
381
|
+
attention, even when `use_flash_attn` is off.
|
|
382
|
+
|
|
367
383
|
**`[generators.backend]`**
|
|
368
384
|
|
|
369
385
|
| Key | Type | Default | Notes |
|
|
370
386
|
| --------------------- | -------- | ----------------------------- | ---------------------------------- |
|
|
371
|
-
| `variant` | string | auto | `cuda` / `vulkan` / `default`
|
|
372
|
-
| `variant_preference` | string[] | `["cuda","vulkan","default"]` | Probe order
|
|
387
|
+
| `variant` | string | auto | `cuda` / `vulkan` / `snapdragon` / `default` |
|
|
388
|
+
| `variant_preference` | string[] | `["cuda","vulkan","snapdragon","default"]` | Probe order |
|
|
373
389
|
| `gpu_memory_fraction` | number | `0.85` | |
|
|
374
390
|
| `cpu_memory_fraction` | number | `0.5` | |
|
|
375
391
|
|
|
@@ -394,7 +410,7 @@ Loads a Whisper GGML model for speech-to-text.
|
|
|
394
410
|
[[generators]]
|
|
395
411
|
type = "ggml-stt"
|
|
396
412
|
[generators.backend]
|
|
397
|
-
variant_preference = ["cuda", "vulkan", "default"]
|
|
413
|
+
variant_preference = ["cuda", "vulkan", "snapdragon", "default"]
|
|
398
414
|
[generators.model]
|
|
399
415
|
repo_id = "BricksDisplay/whisper-ggml"
|
|
400
416
|
filename = "ggml-large-v3-turbo-q8_0.bin"
|
package/config/sample.toml
CHANGED
|
@@ -78,6 +78,12 @@ cache_type_k = "q8_0"
|
|
|
78
78
|
cache_type_v = "q8_0"
|
|
79
79
|
n_threads = 6
|
|
80
80
|
|
|
81
|
+
# Optional ggml-llm multi-GPU defaults (also supported under [generators.model]).
|
|
82
|
+
# split_mode = "layer" # none / layer (default) / row / tensor (experimental)
|
|
83
|
+
# tensor_split = [3, 1] # per-GPU proportions; also accepts "3,1"
|
|
84
|
+
# Tensor mode requires a compatible GPU backend and model architecture.
|
|
85
|
+
# TODO: Expose these Buttress-only options in the LLM (GGML) generator.
|
|
86
|
+
|
|
81
87
|
# Delay before releasing context when refCount reaches 0 (default: 10000ms)
|
|
82
88
|
# Set to 0 for immediate release
|
|
83
89
|
context_release_delay_ms = 30000
|