Automatyzacja poleceń w Slacku

1. Wprowadzenie

Dzięki temu ćwiczeniu w Codelabs dowiesz się, jak utworzyć usługę podsumowania w obszarze roboczym Slacka przy użyciu integracji z poleceniem po ukośniku w Slack.

Użytkownik wywołuje polecenie ukośnika /summarize i wpisuje tekst do podsumowania. Następnie aplikacja Slack wywołuje powiązaną funkcję w Cloud Functions, która akceptuje tekst i wywołuje interfejs PaLM API do podsumowywania. Podsumowany tekst jest następnie zwracany z powrotem do polecenia Slack Slash i wyświetlany jako odpowiedź w aplikacji Slack.

, Lista używanych usług Google Cloud:

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

Co utworzysz

Tworzenie:

  • Funkcja w Cloud Functions, która wywołuje interfejs PaLM API do podsumowywania tekstu pochodzącego z Slacka za pomocą polecenia ukośnika
  • Aplikacja Slack, która wywołuje powyższą funkcję w Cloud Functions w celu podsumowywania.

2. Wymagania

  • przeglądarki, na przykład Chrome lub Firefox;
  • Projekt Google Cloud z włączonymi płatnościami

3. Zanim zaczniesz

  1. Na stronie selektora projektów w konsoli Google Cloud wybierz lub utwórz projekt Google Cloud.
  2. Sprawdź, czy w projekcie Google Cloud są włączone płatności. Dowiedz się, jak sprawdzić, czy w projekcie są włączone płatności.
  3. Upewnij się, że interfejsy Cloud Functions API i Vertex AI API są włączone.
  4. Aktywuj Cloud Shell z konsoli Google Cloud, wykonując instrukcje opisane tutaj
  5. Jeśli Twój projekt nie jest skonfigurowany, ustaw go za pomocą tego polecenia:
gcloud config set project <YOUR_PROJECT_ID>
  1. W Cloud Shell ustaw te zmienne środowiskowe:
export GCP_PROJECT=<YOUR_PROJECT_ID>
export GCP_REGION=us-central1

4. Wdrażanie funkcji w Cloud Functions

Aby utworzyć i wdrożyć funkcje w Cloud Functions, wykonaj te czynności:

  1. Skopiuj kod z repozytorium https://github.com/rominirani/genai-apptemplates-googlecloud, wykonując w terminalu Cloud Shell to polecenie:
git clone https://github.com/rominirani/genai-apptemplates-googlecloud
  1. To polecenie spowoduje sklonowanie zawartości repozytorium do folderu genai-templates-googlecloud.
  2. Przejdź do folderu projektu, który jest dla nas ważny, wykonując w terminalu Cloud Shell to polecenie:
cd genai-apptemplates-googlecloud/summarization-slack
  1. Oba pliki main.py i requirements.txt powinny być widoczne w folderze podsumowania-slack. Można to zrobić za pomocą polecenia dir lub po przejściu do edytora Cloud Shell.
  2. Aby wdrożyć funkcję w Cloud Functions, uruchom polecenie gcloud functionality 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

Po wdrożeniu funkcji w Cloud Functions adres URL wdrożonej funkcji w Cloud Functions jest wyświetlany w terminalu Cloud Shell. Adres URL ma następujący format:

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

Zanotuj wyświetlony adres URL. Będzie on wymagany do utworzenia polecenia Slack Slash.

5. Tworzenie polecenia po ukośniku w Slash

Utwórzmy niestandardowe polecenie po ukośniku w Slacku. To polecenie niestandardowe /summarize wywołuje funkcję w Cloud Functions, którą wdrożyliśmy w poprzedniej sekcji.

Aby utworzyć polecenie po ukośniku, wykonaj te czynności:

  1. Otwórz stronę api.slack.com/apps.
  2. Kliknij Create New App (Utwórz nową aplikację).
  3. W oknie Utwórz aplikację wybierz opcję Od zera.
  4. Wpisz nazwę aplikacji. Na przykład: Summarization Slack Application. wybierz obszar roboczy Slacka na potrzeby tworzenia aplikacji.
  5. Kliknij Create App (Utwórz aplikację). Otworzy się strona Ustawienia.
  6. Na stronie Ustawienia kliknij Informacje podstawowe > polecenia po ukośniku. Kliknij Utwórz nowe polecenie.
  7. W formularzu Utwórz nowe polecenie podaj te wartości:
  • Command: wpisz polecenie po ukośniku. Na przykład: /summarize.
  • Request URL (URL żądania): podaj pełny adres URL wdrożonej przez nas funkcji w Cloud Functions. Na przykład: https://$GCP_REGION-$GCP_PROJECT.cloudfunctions.net/summarizeText
  • Wpisz krótki opis i podpowiedź użytkowania i zapisz.
  1. Wróć do menu Ustawienia > Informacje podstawowe. Kliknij Zainstaluj aplikację, a następnie Zainstaluj w Workspace. Aplikacja zostanie zainstalowana w obszarze roboczym.

To kończy tworzenie niestandardowej aplikacji Slack, która jest teraz zainstalowana w aplikacji Slack Workspace i zawiera niestandardowe polecenie ukośnika (/summarize), które pomaga użytkownikowi podsumować tekst podany w wiadomości.

6. Testowanie polecenia ukośnika

  1. Otwórz obszar roboczy Slacka, w którym zainstalowano aplikację Summarization Slack:

Otwórz stronę https://slack.com/intl/en-in/workspace-signin i wpisz „Znajdź swoje obszary robocze” rozpoznanie nazwy obszaru roboczego. Wybierz to.

  1. Na czacie wpisz tekst poprzedzony poleceniem po ukośniku „/summarize ”. Przykładowe wywołanie:

bcb511e5909709db.png

  1. Kliknij przycisk Wyślij, aby wywołać funkcję w Cloud Functions i wyświetlić odpowiedź podsumowania, jak pokazano poniżej:

a62b223f30bb163e.png

7. Czyszczenie danych

Aby uniknąć obciążenia konta Google Cloud opłatami za zasoby zużyte w tym poście, wykonaj te czynności:

  1. W konsoli Google Cloud otwórz stronę Zarządzanie zasobami.
  2. Na liście projektów wybierz projekt do usunięcia, a potem kliknij Usuń.
  3. W oknie wpisz identyfikator projektu i kliknij Wyłącz, aby usunąć projekt.
  4. Jeśli chcesz zachować projekt, pomiń powyższe kroki i usuń funkcję w Cloud Functions, przechodząc do Cloud Functions i z listy funkcji zaznacz tę, którą chcesz usunąć, i kliknij USUŃ.

8. Gratulacje

Gratulacje! Udało Ci się utworzyć usługę podsumowania tekstu w aplikacji Slack.