1. खास जानकारी

Translate API, सॉफ़्टवेयर प्रोग्राम पर चलने वाला एक आसान इंटरफ़ेस उपलब्ध कराता है. इसकी मदद से, किसी भी स्ट्रिंग का अनुवाद, बेहतर न्यूरल मशीन ट्रांसलेशन का इस्तेमाल करके, किसी भी भाषा में डाइनैमिक तरीके से किया जा सकता है. इसका इस्तेमाल उन मामलों में भी किया जा सकता है जहां सोर्स भाषा का पता नहीं होता.
इस ट्यूटोरियल में, Python के साथ Translation API का इस्तेमाल किया जाएगा. इसमें उपलब्ध भाषाओं की सूची बनाने, टेक्स्ट का अनुवाद करने, और दिए गए टेक्स्ट की भाषा का पता लगाने जैसे कॉन्सेप्ट शामिल हैं.
आपको क्या सीखने को मिलेगा
- अपना एनवायरमेंट सेट अप करने का तरीका
- उपलब्ध भाषाओं की सूची बनाने का तरीका
- पाठ का अनुवाद कैसे करें
- भाषाओं का पता कैसे लगाया जाता है
आपको इन चीज़ों की ज़रूरत होगी
सर्वे
इस ट्यूटोरियल का इस्तेमाल कैसे किया जाएगा?
Python के साथ अपने अनुभव को आप क्या रेटिंग देंगे?
Google Cloud की सेवाओं को इस्तेमाल करने का आपका अनुभव कैसा रहा?
2. सेटअप और ज़रूरी शर्तें
अपने हिसाब से एनवायरमेंट सेट अप करना
- Google Cloud Console में साइन इन करें और नया प्रोजेक्ट बनाएं या किसी मौजूदा प्रोजेक्ट का फिर से इस्तेमाल करें. अगर आपके पास पहले से कोई Gmail या Google Workspace खाता नहीं है, तो आपको एक खाता बनाना होगा.



- प्रोजेक्ट का नाम, इस प्रोजेक्ट में हिस्सा लेने वाले लोगों के लिए डिसप्ले नेम होता है. यह एक वर्ण स्ट्रिंग है, जिसका इस्तेमाल Google API नहीं करते. इसे कभी भी अपडेट किया जा सकता है.
- प्रोजेक्ट आईडी, सभी Google Cloud प्रोजेक्ट के लिए यूनीक होता है. साथ ही, इसे बदला नहीं जा सकता. Cloud Console, यूनीक स्ट्रिंग को अपने-आप जनरेट करता है. आम तौर पर, आपको इससे कोई फ़र्क़ नहीं पड़ता कि यह क्या है. ज़्यादातर कोडलैब में, आपको अपने प्रोजेक्ट आईडी (आम तौर पर
PROJECT_IDके तौर पर पहचाना जाता है) का रेफ़रंस देना होगा. अगर आपको जनरेट किया गया आईडी पसंद नहीं है, तो कोई दूसरा रैंडम आईडी जनरेट किया जा सकता है. इसके अलावा, आपके पास अपना नाम आज़माने का विकल्प भी है. इससे आपको पता चलेगा कि वह नाम उपलब्ध है या नहीं. इस चरण के बाद, इसे बदला नहीं जा सकता. यह प्रोजेक्ट की अवधि तक बना रहता है. - आपकी जानकारी के लिए बता दें कि एक तीसरी वैल्यू भी होती है, जिसे प्रोजेक्ट नंबर कहते हैं. इसका इस्तेमाल कुछ एपीआई करते हैं. इन तीनों वैल्यू के बारे में ज़्यादा जानने के लिए, दस्तावेज़ देखें.
- इसके बाद, आपको Cloud Console में बिलिंग चालू करनी होगी, ताकि Cloud संसाधनों/एपीआई का इस्तेमाल किया जा सके. इस कोडलैब को पूरा करने में ज़्यादा समय नहीं लगेगा. इस ट्यूटोरियल के बाद बिलिंग से बचने के लिए, संसाधनों को बंद किया जा सकता है. इसके लिए, बनाए गए संसाधनों को मिटाएं या प्रोजेक्ट को मिटाएं. Google Cloud के नए उपयोगकर्ताओं को, 300 डॉलर का क्रेडिट मिलेगा. वे इसे मुफ़्त में आज़मा सकते हैं.
Cloud Shell शुरू करें
Google Cloud को अपने लैपटॉप से रिमोटली ऑपरेट किया जा सकता है. हालांकि, इस कोडलैब में Cloud Shell का इस्तेमाल किया जाएगा. यह क्लाउड में चलने वाला कमांड लाइन एनवायरमेंट है.
Cloud Shell चालू करें
- Cloud Console में, Cloud Shell चालू करें
पर क्लिक करें.

अगर आपने Cloud Shell को पहली बार शुरू किया है, तो आपको एक इंटरमीडिएट स्क्रीन दिखेगी. इसमें Cloud Shell के बारे में जानकारी दी गई होगी. अगर आपको इंटरमीडिएट स्क्रीन दिखती है, तो जारी रखें पर क्लिक करें.

Cloud Shell से कनेक्ट होने में कुछ ही सेकंड लगेंगे.

इस वर्चुअल मशीन में, डेवलपमेंट के लिए ज़रूरी सभी टूल पहले से मौजूद हैं. यह 5 जीबी की होम डायरेक्ट्री उपलब्ध कराता है, जो हमेशा बनी रहती है. साथ ही, यह Google Cloud में काम करता है. इससे नेटवर्क की परफ़ॉर्मेंस और पुष्टि करने की प्रोसेस बेहतर होती है. इस कोडलैब में ज़्यादातर काम ब्राउज़र से किया जा सकता है.
Cloud Shell से कनेक्ट होने के बाद, आपको दिखेगा कि आपकी पुष्टि हो गई है और प्रोजेक्ट को आपके प्रोजेक्ट आईडी पर सेट कर दिया गया है.
- पुष्टि करें कि आपने Cloud Shell में पुष्टि कर ली है. इसके लिए, यह कमांड चलाएं:
gcloud auth list
कमांड आउटपुट
Credentialed Accounts
ACTIVE ACCOUNT
* <my_account>@<my_domain.com>
To set the active account, run:
$ gcloud config set account `ACCOUNT`
- यह पुष्टि करने के लिए कि gcloud कमांड को आपके प्रोजेक्ट के बारे में पता है, Cloud Shell में यह कमांड चलाएं:
gcloud config list project
कमांड आउटपुट
[core] project = <PROJECT_ID>
अगर ऐसा नहीं है, तो इस कमांड का इस्तेमाल करके इसे सेट किया जा सकता है:
gcloud config set project <PROJECT_ID>
कमांड आउटपुट
Updated property [core/project].
3. एनवायरमेंट सेटअप करना
Translation API का इस्तेमाल शुरू करने से पहले, Cloud Shell में यह निर्देश चलाकर एपीआई को चालू करें:
gcloud services enable translate.googleapis.com
आपको कुछ ऐसा दिखेगा:
Operation "operations/..." finished successfully.
अब Translation API का इस्तेमाल किया जा सकता है!
अपने ऐप्लिकेशन में इस्तेमाल करने के लिए, यह एनवायरमेंट वैरिएबल सेट करें:
export PROJECT_ID=$(gcloud config get-value core/project)
echo "PROJECT_ID: $PROJECT_ID"
अपनी होम डायरेक्ट्री पर जाएं:
cd ~
डिपेंडेंसी को अलग करने के लिए, Python का वर्चुअल एनवायरमेंट बनाएं:
virtualenv venv-translate
वर्चुअल एनवायरमेंट चालू करें:
source venv-translate/bin/activate
IPython और Translation API क्लाइंट लाइब्रेरी इंस्टॉल करें:
pip install ipython google-cloud-translate
आपको कुछ ऐसा दिखेगा:
... Installing collected packages: ..., ipython, google-cloud-translate Successfully installed ... google-cloud-translate-3.16.0 ...
अब, Translation API की क्लाइंट लाइब्रेरी का इस्तेमाल किया जा सकता है!
अगले चरणों में, आपको IPython नाम के इंटरैक्टिव Python इंटरप्रेटर का इस्तेमाल करना होगा. इसे आपने पिछले चरण में इंस्टॉल किया था. Cloud Shell में ipython चलाकर सेशन शुरू करें:
ipython
आपको कुछ ऐसा दिखेगा:
Python 3.10.12 (main, Jul 29 2024, 16:56:48) [GCC 11.4.0] Type 'copyright', 'credits' or 'license' for more information IPython 8.27.0 -- An enhanced Interactive Python. Type '?' for help. In [1]:
नीचे दिए गए कोड को अपने IPython सेशन में कॉपी करें:
from os import environ
from google.cloud import translate
PROJECT_ID = environ.get("PROJECT_ID", "")
assert PROJECT_ID
PARENT = f"projects/{PROJECT_ID}"
अब पहली बार अनुरोध करने और इस सुविधा के साथ काम करने वाली भाषाओं की सूची बनाने के लिए तैयार हो जाएं...
4. उपलब्ध भाषाओं की सूची
इस सेक्शन में, Translation API में उपलब्ध सभी भाषाओं की सूची दी जाएगी.
उपलब्ध भाषाओं की सूची बनाने के लिए, इस कोड को अपने IPython सेशन में कॉपी करें:
def print_supported_languages(display_language_code: str):
client = translate.TranslationServiceClient()
response = client.get_supported_languages(
parent=PARENT,
display_language_code=display_language_code,
)
languages = response.languages
print(f" Languages: {len(languages)} ".center(60, "-"))
for language in languages:
language_code = language.language_code
display_name = language.display_name
print(f"{language_code:10}{display_name}")
फ़ंक्शन को कॉल करें:
print_supported_languages("en")
आपको कुछ ऐसा दिखेगा:
---------------------- Languages: 137 ---------------------- af Afrikaans sq Albanian am Amharic ar Arabic hy Armenian ... cy Welsh xh Xhosa yi Yiddish yo Yoruba zu Zulu
फ़्रेंच में डिसप्ले की भाषा के साथ मिलने वाली सुविधाएँ देखें:
print_supported_languages("fr")
आपको एक ही सूची मिलेगी, जिसमें फ़्रेंच नामों के हिसाब से क्रम से लगाया गया होगा. यह सूची कुछ इस तरह दिखेगी:
---------------------- Languages: 137 ---------------------- af Afrikaans sq Albanais de Allemand am Amharique en Anglais ... vi Vietnamien xh Xhosa yi Yiddish yo Yoruba zu Zoulou
भाषा के किसी दूसरे कोड का इस्तेमाल करके देखें.
खास जानकारी
इस चरण में, Translation API में उपलब्ध सभी भाषाओं की सूची बनाई जा सकती है. भाषा से जुड़ी सहायता पेज पर, आपको उन भाषाओं की पूरी सूची मिल सकती है जिनमें यह सुविधा उपलब्ध है.
5. टेक्स्ट का अनुवाद करें
Translation API का इस्तेमाल करके, किसी टेक्स्ट का एक भाषा से दूसरी भाषा में अनुवाद किया जा सकता है. टेक्स्ट का अनुवाद, न्यूरल मशीन ट्रांसलेशन (एनएमटी) मॉडल का इस्तेमाल करके किया जाता है. अगर अनुरोध की गई भाषा के लिए, NMT मॉडल काम नहीं करता है, तो फ़्रेज़-आधारित मशीन ट्रांसलेशन (पीबीएमटी) मॉडल का इस्तेमाल किया जाता है. Google Translate और इसके ट्रांसलेशन मॉडल के बारे में ज़्यादा जानने के लिए, NMT से जुड़ी सूचना वाली पोस्ट पढ़ें.
टेक्स्ट का अनुवाद करने के लिए, इस कोड को अपने IPython सेशन में कॉपी करें:
def translate_text(text: str, target_language_code: str) -> translate.Translation:
client = translate.TranslationServiceClient()
response = client.translate_text(
parent=PARENT,
contents=[text],
target_language_code=target_language_code,
)
return response.translations[0]
एक ही टेक्स्ट का अलग-अलग भाषाओं में अनुवाद करने के लिए, फ़ंक्शन को कॉल करें:
text = "Hello World!"
target_languages = ["tr", "de", "es", "it", "el", "zh", "ja", "ko"]
print(f" {text} ".center(50, "-"))
for target_language in target_languages:
translation = translate_text(text, target_language)
source_language = translation.detected_language_code
translated_text = translation.translated_text
print(f"{source_language} → {target_language} : {translated_text}")
आपको यह जानकारी मिलनी चाहिए:
------------------ Hello World! ------------------ en → tr : Selam Dünya! en → de : Hallo Welt! en → es : ¡Hola Mundo! en → it : Ciao mondo! en → el : Γεια σου Κόσμο! en → zh : 你好世界! en → ja : 「こんにちは世界」 en → ko : 안녕하세요!
खास जानकारी
इस चरण में, आपने Translation API का इस्तेमाल करके टेक्स्ट का कई भाषाओं में अनुवाद किया. टेक्स्ट का अनुवाद करने के बारे में ज़्यादा जानें.
6. भाषाओं का पता लगाना
टेक्स्ट स्ट्रिंग की भाषा का पता लगाने के लिए, Translation API का भी इस्तेमाल किया जा सकता है.
नीचे दिए गए कोड को अपने IPython सेशन में कॉपी करें:
def detect_language(text: str) -> translate.DetectedLanguage:
client = translate.TranslationServiceClient()
response = client.detect_language(parent=PARENT, content=text)
return response.languages[0]
अलग-अलग वाक्यों की भाषा का पता लगाने के लिए, फ़ंक्शन को कॉल करें:
sentences = [
"Selam Dünya!",
"Hallo Welt!",
"¡Hola Mundo!",
"Ciao mondo!",
"Γεια σου Κόσμο!",
"你好世界!",
"「こんにちは世界」",
"안녕하세요!",
]
for sentence in sentences:
language = detect_language(sentence)
confidence = language.confidence
language_code = language.language_code
print(
f"Confidence: {confidence:4.0%}",
f"Language: {language_code:5}",
sentence,
sep=" | ",
)
आपको यह जानकारी मिलनी चाहिए:
Confidence: 100% | Language: tr | Selam Dünya! Confidence: 81% | Language: de | Hallo Welt! Confidence: 100% | Language: es | ¡Hola Mundo! Confidence: 100% | Language: it | Ciao mondo! Confidence: 100% | Language: el | Γεια σου Κόσμο! Confidence: 100% | Language: zh-CN | 你好世界! Confidence: 100% | Language: ja | 「こんにちは世界」 Confidence: 100% | Language: ko | 안녕하세요!
खास जानकारी
इस चरण में, आपने Translation API का इस्तेमाल करके किसी टेक्स्ट की भाषा का पता लगाया. भाषाओं का पता लगाने के बारे में ज़्यादा जानें.
7. बधाई हो!

आपने Python का इस्तेमाल करके, Translation API का इस्तेमाल करने का तरीका जान लिया है!
खाली करने के लिए जगह
Cloud Shell से, डेवलपमेंट एनवायरमेंट को क्लीन अप करने के लिए:
- अगर आप अब भी IPython सेशन में हैं, तो शेल पर वापस जाएं:
exit - Python वर्चुअल एनवायरमेंट का इस्तेमाल बंद करें:
deactivate - अपना वर्चुअल एनवायरमेंट फ़ोल्डर मिटाएं:
cd ~ ; rm -rf ./venv-translate
Google Cloud प्रोजेक्ट मिटाने के लिए, Cloud Shell में जाकर यह तरीका अपनाएं:
- अपना मौजूदा प्रोजेक्ट आईडी पाएं:
PROJECT_ID=$(gcloud config get-value core/project) - पक्का करें कि आपको यही प्रोजेक्ट मिटाना है:
echo $PROJECT_ID - प्रोजेक्ट मिटाएं:
gcloud projects delete $PROJECT_ID
ज़्यादा जानें
- Cloud Translation के दस्तावेज़: https://cloud.google.com/translate/docs
- Google Cloud पर Python: https://cloud.google.com/python
- Python के लिए Cloud Client Libraries: https://github.com/googleapis/google-cloud-python
लाइसेंस
इस काम के लिए, Creative Commons एट्रिब्यूशन 2.0 जेनेरिक लाइसेंस के तहत लाइसेंस मिला है.