Google Cloud प्रोजेक्ट से कॉल एपीआई

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

इस कोडलैब में, Google Cloud प्रोजेक्ट बनाने और फिर उस प्रोजेक्ट से Google Cloud API को कॉल करने का तरीका बताया गया है.

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

  • Google Cloud Console पर नेविगेट करने की सुविधा.

आपको क्या सीखने को मिलेगा

  • Google Cloud प्रोजेक्ट बनाने का तरीका.
  • बिलिंग खाता सेट अप करने का तरीका.
  • Cloud Shell को सेट अप करने का तरीका.
  • किसी एपीआई को चालू करने का तरीका.
  • एपीआई पासकोड की मदद से, किसी एपीआई को अनुमति देने का तरीका.
  • सेवा खाते की मदद से, किसी एपीआई को अनुमति देने का तरीका.

आपको किन चीज़ों की ज़रूरत होगी

2. सेट अप करें

इस सेक्शन में, Google Cloud प्रोजेक्ट बनाने, बिलिंग खाता सेट अप करने, और Cloud Shell सेट अप करने का तरीका बताया गया है.

Google Cloud प्रोजेक्ट बनाना और बिलिंग खाता सेट अप करना

  1. Cloud Console में साइन इन करें और कोई प्रोजेक्ट चुनें या बनाएं.

Google Cloud की

नया प्रोजेक्ट पैनल

'नया प्रोजेक्ट' पैनल की इमेज. इसमें प्रोजेक्ट का नाम, संगठन, और जगह की जानकारी वाले फ़ील्ड दिखाए गए हैं.

प्रोजेक्ट का नाम फ़ील्ड में दिख रहे प्रोजेक्ट आईडी को याद रखें. यह आईडी, सभी Google Cloud प्रोजेक्ट के लिए एक यूनीक नाम होता है. ऊपर दिया गया नाम पहले ही इस्तेमाल किया जा चुका है. इस कोड लैब में इसे बाद में PROJECT_ID के तौर पर दिखाया गया है.

  1. इसके बाद, Google Cloud संसाधनों का इस्तेमाल करने के लिए, Cloud Console में बिलिंग चालू करें.

इस कोडलैब को पूरा करने में ज़्यादा खर्च नहीं आना चाहिए. अगर कोई खर्च आता है, तो संसाधनों को बंद करने के लिए, बंद करें सेक्शन में दिए गए निर्देशों का पालन करें. इससे इस कोडलैब के बाद कोई खर्च नहीं आएगा. ध्यान दें कि Google Cloud के नए उपयोगकर्ताओं को, 300 डॉलर का क्रेडिट मिलता है, ताकि वे इसे मुफ़्त में आज़मा सकें.

Cloud Shell सेट अप करना

इस कोडलैब में, Cloud Shell का इस्तेमाल किया जाता है. यह एक कमांड-लाइन एनवायरमेंट है, जो Google Cloud में चलता है. Cloud Shell, Debian पर आधारित एक वर्चुअल मशीन है. इसमें आपके काम के सभी डेवलपमेंट टूल मौजूद होते हैं. इसमें 5 जीबी की होम डायरेक्ट्री होती है. इससे नेटवर्क की परफ़ॉर्मेंस और पुष्टि करने की प्रोसेस बेहतर होती है. इसका मतलब है कि इस कोडलैब के लिए, आपको सिर्फ़ एक ब्राउज़र की ज़रूरत है.

Cloud Console से Cloud Shell को चालू करने के लिए:

  1. a8460e837e9f5fda.png Cloud Shell चालू करें पर क्लिक करें.

इसे चालू होने और एनवायरमेंट से कनेक्ट होने में कुछ समय लग सकता है.

Cloud Shell का विकल्प चालू करें.

Cloud Shell में कमांड-लाइन प्रॉम्प्ट दिख रहा है.

Cloud Shell से कनेक्ट होने के बाद, आपको दिखेगा कि आपकी पुष्टि पहले ही हो चुकी है और प्रोजेक्ट पहले से ही आपके PROJECT_ID पर सेट है.

  1. क्रेडेंशियल वाले खातों की सूची जनरेट करें:
gcloud auth list

आपको यह आउटपुट दिखेगा:

Credentialed accounts:
 - <MY_ACCOUNT>@<MY_DOMAIN>.com (active)
  1. अपने प्रोजेक्ट की सूची देखने के लिए, यह निर्देश डालें.
gcloud config list project

आपको यह आउटपुट दिखेगा:

[core]
project = <PROJECT_ID>

अगर किसी वजह से प्रोजेक्ट सेट नहीं किया गया है, तो प्रोजेक्ट सेट अप करने के लिए यह कमांड चलाएं.

gcloud config set project <PROJECT_ID>

PROJECT_ID वह आईडी है जिसका इस्तेमाल आपने सेटअप के चरणों में किया था. इसे Cloud Console के डैशबोर्ड में भी देखा जा सकता है:

प्रोजेक्ट की जानकारी देने वाला पैनल, जिसमें प्रोजेक्ट आईडी दिख रहा है.

Cloud Shell, कुछ एनवायरमेंट वैरिएबल को डिफ़ॉल्ट रूप से भी सेट करता है. ये वैरिएबल, आने वाले समय में कमांड चलाने के दौरान आपके काम आ सकते हैं.

  1. अपना प्रोजेक्ट आईडी देखने के लिए, यह निर्देश डालें.
echo $GOOGLE_CLOUD_PROJECT

आपको यह आउटपुट दिखेगा:

<PROJECT_ID>
  1. आखिर में, डिफ़ॉल्ट ज़ोन और प्रोजेक्ट कॉन्फ़िगरेशन सेट करें.
gcloud config set compute/zone us-central1-f

आपके पास अलग-अलग ज़ोन चुनने का विकल्प होता है. ज़्यादा जानकारी के लिए, रीजन और ज़ोन देखें.

3. किसी प्रोजेक्ट से एपीआई को कॉल करना

इस कोडलैब में, उदाहरण के तौर पर दिए गए एपीआई (Natural Language API) का इस्तेमाल करके, टेक्स्ट में मौजूद इकाइयों (जैसे कि लोग, जगहें, और इवेंट) का पता लगाने का तरीका बताया गया है. साथ ही, यह भी बताया गया है कि उस टेक्स्ट के बारे में लोगों की राय (सकारात्मक या नकारात्मक) का अनुमान कैसे लगाया जाता है. आपको इनके बारे में जानकारी मिलेगी:

  • Google Cloud API चालू करें.
  • एपीआई कुंजियों और सेवा खातों की मदद से, एपीआई के लिए अनुमति पाएं.
  • curl और क्लाइंट लाइब्रेरी की मदद से, एपीआई को कॉल करें.

किसी एपीआई को चालू करना

  1. Cloud Console के मुख्य मेन्यू में जाकर, एपीआई और सेवाएं को चुनें.

Cloud Console का मुख्य मेन्यू, जिसमें APIs & Services विकल्प दिख रहा है.

  1. स्क्रीन पर सबसे ऊपर मौजूद, + एपीआई और सेवाएं चालू करें को चुनें.

&#39;एपीआई और सेवाएं चालू करें&#39; विकल्प को चुनें.

  1. इस समय, एपीआई को फ़िल्टर और ब्राउज़ किया जा सकता है. इसके अलावा, खोजें बॉक्स का इस्तेमाल करके, सीधे किसी एपीआई पर जाया जा सकता है. Natural Language खोजें और Cloud Natural Language API चुनें.

Cloud Natural Language API का पैनल, जिसमें &#39;चालू करें&#39; और &#39;इस एपीआई को आज़माएं&#39; बटन दिख रहे हैं.

  1. इस एपीआई को आज़माएं पर क्लिक करें.

अगर आपको TRY THIS API बटन नहीं दिख रहा है, तो सूची में दिए गए किसी एक तरीके पर क्लिक करके, उसे आज़माएं.

एपीआई पासकोड बनाना

Natural Language API को अनुरोध भेजने के लिए, curl का इस्तेमाल किया जाता है. इसलिए, आपको एक एपीआई पासकोड जनरेट करना होगा, ताकि उसे अनुरोध वाले यूआरएल में शामिल किया जा सके.

  1. Cloud Console में, नेविगेशन मेन्यू > एपीआई और सेवाएं > क्रेडेंशियल को चुनें.

एपीआई और सेवाएं और क्रेडेंशियल के विकल्प दिखाने वाला नेविगेशन मेन्यू.

  1. क्रेडेंशियल बनाएं पर क्लिक करें. इसके बाद, एपीआई पासकोड चुनें:

क्रेडेंशियल पैनल में, क्रेडेंशियल बनाएं और एपीआई कुंजी के विकल्प दिख रहे हैं.

  1. जनरेट की गई एपीआई पासकोड को कॉपी करें. इसके बाद, बंद करें पर क्लिक करें.

एपीआई को कॉल करने के लिए एपीआई पासकोड का इस्तेमाल करना

  1. Cloud Shell की कमांड लाइन में, अपना एपीआई पासकोड एक्सपोर्ट करें.
export API_KEY=<YOUR_API_KEY>

<YOUR_API_KEY> को उस कुंजी से बदलें जिसे आपने पहले जनरेट किया था.

  1. Cloud Shell Editor या Linux एडिटर, जैसे कि Vim या Emacs में एपीआई के लिए अनुरोध बनाएं. पैरामीटर की जानकारी, Method: documents.analyzeEntities पर देखी जा सकती है. आउटपुट को request.json नाम की फ़ाइल में सेव करें:
{
  "document":{
    "type":"PLAIN_TEXT",
    "content":"Google, headquartered in Mountain View (1600 Amphitheatre Pkwy, Mountain View, CA 940430), unveiled the new Android phone for $799 at the Consumer Electronic Show. Sundar Pichai said in his keynote that users love their new Android phones."
  },
  "encodingType":"UTF8"
}
  1. अनुरोध की जानकारी के साथ एपीआई को कॉल करें.
curl "https://language.googleapis.com/v1/documents:analyzeEntities?key=${API_KEY}" \
  -s -X POST -H "Content-Type: application/json" --data-binary @request.json
  1. कमांड को फिर से चलाएं और आउटपुट को किसी फ़ाइल पर रीडायरेक्ट करें. इसके बाद, नतीजे की जांच करें. JSON फ़ाइल के आउटपुट की जानकारी भी Method: documents.analyzeEntities में दी गई है.
  2. request.json फ़ाइल में विश्लेषण किए जाने वाले टेक्स्ट को बदलने के लिए, content वैल्यू को अपनी पसंद के टेक्स्ट से बदलें.

4. सेवा खाते की मदद से अनुमति देना

सेवा खातों को अक्सर एपीआई कुंजियों से ज़्यादा पसंद किया जाता है, क्योंकि ये पुष्टि करने और अनुमति देने, दोनों की सुविधा देती हैं. सेवा खातों को अपने ऐप्लिकेशन के लिए ईमेल पतों के तौर पर इस्तेमाल किया जा सकता है.

  1. एपीआई और सेवाएं मेन्यू के क्रेडेंशियल सेक्शन पर वापस जाएं.
  2. क्रेडेंशियल बनाएं को चुनें. हालांकि, इस बार सेवा खाता को चुनें.

सेवा खाते की जानकारी वाला पैनल.

  1. सेवा खाते का नाम डालें, जिससे उसके मकसद के बारे में पता चले. जैसे, "Natural Language Service Account". सिस्टम एक आईडी का सुझाव देता है. इसमें ब्यौरा भी जोड़ा जा सकता है. सेवा खातों के बारे में ज़्यादा जानने के लिए, प्रोजेक्ट को सेवा खाते का ऐक्सेस दें और उपयोगकर्ताओं को सेवा खाते का ऐक्सेस दें. हालांकि, अभी सेवा खाता बनाने के लिए, हो गया पर क्लिक करें.
  2. सेवा खाते के लिए कुंजी का जोड़ा बनाने के लिए, सेवा खाते में बदलाव करने के लिए d489bd059474ae59.png पर क्लिक करें.

सेवा खातों का पैनल, जिसमें खातों की सूची दिख रही है.

आपके सेवा खाते की जानकारी दिखती है.

सेवा खाते की जानकारी देने वाला पैनल, जिसमें Natural Language Service खाते की जानकारी दिख रही है.

  1. सेवा खाते का ईमेल पता कॉपी करें और Cloud Shell पर वापस जाएं.
  2. Cloud Shell में, अपने सेवा खाते के लिए एक कुंजी जोड़ी बनाएं और एक एनवायरमेंट वैरिएबल सेट करें, ताकि वह कुंजी जोड़ी की ओर इशारा करे:
gcloud iam service-accounts keys create ~/key.json \
  --iam-account <your service account email>
export GOOGLE_APPLICATION_CREDENTIALS="/home/$USER/key.json"

Google Cloud, क्रेडेंशियल ढूंढने के लिए इस एनवायरमेंट वैरिएबल का इस्तेमाल करता है. इसलिए, इन्हें एपीआई कॉल में शामिल करने की ज़रूरत नहीं होती.

  1. अब इस कमांड का इस्तेमाल करके, एपीआई को कॉल किया जा सकता है:
gcloud ml language analyze-entities --content="Michelangelo Caravaggio, Italian painter, is known for 'The Calling of Saint Matthew'." 

नतीजा पहले जैसा ही होना चाहिए.

कई एपीआई में, इन जानकारी को निकालने के लिए क्लाइंट लाइब्रेरी होती हैं. क्लाइंट लाइब्रेरी के बारे में ज़्यादा जानने के लिए, Cloud Client Libraries देखें. इसके अलावा, इस्तेमाल किए जाने वाले एपीआई के दस्तावेज़ पढ़कर यह भी देखा जा सकता है कि उनके लिए कौनसी क्लाइंट लाइब्रेरी उपलब्ध हैं.

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

प्रोजेक्ट के लिए, बिना किसी पाबंदी वाला एपीआई पासकोड इस्तेमाल करना सही तरीका नहीं है. अगर किसी व्यक्ति को इसका ऐक्सेस मिल जाता है, तो वह इसका इस्तेमाल बिना किसी और पुष्टि के कर सकता है.

इस एपीआई पासकोड को मिटाने के लिए:

  1. f6b6844bf5688982.png नेविगेशन मेन्यू > एपीआई और सेवाएं > क्रेडेंशियल पर क्लिक करें.
  2. एपीआई पासकोड में जाकर, मिटाने के लिए पासकोड चुनें. इसके बाद, 247adf2e1d1eae4b.pngमिटाएं पर क्लिक करें.
  3. इसी तरह, अगर आपको अपनी सेवा खाते की निजी कुंजी के सुरक्षित न होने की चिंता है, तो सेवा खाते में जाकर, वह सेवा खाता चुनें जिसे मिटाना है. इसके बाद, 247adf2e1d1eae4b.pngमिटाएं पर क्लिक करें.

6. बधाई हो

बधाई हो! आपने Google Cloud प्रोजेक्ट बनाने और प्रोजेक्ट से एपीआई को कॉल करने का तरीका सीखा.