BACR Website-Dokumentation
Umfassende Dokumentation für Website-Inhalte basierend auf der BACR-Anwendung
Inhaltsverzeichnis
Erste Schritte
Überblick
BACR (Bot Assistant with Contextual Retrieval) ist ein hochentwickelter KI-Chat-Assistent, der fortschrittliche Dokumentenverarbeitung, intelligentes Query-Routing und persistenten Speicher kombiniert. Gebaut mit Python, Flet, LangGraph und FAISS bietet BACR eine leistungsstarke Desktop-KI-Assistenten-Erfahrung mit lokalen Dokumentenverständnisfähigkeiten.
Hauptmerkmale:
- 🤖 Multi-Modell-KI-Routing mit automatischer Query-Klassifizierung
- 📚 Hybrides RAG-System mit Vektorsuche und KI-Neuordnung
- 💾 Sitzungsübergreifender Speicher, der aus Ihren Gesprächen lernt
- 🎨 Moderne Desktop-GUI mit Theme-Unterstützung
- 🔐 Sichere Google OAuth-Authentifizierung
- 📊 Echtzeit-Token-Nutzung und Kostenverfolgung
Warum BACR?
Für Entwickler:
- Lokale Dokumentenverarbeitung ohne Senden von Dateien an externe APIs
- Intelligentes code-bewusstes Routing für Programmierfragen
- Multi-Format-Unterstützung (PDF, DOCX, TXT, MD und mehr)
- Persistenter Gesprächsverlauf über Sitzungen hinweg
Für Forscher:
- Fortgeschrittenes RAG mit Jina AI-Neuordnung für genaues Dokumentenabrufen
- Zitationsverfolgung - nur zitierte Quellen werden angezeigt
- Sitzungsübergreifender Speicher zum Aufbau von Wissen im Laufe der Zeit
- Gespräche als PDF für Dokumentation exportieren
Für Teams:
- Benutzerisolierte Datenbanken für Datenschutz
- Server-verwaltete API-Schlüssel für einfache Bereitstellung
- Zero Data Retention (ZDR)-Modus für datenschutzbewusste Benutzer
- Kostenverfolgung pro Abfrage für Budgetverwaltung
Funktionen
KI & Intelligenz
- Zweistufiges intelligentes Routing: Abfragen werden automatisch klassifiziert und zum optimalen Modell geleitet
- Stufe 1: Dateiverwaltung → RAG (Dokumentensuche) → Direktes LLM
- Stufe 2: Codierung → Reasoning → Chat → Forschung
- Modellintegration: Zugriff auf über 200 KI-Modelle einschließlich GPT-4, Claude, Gemini, DeepSeek und mehr
- Echtzeit-Streaming: Token-für-Token-Antworten mit Live-Statusaktualisierungen
- Kostenverfolgung: Überwachen Sie Token-Nutzung und Kosten pro Abfrage mit detaillierten Aufschlüsselungen
- Modellmodi: Wechseln Sie zwischen ZDR und Nicht-ZDR
Dokumentenverarbeitung (RAG)
- Hybride Suche: Kombiniert Vektorähnlichkeit mit Jina AI-Neuordnung
- Lokale Einbettungen: Verwendet ein lokales Einbettungs-GGUF-Modell - keine API-Aufrufe für Einbettungen
- Intelligente Filterung: Relevanzschwelle entfernt automatisch irrelevante Chunks
- Intelligente Zitate: LLM zitiert Quellen als (Doc 1), (Doc 2); nur zitierte Quellen werden angezeigt
- Persistenter Speicher: Benutzerspezifische FAISS-Indizes gespeichert in
~/.bacr/user_databases/ - Multi-Format-Unterstützung: PDF, TXT, MD, DOCX, XLSX, PPTX, RTF, CSV, JSON, YAML und mehr
Speicher & Kontext
- Sitzungsübergreifender Speicher: LangMem semantischer Speicher, der über alle Gespräche hinweg bestehen bleibt
- Benutzerspezifische Datenbanken: Isolierte SQLite-Datenbanken pro Benutzer für Datenschutz
- Persistenter Verlauf: Alle Gespräche gespeichert und durchsuchbar
- Kontextbewusst: Jede Sitzung behält unabhängigen Kontext mit Dateiverfolgung bei
Benutzeroberfläche
- Moderne Flet-GUI: Saubere, responsive Desktop-Oberfläche gebaut mit Flutter
- Theme-Unterstützung: Helle, dunkle und System-Themes (bleibt über Neustarts bestehen)
- Tabbed Sessions: Mehrere unabhängige Gespräche mit einfachem Wechsel
- Schriftgrößensteuerung: Einstellbare Textgröße mit visuellen Steuerelementen
- Statusleiste: Echtzeit-Dateianzahl, Token-Nutzung und Kreditguthaben
- Exportmodus: Wählen und exportieren Sie bestimmte Nachrichten als PDF
Authentifizierung & Sicherheit
- Google OAuth: Sichere Anmeldung mit Auto-Login-Unterstützung über Refresh-Tokens
- Profilbilder: Bei jeder Anmeldung frisch von Google abgerufen
- Benutzerisolierung: Alle Daten nach Benutzerkonto getrennt
- Datenschutz: Benutzerdaten sind isoliert
Architektur
BACR ist mit einer modularen Architektur gebaut, die Belange trennt und einfache Wartung ermöglicht:
Frontend-Schicht:
- Flet-basierte GUI mit reaktiven Komponenten
- Google OAuth-Integration für Authentifizierung
- Echtzeit-Statusaktualisierungen und Streaming-Antworten
- Theme- und Präferenzverwaltung
Kernschicht:
- LangGraph-basiertes Gesprächsmanagement
- Zweistufiges intelligentes Routing-System
- Hybrides RAG mit Vektorsuche und Neuordnung
- Sitzungsübergreifender Speicher mit LangMem
Backend-Schicht:
- Server-API-Client für Authentifizierung und API-Schlüsselverwaltung
- Modellmanager mit ZDR/Nicht-ZDR-Moduswechsel
- Multi-Modell-Zugriff
- Token-Nutzungsverfolgung und Kostenberechnung
Speicherschicht:
- Benutzerspezifische SQLite-Datenbanken
- FAISS-Vektorindizes für Dokumenteneinbettungen
- Lokales Dateisystem für Dokumenten-Caching
Installation
Anforderungen
Systemanforderungen:
- Betriebssystem: Windows 10/11, Linux (Ubuntu 20.04+, Fedora, Arch), macOS 11+
- Python: 3.9 oder höher
- RAM: 4GB Minimum, 8GB empfohlen
- Festplattenspeicher: 2GB für Anwendung und Abhängigkeiten
- Internet: Erforderlich für Authentifizierung und API-Zugriff
Windows
Linux
MacOS
Nicht verfügbar
CLI-Referenz
Befehle
BACR bietet einen umfassenden Satz von Slash-Befehlen zur Verwaltung von Dateien, Sitzungen und Gesprächen.
Dateiverwaltung
/add <filepath>
- Fügen Sie ein Dokument zum RAG-System für Kontext hinzu
- Unterstützt: PDF, TXT, MD, DOCX, XLSX, PPTX, RTF, CSV, JSON, YAML
- Beispiel:
/add C:\Documents\report.pdf - Erstellt Einbettungen und indiziert Dokument für Suche
/remove <filename>
- Entfernen Sie eine bestimmte Datei aus dem RAG-System
- Beispiel:
/remove report.pdf - Entfernt Einbettungen und gibt Speicher frei
/files
- Listen Sie alle Dateien auf, die sich derzeit im RAG-System befinden
- Zeigt Dateinamen und Chunk-Anzahl
- Zeigt Gesamtkontextgröße
/clear
- Entfernen Sie alle Dateien aus dem RAG-System
- Löscht alle Dokumenteneinbettungen
- Löscht nicht den Chat-Verlauf
Sitzungsverwaltung
/new-chat oder Strg+N
- Starten Sie ein neues Gespräch in einem neuen Tab
- Erstellt unabhängigen Kontext
- Vorherige Sitzungen bleiben zugänglich
/close-tab oder Strg+W
- Schließen Sie den aktuellen Gesprächs-Tab
- Speichert Gespräch in Datenbank
- Kann letzten Tab nicht schließen
/list-chats
- Zeigen Sie alle gespeicherten Gespräche an
- Zeigt Sitzungsnamen und Zeitstempel
- Zeigt Nachrichtenanzahl
/load-chat <name_or_id>
- Laden Sie ein Gespräch in den aktuellen Tab
- Ersetzt aktuelles Gespräch
- Beispiel:
/load-chat Project Discussion
/open-chat <name_or_id>
- Öffnen Sie ein Gespräch in einem neuen Tab
- Behält aktuelles Gespräch bei
- Beispiel:
/open-chat Meeting Notes
/rename-chat <new_name>
- Benennen Sie das aktuelle Gespräch um
- Beispiel:
/rename-chat Q1 Planning - Kann temporäre Sitzungen nicht umbenennen
/delete-chat <name_or_id>
- Löschen Sie ein gespeichertes Gespräch dauerhaft
- Beispiel:
/delete-chat Old Notes - Kann nicht rückgängig gemacht werden
Chat-Verlauf
/clear-chat oder /clear
- Löschen Sie den Chat-Verlauf für aktuelles Gespräch
- Entfernt alle Nachrichten aus Anzeige und Status
- Löscht nicht gespeichertes Gespräch
- Dateien bleiben im Kontext
/export-chat
- Exportieren Sie aktuelles Gespräch in eine Datei
- Speichert als zeitgestempelte Textdatei
- Enthält alle Nachrichten und Metadaten
- Speicherort:
~/.bacr/exports/
/import-chat <filepath>
- Importieren Sie ein Gespräch aus einer Datei
- Unterstützt TXT- und PDF-Formate
- Fügt zum aktuellen Gespräch hinzu
- Beispiel:
/import-chat notes.txt
Dienstprogramme
/tokens
- Zeigen Sie Token-Nutzung für aktuelles Gespräch
- Zeigt Eingabe-, Ausgabe- und Gesamt-Tokens
- Zeigt geschätzte Kosten
- Aggregiert über alle Sitzungen
/find <query>
- Suchen Sie über den gesamten Gesprächsverlauf
- Öffnet Suchoberfläche
- Hebt übereinstimmende Nachrichten hervor
- Beispiel:
/find API documentation
/help
- Öffnet Hilfeseite im Browser
- Zeigt alle verfügbaren Befehle
- Enthält Beispiele und Beschreibungen
/quit
- Schließen Sie die Anwendung
- Speichert alle Gespräche
- Löscht API-Schlüssel aus dem Speicher
Konfiguration
Theme-Umschaltung
- Klicken Sie auf Theme-Symbol in der oberen Leiste
- Wechselt zwischen hell/dunkel
- Präferenz bleibt über Neustarts bestehen
Schriftgröße
- Klicken Sie auf Schriftgrößen-Schaltflächen in der oberen Leiste
- Passt Textgröße für alle Nachrichten an
- Bereich: 12px bis 20px
ZDR-Modus-Umschaltung
- Klicken Sie auf ZDR-Umschaltung in Einstellungen
- Wechselt zwischen kostenlosen und Premium-Modellen
- Löscht Modell-Cache beim Wechsel
Shell-Befehle
BACR unterstützt gängige Shell-Befehle zur Dateisystemnavigation:
cd <directory>
- Aktuelles Arbeitsverzeichnis ändern
- Beispiel:
cd Documents - Beeinflusst Dateioperationen
ls oder dir
- Dateien im aktuellen Verzeichnis auflisten
- Zeigt Dateinamen und Größen
pwd
- Arbeitsverzeichnis drucken
- Zeigt aktuellen Pfad
cat <file>
- Dateiinhalt anzeigen
- Beispiel:
cat notes.txt
mkdir <directory>
- Neues Verzeichnis erstellen
- Beispiel:
mkdir projects
rm <file>
- Datei entfernen (mit Vorsicht verwenden)
- Beispiel:
rm temp.txt
cp <source> <dest>
- Datei kopieren
- Beispiel:
cp file.txt backup.txt
mv <source> <dest>
- Datei verschieben oder umbenennen
- Beispiel:
mv old.txt new.txt
usw.
Verwendungsbeispiele
Basis-Chat:
Benutzer: Was ist maschinelles Lernen?
BACR: [Streamt Antwort mit Echtzeit-Status]
Dokumentenverarbeitung:
Benutzer: /add C:\Reports\Q4_Analysis.pdf
BACR: ✔︎ Q4_Analysis.pdf erfolgreich hinzugefügt (45 Chunks)
Benutzer: Was waren die wichtigsten Erkenntnisse in Q4?
BACR: Laut der Q4-Analyse (Doc 1) waren die wichtigsten Erkenntnisse...
Quellen:
• Q4_Analysis.pdf
Multi-Session-Workflow:
Benutzer: /new-chat
Benutzer: /add project_spec.md
Benutzer: Erkläre den Authentifizierungsablauf
BACR: [Bietet detaillierte Erklärung mit Zitaten]
Benutzer: /rename-chat Auth Documentation
Benutzer: /export-chat
BACR: ✔︎ Exportiert nach ~/.bacr/exports/Auth_Documentation_2026-03-07.txt
Verlauf durchsuchen:
Benutzer: /find API endpoints
BACR: [Öffnet Suchoberfläche mit 12 Treffern über 3 Gespräche]
API-Referenz
Authentifizierung
BACR verwendet Google OAuth 2.0 für Benutzerauthentifizierung und serverbasierte API-Schlüsselverwaltung.
RAG-System
Das RAG-System (Retrieval-Augmented Generation) kombiniert Vektorsuche, Schlüsselwortsuche und Neuordnung.
Sicherheit
Datenspeicherung:
- Refresh-Tokens: Windows-Registrierung (verschlüsselt)
- Gespräche: Lokales SQLite (benutzerspezifisch)
- Dokumente: Lokale FAISS-Indizes (benutzerspezifisch)
- Präferenzen: Windows-Registrierung (verschlüsselt)
Datenübertragung:
- Alle API-Aufrufe verwenden HTTPS
- Google OAuth verwendet PKCE-Flow
- JWT-Tokens laufen nach 24 Stunden ab
- Refresh-Tokens laufen nach 30 Tagen ab
Datenschutz:
- Benutzerdaten nach Hash isoliert
- Kein Dokumenteninhalt an Server gesendet
- Nur Einbettungen lokal gespeichert
- Token-Nutzung nur für Abrechnung protokolliert
Best Practices:
- Abmelden, wenn fertig, um API-Schlüssel zu löschen
- Refresh-Tokens nicht teilen
- ZDR-Modus für sensible Daten verwenden
- Wichtige Gespräche regelmäßig exportieren
Zusätzliche Ressourcen
Support
- E-Mail: support@bacr.app
Rechtliches
- Nutzungsbedingungen: https://bacr.app/terms
- Datenschutzrichtlinie: https://bacr.app/privacy
Version: 1.0.0
Zuletzt aktualisiert: 7. März 2026
Dokumentation: https://bacr.app/documentation
