A/B-Ergebnis: Qwen3.5-4B verliert, Qwen3-4B bleibt produktiv

Qwen3.5-4B ist auf der RK3588-NPU 21-45% langsamer und haelt die
JSON-Vorgabe nicht durch: von 61 extrahierten Todos ueber drei
Gespraeche blieben 2 uebrig, dazu 13 Parse-Fehler mit Wiederholungen.
Die Prosa war nicht schlechter, teils genauer -- ausschlaggebend ist
die Formatdisziplin. Modell-Drop-in zurueckgesetzt, Originalanalysen
per restore wiederhergestellt.

rkllm_server.cpp: neuer Schalter RKLLM_SUPPRESS_THINK=1 haengt einen
leeren Denkblock an das Chat-Template. Ohne ihn antwortet Qwen3.5 mit
Gedankengang statt JSON; RKLLMInput.enable_thinking reicht dafuer
nicht. Ohne die Variable bleibt das Template unveraendert.

Doku: Changelog 2026-09-29 (3) mit Messwerten, Bewertung und der
Einschaetzung zu rknn-llm v1.3.1 (fuer uns wirkungslos, weil wir
keep_history=0 fahren), plus Kapitel 05.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017A91sWU5aWrqZ2DWNTLVph
This commit is contained in:
2026-09-29 17:19:47 +02:00
co-authored by Claude Opus 5
parent e9ba48224e
commit 9e9958fb01
3 changed files with 86 additions and 1 deletions
+15
View File
@@ -390,3 +390,18 @@ flowchart LR
Die Konvertierung eines neuen Modells passiert **nicht** auf dem Board (kein CUDA), sondern auf dem PC
mit `tools/rkllm-qwen35/` — rkllm-toolkit-Version muss exakt zur Runtime auf dem Board passen.
### Denk-Modelle (Qwen3.5 und jünger)
Modelle mit Denk-Modus liefern sonst Gedankengang statt JSON. `RKLLMInput.enable_thinking = false` genügt
**nicht** — der Assistenten-Zug muss mit einem leeren Denkblock vorbefüllt werden. Dafür gibt es
`RKLLM_SUPPRESS_THINK=1`: dann hängt `rkllm_server.cpp` `<think>\n\n</think>\n\n` an das Chat-Template.
Ohne die Variable bleibt alles wie bisher.
### Ergebnis des ersten Modellvergleichs (2026-09-29)
Qwen3.5-4B gegen das produktive Qwen3-4B, gleiche Konvertierungsparameter, drei Aufnahmen: **21-45 %
langsamer**, Zusammenfassungen auf ein Drittel bis Viertel gekürzt, und von 61 Todos blieben 2 — das Modell
hält die JSON-Vorgabe nicht durch (13 Parse-Fehler mit Wiederholungen). Die Prosa selbst war nicht
schlechter. **Qwen3-4B bleibt produktiv.** Lehre: bei diesem Aufbau entscheidet nicht der Benchmark,
sondern ob ein Modell über lange deutsche Transkripte hinweg sauberes JSON liefert.