ML Kit GenAI Speech Translation API की मदद से, उपयोगकर्ता के डिवाइस पर रीयल-टाइम में ऑडियो कॉन्टेंट का अनुवाद किया जा सकता है. यह अनुवाद कई भाषाओं में किया जा सकता है. Google के जनरेटिव एआई वाले स्पीच मॉडल का इस्तेमाल करके, Speech Translation API, बोले जा रहे शब्दों के अनुवाद की सुविधा देता है. यह सुविधा, कम इंतज़ार के समय, अच्छी क्वालिटी, और निजता पर फ़ोकस करके काम करती है. इसके लिए, क्लाउड-आधारित ऑडियो प्रोसेसिंग की ज़रूरत नहीं होती.
मुख्य सुविधाएं
- एक ही एपीआई से पूरी प्रोसेस को मैनेज करें. इसमें मॉडल के तैयार होने की पुष्टि करने, डाउनलोड शुरू करने, और अनुवाद करने की प्रोसेस शामिल है. लागू करने से जुड़ी जानकारी के लिए, Speech Translation API को इंटिग्रेट करें देखें.
- माइक्रोफ़ोन या फ़ाइलों से लाइव ऑडियो प्रोसेस करें. साथ ही, रीयल-टाइम अपडेट के लिए Kotlin Flow का इस्तेमाल करके, इंटरमीडिएट और फ़ाइनल टेक्स्ट, दोनों नतीजे पाएं.
- ऑडियो का विश्लेषण और अनुवाद करने से जुड़े सभी टास्क, उपयोगकर्ता के डिवाइस पर ही पूरे किए जाते हैं. इससे उपयोगकर्ता की निजता बनी रहती है और ऑफ़लाइन मोड में भी सभी सुविधाएं काम करती हैं.
परिणामों के उदाहरण
| इनपुट ऑडियो | जिस भाषा का अनुवाद करना है | वह भाषा जिसमें अनुवाद करना है | आउटपुट टेक्स्ट |
|---|---|---|---|
| ऑडियो कॉन्टेंट: "नमस्ते, आज आपका क्या हाल है?" | अंग्रेज़ी (en-US) | स्पेनिश (es-ES) | "Hola, ¿cómo estás hoy?" |
| ऑडियो कॉन्टेंट: "こんにちは、はじめまして" | जैपनीज़ (ja-JP) | अंग्रेज़ी (en-US) | "नमस्ते, आपसे मिलकर अच्छा लगा" |
ज़रूरी शर्तें
Speech Translation API का इस्तेमाल करने के लिए, आपको ये ज़रूरी शर्तें पूरी करनी होंगी:
- आपके पास इस सुविधा के साथ काम करने वाला डिवाइस होना चाहिए.
- आपके डिवाइस पर, Google के Speech Recognition and Synthesis ऐप्लिकेशन (
com.google.android.tts) का नया बीटा वर्शन (versionCode 210665810या इसके बाद वाला वर्शन) होना चाहिए. - Gemini Nano V4 को डाउनलोड करने के लिए, आपके डिवाइस में कम से कम 4.0 जीबी स्टोरेज खाली होना चाहिए.
अपनी प्रोफ़ाइल बनाना शुरू करें
शुरू करने के लिए, अपने मॉड्यूल-लेवल की build.gradle.kts (या build.gradle) फ़ाइल में, ML Kit की स्पीच ट्रांसलेशन डिपेंडेंसी जोड़ें:
Kotlin
dependencies {
// ML Kit Base Infrastructure
implementation("com.google.mlkit:common:18.10.0")
// ML Kit GenAI Speech Translation SDK
implementation("com.google.mlkit:genai-speech-translation:1.0.0-alpha1")
}
ग्रूवी
dependencies {
// ML Kit Base Infrastructure
implementation 'com.google.mlkit:common:18.10.0'
// ML Kit GenAI Speech Translation SDK
implementation 'com.google.mlkit:genai-speech-translation:1.0.0-alpha1'
}
Speech Translation API को इंटिग्रेट करना
अपने ऐप्लिकेशन में Speech Translation SDK को इंटिग्रेट करने के लिए, यह तरीका अपनाएं:
SpeechTranslatorOptionsकॉन्फ़िगरेशन ऑब्जेक्ट बनाकर,SpeechTranslatorक्लाइंट को शुरू करें.- Kotlin Flow API का इस्तेमाल करके, सुविधा की उपलब्धता की पुष्टि करें और मॉडल के डाउनलोड मैनेज करें.
TranslationAudioडेटा पैकेट को स्ट्रीम करने और रीयल-टाइम में अनुवाद के नतीजे देखने के लिए,SpeechTranslatorRequestऑब्जेक्ट बनाएं. इनपुट ऑडियो, PCM 16-बिट, 16 किलोहर्ट्ज़, मोनो फ़ॉर्मैट में होना चाहिए.
// Initialize the client.
val options = SpeechTranslatorOptions.Builder(Locale.US, Locale.CHINESE).build()
val client = SpeechTranslation.getClient(options)
// Check and download the on-device model.
if (client.checkStatus() == FeatureStatus.DOWNLOADABLE) {
client.download().collect { status ->
println("Download progress: $status")
}
}
// Construct a streaming request with raw audio (PCM 16-bit, 16kHz, mono).
val audioFlow = flow {
emit(TranslationAudio(Locale.US, rawAudioBytes))
}
val request = SpeechTranslatorRequest.Builder(audioFlow).build()
// Start a session and collect translated responses.
client.startTranslation(request).collect { response ->
when (response) {
is SpeechTranslatorResponse.Text -> {
println("Translation (${response.locale}): ${response.translatedText}")
}
is SpeechTranslatorResponse.ErrorResponse -> {
println("Translation failed: ${response.e.message}")
}
is SpeechTranslatorResponse.CompletedResponse -> {
println("Session closed.")
}
}
}
// Close the client when done.
client.close()
इन डिवाइस पर पासकी का इस्तेमाल किया जा सकता है
Speech Translation API का इस्तेमाल करने के लिए, आपके डिवाइस के चिपसेट में बेहतर परफ़ॉर्मेंस वाला न्यूरल ऐक्सेलरेटर (टीपीयू/एनपीयू) इंटिग्रेट होना चाहिए. इस टेबल में, फ़ोन के कुछ ऐसे मुख्य मॉडल की सूची दी गई है जिन पर यह सुविधा काम करती है. हालांकि, यह पक्का करने के लिए कि आपके डिवाइस पर यह सुविधा काम करती है या नहीं, आपको अपने डिवाइस का चिपसेट देखना चाहिए.
| चिपसेट फ़ैमिली | चिपसेट आईडी | उदाहरण डिवाइस | ओएस का कम से कम वर्शन |
|---|---|---|---|
| Google Tensor | Google Tensor G5, G6+ |
|
Android 14 |
| Qualcomm Snapdragon | SM8650, SM8750, SM8850, SM8845, SM8975, SM8950, SM8735 |
|
Android 15 |
| MediaTek | Dimensity 9300, 9400+ |
|
Android 15 |
सेटअप से जुड़ी आम समस्याएं
ML Kit GenAI एपीआई, Gemini Nano को ऐक्सेस करने के लिए Android AICore ऐप्लिकेशन का इस्तेमाल करते हैं. जब किसी डिवाइस को सेट अप किया जाता है (इसमें रीसेट करना भी शामिल है) या AICore ऐप्लिकेशन को रीसेट किया जाता है (जैसे, डेटा मिटाना, अनइंस्टॉल करना और फिर से इंस्टॉल करना), तो हो सकता है कि AICore ऐप्लिकेशन को शुरू होने में ज़्यादा समय लगे. इसमें सर्वर से नए कॉन्फ़िगरेशन डाउनलोड करना भी शामिल है. इस वजह से, हो सकता है कि ML Kit के जेन एआई एपीआई उम्मीद के मुताबिक काम न करें. यहां सेट अप से जुड़ी गड़बड़ियों के कुछ सामान्य मैसेज दिए गए हैं. साथ ही, उन्हें ठीक करने का तरीका भी बताया गया है:
| गड़बड़ी के मैसेज का उदाहरण | समस्या को कैसे हल करें |
| AICore में गड़बड़ी हुई. गड़बड़ी का टाइप 4-CONNECTION_ERROR और गड़बड़ी का कोड 601-BINDING_FAILURE है: AICore सेवा को बाइंड नहीं किया जा सका. | ऐसा तब हो सकता है, जब डिवाइस सेटअप करने के तुरंत बाद, ML Kit GenAI एपीआई का इस्तेमाल करके ऐप्लिकेशन इंस्टॉल किया गया हो या ऐप्लिकेशन इंस्टॉल करने के बाद AICore को अनइंस्टॉल कर दिया गया हो. AICore ऐप्लिकेशन को अपडेट करने के बाद, अपने ऐप्लिकेशन को फिर से इंस्टॉल करें. इससे समस्या ठीक हो जाएगी. |
| AICore में गड़बड़ी हुई. गड़बड़ी का टाइप 3-PREPARATION_ERROR और गड़बड़ी का कोड 606-FEATURE_NOT_FOUND: ... सुविधा उपलब्ध नहीं है. |
ऐसा तब हो सकता है, जब AICore ने नए कॉन्फ़िगरेशन डाउनलोड न किए हों. जब डिवाइस इंटरनेट से कनेक्ट होता है, तो आम तौर पर इसे अपडेट होने में कुछ मिनट से लेकर कुछ घंटे लगते हैं. डिवाइस को रीस्टार्ट करने से, अपडेट तेज़ी से हो सकता है.
ध्यान दें कि अगर डिवाइस का बूटलोडर अनलॉक है, तो आपको यह गड़बड़ी भी दिखेगी. यह एपीआई, अनलॉक किए गए बूटलोडर वाले डिवाइसों पर काम नहीं करता. |
| AICore में गड़बड़ी हुई. गड़बड़ी का टाइप 1-DOWNLOAD_ERROR और गड़बड़ी का कोड 0-UNKNOWN: सुविधा ... काम नहीं कर रही है. गड़बड़ी का स्टेटस 0 और गड़बड़ी का कोड esz: UNAVAILABLE: होस्ट ... को रिज़ॉल्व नहीं किया जा सका | इंटरनेट कनेक्शन चालू रखें, कुछ मिनट इंतज़ार करें, और फिर से कोशिश करें. |