Die Leistung
KI-Wissensassistenten (RAG)
Assistenten, die Antworten aus eurem Wiki, euren PDFs und Handbüchern liefern. Mit Quellenangabe, Zugriffsrechten und gemessener Qualität.
Ein Chat, der Fragen aus dem internen Wiki und einem juristischen Nachschlagewerk mit rund 1.400 Seiten beantwortet – auf Deutsch und mit Quellenangabe. Allein umgesetzt, von der Anforderung bis zum Betrieb.
01 — Ausgangslage
Die Frage dahinter
„Steht das im Wiki oder im Nachschlagewerk?“
Das Wissen der Schule lag an zwei Orten: in einem internen Wiki und in einem juristischen Nachschlagewerk mit rund 1.400 Seiten als PDF. Wer eine Antwort brauchte, musste erst wissen, wo er suchen soll – und dann lesen. Eine Stichwortsuche hilft nur, wenn man das richtige Wort schon kennt.
02 — Lösung
Ein Assistent, der beide Wissensquellen kennt, auf Deutsch antwortet und zu jeder Antwort zeigt, woher sie stammt.
Das Wiki wird jede Nacht automatisch eingelesen, das Nachschlagewerk nach seinen Abschnitten zerlegt. Niemand muss Inhalte für den Assistenten von Hand pflegen.
Bedeutungssuche und deutsche Volltextsuche arbeiten zusammen: Der Assistent findet, was gemeint ist – und den exakten Fachbegriff.
Jede Frage wird zuerst eingeordnet: Wiki, Nachschlagewerk oder beides. Ein eigenes Reranking sortiert die Treffer, bevor die KI antwortet.
Die Antwort erscheint live im Chat, mit Verweis auf die Stelle im Wiki oder im Nachschlagewerk. Wer will, prüft nach.
03 — Architektur
Vereinfacht. Zwei Wissensquellen, eine Suche, ein Chat – und Messung im Betrieb.
A · Quellen
Hinter einem Login. Wird jede Nacht neu eingelesen.
Scraping · nächtlich
Juristisch, rund 1.400 Seiten.
PDF · Abschnitte
B · Aufbereitung
Liest beide Quellen ein, zerlegt sie in Abschnitte.
Python · OpenAI API
Vektoren und deutscher Volltext in einer Datenbank.
PostgreSQL · pgvector
C · Suche
Ordnet die Frage zu: Wiki, Nachschlagewerk oder beides.
LangChain
D · Antwort
Das Modell formuliert die Antwort aus den Treffern, mit Quellen.
FastAPI · SSE
Antwort live, Quelle zum Nachprüfen, Login pro Nutzer.
React · TypeScript
E · Betrieb
Jede Antwort wird protokolliert, Nutzer bewerten sie direkt im Chat. Langfuse, selbst gehostet.
04 — Meine Rolle
Allein verantwortlich: Anforderungen aufnehmen, bauen, ausrollen, betreiben. Ohne Übergabe an einen zweiten Entwickler.
Welche Fragen gestellt werden, welche Quellen zählen und wer Zugang bekommt.
Ingestion für Wiki und PDF, hybride Suche, Reranking und Routing über zwei Quellen.
API mit Streaming und Quellenzitaten, Nutzerverwaltung, Chat-Oberfläche.
Automatisiertes Deployment und Feedback pro Antwort im Monitoring.
05 — Ergebnis
Konkrete Nutzungszahlen gebe ich nur mit Freigabe der Schule weiter. Im Gespräch erzähle ich gern mehr.
06 — Technik
Für technische Leser, Teams und Agenturen.
Das Wiki läuft auf HumHub. Die nächtliche Ingestion liest das CSRF-Token aus, meldet sich per Session an, filtert Navigation und Kommentare heraus, folgt verlinkten Ressourcen und dedupliziert Inhalte. Diese Grenze zum Wiki ist mit deterministischen Tests gegen gemockte HTTP-Transports abgesichert.
Das PDF wird entlang seiner Abschnitte zerlegt. Jeder Chunk trägt Ausgabejahr, Seitenbereich und Abschnittspfad und liegt in einer eigenen Vektortabelle.
Keine separate Vektordatenbank: pgvector (Kosinus-Distanz) und die deutsche Volltextsuche von PostgreSQL (websearch_to_tsquery) laufen in einer Datenbank. Ein deterministischer Reranker gewichtet Vektor-Score, Keyword-Ranking und Begriffsüberlappung in Inhalt und Überschriften.
Juristisches Material fließt nur ein, wenn die Frage rechtliche Signale trägt – etwa „§“, „Gesetz“ oder „Elternzeit“ – oder sein Score einen höheren Schwellenwert überschreitet. So bleiben Alltagsantworten sauber und Rechtsfragen fundiert.
Folgefragen verdichtet ein LLM mit dem Verlauf zu eigenständigen Suchanfragen. Antworten kommen per Server-Sent Events, Zitate strukturiert: Wiki-URL und Titel oder Ausgabe, Seiten und Abschnitt. Fehlt passender Kontext, sagt der Assistent das, statt zu raten.
Session-basierte Authentifizierung mit Argon2, gespeicherte Chat-Verläufe, ein Admin-Bereich mit Benutzerverwaltung und CSV-Import sowie eine Typer-CLI für Betriebsaufgaben.
Datenbankmigrationen mit Alembic, nächtliche Re-Ingestion per Cron im App-Container und selbst gehostetes Langfuse: Über Trace-IDs hängt das Feedback der Nutzer an der jeweiligen Antwort. Ausgeliefert als ein Image hinter Traefik, TLS über Let’s Encrypt.
07 — Weiter
Die Leistung
Assistenten, die Antworten aus eurem Wiki, euren PDFs und Handbüchern liefern. Mit Quellenangabe, Zugriffsrechten und gemessener Qualität.
Ähnliches Projekt
Spezialisierte Agenten beantworten Analysefragen über mehrere Datenquellen hinweg, in einer Chat-Oberfläche mit Live-Streaming.
Projekt anfragen
Schreib mir in zwei, drei Sätzen, worum es geht. Du bekommst innerhalb eines Werktags eine ehrliche Einschätzung – auch wenn sie lautet, dass du gar keine KI brauchst.