Bot GPT do Slack
Este repositório contém um Slack GPT Bot baseado em Python que usa o modelo GPT da OpenAI para responder às perguntas dos usuários. Além disso, o bot pode extrair conteúdo de URLs fornecidos na mensagem do usuário e levar em consideração o conteúdo deles em sua resposta.
Características
- Extraia URLs de mensagens de usuários
- Raspe o conteúdo da página da web de URLs
- Integre-se ao GPT-4 da OpenAI para responder perguntas
- Manter o contexto da conversa em um formato encadeado
- Integração do modo soquete com Slack
Dependências
- Python 3.6 ou posterior
- lindasopa4
- parafuso frouxo
- folga-sdk
- aberto
- solicitações
Consulte requirements.txt
.
Instalação
- Clone este repositório:
git clone https://github.com/alex000kim/slack-gpt-bot.git
cd slack-gpt-bot
- Instale os pacotes necessários:
pip install -r requirements.txt
- Crie um arquivo .env no diretório raiz do projeto e adicione suas chaves de API do Slack e OpenAI:
SLACK_BOT_TOKEN=your_slack_bot_token
SLACK_APP_TOKEN=your_slack_app_token
OPENAI_API_KEY=your_openai_api_key
Veja abaixo como obtê-los.
Configurando permissões no Slack
Antes de executar o bot do Slack GPT, você precisa configurar as permissões apropriadas para o bot do Slack. Siga estas etapas para configurar as permissões necessárias:
- Criar aplicativo Slack
- Vá para o painel da API do Slack e clique no aplicativo que você criou para este bot.
- Na barra lateral esquerda, clique em “OAuth e Permissões”.
- Na seção "Escopos", você encontrará dois tipos de escopos: "Escopos de Token de Bot" e "Escopos de Token de Usuário". Adicione os seguintes escopos em "Escopos de token de bot":
-
app_mentions:read
: permite que o bot leia eventos de menção. -
chat:write
: Permite que o bot envie mensagens.
- Role até "Tokens OAuth para seu espaço de trabalho" e clique no botão "Instalar aplicativo no espaço de trabalho". Isso irá gerar o
SLACK_BOT_TOKEN
. - Na barra lateral esquerda, clique em “Modo Socket” e habilite-o. Você será solicitado a "Gerar um token no nível do aplicativo para ativar o Modo Socket". Gere um token chamado
SLACK_APP_TOKEN
e adicione o escopo connections:write
. - Na seção "Recursos afetados" da página "Modo Socket", clique em "Assinaturas de eventos" e alterne "Ativar eventos" para "Ativado". Adicione o evento
app_mention
com o app_mentions:read
na seção "Inscrever-se em eventos de bot" abaixo do botão de alternância.
Uso
- Inicie o bot:
- Convide o bot para o canal do Slack desejado.
- Mencione o bot em uma mensagem e faça uma pergunta (incluindo URLs). O bot responderá com uma resposta, levando em consideração qualquer conteúdo extraído dos URLs.
Exemplo
Observação: a data limite do conhecimento do GPT-4 é setembro de 2021, o bit scikit-learn v1.2 foi lançado em dezembro de 2022