पब्लिश करने की तारीख: 13 नवंबर, 2024, पिछली बार अपडेट किए जाने की तारीख: 20 मई, 2025
Browser Support
Chrome में Translator API का इस्तेमाल करके, ब्राउज़र में उपलब्ध एआई मॉडल की मदद से टेक्स्ट का अनुवाद करें.
आपकी वेबसाइट पर, वेबसाइट का कॉन्टेंट पहले से ही कई भाषाओं में उपलब्ध हो सकता है. Translator API की मदद से, उपयोगकर्ता अपनी पसंदीदा भाषा में लिख सकते हैं. उदाहरण के लिए, उपयोगकर्ता अपनी मुख्य भाषा में सहायता चैट में हिस्सा ले सकते हैं. साथ ही, आपकी साइट उनके मैसेज को सहायता एजेंटों की मुख्य भाषा में अनुवाद कर सकती है. ऐसा तब किया जा सकता है, जब मैसेज उपयोगकर्ता के डिवाइस से भेजा जा रहा हो. इससे सभी उपयोगकर्ताओं को बेहतर, तेज़, और समावेशी अनुभव मिलता है.
आम तौर पर, वेब कॉन्टेंट का अनुवाद करने के लिए क्लाउड सेवा का इस्तेमाल करना ज़रूरी होता है. सबसे पहले, सोर्स कॉन्टेंट को सर्वर पर अपलोड किया जाता है. यह सर्वर, कॉन्टेंट का अनुवाद टारगेट भाषा में करता है. इसके बाद, अनुवाद किए गए टेक्स्ट को डाउनलोड किया जाता है और उपयोगकर्ता को भेजा जाता है. जब कॉन्टेंट कुछ समय के लिए उपलब्ध होता है और उसे डेटाबेस में सेव करने की ज़रूरत नहीं होती, तो होस्ट की गई अनुवाद सेवा के मुकाबले क्लाइंट-साइड अनुवाद से समय और पैसे की बचत होती है.
अपनी प्रोफ़ाइल बनाना शुरू करें
यह पता लगाने के लिए कि ब्राउज़र, Translator API के साथ काम करता है या नहीं, सुविधा की पहचान करने की प्रोसेस चलाएं.
if ('Translator' in self) {
// The Translator API is supported.
}
अनुवाद के लिए, आपको हमेशा टारगेट भाषा के बारे में पता होता है. हालांकि, ऐसा हो सकता है कि आपको हमेशा सोर्स भाषा के बारे में पता न हो. ऐसे मामलों में, Language Detector API का इस्तेमाल किया जा सकता है.
मॉडल डाउनलोड
Translator API, विशेषज्ञ मॉडल का इस्तेमाल करता है. इस मॉडल को अच्छी क्वालिटी के अनुवाद जनरेट करने के लिए ट्रेन किया गया है. यह एपीआई Chrome में पहले से मौजूद होता है. साथ ही, जब कोई वेबसाइट पहली बार इस एपीआई का इस्तेमाल करती है, तब मॉडल डाउनलोड हो जाता है.
यह पता लगाने के लिए कि मॉडल इस्तेमाल करने के लिए तैयार है या नहीं, एसिंक्रोनस Translator.availability()
फ़ंक्शन को कॉल करें.
अगर availability()
का जवाब downloadable
है, तो डाउनलोड होने की प्रोसेस के बारे में सुनो, ताकि उपयोगकर्ता को इसकी जानकारी दी जा सके. इसमें समय लग सकता है.
देखें कि भाषा की जोड़ी के लिए सुविधा उपलब्ध है या नहीं
अनुवाद की सुविधा को भाषा पैक की मदद से मैनेज किया जाता है. इन्हें मांग पर डाउनलोड किया जाता है. लैंग्वेज पैक, किसी भाषा के लिए डिक्शनरी की तरह होता है.
sourceLanguage
: टेक्स्ट की मौजूदा भाषा.targetLanguage
: वह भाषा जिसमें टेक्स्ट का अनुवाद किया जाना चाहिए.
स्ट्रिंग के तौर पर, BCP 47 भाषा के छोटे कोड इस्तेमाल करें. उदाहरण के लिए, स्पैनिश के लिए 'es'
या फ़्रेंच के लिए 'fr'
.
const translatorCapabilities = await Translator.availability({
sourceLanguage: 'es',
targetLanguage: 'fr',
});
// 'available'
downloadprogress
इवेंट की मदद से, मॉडल डाउनलोड होने की प्रोसेस के बारे में सुनें:
const translator = await Translator.create({
sourceLanguage: 'es',
targetLanguage: 'fr',
monitor(m) {
m.addEventListener('downloadprogress', (e) => {
console.log(`Downloaded ${e.loaded * 100}%`);
});
},
});
अगर डाउनलोड नहीं हो पाता है, तो downloadprogress
इवेंट बंद हो जाते हैं और ready
प्रॉमिस अस्वीकार कर दिया जाता है.
अनुवादक को बनाना और चलाना
अनुवादक बनाने के लिए, उपयोगकर्ता के खाते को चालू करने की सुविधा देखें और एसिंक्रोनस create()
फ़ंक्शन को कॉल करें. Translator create()
फ़ंक्शन के लिए, विकल्पों वाला पैरामीटर ज़रूरी होता है. इसमें दो फ़ील्ड होते हैं. एक फ़ील्ड sourceLanguage
के लिए और दूसरा targetLanguage
के लिए होता है.
// Create a translator that translates from English to French.
const translator = await Translator.create({
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 ?"
इसके अलावा, अगर आपको लंबे टेक्स्ट पर काम करना है, तो एपीआई के स्ट्रीमिंग वर्शन का इस्तेमाल किया जा सकता है. इसके लिए, translateStreaming()
को कॉल करें.
const stream = translator.translateStreaming(longText);
for await (const chunk of stream) {
console.log(chunk);
}
क्रम से किए गए अनुवाद
अनुवादों को क्रम से प्रोसेस किया जाता है. अगर आपको अनुवाद के लिए बहुत ज़्यादा टेक्स्ट भेजना है, तो पहले भेजे गए टेक्स्ट का अनुवाद पूरा होने तक, बाद में भेजे गए टेक्स्ट का अनुवाद नहीं किया जा सकेगा.
अपने अनुरोधों के सबसे अच्छे जवाब पाने के लिए, उन्हें एक साथ रखें और लोडिंग इंटरफ़ेस जोड़ें. जैसे, स्पिनर. इससे यह पता चलता है कि अनुवाद जारी है.
डेमो
Translator API को Language Detector API के साथ इस्तेमाल किया जा सकता है. इसे Translator और Language Detector API के प्लेग्राउंड में देखा जा सकता है.
अनुमतियों की नीति, iframe, और वेब वर्कर
डिफ़ॉल्ट रूप से, Translator API सिर्फ़ टॉप-लेवल की विंडो और एक ही ऑरिजिन वाले iframe के लिए उपलब्ध होता है. एपीआई का ऐक्सेस, क्रॉस-ऑरिजिन iframe को सौंपा जा सकता है. इसके लिए, अनुमतियों से जुड़ी नीति
allow=""
एट्रिब्यूट का इस्तेमाल करें:
<!--
The host site https://main.example.com can grant a cross-origin iframe
at https://cross-origin.example.com/ access to the Translator API by
setting the `allow="translator"` attribute.
-->
<iframe src="https://cross-origin.example.com/" allow="translator"></iframe>
Translator API, वेब वर्कर में उपलब्ध नहीं है. ऐसा इसलिए है, क्योंकि हर वर्कर के लिए ज़िम्मेदार दस्तावेज़ तैयार करना मुश्किल होता है. इससे अनुमतियों से जुड़ी नीति की स्थिति की जांच की जा सकती है.
सुझाव, शिकायत या राय दें
हमें यह देखने में खुशी होगी कि आपने क्या बनाया है. अपनी वेबसाइटों और वेब ऐप्लिकेशन को X, YouTube, और LinkedIn पर हमारे साथ शेयर करें.
Chrome में लागू करने के बारे में सुझाव/राय देने या शिकायत करने के लिए, गड़बड़ी की रिपोर्ट सबमिट करें या सुविधा का अनुरोध करें.