बिल्ट-इन एआई की मदद से अनुवाद

पब्लिश होने की तारीख: 13 नवंबर, 2024

ब्राउज़र में टेक्स्ट का अनुवाद करने के लिए, Chrome में Translator API का इस्तेमाल करें. इसके लिए, स्थानीय एआई मॉडल का इस्तेमाल किया जाता है.

ऐसा हो सकता है कि आपकी वेबसाइट पर पहले से ही कई भाषाओं में कॉन्टेंट उपलब्ध हो, ताकि दुनिया भर के लोग उसे ऐक्सेस कर सकें. Translator API की मदद से, उपयोगकर्ता अपनी मातृभाषा में योगदान दे सकते हैं. उदाहरण के लिए, उपयोगकर्ता अपनी पहली भाषा में सहायता चैट में हिस्सा ले सकते हैं. साथ ही, आपकी साइट उपयोगकर्ता के डिवाइस से मैसेज भेजने से पहले, उसे उस भाषा में अनुवाद कर सकती है जिसका इस्तेमाल आपके सहायता एजेंट करते हैं. इससे सभी उपयोगकर्ताओं को आसान, तेज़, और बेहतर अनुभव मिलता है.

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

उपलब्धता

टारगेट के लिए चुनी गई भाषा हमेशा पता होती है. हालांकि, कुछ मामलों में सोर्स भाषा का पता नहीं होता. उदाहरण के लिए, यूज़र जनरेटेड कॉन्टेंट में. ऐसे मामलों में, Translator API के प्रस्ताव में Translator API और Language Detector API, दोनों शामिल होते हैं. यह एपीआई, ऑरिजिन ट्रायल में भी उपलब्ध है. इन एपीआई का एक साथ इस्तेमाल करने के लिए, दोनों ऑरिजिन ट्रायल के लिए साइन अप करें.

ऑरिजिन ट्रायल के लिए साइन अप करना

Translator API का इस्तेमाल शुरू करने के लिए, यह तरीका अपनाएं:

  1. जनरेटिव एआई के इस्तेमाल से जुड़ी पाबंदी की Google की नीति स्वीकार करें.
  2. Translator API के ऑरिजिन ट्रायल पर जाएं.
  3. रजिस्टर करें पर क्लिक करें और फ़ॉर्म भरें.
    • वेब ऑरिजिन फ़ील्ड में, अपना ऑरिजिन या एक्सटेंशन आईडी, chrome-extension://YOUR_EXTENSION_ID डालें.
  4. सबमिट करने के लिए, रजिस्टर करें पर क्लिक करें.
  5. दिए गए टोकन को कॉपी करें और अपने एक्सटेंशन के लिए, ऑरिजिन या फ़ाइल के हर उस वेब पेज पर जोड़ें जिस पर आपको ट्रायल की सुविधा चालू करनी है.
  6. Translator API का इस्तेमाल शुरू करें.

ऑरिजिन ट्रायल शुरू करने के तरीके के बारे में ज़्यादा जानें.

localhost के लिए सहायता जोड़ना

ऑरिजिन ट्रायल के दौरान localhost पर Translator API को ऐक्सेस करने के लिए, आपको Chrome को सबसे नए वर्शन में अपडेट करना होगा. फिर, इन स्तरो का पालन करें:

  1. Chrome को इनमें से किसी एक प्लैटफ़ॉर्म पर खोलें: Windows, Mac या Linux.
  2. chrome://flags/#translation-api पर जाएं.
  3. चालू है को चुनें.
    • अगर आपको कई भाषाओं के जोड़े आज़माने हैं, तो भाषा पैक की सीमा के बिना चालू है को चुनें.
  4. फिर से लॉन्च करें पर क्लिक करें या Chrome को रीस्टार्ट करें.

Translator API का इस्तेमाल करना

यह पता लगाने के लिए कि Translator API काम करता है या नहीं, सुविधा का पता लगाने वाला यह स्निपेट चलाएं.

if ('translation' in self && 'createTranslator' in self.translation) {
  // The Translator API is supported.
}

भाषा के जोड़े के लिए सहायता देखना

अनुवाद को भाषा पैक की मदद से मैनेज किया जाता है. ये पैक, ज़रूरत के हिसाब से डाउनलोड किए जाते हैं. भाषा के हिसाब से पैक की गई शब्दावली, किसी भाषा के लिए किसी शब्दकोश की तरह होती है. इन पैक को एक साथ काम करने वाले canTranslate() फ़ंक्शन के साथ जोड़ा जाता है. इससे यह पता चलता है कि किसी भाषा के जोड़े के साथ यह सुविधा काम करती है या नहीं.

canTranslate() फ़ंक्शन के लिए, दो फ़ील्ड वाले options पैरामीटर की ज़रूरत होती है:

  • sourceLanguage: टेक्स्ट की मौजूदा भाषा.
  • targetLanguage: वह भाषा जिसमें टेक्स्ट का अनुवाद किया जाना है.

BCP 47 भाषा के छोटे कोड का इस्तेमाल, स्ट्रिंग के तौर पर करें. उदाहरण के लिए, स्पैनिश के लिए 'es' या फ़्रेंच के लिए 'fr'.

await translation.canTranslate({
  sourceLanguage: 'en',
  targetLanguage: 'fr',
});
// 'readily'

canTranslate() फ़ंक्शन इनमें से कोई भी नतीजा दिखा सकता है:

  • no: इस ब्राउज़र में, अनुरोध के मुताबिक अनुवाद नहीं किया जा सकता.
  • readily: ब्राउज़र, अनुरोध के मुताबिक अनुवाद कर सकता है.
  • after-download: ब्राउज़र अनुवाद कर सकता है, लेकिन इसके लिए ज़रूरी है कि वह काम का मॉडल या भाषा पैक डाउनलोड कर ले.

downloadprogress इवेंट का इस्तेमाल करके, डाउनलोड की प्रोग्रेस को सुना जा सकता है:

translator.ondownloadprogress = progressEvent => {
  updateDownloadProgressBar(progressEvent.loaded, progressEvent.total);
};

अगर डाउनलोड पूरा नहीं हो पाता है, तो downloadprogress इवेंट एमिट होने बंद हो जाते हैं और ready प्रोमिस अस्वीकार कर दिया जाता है.

अनुवादक बनाना और चलाना

अनुवादक बनाने के लिए, असाइनोक्रोनस translation.createTranslator() फ़ंक्शन को कॉल करें. canTranslate() की तरह, इसके लिए विकल्प पैरामीटर की ज़रूरत होती है. इसमें दो फ़ील्ड होते हैं, एक sourceLanguage के लिए और एक targetLanguage के लिए.

// Create a translator that translates from English to French.
const translator = await self.translation.createTranslator({
  sourceLanguage: 'en',
  targetLanguage: 'fr',
});

अनुवादक मिलने के बाद, अपने टेक्स्ट का अनुवाद करने के लिए, एक साथ काम न करने वाले translate() फ़ंक्शन को कॉल करें.

await translator.translate('Where is the next bus stop, please?');
// "Où est le prochain arrêt de bus, s'il vous plaît ?"

ऑरिजिन ट्रायल की सीमाएं

ऑरिजिन ट्रायल के दौरान ये पाबंदियां लागू होती हैं.

इस्तेमाल की जा सकने वाली भाषाओं के जोड़े

फ़िलहाल, अनुवाद के लिए ज़्यादा से ज़्यादा तीन भाषा पैक डाउनलोड किए जा सकते हैं. हम आने वाले समय में, इस सुविधा को ज़्यादा भाषाओं में उपलब्ध कराने के लिए काम कर रहे हैं. साथ ही, हम उपयोगकर्ता की निजता को बनाए रखने के लिए, ज़्यादा से ज़्यादा सुरक्षा देने की कोशिश करेंगे. canTranslate() फ़ंक्शन की मदद से, यह पुष्टि की जा सकती है कि आपको जिस भाषा के जोड़े की ज़रूरत है वह काम करता है या नहीं.

ऐसा हो सकता है कि फ़िंगरप्रिंट के लिए, कम इस्तेमाल होने वाले कुछ भाषा के जोड़े का इस्तेमाल किया जाए. उदाहरण के लिए, अंग्रेज़ी और स्पैनिश के बीच अनुवाद करना, गैलिक और कैटलन जैसी कम इस्तेमाल होने वाली भाषाओं के बीच अनुवाद करने के मुकाबले ज़्यादा आम है. आम तौर पर इस्तेमाल न होने वाली भाषाओं के जोड़े को, उपयोगकर्ता की पहचान करने के लिए डेटा पॉइंट माना जा सकता है.

शुरुआती ट्रायल के दौरान, हम उपयोगकर्ता की निजता की सुरक्षा के लिए, अनुवाद की जाने वाली संभावित भाषा के जोड़े को सीमित कर रहे हैं. भाषा के जोड़े इन शर्तों को पूरा करते हों:

  • सोर्स और डेस्टिनेशन, दोनों भाषाओं को Chrome में पसंदीदा भाषाओं के तौर पर सेट किया गया हो.
  • इसके अलावा, ऐसा भी हो सकता है कि इनमें से एक भाषा, Chrome में पसंदीदा भाषा के तौर पर सेट की गई हो और दूसरी भाषा, इन लोकप्रिय भाषाओं में से कोई एक हो:
    • अंग्रेज़ी (en)
    • मैंडरिन चाइनीज़ (zh; सिंप्लिफ़ाइड) या ताइवान मैंडरिन (zh-Hant; ट्रेडिशनल)
    • जैपनीज़ (ja)
    • पॉर्चुगीज़ (pt)
    • रशियन (ru)
    • स्पैनिश (es)
    • तुर्किश (tr)
    • हिन्दी (hi)
    • वियतनामीज़ (vi)
    • बांग्ला (bn)

स्थानीय भाषा में टेस्ट करने के लिए, भाषा से जुड़ी पाबंदियों को बायपास करना

लोकल प्रोटोटाइप बनाने के लिए, --disable-features=TranslationAPIAcceptLanguagesCheck कमांड-लाइन विकल्प के साथ Chrome चलाकर, इन जांचों को बायपास किया जा सकता है. इसके अलावा, chrome://flags/#translation-api को भाषा पैक की सीमा के बिना चालू करें पर सेट करें.

भाषा पैक को मैन्युअल तरीके से इंस्टॉल और अनइंस्टॉल करने के लिए, chrome://on-device-translation-internals/ पर जाएं.

अनुवाद का क्रम

अनुवाद क्रम से प्रोसेस किए जाते हैं. अगर अनुवाद कराने के लिए ज़्यादा टेक्स्ट भेजा जाता है, तो पहले अनुवाद पूरे होने तक, बाद के अनुवाद ब्लॉक कर दिए जाते हैं.

अनुवाद के अनुरोधों का जल्द से जल्द जवाब पाने के लिए, उन्हें एक साथ डालें. साथ ही, अनुवाद की प्रोसेस जारी होने की जानकारी देने के लिए, स्पिनर जैसे लोडिंग इंटरफ़ेस दिखाएं.

वेब वर्कर की उपलब्धता

ऑरिजिन ट्रायल के दौरान, Translator API सिर्फ़ मुख्य धागे से काम करता है. एपीआई के बड़े पैमाने पर उपलब्ध होने के बाद, हम इसे वेब वर्कर्स में इस्तेमाल करने की सुविधा उपलब्ध कराएंगे.

डेमो

Translator API को Translator और Language Detector API के प्लेलैंड में देखा जा सकता है. इसे Language Detector API के साथ इस्तेमाल किया जाता है.

स्टैंडर्ड बनाने की कोशिश

हम Translator API को स्टैंडर्ड बनाने पर काम कर रहे हैं, ताकि यह सभी ब्राउज़र के साथ काम कर सके.

हमारे एपीआई के प्रस्ताव को कम्यूनिटी का समर्थन मिला है. साथ ही, इस पर आगे चर्चा करने के लिए, इसे W3C वेब इनक्यूबेटर कम्यूनिटी ग्रुप पर भेज दिया गया है. Chrome टीम ने W3C के तकनीकी आर्किटेक्चर ग्रुप से सुझाव, राय या शिकायत मांगी. साथ ही, Mozilla और WebKit से स्टैंडर्ड के बारे में जानकारी मांगी.

हिस्सा लेना और सुझाव, शिकायत या राय शेयर करना

ओरिजिन ट्रायल में शामिल होकर, Translator API की जांच अभी शुरू करें और अपने सुझाव/राय दें. आपके सुझाव, राय, और शिकायत से, इस एपीआई के आने वाले वर्शन और पहले से मौजूद सभी एआई एपीआई को बनाने और लागू करने के तरीके पर सीधा असर पड़ सकता है.