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 ao fornecer 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 comando de barra do Slack e exibido como uma resposta no aplicativo.

. 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 do Slack usando o comando de barra
  • Aplicativo do Slack que invoca a função do Cloud acima para gerar um 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 de seletor de projetos, selecione ou crie um projeto do Google Cloud.
  2. Verifique se o faturamento está ativado para o projeto na nuvem 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 as instruções aqui.
  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 o Cloud Functions, 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 vai clonar o conteúdo do repositório na pasta genai-templates-googlecloud.
  2. Navegue até a pasta do projeto que nos interessa executando o seguinte comando no terminal do Cloud Shell:
cd genai-apptemplates-googlecloud/summarization-slack
  1. Os arquivos main.py e requirements.txt devem aparecer na pasta "summarization-slack" ao executar o comando "dir" ou navegar até o editor do Cloud Shell.
  2. Para implantar o Cloud Function, 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 vai aparecer no terminal do Cloud Shell. O URL está no seguinte formato:

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

Anote o URL exibido. Ele será necessário para criar o comando de barra do Slack.

5. Criar o comando de barra do Slack

Vamos criar um comando de barra personalizado no Slack. Esse comando personalizado /summarize invoca a função do Cloud que implantamos na seção anterior.

Para criar um comando de barra, siga estas etapas:

  1. Acesse api.slack.com/apps.
  2. Clique em Criar novo 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 app.
  5. Clique em Criar app. A página Configurações será 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 Criar novo comando, informe os seguintes valores:
  • Comando: dê um comando de barra. Por exemplo, /summarize.
  • URL da solicitação: forneça o URL completo da função do Cloud que implantamos. Por exemplo, https://$GCP_REGION-$GCP_PROJECT.cloudfunctions.net/summarizeText
  • Insira uma descrição curta, uma dica de uso e salve.
  1. Volte para Configurações > Informações básicas. Clique em Instalar o app e depois em Instalar no espaço de trabalho. O app é instalado no seu espaço de trabalho.

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

6. Testar o comando de barra

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

Acesse https://slack.com/intl/en-in/workspace-signin e digite "Find your workspaces" para encontrar o nome do seu espaço de trabalho. Selecione essa opção.

  1. No chat, digite o texto com o prefixo do comando de barra "/summarize ". Veja um exemplo de invocação abaixo:

bcb511e5909709db.png

  1. Clique no botão Enviar para invocar a Função do Cloud e mostrar a resposta do 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 o projeto, pule as etapas acima e exclua a função do Cloud navegando até o Cloud Functions. Na lista de funções, marque aquela 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.