स्लैक कमांड ऑटोमेशन

1. परिचय

इस कोडलैब में, Slack Slash Command के साथ इंटिग्रेशन करके, Slack Workspace में खास जानकारी देने वाली सेवा बनाने के निर्देश दिए गए हैं.

उपयोगकर्ता, स्लैश कमांड /summarize का इस्तेमाल करता है और टेक्स्ट डालता है. इसके बाद, Slack ऐप्लिकेशन, उससे जुड़े Cloud फ़ंक्शन को शुरू करता है. यह फ़ंक्शन, टेक्स्ट को स्वीकार करता है और खास जानकारी पाने के लिए PaLM API को शुरू करता है. इसके बाद, जवाब के तौर पर तैयार किए गए टेक्स्ट को Slack Slash Command पर वापस भेज दिया जाता है. साथ ही, इसे Slack ऐप्लिकेशन में दिखाया जाता है.

. इस्तेमाल की गई Google Cloud सेवाओं की सूची यहां दी गई है:

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

आपको क्या बनाना है

आपको

  • यह एक Cloud फ़ंक्शन है. यह PaLM API को कॉल करता है, ताकि Slack से मिले टेक्स्ट की खास जानकारी तैयार की जा सके. इसके लिए, Slash Command का इस्तेमाल किया जाता है
  • Slack ऐप्लिकेशन, जो खास जानकारी पाने के लिए ऊपर दिए गए Cloud फ़ंक्शन को शुरू करता है.

2. ज़रूरी शर्तें

  • कोई ब्राउज़र, जैसे कि Chrome या Firefox
  • बिलिंग की सुविधा वाला Google Cloud प्रोजेक्ट

3. शुरू करने से पहले

  1. Google Cloud Console में, प्रोजेक्ट चुनने वाले पेज पर जाकर, Google Cloud प्रोजेक्ट चुनें या बनाएं
  2. पक्का करें कि आपके Google Cloud प्रोजेक्ट के लिए बिलिंग चालू हो. किसी प्रोजेक्ट के लिए बिलिंग चालू है या नहीं, यह देखने का तरीका जानें
  3. पक्का करें कि Cloud Functions API और Vertex AI API चालू हों.
  4. यहां दिए गए निर्देशों का पालन करके, Google Cloud Console से Cloud Shell चालू करें
  5. अगर आपका प्रोजेक्ट सेट नहीं है, तो इसे सेट करने के लिए इस निर्देश का इस्तेमाल करें:
gcloud config set project <YOUR_PROJECT_ID>
  1. Cloud Shell में, ये एनवायरमेंट वैरिएबल सेट करें:
export GCP_PROJECT=<YOUR_PROJECT_ID>
export GCP_REGION=us-central1

4. Cloud फ़ंक्शन को डिप्लॉय करना

Cloud Functions बनाने और उन्हें डिप्लॉय करने के लिए, यह तरीका अपनाएं:

  1. अपने Cloud Shell टर्मिनल में यह कमांड चलाकर, https://github.com/rominirani/genai-apptemplates-googlecloud से कोड क्लोन करें:
git clone https://github.com/rominirani/genai-apptemplates-googlecloud
  1. इस कमांड से, repo का कॉन्टेंट genai-templates-googlecloud फ़ोल्डर में क्लोन हो जाएगा.
  2. Cloud Shell टर्मिनल में यह कमांड चलाकर, उस प्रोजेक्ट के फ़ोल्डर पर जाएं जिसके बारे में हमें जानकारी चाहिए:
cd genai-apptemplates-googlecloud/summarization-slack
  1. आपको summarization-slack फ़ोल्डर में, main.py और requirements.txt दोनों फ़ाइलें दिखनी चाहिए. इसके लिए, dir कमांड चलाएं या Cloud Shell Editor पर जाएं.
  2. Cloud फ़ंक्शन को डिप्लॉय करने के लिए, 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

Cloud Function को डिप्लॉय करने के बाद, डिप्लॉय किए गए Cloud Function का यूआरएल, Cloud Shell टर्मिनल पर दिखता है. यूआरएल इस फ़ॉर्मैट में होता है:

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

दिखाए गए यूआरएल को नोट करें. Slack Slash Command बनाने के लिए इसकी ज़रूरत होगी.

5. Slack स्लैश कमांड बनाना

आइए, Slack में कस्टम स्लैश कमांड बनाते हैं. यह कस्टम कमांड /summarize, उस Cloud फ़ंक्शन को चालू करती है जिसे हमने पिछले सेक्शन में डिप्लॉय किया था.

स्लैश कमांड बनाने के लिए, यह तरीका अपनाएं:

  1. api.slack.com/apps पर जाएं.
  2. नया ऐप्लिकेशन बनाएं पर क्लिक करें.
  3. ऐप्लिकेशन बनाएं विंडो में, शुरुआत से विकल्प चुनें.
  4. अपने ऐप्लिकेशन के लिए कोई नाम डालें. उदाहरण के लिए, Summarization Slack Application. अपने ऐप्लिकेशन को डेवलप करने के लिए, Slack Workspace चुनें.
  5. ऐप्लिकेशन बनाएं पर क्लिक करें. ऐसा करने पर, सेटिंग पेज खुलता है.
  6. सेटिंग पेज पर, बुनियादी जानकारी > स्लैश कमांड पर क्लिक करें. Create New Command पर क्लिक करें.
  7. नई कमांड बनाएं फ़ॉर्म में, ये वैल्यू डालें:
  • कमांड: स्लैश कमांड दें. उदाहरण के लिए, /summarize.
  • अनुरोध का यूआरएल: हमने जिस Cloud फ़ंक्शन को डिप्लॉय किया है उसका पूरा यूआरएल दें. उदाहरण के लिए, https://$GCP_REGION-$GCP_PROJECT.cloudfunctions.net/summarizeText
  • कम शब्दों में जानकारी और इस्तेमाल के बारे में सुझाव डालें. इसके बाद, सेव करें.
  1. सेटिंग > बुनियादी जानकारी पर वापस जाएं. अपना ऐप्लिकेशन इंस्टॉल करें पर क्लिक करें. इसके बाद, Workspace में इंस्टॉल करें पर क्लिक करें. ऐप्लिकेशन आपके Workspace में इंस्टॉल हो जाएगा.

इससे कस्टम Slack ऐप्लिकेशन बनाने की प्रोसेस पूरी हो जाती है. यह ऐप्लिकेशन अब आपके Slack वर्कस्पेस में इंस्टॉल हो गया है. इसमें कस्टम स्लैश कमांड (/summarize) है. इससे उपयोगकर्ता को मैसेज में दिए गए टेक्स्ट की खास जानकारी मिलती है.

6. स्लैश कमांड की जांच करना

  1. उस Slack वर्कस्पेस पर जाएं जहां आपने Summarization Slack ऐप्लिकेशन इंस्टॉल किया है:

https://slack.com/intl/en-in/workspace-signin पर जाएं और "Find your workspaces" डालें. इससे आपको अपने वर्कस्पेस का नाम दिखेगा. उसे चुनें.

  1. चैट में, स्लैश कमांड "/summarize " से शुरू होने वाला टेक्स्ट डालें. कमांड का इस्तेमाल करने का एक उदाहरण यहां दिया गया है:

bcb511e5909709db.png

  1. Cloud फ़ंक्शन को शुरू करने और खास जानकारी के जवाब को दिखाने के लिए, भेजें बटन पर क्लिक करें. यह जवाब, यहां दिखाए गए तरीके से दिखेगा:

a62b223f30bb163e.png

7. व्यवस्थित करें

इस पोस्ट में इस्तेमाल की गई संसाधनों के लिए, अपने Google Cloud खाते से शुल्क न लिए जाने के लिए, यह तरीका अपनाएं:

  1. Google Cloud Console में, संसाधन मैनेज करें पेज पर जाएं.
  2. प्रोजेक्ट की सूची में, वह प्रोजेक्ट चुनें जिसे आपको मिटाना है. इसके बाद, मिटाएं पर क्लिक करें.
  3. डायलॉग बॉक्स में, प्रोजेक्ट आईडी टाइप करें. इसके बाद, प्रोजेक्ट मिटाने के लिए बंद करें पर क्लिक करें.
  4. अगर आपको अपना प्रोजेक्ट सेव रखना है, तो ऊपर दिए गए चरणों को छोड़ दें. इसके बाद, Cloud Functions पर जाकर Cloud Function मिटाएं. इसके लिए, फ़ंक्शन की सूची में जाकर, उस फ़ंक्शन को चुनें जिसे मिटाना है. इसके बाद, मिटाएं पर क्लिक करें.

8. बधाई हो

बधाई हो! आपने Slack ऐप्लिकेशन में, टेक्स्ट की खास जानकारी देने वाली सेवा बना ली है.