...0% der Fälle (Unicode, Kürzungen, paraphrase). Das muss Soft werden.

3) **Timeout-/Output-Limit zu hoch:** `num_predict=800` ist auf CPU zu groß. Und du sendest den **vollen Prompt + ganzen Text**.

Jetzt die Lösung als Patch-Plan, konkret auf deinen Code bezogen.

---

## A) Phase-2 statt Phase-1 verarbeiten (einzeilig)

Ersetze:

```python
files = sorted(extracts_dir.rglob("*_EXTRACT.txt"))
```

dur...