werkworks Weave Architektur und Ablauf

Weave · Architektur und Ablauf

Wie eine Frage zu einer belegten Antwort wird

Zwei Blicke auf dasselbe System: erst die Topologie der sechs Kerndienste, ihrer Worker und der geteilten Mitte, dann der zeitliche Ablauf einer einzelnen Wissensfrage — samt der Stellen, an denen Rechte geprüft werden.

Stand 03.10.2026 · v0.7.06 Kerndienste · 3 Datenbanken · 2 CPU-Modelle lokal verifiziert
Abbildung 1 · Architektur

Drei Zonen, eine geteilte Mitte

Oben wird kompiliert, unten geantwortet — und beide greifen auf dieselbe Mitte zu. Weave-Knowledge schreibt in Postgres, Weave-Retrieval liest dieselbe Datenbank nur lesend, weil pgvector-Ähnlichkeit und Volltext-Ranking als SQL in der Datenbank laufen müssen. Die beiden Modelldienste bedienen beide Pipelines: einmal für Passagen beim Indizieren, einmal für die Suchanfrage.

Weave Architektur im Detail Drei Zonen: oben die Ingestion von den Quellen ueber Weave-Ingest und den OCR-Worker zu Weave-Knowledge und dessen Index-Worker; in der Mitte die gemeinsam genutzten Speicher Redis und Postgres samt der beiden CPU-Modelldienste fuer Embeddings und Reranking; unten die Anfragestrecke von den Clients ueber Weave-API und Weave-Runtime zu Weave-Retrieval, dazu Weave-Tools als MCP-Zugang sowie n8n und ein externer LLM-Endpunkt. OFFLINE · DOKUMENTE WERDEN KOMPILIERT GETEILTE MITTE · SPEICHER UND CPU-MODELLE ONLINE · ANFRAGE WIRD GEROUTET DATEIEN JOB EVENT JOB QUEUE INDEX PASSAGE HTTPS CHAT SEARCH READ-ONLY QUERY RERANK WER? SEARCH LLM MCP · REST INPUT Quellen PDF · Mail · Confluence P1 Weave-Ingest :8000 · OCR → Markdown WORKER OCR-Worker PaddleOCR · Celery P2 Weave-Knowledge :8001 · Chunking WORKER Index-Worker weave.knowledge.index QUEUE Redis Ingest · Knowledge STORE Postgres pgvector 384 · tsvector CPU Embeddings e5-small · :8006 CPU Reranker bge-v2-m3 · :8007 INPUT Clients Chat-UI · API-Clients P4 Weave-API :8004 · Auth · Verlauf P4 Weave-Runtime :8003 · Intent-Router P3 Weave-Retrieval :8002 · Hybrid + RRF P5 Weave-Tools :8005 REST · :8008 MCP EXT n8n Agenten-Flow EXT LLM-Endpunkt OpenAI-kompatibel LEGENDE Kern: Compiler und Router Dienst CPU-Modell Speicher extern HTTP-Aufruf asynchron / optional

Was oben passiert

  • Der OCR-Worker macht aus PDF, Mail und Confluence strukturiertes Markdown mit Metadaten
  • Indiziert wird erst nach manueller Freigabe: sie erzeugt den unveränderlichen Snapshot und das signierte document.released-Event
  • Der Index-Worker chunkt strukturbewusst und lässt jede Passage einbetten
  • Eine neue Version ersetzt die Chunks der alten in derselben Transaktion

Was die Mitte trägt

  • Postgres hält drei Datenbanken; der Chunk-Store trägt Vektoren und Volltext-Index
  • Redis bedient nur Weave-Ingest (DB 0) und Weave-Knowledge (DB 1) als Celery-Broker — die übrigen Dienste sind zustandslose HTTP-Services ohne eigenen Worker
  • Die Modelldienste sprechen dieselbe Schnittstelle wie ein externer Anbieter — austauschbar
  • Dieselbe Modellangabe muss beim Indizieren und beim Suchen gelten, sonst findet die Suche nichts

Was unten entscheidet

  • Der Router bestimmt zuerst die Art der Anfrage — nur Wissensfragen suchen überhaupt
  • Weave-Tools leiht Agenten die Rechte des Fragenden über ein kurzlebiges signiertes Token
  • n8n und MCP-Clients sehen nie mehr als der Mensch dahinter
  • Das Sprachmodell ist austauschbar und wird erst nach dem Router überhaupt gefragt
Abbildung 2 · Ablauf

Eine Wissensfrage, von links nach rechts und wieder zurück

Die Zeit läuft nach unten. Auffällig ist, wo nicht gearbeitet wird: Rechte und Absicht klärt die Runtime, bevor irgendjemand sucht — und ob eine Antwort überhaupt hinausgeht, entscheidet ganz am Ende der Guard. Findet die Suche nichts, geht der konfigurierte Hinweis raus statt einer flüssig formulierten, aber unbelegten Antwort. Für Bots im Agentenmodus verzweigt Weave-Runtime an dieser Stelle in einen LangGraph-Ablauf: Statt einer einzelnen Suche plant der Bot Teilfragen, lässt sie parallel gebundene Rechercheprofile bearbeiten und führt die Treffer erst danach zur Antwort zusammen — eine Recherche, die nichts findet, wird als benannte Lücke gemeldet, nie als erfundene Antwort.

Ablauf einer Wissensfrage Zeitlicher Ablauf ueber fuenf Beteiligte: die Chat-Oberflaeche fragt Weave-API, das an Weave-Runtime weiterreicht; dort werden Bot, Rechte und Absicht bestimmt, danach sucht Weave-Retrieval und laesst dabei die Anfrage einbetten und die Treffer neu bewerten; am Ende entscheidet ein Guard, ob eine belegte Antwort oder ein Hinweis ohne Quellen zurueckgeht. CLIENT Chat-Oberfläche Browser P4 Weave-API :8004 P4 Weave-Runtime :8003 P3 Weave-Retrieval :8002 CPU Modelldienste :8006 · :8007 POST /v1/chat /internal/chat + Team Bot laden · Rechte · Intent-Router search allowed_collections embed input_type=query 384-Vektor rerank 20 Kandidaten Relevanzwerte Top-5 + Quellen ALT [Quellen gefunden] Antwort + Quellen [keine Quellen] Guard-Text · sources=[] SSE: trace → Deltas → Quellen LEGENDE Aufruf Antwort belegte Antwort — der Erfolgsfall hält gerade die Kontrolle