Direkt zum Inhalt

Evidence Engine

Research

friday. — unsere hauseigene Evidence-Datenbank für LLM-Systeme.

Statt nur Vektoren speichert friday. strukturierte Aussagen mit Quelle, Zeitbezug und Vertrauensniveau. Wir entwickeln sie selbst — und veröffentlichen, was wir lernen.

Das Claim-Modell

Jeder Eintrag in friday. ist ein Claim — kein Embedding-Vektor. Ein Claim hat eine Aussage, eine Konfidenz zwischen 0 und 1, ein Trust-Level, Quellenreferenzen, einen Zeitraum, in dem die Aussage galt, und optional eine strukturierte Tripel-Form (Subjekt → Prädikat → Objekt).

  • statement, confidence (0.0–1.0)
  • trust_level (L0–L3), source_refs[]
  • valid_from / valid_until — Aussagen können altern
  • strukturiertes Tripel im RDF-Stil für Graph-Traversierung

Hybrid-Retrieval ohne Kompromiss

friday. fusioniert drei Suchwege in einer einzigen Antwort. Dieselbe Anfrage trifft Vector-, Volltext- und Graph-Index — die Ergebnisse werden als `ScoredClaim[]` fusioniert und mit den Quellen zu einem Evidence-Pack verpackt.

  • HNSW-Vector-Search für semantische Ähnlichkeit
  • BM25-Volltextsuche für wörtliche Treffer
  • Graph-BFS auf Entity-Relation-Kanten für mehrstufige Hops
  • Fusion: ranked ScoredClaims + Sources mit Authority-Score

Warum eine eigene Datenbank?

Klassische Vector-Stores beantworten Ähnlichkeit. Aber Compliance-Realität braucht belegbare Aussagen. Wir bauen friday. selbst, weil zugekaufte Plug-ins drei Lücken haben, die wir nicht akzeptieren wollen.

  • Vector-Suche findet Ähnlichkeit — aber keine belegbaren Aussagen.
  • Klassische Stores kennen keinen Zeitbezug — eine veraltete Leitlinie sieht aus wie eine aktuelle.
  • Keine Repräsentation von Trust — alle Inhalte gleich gewichtet.
  • Widersprüchliche Claims werden nicht erkannt, geschweige denn gehandhabt.

Was friday. macht.

Claims-Modell

Strukturierte Aussagen mit Subjekt / Prädikat / Objekt, Quelle und Konfidenz. Anders als ein Embedding ist ein Claim referenzierbar — die Citation-Spur des Reasoners kann auf ihn zeigen.

Trust-Level L0–L3

L0 unvalidiert, L1 sourced (Web-Quellen ohne Review), L2 von Fachexpertise geprüft, L3 offizielle Quelle (Gesetze, Leitlinien). Jeder Claim bekommt ein Level — und kann es wieder verlieren.

Temporal-Daten

`valid_from` / `valid_until` machen explizit, wann eine Aussage galt und wann sie ersetzt wurde. Antworten können auf den Stichtag bezogen werden.

Hybrid-Retrieval

Vector + BM25 + Graph laufen parallel, ihre Ergebnisse werden fusioniert. Eine Anfrage trifft alle drei Wege — was rein semantisch übersehen wurde, fängt der Graph oder die Volltextsuche auf.

Research

Was wir gerade erforschen.

friday. ist nicht „fertig". Wir entwickeln sie aktiv weiter und teilen, was wir lernen. Drei offene Fragen, an denen wir derzeit arbeiten:

Open question 1

Evidence-Recall in Multi-Hop-Retrieval

Wie messen wir Recall sauber, wenn eine Antwort drei verknüpfte Claims über Graph-Hops braucht? Klassische Recall-Metriken gehen von einem einzelnen Retrieval-Schritt aus — Multi-Hop bricht das Modell.

Open question 2

Trust-Decay über Zeit

Eine Leitlinie von 2014 darf nicht plötzlich verschwinden, nur weil 2024 eine neuere kam. Wie modellieren wir Trust-Decay so, dass alte Aussagen kontextabhängig in Reichweite bleiben?

Open question 3

Federated friday.

Können Tenants Claims austauschen, ohne ihre Rohdaten preiszugeben? Wir prüfen Federation-Patterns für Branchen-Konsortien — Claims auf abstraktem Level, Quellen lokal.

Die finalen Forschungsfragen klären wir gemeinsam mit Marius vor dem öffentlichen Launch — diese Liste ist ein Arbeitsstand und kein Versprechen.

Wie friday. ins Produkt fließt.

edith. füllt friday. automatisch mit neuen Claims aus Web-Research und Dokument-Pipelines. Der Reasoner konsumiert über das MCP-Tool `search_knowledge` und sendet, wenn eine Wissenslücke erkannt wird, einen `request_research`-Call zurück an edith. Ein geschlossener Kreislauf — die Plattform lernt aktiv.

Veröffentlichungen.

Mehr in Kürze — Blogposts, Whitepaper und Repos folgen, sobald wir konkrete Ergebnisse aus den Forschungsfragen oben haben. Vage Andeutungen ohne Substanz bringen niemandem etwas.

Was ein Evidence-Pack enthält.

Eine Antwort des Reasoning-Agents bezieht ihre Quellen aus einem Evidence-Pack — strukturierte Claims plus die Quellen, aus denen sie stammen.

  1. 01 claim.statement

    „Eine Wundgröße muss bei jeder Dokumentation erfasst werden."

  2. 02 claim.trust_level

    L2 — von Fachexpertise geprüft und bestätigt.

  3. 03 claim.source_refs

    src-001 (EPUAP-Guideline, authority_score 0.95, gültig ab 2019-01-01).

  4. 04 claim.structured

    Subjekt „Dekubitus" — Prädikat „requires" — Objekt „Wunddokumentation".

  5. 05 fusion.score

    0.87 — kombinierter Score aus Vector-, BM25- und Graph-Retrieval.

Auf dieser Datenstruktur baut die Citation-Spur des Reasoners auf — jede zitierte Stelle ist auf einen Claim mit Trust-Level und Quelle zurückführbar.

Für Engineering- und Forschungs-Teams.

friday. ist in Rust geschrieben, läuft als einzelne Binary mit gRPC- und REST-Endpunkten und nutzt RocksDB als Storage-Engine. Atomic Writes, Bloom-Filter, 10 Column Families, deterministische Ingestion über blake3-Deduplikation. Kein LLM-Aufruf für das Schreiben.

friday. in der Doku
  • Rust + RocksDB, single binary
  • gRPC für Agents, REST `POST /api/search` für Tools
  • MCP-Server eingebaut für direkte LLM-Tool-Anbindung
  • .fka-Format für deterministische, idempotente Ingestion

Mehr sehen?

Wir zeigen dir den Pfeiler an einem deiner eigenen Beispiele — Discovery Call, kein Vertrieb.