Cloud Speech-Text एपीआई के साथ, बोली को लिखाई में बदलने की सुविधा

Cloud Speech API की मदद से आप 80 से ज़्यादा भाषाओं में उपलब्ध ऑडियो फ़ाइलों से बोली को लेख में बदल सकते हैं.

इस लैब में, हम एक ऑडियो फ़ाइल रिकॉर्ड करेंगे और उसे बोली को लेख में बदलने के लिए, Cloud Speech API पर भेजेंगे.

आप इन चीज़ों के बारे में जानेंगे

  • Speech API अनुरोध बनाना और एपीआई को कॉल के साथ कॉल करना
  • अलग-अलग भाषाओं में रिकॉर्ड किए गए ऑडियो फ़ाइलों के साथ, Speech API को कॉल करना

आपको इनकी ज़रूरत होगी

  • Google Cloud Platform प्रोजेक्ट
  • ब्राउज़र, जैसे कि Chrome या Firefox

आप इस ट्यूटोरियल का इस्तेमाल कैसे करेंगे?

सिर्फ़ इसे पढ़ें इसे पढ़ें और कसरत करें

Google Cloud Platform के साथ आपका अनुभव कैसा रहा?

शुरुआती बीच का लेवल असरदार

अपनी सुविधा के हिसाब से एनवायरमेंट सेट अप करना

अगर आपके पास पहले से कोई Google खाता (Gmail या Google Apps) नहीं है, तो आपको एक खाता बनाना होगा. Google Cloud Platform Console (console.cloud.google.com) में साइन इन करें और एक नया प्रोजेक्ट बनाएं:

10-02-2016 का स्क्रीनशॉट 12:45:26.png

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

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

इस कोडलैब के जवाब में कुछ डॉलर से ज़्यादा खर्च नहीं करना चाहिए. हालांकि, अगर आप संसाधनों का इस्तेमाल करना जारी रखते हैं या उन्हें चलाना बंद कर देते हैं, तो यह ज़्यादा भी हो सकता है.

Google Cloud Platform के नए उपयोगकर्ता, 300 डॉलर का मुफ़्त ट्रायल पा सकते हैं.

स्क्रीन के सबसे ऊपर बाईं ओर, मेन्यू आइकॉन पर क्लिक करें.

ड्रॉप-डाउन में से, एपीआई और सेवाएं डैशबोर्ड चुनें.

एपीआई और सेवाएं चालू करें पर क्लिक करें.

इसके बाद, खोज बॉक्स में &कोटेशन;बोलने का कोटेशन खोजें. Google Cloud Speech API पर क्लिक करें:

Cloud Speech API को चालू करने के लिए चालू करें पर क्लिक करें:

इसे चालू करने के लिए, कुछ सेकंड का इंतज़ार करें. इसे चालू करने के बाद, आपको यह दिखेगा:

Google Cloud Shell, Cloud में चलने वाला कमांड लाइन एनवायरमेंट है. Debian वाली वर्चुअल मशीन में, डेवलपमेंट के लिए इस्तेमाल होने वाले सभी टूल (#gcloud, bq, git, और अन्य टूल) मौजूद हैं. साथ ही, यह 5 जीबी से ज़्यादा स्टोरेज इस्तेमाल करने वाली डायरेक्ट्री उपलब्ध कराती है. हम Speech API के लिए अपना अनुरोध तैयार करने के लिए, Cloud Shell का इस्तेमाल करेंगे.

Cloud Shell का इस्तेमाल करने के लिए, हेडर बार के सबसे ऊपर दाएं कोने में मौजूद &Google Cloud Shell&कोट को चालू करें; स्क्रीन शॉट, 08-06-2015, शाम 5.30.32 बजे.pngआइकॉन पर क्लिक करें

Cloud Shell सेशन, कंसोल के सबसे नीचे एक नए फ़्रेम में खुलता है और एक कमांड-लाइन प्रॉम्प्ट दिखाता है. user@project:~$ प्रॉम्प्ट दिखने तक इंतज़ार करें

हम स्पीच एपीआई को अनुरोध भेजने के लिए, curl का इस्तेमाल करेंगे. इसलिए, हमें अपने अनुरोध के यूआरएल को पास करने के लिए, एपीआई कुंजी जनरेट करनी होगी. एपीआई कुंजी बनाने के लिए, अपने प्रोजेक्ट डैशबोर्ड के एपीआई और सेवाएं; सेवाएं & क्रेडेंशियल सेक्शन पर जाएं:

इसके बाद, क्रेडेंशियल बनाएं पर क्लिक करें:

ड्रॉप-डाउन मेन्यू में, एपीआई कुंजी चुनें:

इसके बाद, उस कुंजी को कॉपी करें जिसे आपने अभी-अभी जनरेट किया है. इसके बाद, बंद करें चुनें (सिर्फ़ कुंजी पर पाबंदी न लगाएं).

अब जब आपके पास एपीआई कुंजी है, तो उसे किसी एनवायरमेंट वैरिएबल में सेव करें, ताकि हर अनुरोध में आपकी एपीआई कुंजी की वैल्यू न डालनी पड़े. आप Cloud Shell में जाकर ऐसा कर सकते हैं. <your_api_key> को उसी कुंजी से बदलना न भूलें जिसे आपने अभी-अभी कॉपी किया है.

export API_KEY=<YOUR_API_KEY>

request.json फ़ाइल में, स्पीच एपीआई को ऐक्सेस करने के लिए अनुरोध किया जा सकता है. यह फ़ाइल बनाने और उसमें बदलाव करने के लिए, आप अपने किसी एक कमांड लाइन एडिटर (नैनो, vim, emacs) का इस्तेमाल कर सकते हैं. इसके अलावा, आप Cloud Shell में पहले से मौजूद वेब एडिटर का भी इस्तेमाल कर सकते हैं:

अपनी रेफ़रंस फ़ाइल को आसानी से रेफ़रंस करने और इसे अपनी request.json फ़ाइल में जोड़ने के लिए, अपनी होम डायरेक्ट्री में फ़ाइल बनाएं :

request.json

{
  "config": {
      "encoding":"FLAC",
      "languageCode": "en-US"
  },
  "audio": {
      "uri":"gs://cloud-samples-tests/speech/brooklyn.flac"
  }
}

अनुरोध के मुख्य हिस्से में config और audio ऑब्जेक्ट है. config में, हम Speech API से अनुरोध को प्रोसेस करने के लिए कहते हैं. encoding पैरामीटर, एपीआई को बताता है कि आप ऑडियो फ़ाइल के लिए, किस तरह की ऑडियो एन्कोडिंग का इस्तेमाल कर रहे हैं'आप एपीआई को भेज रहे हैं. FLAC, .raw फ़ाइलों के लिए एन्कोडिंग का टाइप है (ज़्यादा जानकारी के लिए, टाइप करने के लिए दस्तावेज़ देखें). ऐसे दूसरे पैरामीटर हैं जिन्हें आप config ऑब्जेक्ट में जोड़ सकते हैं, लेकिन encoding में ही ऐसा करना ज़रूरी है. अगर अनुरोध छोड़ दिया जाता है, तो languageCode डिफ़ॉल्ट रूप से अंग्रेज़ी में होगा.

audio ऑब्जेक्ट में, आप एपीआई को Cloud Storage में हमारी ऑडियो फ़ाइल के uri या base64 कोड में बदले गए ऑडियो को स्ट्रिंग के तौर पर भेज सकते हैं. यहां Cloud Storage यूआरएल का इस्तेमाल किया जा रहा है. अगला चरण Speech API है!

अब अपने अनुरोध के मुख्य हिस्से के साथ-साथ, एपीआई कुंजी के एनवायरमेंट वैरिएबल के साथ-साथ, जो आपने पहले सेव किया था उसे Speech API पर इस curl निर्देश के साथ भेजा जा सकता है. यह सब एक कमांड लाइन में होता है:

curl -s -X POST -H "Content-Type: application/json" --data-binary @request.json "https://speech.googleapis.com/v1/speech:recognize?key=${API_KEY}"

curl निर्देश से मिला जवाब कुछ ऐसा दिखना चाहिए:

{
  "results": [
    {
      "alternatives": [
        {
          "transcript": "how old is the Brooklyn Bridge",
          "confidence": 0.98267895
        }
      ]
    }
  ]
}

transcript वैल्यू, Speech API से आपकी ऑडियो फ़ाइल का टेक्स्ट ट्रांसक्रिप्शन में दिखाती है. confidence वैल्यू से पता चलता है कि एपीआई का इस्तेमाल करके, यह पक्का किया गया है कि आपके ऑडियो को लेख में बदला गया है या नहीं.

आपने हमें बताया है कि हमने ऊपर अपने अनुरोध में recognize विधि को कॉल किया है. Speech API, सिंक करने की सुविधा और एसिंक्रोनस स्पीच, दोनों से टेक्स्ट को लेख में बदलने की सुविधा देता है. इस उदाहरण में हमने एक पूरी ऑडियो फ़ाइल भेजी है. हालांकि, आप longrunningrecognize तरीके से, बोली को लिखाई में बदलने की सुविधा का इस्तेमाल कर सकते हैं. इसके लिए, उपयोगकर्ता के बोलने के दौरान भी बोली को लेख में बदलें.

क्या आप एक से ज़्यादा भाषाओं में काम करते हैं? Speech API, 100 से ज़्यादा भाषाओं में, बोली को लिखाई में बदलने की सुविधा का इस्तेमाल करता है! आप request.json में languageCode पैरामीटर को बदल सकते हैं. आप यहां इस्तेमाल की जा सकने वाली भाषाओं की सूची देख सकते हैं.

आइए एक फ़्रेंच ऑडियो फ़ाइल आज़माकर देखते हैं (अगर आप झलक देखना चाहते हैं, तो उसे यहां सुनें). अपने Request.json को इनमें बदलें:

request.json

 {
  "config": {
      "encoding":"FLAC",
      "languageCode": "fr"
  },
  "audio": {
      "uri":"gs://speech-language-samples/fr-sample.flac"
  }
}

आपको नीचे दिया गया जवाब दिखेगा:

{
  "results": [
    {
      "alternatives": [
        {
          "transcript": "maître corbeau sur un arbre perché tenait en son bec un fromage",
          "confidence": 0.9710122
        }
      ]
    }
  ]
}

यह वाक्य एक लोकप्रिय फ़्रेंच बच्चों और #39;s कहानी का है. अगर आपको किसी दूसरी भाषा में ऑडियो फ़ाइलें मिलती हैं, तो आप उन्हें Cloud Storage में जोड़कर और अपने अनुरोध में languageCode पैरामीटर बदलकर देख सकते हैं.

आपने #39; स्पीच एपीआई की मदद से, बोली को लिखाई में बदलने की सुविधा को इस्तेमाल करने का तरीका सीख लिया है. इस उदाहरण में आपने अपनी ऑडियो फ़ाइल का एपीआई Google Cloud Storage यूआरआई पास किया है. इसके अलावा, आप अपने ऑडियो कॉन्टेंट की base64 कोड में बदली गई स्ट्रिंग पास कर सकते हैं.

हमने क्या-क्या शामिल किया है

  • किसी ऑडियो फ़ाइल का Speech API पास करना Google Cloud Storage यूआरआई
  • Speech API अनुरोध बनाना और एपीआई को कॉल के साथ कॉल करना
  • अलग-अलग भाषाओं में रिकॉर्ड किए गए ऑडियो फ़ाइलों के साथ, Speech API को कॉल करना

अगले चरण