Blazing schnelle semantische Suche nach Discord -Kanälen
ask-discord können Benutzer semantisch einen Datensatz von Discord-Nachrichten durchsuchen. Es gibt zwei Hauptsuchmodi:
Klonen Sie das Repository :
git clone https://github.com/yourusername/ask-discord.git
cd ask-discordAbhängigkeiten installieren :
pip install -r requirements.txt Richten Sie Umgebungsvariablen ein : Erstellen Sie eine .env -Datei im Stammverzeichnis und fügen Sie Ihren OpenAI -API -Schlüssel hinzu:
OPENAI_KEY = your_openai_api_keyStarten Sie Milvus : Befolgen Sie die Milvus -Installationshandbuch, um Milvus einzurichten und zu starten. (Erfordert eine kürzlich durchgeführte Docker -Installation)
Generieren Sie die Daten : Laden Sie Ihre interessierenden Kanäle mit dem Exporteur von Discord Chat herunter. Lesen Sie diesen Leitfaden, wenn Sie Probleme haben, Ihr Token und Ihre Kanal -IDs zu erhalten. Dies ist keine Bestätigung, da das Herunterladen von Kanälen gegen Discord TOS verstoßen kann.
Laden Sie die Daten : Stellen Sie sicher, dass die JSON -Datendatei im richtigen Pfad in configs angegeben ist. Ändern Sie den Pfad in der Hauptdatei bei Bedarf.
Führen Sie die stromlitische Anwendung aus :
streamlit run ask-discord.py Greifen Sie auf die Anwendung zu : Öffnen Sie Ihren Webbrowser und gehen Sie zu http://localhost:8501 .
Chatbot -Klasse, in der Milvus abfragt und mit dem RAW/LLM -Modus interagiert. Konfigurationen werden durch ein Wörterbuch in ask-discord.py verwaltet. Dazu gehören:
OPENAI_CLIENT : OpenAI -Client -Instanz.CHAT_MODEL : Das Modell für Chat (z. B. gpt-4o ).EMBEDDING_MODEL : Das Modell, das zum Erstellen von Einbettungen verwendet werden soll.JSON_DATA_PATH : Pfad zur JSON -Datendatei.EMBEDDING_DIMENSIONS : Vektorabmessungen.MAX_MESSAGE_LENGTH : Maximale Anzahl von Zeichen in einer zu berücksichtigenden Nachricht.MIN_MESSAGE_LENGTH : Mindestnummer der Zeichen in einer zu berücksichtigenden Nachricht.COLLECTION_NAME : Name der Milvus -Sammlung.MAX_SIMILAR_EXAMPLES : Maximale Anzahl ähnlicher Nachrichten, die abgerufen werden sollen.SIMILARITY_SCORE_CUTOFF : Cutoff für die Ähnlichkeitsbewertung. Beiträge sind willkommen! Bitte senden Sie eine Pull -Anfrage oder öffnen Sie ein Problem, um Änderungen zu besprechen.
Dieses Projekt ist unter der MIT -Lizenz lizenziert. Weitere Informationen finden Sie in der Lizenzdatei.