From 345eb36c2b04dabd627219b38a9f77f24ef6f5f3 Mon Sep 17 00:00:00 2001 From: spektr Date: Sun, 1 Nov 2026 17:00:03 +0100 Subject: [PATCH] GNAI-010 v0.12: Unsloth-Wiederholung bestanden + thermisches Lastprofil (10.8) Unsloth-Abnahme am 01.11.2026: Grundtests, 128k-Prefill-Leiter (677/659/559/420 t/s, durchgehend schneller als Swift), Kontext-Negativtest und 62 Minuten Stabilitaetslast ohne Neustart; Rueckwechsel auf Swift ohne erneuten Download. Beide Profile damit technisch abgenommen - die fachliche A/B-Serie (GNAI-009) kann beginnen. Begleitend erstmals thermisches Lastprofil per Host-Sensoren (111 Proben): CPU 52C, GPU-Junction max 54C, Power 36-49% der Caps - kein Throttling. Lautstaete ist die werkseitige Luefterkurve, kein thermischer Zwang; dauerhafte Sensorueberwachung gehoert in GNMON-001. Generated by Mistral Vibe. Co-Authored-By: Mistral Vibe --- .../ai/GNAI-010-TECH_Llama-Serving.md | 45 +++++++++++++++++++ 1 file changed, 45 insertions(+) diff --git a/docs/platform/llm-server/ai/GNAI-010-TECH_Llama-Serving.md b/docs/platform/llm-server/ai/GNAI-010-TECH_Llama-Serving.md index 1d75190..3b2289c 100644 --- a/docs/platform/llm-server/ai/GNAI-010-TECH_Llama-Serving.md +++ b/docs/platform/llm-server/ai/GNAI-010-TECH_Llama-Serving.md @@ -28,6 +28,7 @@ | 2026-11-01 | 0.9 | spektr / Mistral Vibe | 128k-Zielprofil in Testing aktiviert und technisch abgenommen (Abschnitt 10.6): kein OOM, saubere Kontextüberschreitungs-Negativtests, Prefill-Leiter 7,6k/29k/59,5k/121,9k Tokens (624/591/503/396 t/s) und 62 Minuten gemischte Stabilitätslast ohne Neustart. | | 2026-11-01 | 0.10 | spektr / Mistral Vibe | Wiederanlauf- und Profilwechselabnahme (10.4) durchgeführt (Abschnitt 10.7): Idempotenz, kontrollierter Neustart und bewusster Stopp bestanden; Profilwechsel über die Rolle in beide Richtungen fehlerfrei und ohne erneuten Download. Befundkorrektur in 5.3: direkter Unit-Start löst keinen geordneten Wechsel aus (paralleles Laden in der Übergangsphase beobachtet); `Before=` aus den Quadlets entfernt, Rolle bleibt der alleinige geordnete Weg. Host-Reboot-Test an den Betreiber übertragen. | | 2026-11-01 | 0.11 | spektr / Mistral Vibe | Host-Reboot-Test bestanden (10.7): nach Neustart des dedizierten Hosts Linger aktiv, beide Engine-Units `inactive`, keine Container; bewusster Start des aktiven Profils über die Rolle mit Health und Alias erfolgreich. Damit ist 10.4 vollständig abgenommen. | +| 2026-11-01 | 0.12 | spektr / Mistral Vibe | Unsloth-Wiederholung bestanden (Abschnitt 10.8): Grundabnahme, 128k-Prefill-Leiter (677/659/559/420 t/s – durchgehend schneller als Swift), Kontext-Negativtest und 62 Minuten Stabilitätslast ohne Neustart. Begleitend erstmals thermisches Lastprofil per Host-Sensoren erhoben: alle Werte unter 55 % der Crit-Grenzen, kein Throttling. | --- @@ -651,6 +652,50 @@ Die Tests nach 10.4 wurden am 01.11.2026 für die Testing-Umgebung gefahren: `podman ps`, systemd-Status und Health stimmten in allen Schritten überein (10.4). Der Rückwechsel auf Swift erfolgte ohne erneuten Modelldownload. +### 10.8 Belegter Ausführungsstand der Unsloth-Wiederholung (01.11.2026) + +Die technische Abnahme wurde am 01.11.2026 für das Unsloth-Profil +wiederholt und bestanden (128k, Start 14:38 Uhr): + +| Prüfpunkt | Ergebnis | +| --- | --- | +| Start, Health, Alias | Profilwechsel über die Rolle (`changed=2`), `/health` 200, Alias `unsloth-qwen3.8-27b-ud-q6k`, genau ein Modell im VRAM (13,4/14,7 GiB) | +| Thinking-Request | `finish_reason: stop`, getrennte Felder für Reasoning und finale Antwort („Der Oktober hat 31 Tage.") | +| Tool-Call | `finish_reason: tool_calls`, gültiger Call `get_weather` mit `{"city":"Berlin"}` | +| Prefill-Leiter (präfixfrei, `cache_n=42`) | 7.597 Tokens bei 677 t/s (11,2 s); 29.021 bei 659 t/s (44,0 s); 59.469 bei 559 t/s (106,3 s); 121.863 bei 420 t/s (290,4 s) – durchgehend schneller als Swift (624/591/503/396 t/s) | +| Langer Request | 121.863-Token-Prompt endete mit `finish_reason: stop` und korrekter Antwort („1335") | +| Kontext-Negativtest | 138.446 Tokens sauber mit HTTP 400 `exceed_context_size_error` abgewiesen | +| Stabilitätsstunde | 12 gemischte Requests über 62 Minuten: alle beantwortet; `NRestarts=0`, Unit durchgehend `active` seit 14:38 | +| Rückwechsel | auf Swift über die Rolle, ohne erneuten Download; Health und Alias bestanden | + +Damit haben **beide Profile** die technische Abnahme bestanden; die +fachliche A/B-Serie nach GNAI-009 kann beginnen. + +#### Thermisches Begleitprofil (Betreiberfrage vom 01.11.2026) + +Begleitend zur Stabilitätsstunde wurde erstmals ein host-seitiges +Sensorprofil erhoben (111 Proben im 30-Sekunden-Takt über 55 Minuten; Quelle: +`/sys/class/hwmon` amdgpu/coretemp/nvme; GPU-Grenzwerte: Edge 100 °C, +Junction 110 °C, Memory 99 °C, Power Cap 289 W): + +| Sensor | Maximum | Anteil der Crit-Grenze | +| --- | ---: | ---: | +| CPU-Paket / heißester Kern | 52 °C | 52 % | +| GPU0 Edge / Junction / Memory | 50 / 54 / 54 °C | 50 / 49 / 55 % | +| GPU0 Leistung | 103 W | 36 % | +| GPU1 Edge / Junction / Memory | 47 / 51 / 48 °C | 47 / 46 / 48 % | +| GPU1 Leistung | 143 W | 49 % | +| NVMe | 44 °C | unkritisch | +| Lüfter | GPU0 max. 1.827 RPM (Werksumme), GPU1 passiv (0 RPM) | – | + +Fazit: Kein Throttling und keine kritische Annäherung an Grenzwerte; die +Inferenzlast ist speicherbandbreiten- statt leistungsgebunden (Karten bei +36–49 % des Power Caps). Die gefühlte Lautstärke im Betrieb stammt von der +konservativen werkseitigen Lüfterkurve der Sapphire Nitro+ (GPU0 dreht bei +~50 °C mit ~1.800–2.100 RPM), nicht von thermischer Not. Eine +Lüfterkurven-Anpassung und die dauerhafte Sensorüberwachung gehören in das +Monitoring-Konzept (GNMON-001), nicht in die Serving-Abnahme. + ## 11. Noch nicht festgelegte Werte - genaue Health-Implementierung im gepinnten Containerimage;