From 9c38c60783fc9ec8e8b28a45e867c90a93f4d4d0 Mon Sep 17 00:00:00 2001 From: Petar Cubela Date: Thu, 3 Sep 2026 14:13:11 +0200 Subject: [PATCH] Record model decision (Qwen3-32B FP8) and vLLM SM120 caveat Co-Authored-By: Claude Opus 4.8 --- TODO.md | 3 +- .../notes/20260710-projektplan.md | 29 ++++++++++++++----- 2 files changed, 24 insertions(+), 8 deletions(-) diff --git a/TODO.md b/TODO.md index 8a7bd0c..b31f69e 100644 --- a/TODO.md +++ b/TODO.md @@ -26,7 +26,8 @@ Server is delivered; base setup + NVIDIA driver are done (see `SETUP.md`). - [ ] Role `llm_stack` — docker compose: vLLM (fixed `--gpu-memory-utilization`), embedding server, Open WebUI + pgvector, reverse proxy, oikb timer. Tag compose tasks with `compose` so `just compose` works. -- [ ] Pin versions at install time (vLLM / Open WebUI / oikb / model) per §5 +- [ ] Smoke-test a vLLM container on the server (official images may not support SM120) + — pin the working image, then build `llm_stack`. Start model: Qwen3-32B FP8 - [ ] OCR pipeline for ~166k scanned PDFs (§2.1) — own work block, competes with vLLM for the GPU - [ ] TLS: currently plain HTTP on `chat.phytron.local`; retrofit an internal CA certificate (AD passwords travel in clear text until then) diff --git a/server/phy-z-srv-gpu01/notes/20260710-projektplan.md b/server/phy-z-srv-gpu01/notes/20260710-projektplan.md index 4b1dcf5..b1030a5 100644 --- a/server/phy-z-srv-gpu01/notes/20260710-projektplan.md +++ b/server/phy-z-srv-gpu01/notes/20260710-projektplan.md @@ -156,14 +156,29 @@ und Indexgröße (§2.6). Share-Liste, LDAP-Parameter) - Alles außer GPU-Rolle ist vorab in einer Wegwerf-VM testbar (`just run`-Pfad) -### 2.5 Modell-Shortlist (finale Wahl erst bei Installation!) +### 2.5 Modell-Shortlist — Entscheidung 2026-09-03 -Kandidaten heute: Qwen3-32B FP8 (Favorit: Deutsch, Durchsatz), gpt-oss-120b -(mehr Qualität, weniger Parallelität), Embeddings bge-m3 / multilingual-e5. -**Nicht jetzt festlegen** — Modell-Landschaft und vLLM-Support in einigen -Monaten neu sichten (§ Wiedereinstieg). Kleines deutsches Eval-Set (20–30 -Fragen mit erwarteten Antworten aus dem Bestand) schon jetzt mit dem Kunden -sammeln — das ist später das Abnahmekriterium. +**Startmodell: Qwen3-32B FP8.** Begründung: ~35 GB VRAM, damit reichlich Reserve +für KV-Cache (~25 parallele Nutzer) und das Embedding-Modell daneben; gutes +Deutsch; hoher Durchsatz. Alternative bei Qualitätsbedarf: gpt-oss-120b +(MoE, ~60–65 GB) — weniger Parallelität, engerer Fit. Embeddings: +bge-m3 / multilingual-e5 (mehrsprachig, zwingend für Deutsch). + +Das ist der **Startwert als Rollen-Variable**, keine endgültige Festlegung: Die +finale Wahl fällt gegen das Eval-Set (s. u.) und nach dem vLLM-Smoke-Test. + +⚠️ **Offener technischer Punkt:** Die offiziellen vLLM-Docker-Images unterstützen +SM120 (Blackwell Workstation/Server) laut aktueller Quellenlage **nicht +zuverlässig out of the box**; auf RTX-PRO-6000-Systemen werden verbreitet +Nightly- oder Community-Builds eingesetzt +([vLLM-Forum](https://discuss.vllm.ai/t/support-for-rtx-6000-blackwell-96gb-card/1707), +[rtx6kpro](https://github.com/local-inference-lab/rtx6kpro/blob/master/inference-engines/vllm.md)). +Vor dem Bau der Rolle `llm_stack` daher **ein Container manuell auf dem Server +testen** und das funktionierende Image pinnen — dieselbe Fehlerklasse wie beim +Treiber (proprietäre vs. open Kernel-Module). + +Kleines deutsches Eval-Set (20–30 Fragen mit erwarteten Antworten aus dem +Bestand) mit dem Kunden sammeln — das ist später das Abnahmekriterium. ### 2.6 Korpus eingrenzen (neu, wichtigster offener Punkt)