Die richtige Antwort aus der falschen Revision
Die Passage war korrekt, gut geschrieben und drei Jahre veraltet. Die Ähnlichkeitssuche hatte genau das getan, was sie tut, und nichts in der Pipeline war je gebeten worden, zu bedenken, dass derselbe Satz in vier Revisionen mit verschiedenen Zahlen existiert.
Vier Kopien desselben Satzes
Der Kunde bewahrt jede Revision jedes Handbuchs auf, was korrekte Praxis und in seiner Branche vorgeschrieben ist. Wir hatten alle indexiert, was damals offensichtlich richtig schien: mehr Material, bessere Abdeckung.
Das Ergebnis ist, dass eine Frage nach einem Anzugsmoment vier nahezu identische Passagen liefert, die sich in einer Zahl unterscheiden — und der Reranker wählt zwischen ihnen nach textlicher Ähnlichkeit zur Frage, was nichts damit zu tun hat, welche davon gilt.
Warum Ähnlichkeit keine Meinung zur Zeit hat
Ein Embedding platziert eine Passage danach, was sie sagt. Zwei Revisionen eines Absatzes sagen fast dasselbe, liegen also fast am selben Ort, und kein besseres Embedding trennt sie — denn sie unterscheiden sich nicht semantisch in dem Sinne, auf den das Modell trainiert wurde.
Die unterscheidende Information steht überhaupt nicht im Text. Sie steht in Revisionsnummer und Gültigkeitsdatum des Dokuments, also in Metadaten — und wir hatten Metadaten als etwas zum Anzeigen behandelt statt als etwas, wonach man sucht.
Die Forschung zu zeitsensitivem Abruf
Abdallah und Kollegen veröffentlichten Anfang 2025 TempRetriever, einen Abrufansatz für zeitsensitive Fragen, der die zeitliche Dimension in den Abrufschritt hineinholt, statt sie danach zu klären.
Übernommen haben wir die Rahmung, dass eine Frage eine Zeit tragen kann, auch wenn sie keine nennt. Wer fragt, wie hoch das Anzugsmoment ist, meint jetzt — und ein System, das diese Frage als zeitlos behandelt, beantwortet sie aus der Revision, die zufällig am besten passt.
| Frage | Was sie bedeutet |
|---|---|
| Wie hoch ist das Anzugsmoment? | Stand heute. Nur die geltende Revision |
| Wie war es vor der Änderung? | Eine bestimmte frühere Revision |
| Wann hat es sich geändert? | Ein Vergleich, kein Abruf |
| Was gilt für Maschine 4711? | Die zum Baudatum geltende Revision |
Was wir geändert haben
Jeder Chunk trägt die Revision und ihren Gültigkeitszeitraum, und der Abruf filtert standardmäßig auf die geltende Revision. Abgelöste Revisionen bleiben indexiert und sind nur erreichbar, wenn Frage oder Oberfläche danach verlangen — aus einem Ranking-Problem wurde damit ein Filter.
Die letzte Tabellenzeile hat das erst wirklich nützlich statt bloß richtig gemacht. Für Anlagen gilt die Revision, die beim Bau dieser Einheit aktuell war, und sobald die Metadaten existierten, konnten wir diese Frage überhaupt beantworten — vorher nicht.
Die Voreinstellung, auf die es ankommt
Immer die geltende Revision, sofern nichts anderes gesagt wird. Es ist verlockend, den Ranker entscheiden zu lassen und dem Nutzer zu zeigen, welche Revision er gewählt hat — das ist schlechter: Wer vier Optionen mit Daten sieht, wählt eine, und unter Zeitdruck ist es die erste.
Wo die Frage wirklich historisch ist, muss unsere Oberfläche danach gefragt werden. Das ist Reibung, und es ist die richtige Stelle dafür: Eine falsche Auskunft zu einer geltenden Vorgabe ist teuer, ein etwas längerer Weg zu einer alten nicht.
Was wir ohne Datum ablehnen
Fragen zu einem Dokumentbestand, in dem die Revisionen sich widersprechen und die Anfrage keine Wahl erlaubt. Fragt jemand, wie die Prozedur lautet, und seine Anlagen verteilen sich über drei Revisionen, fragen wir nach der Einheit, statt für eine davon zu antworten.
Diese Verweigerung war etwa zwei Wochen lang unbeliebt. Beliebt wurde sie, als der Erste bemerkte, dass das vorherige Verhalten selbstsicher für die Revision geantwortet hatte, die zufällig zuletzt indexiert worden war.
Was es gekostet hat
Die Revisionsmetadaten verlässlich zu extrahieren — drei Wochen unspektakulärer Arbeit, weil die Revision auf Dokumenten aus verschiedenen Jahrzehnten an verschiedenen Stellen steht. Das ist der ganze Preis, und er fällt vollständig in der Aufnahme an, nicht im Abruf.
Der Abruf selbst wurde etwas schneller, weil der Filter drei Viertel des Kandidatensatzes vor dem Ranking entfernt. Das war nicht das Ziel und ist ein vernünftiger Beleg dafür, dass wahllos alles zu indexieren auch nicht kostenlos war.
Was wir nicht behaupten
Wir behaupten nicht, dass sich das auf Bestände ohne ausdrückliche Revisionen überträgt. Eine Wissensbasis, in der Artikel an Ort und Stelle bearbeitet werden, hat dasselbe Problem ohne die Metadaten — und die ehrliche Antwort dort ist, dass die Abrufschicht nicht beheben kann, was das Quellsystem nicht festhält.
Wir behaupten auch nicht, unser Filter behandle Teilablösungen. Eine Revision, die einen Abschnitt ändert, lässt den Rest in Kraft; wir behandeln das ganze Dokument als abgelöst, was konservativ ist und gelegentlich eine nie geänderte Passage verdeckt.
