Automação de comando do Slack

1. Introdução

Neste codelab, você encontra instruções para criar um serviço de resumo em um espaço de trabalho do Slack disponibilizando uma integração com o Slack Slash Command.

O usuário invoca um comando de barra /summarize e insere o texto a ser resumido. Em seguida, o aplicativo Slack invoca a função do Cloud associada que aceita o texto e invoca a API PaLM para resumo. O texto resumido é retornado ao Slack Slash Command e exibido como uma resposta no aplicativo Slack.

, Esta é a lista de serviços do Google Cloud usados:

  1. Cloud Functions
  2. API PaLM da Vertex AI
  3. Cloud Logging

O que você vai criar

Você vai criar

  • Uma função do Cloud que invoca a API PaLM para resumir o texto que vem do Slack usando o comando Slash.
  • Aplicativo Slack que invoca a função do Cloud acima para resumo.

2. Requisitos

  • Use um navegador, como o Chrome ou o Firefox.
  • Tenha um projeto do Google Cloud com o faturamento ativado.

3. Antes de começar

  1. No console do Google Cloud, na página do seletor de projetos, selecione ou crie um projeto do Google Cloud.
  2. Verifique se o faturamento está ativado para seu projeto do Google Cloud. Saiba como verificar se o faturamento está ativado em um projeto.
  3. Verifique se as APIs Cloud Functions e Vertex AI estão ativadas.
  4. Ative o Cloud Shell no console do Google Cloud seguindo estas instruções.
  5. Se o projeto não estiver definido, use este comando:
gcloud config set project <YOUR_PROJECT_ID>
  1. No Cloud Shell, defina as seguintes variáveis de ambiente:
export GCP_PROJECT=<YOUR_PROJECT_ID>
export GCP_REGION=us-central1

4. Como implantar uma função do Cloud

Para criar e implantar funções do Cloud, siga estas etapas:

  1. Clone o código do repositório https://github.com/rominirani/genai-apptemplates-googlecloud executando o seguinte comando no terminal do Cloud Shell:
git clone https://github.com/rominirani/genai-apptemplates-googlecloud
  1. Esse comando clonará o conteúdo do repositório na pasta genai-templates-googlecloud.
  2. Execute o seguinte comando no terminal do Cloud Shell para acessar a pasta do projeto relevante:
cd genai-apptemplates-googlecloud/summarization-slack
  1. Os arquivos main.py e requirements.txt vão aparecer na pasta summarization-slack. Para isso, execute o comando dir ou navegue até o editor do Cloud Shell.
  2. Para implantar a função do Cloud, execute o comando gcloud functions deploy:
gcloud functions deploy summarizeText \
--gen2 \
--runtime=python311 \
--source=. \
--region=$GCP_REGION \
--project=$GCP_PROJECT \
--entry-point=summarizeText \
--trigger-http \
--set-env-vars=GCP_PROJECT=$GCP_PROJECT,GCP_REGION=$GCP_REGION \
--max-instances=1

Depois de implantar a função do Cloud, o URL dela será exibido no terminal do Cloud Shell. O URL está no seguinte formato:

https://$GCP_REGION-$GCP_PROJECT.cloudfunctions.net/summarizeText

Observe o URL que foi exibido. Ele será necessário para criar o Slack Slash Command.

5. Criar o Comando Slash do Slack

Vamos criar um Slash Command personalizado no Slack. O comando personalizado /summarize invoca a Função do Cloud que implantou na seção anterior.

Para criar um comando Slash, siga estas etapas:

  1. Acesse api.slack.com/apps.
  2. Clique em Create New App.
  3. Na janela Criar um app, escolha a opção Do zero.
  4. Insira um nome para o app. Por exemplo, Summarization Slack Application.. Selecione o espaço de trabalho do Slack para o desenvolvimento do seu aplicativo.
  5. Clique em Create App. A página Configurações é aberta.
  6. Na página Configurações, clique em Informações básicas > Comandos de barra. Clique em Criar novo comando.
  7. No formulário Create New Command, insira os seguintes valores:
  • Comando: insira um comando de barra. Por exemplo, /summarize.
  • URL da solicitação: forneça o URL completo da função do Cloud que implantou. Por exemplo, https://$GCP_REGION-$GCP_PROJECT.cloudfunctions.net/summarizeText
  • Insira uma breve descrição e uma dica de uso e salve.
  1. Volte para Configurações > Informações básicas. Clique em Install your app e depois em Install to Workspace. O app é instalado no seu espaço de trabalho.

Isso conclui a criação do app Slack personalizado, que agora está instalado no Slack Workspace e tem um comando Slash personalizado (/summarize) que ajuda o usuário a resumir o texto fornecido na mensagem.

6. Testar o comando Slash

  1. Acesse o espaço de trabalho do Slack em que você instalou o aplicativo Summarization Slack:

Acesse https://slack.com/intl/en-in/workspace-signin e digite "Encontrar seus espaços de trabalho". para encontrar o nome do seu espaço de trabalho. Selecione isto.

  1. No bate-papo, digite o texto como prefixo do comando de barra "/summarize". Confira abaixo um exemplo de invocação:

bcb511e5909709db.png

  1. Clique no botão Enviar para invocar a função do Cloud e exibir a resposta de resumo, conforme mostrado abaixo:

a62b223f30bb163e.png

7. Limpar

Para evitar cobranças na sua conta do Google Cloud pelos recursos usados nesta postagem, siga estas etapas:

  1. No console do Google Cloud, acesse a página Gerenciar recursos.
  2. Na lista de projetos, selecione o projeto que você quer excluir e clique em Excluir.
  3. Na caixa de diálogo, digite o ID do projeto e clique em Encerrar para excluí-lo.
  4. Se quiser manter seu projeto, pule as etapas acima e exclua a função do Cloud. Para isso, acesse o Cloud Functions e, na lista de funções, marque a que você quer excluir e clique em EXCLUIR.

8. Parabéns

Parabéns! Você criou um serviço de resumo de texto no aplicativo Slack.