Lebendige Dokumentation · technische Karte

Wie LIA gebaut ist, Schicht für Schicht

Die Schichten des Systems, vom Bildschirm bis zur Datenbank, was jeder Baustein tut, mit welchen Technologien, wo er im Repository liegt, und die Wege, die eine Anfrage nimmt.

  • 59technische Bausteine
  • 10Schichten
  • 7kommentierte Abläufe
  • 57Infrastrukturmodule
  • 63bediente Fachdomänen

Version 4.6.010. November 2026bei jedem Commit aktuell gehalten, aus den Daten des Repositorys

Überblick

Die Schichten des Systems

Vom Bildschirm bis zur Datenbank. Fahr über einen Baustein, um seine Verbindungen nachzuzeichnen, klick für seine Technologien, Dateien und Entscheidungen.

stützt sich aufgenutzt von

Clients

Was die Person berührt: die Webanwendung, ihr Offline-Modus, die mobilen Hüllen und die Messaging-Kanäle.

Netzwerkrand

Was zwischen Internet und Anwendung steht: Tunnel, Inhaltsrichtlinie, Rate-Limit, Sitzungen.

API und Anwendungsbasis

Die FastAPI-API, in Fachdomänen gegliedert, ihr SSE-Stream, ihr geordneter Start und ihre Konfiguration.

Agenten-Orchestrierung

Der LangGraph-Graph: Routing, Planung oder ReAct-Schleife, menschliche Freigabe, Werkzeuge und Antwort.

Modelle und Kosten

Der Zugang zu den Modellen jedes Anbieters, Reasoning, strukturierte Ausgaben, Embeddings und die Abrechnung jedes Aufrufs.

Integrationen

Die Clients externer Dienste, die offenen Protokolle, die Sandbox und die Sprachkanäle.

Hintergrund-Jobs

Was ohne Anfrage läuft: Scheduler mit einem einzigen Leader, proaktive Engine, dauerhafte Jobs, Selbstdiagnose.

Daten

Wo der Zustand lebt: PostgreSQL und pgvector, Redis, Dateien und die Register dessen, was LIA getan, gelesen und entschieden hat.

Observability

Messen, sehen, alarmieren, nachlesen: Metriken, Dashboards, Alarme, Logs, Traces.

Auslieferung

Wie Code zu einem Dienst wird: Images, Continuous Integration und ihre Guards, qualifiziertes Release, Installer, Demo.

Abläufe

Wähl ein Szenario: Seine Schritte leuchten nacheinander auf der Karte auf.

Schichten

Klick auf eine Schicht, um sie hervorzuheben.

Abläufe

Der Weg einer Anfrage, eines Aufrufs, einer Auslieferung

Jeder Schritt nennt den Baustein, der handelt, und was er garantiert.

Der Ablauf einer Chat-Nachricht

Von der Tastatur bis zum Bildschirm, über den Graphen: eine Anfrage, ein Stream, kein offengelegtes Token.

  1. Webanwendung
    Der Browser schickt die Nachricht an die API seines eigenen Origins.
  2. Tunnel, CSP und Rate-Limit
    Der Tunnel leitet sie weiter; die Rate des Aufrufers wird geprüft.
  3. Sitzungen und Authentifizierung
    Das Sitzungscookie wird serverseitig geprüft.
  4. FastAPI-API nach Domänen
    Die Chat-Route öffnet einen Stream und startet den Graphen.
  5. LangGraph-Graph
    Der Zustand der Unterhaltung wird aus ihrem Checkpoint neu geladen.
  6. Router
    Die Anfrage wird klassifiziert, die Werkzeuge bewertet.
  7. Planer und Executor
    Ein Plan wird geschrieben, validiert und parallel ausgeführt.
  8. Werkzeuge und Manifeste
    Jedes Werkzeug passiert das Autoritäts-Gate und trägt sich ins Register ein.
  9. Konnektor-Clients
    Der Anbieter wird aufgerufen, ohne offene Datenbanktransaktion.
  10. Antwortsynthese
    Die Antwort wird aus den Ergebnissen synthetisiert.
  11. SSE-Streaming
    Sie kommt Wort für Wort an, mit ihren Kosten, im selben Stream.

Ein Modellaufruf von A bis Z

Vorher begrenzt, für den Anbieter übersetzt, zum Preis seines Zeitpunkts berechnet, danach nachverfolgt.

  1. Versionierte Prompts
    Der Prompt wird zusammengesetzt: das Stabile zuerst, eine einzige Cache-Grenze.
  2. Abrechnung und Limits
    Die beiden Limits — Konto und Instanz — werden vor der Ausgabe abgefragt.
  3. Reasoning
    Die Reasoning-Absicht wird für genau dieses Modell übersetzt.
  4. Modell-Factory
    Der native Client des Anbieters sendet die Anfrage.
  5. Strukturierte Ausgaben
    Eine vom Token-Limit abgeschnittene Ausgabe wird zu einer ausdrücklichen Ablehnung.
  6. Abrechnung und Limits
    Der Verbrauch wird ein einziges Mal gelesen und nach dem Zeitfenster des Aufrufs berechnet.
  7. Nachvollziehbare Register
    Die tatsächlich gesendeten Parameter kommen ins Register des Aufrufs.
  8. Metriken
    Tokens, Latenz und Kosten werden zu Metriken.

Ein proaktiver Hintergrund-Job

Ein einziger Leader, ein Jitter, eine Beanspruchung, ein Versand, der anhand seines Ergebnisses abgeschlossen wird.

  1. Scheduler mit einem Leader
    Der Leader startet den Durchlauf, versetzt um seinen Jitter.
  2. Proaktive Engine
    Die berechtigten Konten werden unter allen Regeln ausgewählt.
  3. Konnektor-Clients
    Die Quellen werden gelesen, jede in einer kurzen Transaktion.
  4. Modell-Factory
    Die Nachricht wird unter den Ausgabenlimits verfasst.
  5. Nachvollziehbare Register
    Der Versand wird beansprucht, bevor er rausgeht.
  6. Push-Benachrichtigungen
    Die Benachrichtigung geht an den Browser oder das Telefon.
  7. Nachvollziehbare Register
    Der Effekt wird anhand des tatsächlichen Versandergebnisses abgeschlossen.

Eine delegierte Live-Sitzung

Der delegierte Ablauf: Der Browser spricht mit dem Anbieter, und jede Anfrage kehrt zum Graphen zurück.

  1. Webanwendung
    Die Person öffnet eine Live-Sitzung.
  2. Live-Transporte
    Die API stellt eine Einmal-Kennung aus und erstellt das Mandat der Stimme.
  3. Live-Transporte
    Der Browser öffnet den Transport des Anbieters (WebSocket oder WebRTC).
  4. FastAPI-API nach Domänen
    Eine delegierte Anfrage wird zu einem gewöhnlichen Gesprächszug im Chat.
  5. LangGraph-Graph
    Der Graph führt ihn aus, mit seinen Freigaben und seinen Registern.
  6. Live-Transporte
    Die Antwort, begrenzt und geglättet, wird an die Stimme zurückgegeben.
  7. Dauerhafte Jobs
    Am Ende archiviert, beziffert und leitet ein einziger Abschluss weiter.

Vom Commit in die Produktion

Jeder Guard läuft vor dem Push; nichts wird ohne Qualifizierung veröffentlicht.

  1. CI und Guards
    Der Hook und die CI führen dieselben Task-Befehle aus: Lint, Ratchets, Tests.
  2. CI und Guards
    Beim Tag werden die Kandidaten-Images gebaut und per Digest gekennzeichnet.
  3. Release, Deployment, Installer
    Eine Wegwerf-Installation qualifiziert den Kandidaten.
  4. Release, Deployment, Installer
    Das Release prüft die Nachweise und veröffentlicht die Versions-Tags.
  5. Images und Compose
    Die gepinnten Images werden auf den Server gezogen.
  6. Release, Deployment, Installer
    Das entkoppelte Deployment schreibt sein Urteil in eine Datei, die wieder gelesen wird.
  7. Demo
    Die Demo wird neu ausgerollt und geprüft.

Sehen, alarmieren, Selbstdiagnose

Jedes Signal hat einen Leser; ein Alarm hat ein Runbook; LIA liest ihre eigenen Belege.

  1. Metriken
    Die Prozesse veröffentlichen ihre Metriken, Speicher inklusive.
  2. Logs
    Die strukturierten Logs, ohne personenbezogene Daten, landen in Loki.
  3. Dashboards
    Grafana zeigt jedes Subsystem.
  4. Alarme
    Ein Alarm geht mit seinem Runbook raus.
  5. Selbstdiagnose
    LIA sammelt die Belege des Vorfalls und diagnostiziert ihn.

Einen Anwendungsbefehl ausführen

Dauerhafte Identität und aktuelle Voraussetzungen; eine geöffnete Fortsetzung bleibt ausstehend.

  1. Webanwendung
    Der Client verwendet den Operationskatalog, der diesem Konto angeboten wird.
  2. Werkzeuge und Manifeste
    Die Deklaration legt Operation, Schema, Geltungsbereich und benötigte Fähigkeiten fest.
  3. Dauerhafte Anwendungsbefehle
    Die Vorbereitung bindet Vorher-/Nachher-Werte, Digest, Akteur, Ursprung und Ablaufzeit in einem verschlüsselten Befehl.
  4. Freigabe und Entwürfe
    Das Effekt-Gate prüft die genaue Zustimmung, wenn die Operation sie verlangt.
  5. Dauerhafte Anwendungsbefehle
    Die Ausführung liest Rechte und Fähigkeiten neu; tokengebundener Claim und Compare-and-Set des Quelldienstes schützen ihre jeweiligen Grenzen.
  6. Sitzungen und Authentifizierung
    Eine private Fortsetzung ist an Sitzung und gegebenenfalls adressiertes Gerät gebunden; Geheimnisse bleiben außerhalb des Modells.
  7. Dauerhafte Anwendungsbefehle
    Committed, waiting, Konflikt, Fehler und Abbruch bleiben getrennt; eine verlorene Antwort wird nicht automatisch erneut ausgeführt.
  8. Webanwendung
    Ein gezielter Hinweis invalidiert betroffene Ressourcen; der Client liest ihre authentifizierten Abfragen neu.