Bot GPT Slack
Ce référentiel contient un robot Slack GPT basé sur Python qui utilise le modèle GPT d'OpenAI pour répondre aux questions des utilisateurs. De plus, le bot peut extraire le contenu des URL fournies dans le message de l'utilisateur et prendre en compte leur contenu dans sa réponse.
Caractéristiques
- Extraire les URL des messages des utilisateurs
- Supprimer le contenu des pages Web des URL
- Intégrez le GPT-4 d'OpenAI pour répondre aux questions
- Maintenir le contexte de la conversation dans un format threadé
- Intégration du mode socket avec Slack
Dépendances
- Python 3.6 ou version ultérieure
- bellesoup4
- boulon desserré
- slack-sdk
- ouvert
- demandes
Voir requirements.txt
.
Installation
- Clonez ce dépôt :
git clone https://github.com/alex000kim/slack-gpt-bot.git
cd slack-gpt-bot
- Installez les packages requis :
pip install -r requirements.txt
- Créez un fichier .env dans le répertoire racine du projet et ajoutez vos clés API Slack et OpenAI :
SLACK_BOT_TOKEN=your_slack_bot_token
SLACK_APP_TOKEN=your_slack_app_token
OPENAI_API_KEY=your_openai_api_key
Découvrez ci-dessous comment les obtenir.
Configuration des autorisations dans Slack
Avant de pouvoir exécuter le bot Slack GPT, vous devez configurer les autorisations appropriées pour votre bot Slack. Suivez ces étapes pour configurer les autorisations nécessaires :
- Créer une application Slack
- Accédez à votre tableau de bord API Slack et cliquez sur l'application que vous avez créée pour ce bot.
- Dans la barre latérale gauche, cliquez sur « OAuth & Permissions ».
- Dans la section « Scopes », vous trouverez deux types de scopes : « Bot Token Scopes » et « User Token Scopes ». Ajoutez les étendues suivantes sous « Étendues des jetons de bot » :
-
app_mentions:read
: Permet au bot de lire les événements de mention. -
chat:write
: Permet au bot d'envoyer des messages.
- Faites défiler jusqu'aux « Jetons OAuth pour votre espace de travail » et cliquez sur le bouton « Installer l'application sur l'espace de travail ». Cela générera le
SLACK_BOT_TOKEN
. - Dans la barre latérale gauche, cliquez sur « Mode Socket » et activez-le. Vous serez invité à « Générer un jeton au niveau de l'application pour activer le mode Socket ». Générez un jeton nommé
SLACK_APP_TOKEN
et ajoutez la portée connections:write
. - Dans la section « Fonctionnalités concernées » de la page « Mode Socket », cliquez sur « Abonnements aux événements » et basculez « Activer les événements » sur « Activé ». Ajoutez l'événement
app_mention
avec la app_mentions:read
dans la section « S'abonner aux événements du bot » sous la bascule.
Usage
- Démarrez le bot :
- Invitez le bot sur la chaîne Slack de votre choix.
- Mentionnez le bot dans un message et posez une question (y compris les URL). Le bot répondra avec une réponse, en tenant compte de tout contenu extrait des URL.
Exemple
Remarque : la date limite de connaissance de GPT-4 est septembre 2021, bit scikit-learn v1.2 a été publié en décembre 2022.