AnyChat: Chatten Sie mit Ihren Dokumenten
AnyChat ist ein leistungsstarker Chatbot, der es Ihnen ermöglicht, auf natürliche und gesprächige Weise mit Ihren Dokumenten (PDF, TXT, DOCX, ODT, PPTX, CSV usw.) zu interagieren. Es nutzt die Funktionen von LangChain, Ollama, Groq, Gemini und Streamlit, um ein intuitives und informatives Erlebnis zu bieten.
Chatbot-20_04_24.mp4
Merkmale
- Konversationsinteraktion: Stellen Sie Fragen zu Ihren Dokumenten und erhalten Sie menschenähnliche Antworten vom Chatbot.
- Unterstützung mehrerer Dokumente: Laden Sie verschiedene Dokumentformate hoch und verarbeiten Sie sie, darunter PDFs, Textdateien, Word-Dokumente, Tabellenkalkulationen und Präsentationen.
- Website-Chat-Unterstützung: Chatten Sie mit jeder gültigen Website.
- Erweiterte Sprachmodelle: Wählen Sie aus verschiedenen Sprachmodellen (LLMs) wie Ollama, Groq und Gemini, um die Antworten des Chatbots zu unterstützen.
- Einbettungsmodelle: Wählen Sie zwischen Ollama Embeddings oder GooglePalm Embeddings, um das Verständnis des Chatbots für Ihre Dokumente zu verbessern.
- Benutzerfreundliche Oberfläche: Streamlit bietet eine übersichtliche und intuitive Oberfläche für die Interaktion mit dem Chatbot.
Installation
Voraussetzungen
- Python 3.10 oder höher
- Eine virtuelle Umgebung (empfohlen)
Klonen Sie das Repository
Klonen Sie das AnyChat-Repository von GitHub:
git clone https://github.com/shitan198u/AnyChat.git
Navigieren Sie zum Arbeitsverzeichnis
Verwendung von Rye
(empfohlen)
Installieren Sie den Rye-Paketmanager: Installationsanleitung
Synchronisieren Sie das Projekt:
Verwendung von venv
- Erstellen Sie eine virtuelle Umgebung:
python -m venv anychat-env
- Aktivieren Sie die virtuelle Umgebung:
source anychat-env/bin/activate
- Installieren Sie die erforderlichen Abhängigkeiten:
pip install -r requirements.txt
conda
verwenden
- Erstellen Sie eine Conda-Umgebung:
conda create -n anychat-env python=3.12
- Aktivieren Sie die Conda-Umgebung:
conda activate anychat-env
- Installieren Sie die erforderlichen Abhängigkeiten:
conda install --file requirements.txt
Konfiguration
- Benennen Sie die Datei
secrets_example.toml
im Verzeichnis src/anychat/.streamlit/
in secrets.toml
um.
Ollama-Installation
Um Ollama für AnyChat nutzen zu können, müssen Sie Ollama installieren und die erforderlichen Modelle herunterladen. Befolgen Sie die nachstehenden Anweisungen:
- Ollama installieren:
Besuchen Sie die offizielle Ollama-Website für Installationsanweisungen: Ollama Download
- Ollama-Modelle herunterladen:
Öffnen Sie Ihr Terminal und führen Sie die folgenden Befehle aus, um die erforderlichen Modelle herunterzuladen:
ollama pull nomic-embed-text
Dieser Befehl lädt das nomic-embed-text
Modell herunter, das zum Ausführen von Ollama-Einbettungen erforderlich ist.
Dieser Befehl lädt das openchat
-Modell herunter, das Sie als Sprachmodell in AnyChat verwenden können.
Verwendung
- API-Schlüssel festlegen:
- Wenn Sie Google Gemini oder Groq verwenden, besorgen Sie sich die erforderlichen API-Schlüssel und speichern Sie sie sicher in der Datei
src/anychat/.streamlit/secrets.toml
oder laden Sie sie in der Chatbot-Oberfläche hoch.
- Führen Sie die Anwendung aus:
cd src/anychat
streamlit run chatbot.py
- Verwendung von Roggen
cd src/anychat
rye run streamlit run chatbot.py
- Dokumente hochladen:
- Laden Sie in der Streamlit-Oberfläche die Dokumente hoch, mit denen Sie chatten möchten.
- Klicken Sie auf die Schaltfläche „Verarbeiten“, um die Dokumente zu bearbeiten.
- Beginnen Sie mit dem Chatten:
- Sobald die Dokumente verarbeitet sind, können Sie im Chat-Eingabefeld Fragen stellen.
- Der Chatbot analysiert Ihre Dokumente und liefert auf deren Inhalt relevante Antworten.
Lizenz
Dieses Projekt ist unter der MIT-Lizenz lizenziert. Einzelheiten finden Sie in der LICENSE
Datei.
Zusätzliche Hinweise
- Stellen Sie für eine optimale Leistung sicher, dass Sie über die erforderlichen Ressourcen (CPU, RAM) für die Dokumentenverarbeitung und LLM-Berechnungen verfügen.
- Die Genauigkeit und Reaktionsfähigkeit des Chatbots kann je nach Komplexität Ihrer Dokumente und dem gewählten LLM variieren.
- Erwägen Sie die Verwendung einer GPU-fähigen Umgebung, wenn Sie Zugriff auf eine solche haben, da diese die Verarbeitung erheblich beschleunigen kann.