Einführung in die QAnswer-Systemarchitektur
Um QAnswer On-Premise zu installieren, kontaktieren Sie uns unter
Architektur der Anwendung
Hier ist ein Diagramm, das die Gesamtarchitektur der QAnswer-Anwendung erklärt:
Die globale Architektur von QAnswer besteht aus 3 Teilen:
- Nginx WAF — zuständig für externes Routing, Web Application Firewall und TLS/SSL-Verwaltung.
- QAnswer Core — der funktionale Teil von QAnswer, der die erforderlichen Funktionen bereitstellt.
- QAnswer Monitoring — zuständig für die Überwachung des Status von QAnswer.
QAnswer enthält folgende Softwarekomponenten:
- Traefik — Load Balancer für internes Traffic-Routing;
- eine React-Frontend-Web-App für den Zugriff und die Interaktion mit APIs über eine intuitive Benutzeroberfläche;
- QAnswer Doc — die Dokumentationsseite, die Sie gerade lesen;
- QAnswer Python Backend — Einstiegspunkt des Backends, zuständig für Sicherheit, Authentifizierung, Autorisierung, KI-Modelle und Indexierung;
- QAnswer LLM — die Serving-Schicht für das Large Language Model;
- QAnswer Embedder — das für die semantische Suche verwendete Einbettungsmodell;
- ein Transkriptionsserver für Sprachzutext;
- Clamav — prüft hochgeladene Dateien auf Viren;
- ein Selenium-Server zum Scrapen von Websites;
- eine Postgres-Datenbank zur Speicherung von Benutzerinformationen.
- Valkey — Key-Value-Store für Caching und Queuing;
- eine ElasticSearch-Instanz;
Anforderungen
Hardware
- 16 GB RAM
- 200 GB Festplattenspeicher
- Eine GPU mit mindestens 48 GB Speicher (wir empfehlen NVIDIA® L40S)
Software
- eine Linux-Distribution (standardmäßig verwenden wir Ubuntu)
- Docker Version 20 oder neuer
- Docker Compose
- Das installierte nvidia-container-toolkit, um NVIDIA-GPUs in einem Container zu nutzen
- Ein Lizenzschlüssel sowie ein Benutzername und ein Access Token (von uns bereitgestellt)
(Dies unterstützt 7 bis 13 gleichzeitige Benutzer je nach RAG- oder Chat-Workload. Kontaktieren Sie uns unter info@the-qa-company.com für Hilfe bei der Dimensionierung Ihrer Infrastruktur.)
Schnellstart
Sobald Sie Ihren Lizenzschlüssel und die Registry-Anmeldedaten haben, erfolgt die Bereitstellung des Bundles in wenigen Schritten:
1. Bundle-Repository klonen
git clone -b main https://gitlab.the-qa-company.com/qanswer-app/qanswer-bundle.git
cd qanswer-bundle2. Anmeldedaten setzen
export QANSWER_KEY=YOUR_KEY
export HUGGINGFACE_TOKEN=YOUR_HF_KEYYOUR_KEY ist Ihr Lizenzschlüssel; YOUR_HF_KEY ist das von uns bereitgestellte Hugging-Face-Token.
3. Bei der Image-Registry anmelden
docker login -u $QANSWER_REGISTRY_USER -p $QANSWER_REGISTRY_PASSWORD \
https://registry.gitlab.the-qa-company.com:443/v2/qanswer-appQANSWER_REGISTRY_USER und QANSWER_REGISTRY_PASSWORD sind die von uns bereitgestellten Docker-Registry-Anmeldedaten.
4. Alle Images herunterladen
./init.sh5. QAnswer starten
./deploy-scripts/up.sh
# or manually:
docker compose up -d6. Öffnen Sie Ihren Browser unter http://localhost:4567/
7. Die Standardanmeldung lautet Benutzername: admin / Passwort: 123456
