Library: SERVED BY / EST VRAM never populate when a llama-swap model ID differs from the GGUF file stem
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 57/100
Línea de trabajo
Read internal/engines/engines.go around llamaSwap and internal/harbor/web/library.js around matchScore to trace how running model data reaches library rows. Inspect the /running payload’s cmd field and the existing engine model representation; the issue proposes extracting the --model path and matching its file stem, with name matching as fallback. Done means resident models with IDs that differ from their GGUF stems show the correct SERVED BY and EST VRAM values.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Environment: v0.3.6 (origin/main @ 437ac1b), Windows 11, one llama-swap engine at http://127.0.0.1:1233, library root F:\AI\.lmstudio\models.
In the Harbor library, the SERVED BY and EST VRAM columns show - for every row, including rows for models an engine reports resident with a learned footprint. berth status on the same node, same moment:
ENGINE TYPE UP MODELS ... EST. VRAM
llama-swap llama-swap yes qwen-3.8-27b,text-embedding-qwen3-embedding-0.6b ... 14365 MiB
Root cause: the library joins engine models to library rows by substring name match. matchScore in internal/harbor/web/library.js scores 2 when the lowercased names are equal, 1 when either contains the other, 0 otherwise. A llama-swap model ID is whatever the operator named the model in llama-swap; the library name is the GGUF file stem. Two live examples from the same node:
| engine model ID | library row | result |
|---|---|---|
qwen-3.8-27b |
Qwen3.8-27B-UD-IQ4_XS |
score 0 — the ID's hyphen (qwen-3.8) breaks containment against the stem (qwen3.8) |
text-embedding-qwen3-embedding-0.6b |
Qwen3-Embedding-0.6B-Q8_0 |
score 0 — neither name contains the other |
Both rows render - in SERVED BY and EST VRAM while the models are loaded and serving (decode/prefill counters moving, tokens accruing).
Why substring is the wrong key: llama-swap's /running payload already carries the exact file path for each model in its cmd field — e.g. --model "F:\AI\.lmstudio\models\unsloth\Qwen3.8-27B-GGUF\Qwen3.8-27B-UD-IQ4_XS.gguf" — but Berth's reader picks up only model, state, and proxy (llamaSwap in internal/engines/engines.go, lines 575–586). Suggested direction: parse the --model path from /running (or have llama-swap expose it as an explicit field), carry it on the engine model, and join library rows on the file stem with the name match as fallback. An operator-maintained model→name alias map in the engine config would also work, but puts the bookkeeping on every user.
This affects any engine whose model names diverge from file stems; for llama-swap that is the common case, since the ID is operator-chosen and is usually shorter than the stem. Workaround until fixed: name the llama-swap model IDs identically to the GGUF stems (which changes the model IDs in API traffic).
Note: the CACHED column on Windows is a separate, by-design gap (internal/pagecache/other.go returns ErrUnsupported off-Linux), not part of this defect.
- Lenguaje dominante
- Go
- Estrellas
- 226
- Forks
- 20
- Merge medio
- 43 min
- PR fusionados (30 d)
- 192
Preparar el entorno
Este proyecto no incluye contenedor de desarrollo, Dockerfile ni guía de contribución, así que la configuración corre por tu cuenta: empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de T-Crypt/berth
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
Los mantenedores suelen responder en 1 día
-
Dificultad 3/5 1-2 días Aptitud para principiantes 55/100
Los mantenedores suelen responder en 1 día
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 42/100
T-Crypt/berth#204 · 11 comentarios ·
Los mantenedores suelen responder en 1 día
-
berthd --gpu-backend amd exits at startup on a desktop session: "process VRAM exceeds card usage"Abierto
Dificultad 4/5 1-2 días Aptitud para principiantes 48/100
T-Crypt/berth#196 · 6 comentarios ·
Los mantenedores suelen responder en 1 día
-
Lend part of a card from a running engine and get it back, without a park or a reloadPosiblemente ocupada @T-Crypt la tomó hace 5 días. Abierto
T-Crypt/berth#189 · 23 comentarios · 1 reacción · 1 asignado ·
Los mantenedores suelen responder en 1 día
Todos los issues de T-Crypt/berth
Issues similares
-
Project submission: BivyAbierto
Dificultad 1/5 Menos de una hora Aptitud para principiantes 78/100
slavakurilyak/awesome-ai-agents#880 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
apache/openserverless#282 · 2 comentarios ·
-
Dokumentasjon på nais defaultsAbierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
Los mantenedores suelen responder en 1 día
-
agent-butler-finding bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
jordansmall/spindrift#6161 ·
Los mantenedores suelen responder en 1 día