RAG-Chat

Erstellt: 2025-12-20 | Aktualisiert: 2025-12-31

Retrieval-Augmented Generation Chat mit semantischer Suche und Session-Persistenz.

Tool/chat
API-Referenz/docs/api/chat
LLMClaude Opus 4.5 (Anthropic) / Ollama (lokal)
Embeddingmxbai-embed-large (Ollama)
VektorenQdrant
Datenbankki_content (chat_sessions, chat_messages)

Web-UI Routen

RouteMethodeBeschreibung
/chatGETNeue Session erstellen, Redirect zu /chat/{uuid}
/chat/{uuid}GETSession anzeigen (Sidebar + Nachrichten)
/chat/{uuid}/messagePOSTNachricht senden (HTMX)
/chat/{uuid}/titlePOSTSession-Titel aktualisieren (HTMX)
/chat/{uuid}DELETESession löschen (HTMX)
/chat/sessionsGETSession-Liste Partial (HTMX)

Features

Session-Verwaltung

Konfiguration

Token & Kosten

Datenbank-Schema (ki_content)

chat_sessions

id INT PK AUTO
uuid VARCHAR(36) UNIQUE
session_token VARCHAR(64) UNIQUE
user_id INT NULL
persona_id INT FK NULL
created_at DATETIME DEFAULT CURRENT_TIMESTAMP
last_activity DATETIME DEFAULT CURRENT_TIMESTAMP
model VARCHAR(100) DEFAULT 'claude-opus-4-5-20251101'
context_limit INT DEFAULT 5
temperature DECIMAL(3,2) DEFAULT 0.50
max_tokens INT DEFAULT 4096
title VARCHAR(255) DEFAULT 'Neuer Chat'
author_profile_id INT FK NULL
system_prompt_id INT NULL
updated_at DATETIME ON UPDATE CURRENT_TIMESTAMP
collections TEXT DEFAULT '["documents"]' (JSON-Array)

chat_messages

id INT PK AUTO
session_id INT FK NOT NULL (CASCADE DELETE)
role ENUM('user','assistant','system')
model VARCHAR(100)
content TEXT NOT NULL
start_microtime DECIMAL(16,6)
end_microtime DECIMAL(16,6)
tokens_input INT
tokens_output INT
sources LONGTEXT (JSON)
author_profile_id INT
system_prompt_id INT
collections TEXT (JSON-Array)
context_limit INT
chunks_used LONGTEXT (JSON)
llm_request_id INT FK
created_at DATETIME DEFAULT CURRENT_TIMESTAMP

RAG-Pipeline

User Query (Text)
    ↓
Embedding erzeugen (mxbai-embed-large)
    ↓
Qdrant: Ähnliche Chunks finden (Top-K)
    ↓
Kontext zusammenstellen
    ↓
LLM (Claude/Ollama): Antwort generieren
    ↓
Response + Quellenangaben + Tokens speichern

Siehe auch