length-Retry: abgeschnittene Antworten sind die q-024-Ursache, kein Thinking (D14)

- Diagnose: q-024-Flakiness war KEIN Think-Ghost (thinking-Feld leer,
  keine Tags), sondern num_predict=1024 — lange belegte Antworten
  brachen bei done_reason=length ab (3/3 Sondenlaeufe), Zitationen
  wurden unvollstaendig, CITE_RE matchte partielle IDs -> Verletzung ->
  Regenerierungs-Eskalation -> UNCERTAIN.
- Fix: num_predict 1024 -> 2048; OllamaClient.chat_full() liefert
  (content, done_reason); chat_with_length_retry() wiederholt bei
  length einmal mit 2x Budget (technischer Retry, kein Regel-
  Regenerierungszaehler) - im Antwort-, Map- und Regenerierungspfad.
- Voll-Eval (46 Fragen): Zitier-Praezision 100 %, Verweigerung korrekt
  100 % (46/46) - erstmals alle M3-Gates erfuellt; erwartete Quelle
  92,7 %; Latenz mean 39,6 s / p95 78 s (vollstaendige statt
  abgeschnittener Antworten). q-024: 4/4 stabil.
- Tests 59 -> 60. Report lokal data/eval-qwen38-lengthfix.json.
This commit is contained in:
2026-09-15 14:14:27 +02:00
parent 4a9e06f66e
commit 1594aa9cbd
7 changed files with 115 additions and 13 deletions
+12
View File
@@ -168,6 +168,18 @@ q-015 antwortet mit KV-Abhängigkeit + Rückfrage. Eval (46 Fragen):
Zitier-Präzision 97,8 % · Verweigerung 97,8 % (Gate ✓) · erwartete
Quelle 90,2 % · Latenz mean 34,2 s. Report: `data/eval-qwen38-stage2.json`.
**Output-Budget + length-Retry (2026-09-15, D14):** Die q-024-Flakiness
war kein Thinking, sondern `num_predict=1024`: lange belegte Antworten
wurden bei `done_reason=length` abgeschnitten → unvollständige Zitationen
→ Verletzungs-/Eskalationsspirale. Fix: `num_predict=2048`, `chat_full()`
liefert `done_reason`, bei `length` ein technischer Retry mit 2× Budget
(kein Regel-Regenerierungs-Zähler). **Voll-Eval: Zitier-Präzision
100 % · Verweigerung korrekt 100 %** (46/46, alle M3-Gates erstmals
voll erfüllt) · erwartete Quelle 92,7 % · Latenz mean 39,6 s / p95 78 s.
Report: `data/eval-qwen38-lengthfix.json`. Offene Restfälle: keine
Fehlverweigerungen/Verletzungen mehr; 3-4 Fragen zitiert gültige,
aber nicht die erwartete Quelle (q-015-Klasse).
## Dateien
```