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 <vibe@mistral.ai>
This commit is contained in:
2026-11-01 17:32:17 +01:00
parent e4aac1acc9
commit 345eb36c2b
@@ -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;