Wiki
Das Modell findet die Struktur, der Code zählt
Das Problem mit Modell-Zählungen
Sprachmodelle sind darauf trainiert, plausible Fortsetzungen von Text vorherzusagen. Das macht sie hervorragend darin, Informationen zu verstehen, zu klassifizieren und zu strukturieren. Es macht sie unzuverlässig bei Arithmetik über große Mengen.
Frag ein Modell, wie viele Einträge in einer langen Liste stehen, und es antwortet: sicher, flüssig und falsch. Nicht immer stark daneben. Oft nur um eins oder zwei. Manchmal um zehn. Der Fehler ist unsichtbar, weil die falsche Zahl im selben sicheren Ton kommt wie die richtige.
Das ist kein Bug, der im nächsten Modell-Release behoben wird. Zählen über Kontext ist eine strukturelle Schwäche der autoregressiven Generierung: Das Modell muss einen laufenden Zähler in seinen Aufmerksamkeitsmustern über Tausende von Token aufrechterhalten, und dieser Zähler driftet. Je länger das Dokument, desto ausgeprägter das Problem.
Das Designprinzip
pdf2okf basiert auf einer klaren Arbeitsteilung: Das Modell findet die Struktur, der Code zählt.
In der Praxis bedeutet das Folgendes. Das Modell liest das Quell-PDF und identifiziert die konzeptuellen Einheiten: Abschnitte, Klauseln, Einträge, Zeilen, je nach Dokumenttyp. Jede Einheit wird zu einer Konzeptdatei im OKF-Bundle. Wenn ein Nutzer fragt "Wie viele X enthält dieses Dokument?", zählt die Code-Schicht die Konzeptdateien direkt. Das Modell erhält diese Zahl vom Code und berichtet sie. Es generiert keine eigene Schätzung.
Das Modell sieht nie eine Zahl, die es durch Zählen erzeugen müsste. Es berichtet nur Zahlen, die der Code bereits berechnet hat. Der Unterschied klingt subtil. Der Unterschied in der Zuverlässigkeit ist es nicht.
Ein konkretes Beispiel
Ein Software-Projekt hat ein Changelog. Das Changelog hat 40 Release-Einträge, jeder mit Versionsnummer, Datum und einer Liste von Änderungen.
Eine naive Pipeline übergibt das vollständige Changelog als Text und bittet das Modell, die Releases zu zählen. Das Modell antwortet mit "ungefähr 40" oder "38–42", weil das Zählen von 40 einzelnen Einträgen über einen langen Kontext für ein Sprachmodell schlicht unzuverlässig ist, nicht unmöglich, aber nicht verlässlich.
pdf2okf parst das Changelog in 40 Konzeptdateien, eine pro Release. Die Code-Schicht zählt: 40 Dateien. Das Modell berichtet: 40 Releases.
Diese Zahl ist nicht ungefähr. Sie ist keine Schätzung. Sie ist das, was der Code zurückgegeben hat. Dasselbe Prinzip gilt für Vertragsklauseln, Rechnungspositionen, Changelog-Einträge, regulatorische Anforderungen, Patientenakten, also jedes Dokument, bei dem die genaue Zahl zählt. Das sind exakte Antworten aus Dokumenten, nicht Näherungswerte.
Warum das kleinere Modelle vertrauenswürdig macht
Das Prinzip "Modell findet Struktur, Code zählt" hat einen wichtigen Nebeneffekt: Es macht ein kleines, lokal betriebenes offenes Modell für diese Aufgaben genauso zuverlässig wie ein Frontier-Modell.
Ein 7B-Parameter-Modell auf einem Laptop kann 40 Einträge in einem langen Kontext nicht zuverlässig zählen. Aber es kann 40 Konzeptdateien lesen, jede verstehen und eine Zahl berichten, die der Code berechnet hat. Die Rolle des Modells ist auf das beschränkt, worin es gut ist: Lesen, Klassifizieren und Synthetisieren. Die Arithmetik übernimmt deterministischer Code.
Deshalb sind lokale, offene Modelle (Gemma 4, Qwen3.5 oder OLMo 3, betrieben via Ollama oder oMLX auf Apple Silicon) in der pdf2okf-Architektur kein Kompromiss. Ihre Grenzen werden durch das Design umgangen, nicht durch Skalierung kompensiert. Deterministische KI Antworten erfordern kein Frontier-Modell. Sie erfordern ein Design, das das Modell nicht bittet, Dinge zu tun, in denen Modelle schlecht sind. KI Zahlen genau: Das ist keine Modelleigenschaft, das ist eine Architektureigenschaft.
Prüfbar von Anfang an
Jede Konzeptdatei hat eine stabile Kennung. Eine Zählantwort kann geprüft werden: die Liste der gezählten Konzeptdateien anfordern, jede einzeln prüfen, die Summe unabhängig verifizieren. Die Antwort lässt sich auf diskrete, menschenlesbare Dateien auf dem Laufwerk zurückverfolgen.
Vergleiche das mit einer rein modellgenerierten Zählung: Es gibt nichts zu prüfen. Die Zahl entstand aus erlernten Parametern und lässt sich nicht nachvollziehen. Das ist der Unterschied zwischen einer sicher klingenden Antwort und einer prüfbaren. In Rechts-, Finanz- und Compliance-Kontexten ist nur letztere handlungsfähig.
Wie das in pdf2okf funktioniert
Wenn pdf2okf ein Dokument verarbeitet, ist das Ergebnis ein OKF-kompatibles Bundle, in dem jede bedeutungsvolle Einheit eine eigene Konzeptdatei ist. Zählen reduziert sich auf eine Dateisystem-Operation. Retrieval reduziert sich auf das Auffinden der richtigen Dateien. Analyse wird zur Frage, welche Dateien an welches Modell übergeben werden, während die deterministische Schwerstarbeit bereits vom Code erledigt wurde.
Die Pipeline läuft lokal, funktioniert offline und ist modell-agnostisch. Der Determinismus kommt aus der Architektur, nicht aus einer proprietären API. Das heißt: Wenn das Modell besser wird, werden die Antworten besser. Aber die Zählung ist immer exakt.