v0.27.0.de.md
docs/i18n/release-notes/v0.27.0.de.md
Tesserae v0.27.0 — Agenten können in den Graphen schreiben und ihn fragen, was er lizenziert
<!-- translations:start -->
English · 한국어 · 中文 · 日本語 · Русский · Español · Français
<!-- translations:end -->
Released 2026-07-26 · PyPI · GitHub release · pip install --upgrade tesserae==0.27.0
Bisher konnte ein Agent Tesserae nur Prosa übergeben und hoffen, dass der Extraktor die richtigen Typen zurück erriet. Diese Version öffnet den Schreibpfad und den Verifizierungspfad: Agenten zeichnen Erkenntnisse als typisierte Struktur auf und können den Graphen fragen, ob er einen Anspruch tatsächlich lizenziert.
Agenten schreiben typisierte Erkenntnisse
graph_write nimmt schemavalidierte typisierte Knoten und Kanten mit verbindlicher Provenienz entgegen. Es lehnt ab statt zu erzwingen — untypierte Kanten, Typen außerhalb des kontrollierten Vokabulars, hängende Endpunkte und fehlende Provenienz werden alle abgelehnt; doppelte Schreibvorgänge sind idempotent.
Von Agenten geschriebene Knoten überstehen eine vollständige Neukompilierung, ein gelöschtes graph.json, --limit und vollständige Corpus-Löschung. Unter adversariales Testen kamen 60 gleichzeitige Schreibvorgänge gegen eine Live-Kompilierung durch mit null zerrissenen Lesevorgängen über 1.483 Lesevorgänge.
Agenten verifizieren anhand des Graphen
verify_claim beantwortet die Frage, ob der Graph ein Tripel lizenziert. Das Verdikt ist eine reine Funktion von Graphen-Bytes: kein LLM, kein Embedding, kein Fuzzy Matching irgendwo im Entscheidungspfad. Ein Verifizierer, der halluziniert, ist schlimmer als kein Verifizierer.
Es nimmt (subject, predicate, object) und hat keinen natürlichsprachigen Parameter — absichtlich. Sieben Verdikt, einschließlich PRESENT_UNEVIDENCED (die Kante existiert, aber nichts Dokumentgestütztes steht dahinter) und ABSENT („dieser Graph behauptet das nicht" — niemals eine Widerlegung).
Zwei Garantien, die es sich lohnt, klar auszusprechen. supersedes produziert niemals ein Verdikt: es sagt, dass ein Knoten ersetzt wurde, nicht dass ein Tripel falsch ist. Und ein Agentenschreibvorgang kann nur jemals eine Provenianzklasse schwächen, niemals eine erhöhen — nichts, das ein Agent behauptet, kann als dokumentgestützt präsentiert werden.
Weitere Verbesserungen
- Semantische Entitätsauflösung. Embedding-geclusterte Kandidaten speisen nun die vorhandene Überprüfungswarteschlange statt automatischer Zusammenführung. Genauigkeit über Rückruf: eine falsche Zusammenführung fusioniert stumm zwei echte Entitäten und jedes nachgelagerte Traversal erbt den Fehler.
- Frage-Form-Routing für
ask. Graphen gewinnen Multi-Hop-, zeitliche und Synthesefragen und verlieren einfachen Faktenlookup und Kosten, daher Graph-Preise für alles zu zahlen ist ein Verlust. Die Routingentscheidung ist in der Hülle, also eine billige Antwort ist nachvollziehbar;--routeüberschreibt. - Gültigkeitsintervalle auf zeitlichen Fakten, abgeleitet von Quellzeitstempeln — niemals Wanduhrenzeit.
--llm-limithält unter paralleler Extraktion. Seit v0.26.0 Extraktion parallel machte, ließ die alte Check-dann-Increment jeden Worker den Zähler lesen, bevor einer von ihnen ihn schrieb, also--llm-limit 1kaufte einen Anruf pro Worker. Es ist ein Ausgabenlimit, daher schlägt es jetzt geschlossen fehl.- Kompilierungsabdeckung ist eine Invariante, keine Behauptung. Vier stille Datenverlustpfade geschlossen, dann die Maschinerie dahinter vollständig entfernt —
compile(loader=…)hat keinen Produktionsaufrufer, und diese Bibliotheks-API zu verteidigen war die Quelle jeden schwerwiegenden Defekts über mehrere Überprüfungsrunden. Einer davon war eine Regression die v0.26.0 selbst einführte. - Neue Dokumentation für die Schreib-, Verifizierungs- und Routing- Oberflächen.
Was nicht ausgeliefert wurde und warum
Ein Contrast Pass zum Abbau von contradicts_claim / derived_from / criticizes Kanten wurde gebaut, gemessen und gekürzt. Es prägte 0 Kanten aus 80 beurteilten Paaren über zwei echte Corpora, und 60 von 60 Richterbegründungen gaben den gleichen Grund: die Paare waren Nahe-Duplikate ohne etwas zum Widersprechen.
Die Ursache war strukturell. Kandidatenerzeugung blockiert auf gemeinsamen seltenen Tokens, die für Ähnlichkeit optimiert — aber Widerspruch und Ableitung halten zwischen Behauptungen, die unterschiedlich sind. Ein Redesign bewertete fünf neue Generatoren offline, bei null LLM-Kosten: das Hochvolumen-Gerät erzielte 0/10 bei manueller Inspektion (seine „widersprechenden Zahlen" waren arXiv-IDs und Veröffentlichungsdaten), und das einzige präzise produzierte sechs Kandidatenpaare auf einem Corpus und keins auf dem anderen.
Eine Kontrollausführung klärte es — Bewertung von 15 Begründungskanten, die bereits existieren zurückgegebener Rückruf 7/15. Der Richter arbeitete immer; die Kandidaten waren immer falsch.
Die REASONING_EDGE_RATIO Lint-Regel bleibt und pinnt die ehrliche Basislinie: 7,5% von Kanten tragen Argumentation, mit contradicts_claim, derived_from, attributes_improvement_to und criticizes bei null Instanzen.
Upgrade von v0.26.0
Drop-in. Wenn Sie TESSERAE_CONTRAST_PASS setzen, tut es nichts mehr — der Pass ist weg.