Vorfilter
Warum dieser Schritt
Warum überhaupt vorfiltern
Die Thread-Zuordnung ist abgeschlossen. Bevor das Sprachmodell übernimmt, greift eine günstigere Vorinstanz: die Regeln.
An dieser Stelle in der Pipeline weiß das System bereits, von wem die Email kommt und an welchen Faden sie gehört. Bevor das Sprachmodell anrückt und mit Sprachverständnis Kategorien zuweist, gibt es einen Zwischenschritt: eine kleine Regelmaschine schaut, ob die Email mit einem ganz einfachen Muster bereits eindeutig einzuordnen ist. Dieses Unterkapitel zeigt, warum dieser Zwischenschritt existiert: anhand einer typischen Szene, anhand der Kosten gegenüber dem Sprachmodell, anhand der Position in der Pipeline und anhand dessen, was er dem Sprachmodell konkret erspart.
Eine Szene: dieselbe Mail, hundertmal pro Tag
Auf Karls Server läuft ein Monitoring-Programm. Jedes Mal, wenn eine Plattenpartition voll wird, eine Webseite langsamer antwortet als üblich oder ein Backup länger braucht als geplant, schickt das Programm eine Email an Karl. Absender ist immer dieselbe technische Adresse, der Betreff folgt einem festen Muster, der Inhalt ist eine kurze Statusmeldung. Über den Tag verteilt sammeln sich gerne mal dreißig bis sechzig solche Nachrichten an.
Müsste das Sprachmodell jede dieser Mails einzeln lesen, einordnen und mit einer Wahrscheinlichkeitsbewertung versehen, würde der Großteil seiner Arbeit in immer dieselbe Antwort münden: "Information, niedrige Priorität, keine Aktion nötig". Verschwendete Rechenzeit für ein Ergebnis, das auch ein einzelner Vergleich der Absenderadresse hätte liefern können.
Was eine Regel besser kann als das Sprachmodell
Ein Vergleich macht den Unterschied deutlich. Eine einfache Regel ("Absender enthält monit@karlkratz.de") ist in einer Tausendstelsekunde geprüft, das Ergebnis ist immer gleich, und sie funktioniert auch dann noch, wenn der Server unter Last steht oder das Sprachmodell gerade nicht erreichbar ist. Das Sprachmodell hingegen braucht für eine Antwort mehrere Sekunden, jeder Lauf kann minimal anders ausfallen, und es benötigt einen funktionierenden Modellserver.
Für Mails mit eindeutigem Muster ist diese Mehrarbeit nicht zu rechtfertigen. Genau dort spielt der Vorfilter seine Stärken aus: er nimmt das einfach Erkennbare ab, damit das Sprachmodell sich auf das konzentrieren kann, was wirklich Sprachverständnis braucht.
Die Position in der Pipeline
Damit der Vorfilter überhaupt sinnvoll arbeiten kann, muss er an der richtigen Stelle in der Pipeline laufen. Vorher muss die Email geparst sein, ihre Anhänge bekannt, ihr Kontakt erkannt und ihr Thread zugeordnet. Nachher kommt erst die LLM-Klassifikation, dann die Entitäten-Erkennung und alles Weitere.
Konkret steht der RuleStep an an fester Position in der Pipeline in der Pipeline. Vor ihm: ParseStep, AttachmentStep, ContactStep, ThreadStep. Nach ihm: ClassifyStep (das ist das Sprachmodell), NerStep, RelationsStep, GraphSyncStep, ChunkStep, Wissens-Schritt, Entwurfs-Schritt. Diese Position ist kein Zufall: alle Vorbereitungsschritte sind erledigt, und der Vorfilter kann mit einem fertig zerlegten Email-Objekt arbeiten. Greift er, sparen sich die sieben nachfolgenden Schritte einen Großteil ihrer Arbeit.
Was der Vorfilter dem Sprachmodell erspart
Wenn eine Regel greift, übernimmt sie zwei Aufgaben, die sonst beim Sprachmodell gelegen hätten: erstens die Kategoriezuweisung ("information", "spam", "newsletter" usw.), zweitens die Prioritätssetzung ("low", "normal", "high"). Beides wird direkt aus der Regel-Konfiguration übernommen, ohne dass das Sprachmodell befragt werden muss.
Ein angenehmer Nebeneffekt: das Verhalten ist nachvollziehbar. Sieht Karl in der Übersicht eine als "information" klassifizierte Mail, kann er im Audit-Log nachsehen, welche Regel sie eingeordnet hat. Das ist transparenter als eine Sprachmodell-Antwort, deren Begründung sich nicht ohne Weiteres rekonstruieren lässt.
Wichtig zur Einordnung: der Vorfilter ist kein Ersatz für das Sprachmodell, er ist eine Ergänzung. Er übernimmt die einfachen Fälle, das Sprachmodell die komplexen. Mails mit unklarem Inhalt, ungewohnten Absendern oder uneindeutigem Kontext landen nach wie vor beim Sprachmodell. Genau dort ist es auch sinnvoll eingesetzt.
Das nächste Unterkapitel zeigt, mit welchen drei Bedingungstypen eine solche Regel beschrieben werden kann.