Slack GPT-Bot
Dieses Repository enthält einen Python-basierten Slack-GPT-Bot, der das GPT-Modell von OpenAI verwendet, um Benutzerfragen zu beantworten. Darüber hinaus kann der Bot Inhalte aus URLs extrahieren, die in der Nachricht des Benutzers bereitgestellt werden, und deren Inhalte in seiner Antwort berücksichtigen.
Merkmale
- Extrahieren Sie URLs aus Benutzernachrichten
- Entfernen Sie Webseiteninhalte aus URLs
- Integrieren Sie GPT-4 von OpenAI, um Fragen zu beantworten
- Behalten Sie den Konversationskontext in einem Thread-Format bei
- Socket-Modus-Integration mit Slack
Abhängigkeiten
- Python 3.6 oder höher
- schöne Suppe4
- lockerer Bolzen
- Slack-SDK
- openai
- Anfragen
Siehe requirements.txt
.
Installation
- Klonen Sie dieses Repository:
git clone https://github.com/alex000kim/slack-gpt-bot.git
cd slack-gpt-bot
- Installieren Sie die erforderlichen Pakete:
pip install -r requirements.txt
- Erstellen Sie eine .env-Datei im Stammverzeichnis des Projekts und fügen Sie Ihre Slack- und OpenAI-API-Schlüssel hinzu:
SLACK_BOT_TOKEN=your_slack_bot_token
SLACK_APP_TOKEN=your_slack_app_token
OPENAI_API_KEY=your_openai_api_key
Unten erfahren Sie, wie Sie diese erhalten.
Konfigurieren von Berechtigungen in Slack
Bevor Sie den Slack GPT-Bot ausführen können, müssen Sie die entsprechenden Berechtigungen für Ihren Slack-Bot konfigurieren. Befolgen Sie diese Schritte, um die erforderlichen Berechtigungen einzurichten:
- Erstellen Sie eine Slack-App
- Gehen Sie zu Ihrem Slack API Dashboard und klicken Sie auf die App, die Sie für diesen Bot erstellt haben.
- Klicken Sie in der linken Seitenleiste auf „OAuth & Berechtigungen“.
- Im Abschnitt „Bereiche“ finden Sie zwei Arten von Bereichen: „Bot-Token-Bereiche“ und „Benutzer-Token-Bereiche“. Fügen Sie unter „Bot-Token-Bereiche“ die folgenden Bereiche hinzu:
-
app_mentions:read
: Ermöglicht dem Bot, Erwähnungsereignisse zu lesen. -
chat:write
: Ermöglicht dem Bot, Nachrichten zu senden.
- Scrollen Sie nach oben zu „OAuth-Tokens für Ihren Workspace“ und klicken Sie auf die Schaltfläche „App in Workspace installieren“. Dadurch wird das
SLACK_BOT_TOKEN
generiert. - Klicken Sie in der linken Seitenleiste auf „Socket-Modus“ und aktivieren Sie ihn. Sie werden aufgefordert, ein Token auf App-Ebene zu generieren, um den Socket-Modus zu aktivieren. Generieren Sie ein Token mit dem Namen
SLACK_APP_TOKEN
und fügen Sie den Bereich connections:write
hinzu. - Klicken Sie im Abschnitt „Betroffene Funktionen“ der Seite „Socket-Modus“ auf „Ereignisabonnements“ und schalten Sie „Ereignisse aktivieren“ auf „Ein“. Fügen Sie
app_mention
Ereignis mit dem app_mentions:read
Bereich im Abschnitt „Bot-Ereignisse abonnieren“ unter dem Schalter hinzu.
Verwendung
- Starten Sie den Bot:
- Laden Sie den Bot zu Ihrem gewünschten Slack-Kanal ein.
- Erwähnen Sie den Bot in einer Nachricht und stellen Sie eine Frage (einschließlich etwaiger URLs). Der Bot antwortet mit einer Antwort und berücksichtigt dabei alle extrahierten Inhalte aus URLs.
Beispiel
Hinweis: Der Stichtag für GPT-4-Daten ist September 2021, Bit Scikit-Learn v1.2 wurde im Dezember 2022 veröffentlicht