प्रॉडक्ट से जुड़ी खबरें

ऑटोमेटेड प्रॉम्प्ट ऑप्टिमाइज़ेशन की मदद से, ML Kit के GenAI Prompt API की क्वालिटी को कैसे बेहतर बनाया जा सकता है

पढ़ने में लगने वाला समय: 3 मिनट
4 लेखक
Chetan Tekur, Chao Zhao, Paul Zhou, Caren Chang

ऑटोमेटेड प्रॉम्प्ट ऑप्टिमाइज़ेशन (एपीओ)

हम आपको यह बताते हुए बेहद खुशी हो रही है कि हम ML Kit Prompt API के इस्तेमाल के उदाहरणों को प्रोडक्शन में लाने में आपकी मदद करने के लिए, Vertex AI पर उपयोगकर्ता के डिवाइस पर मॉडल को टारगेट करने वाले, ऑटोमेटेड प्रॉम्प्ट ऑप्टिमाइज़ेशन (एपीओ) की सुविधा लॉन्च कर रहे हैं. ऑटोमेटेड प्रॉम्प्ट ऑप्टिमाइज़ेशन एक ऐसा टूल है जो आपके इस्तेमाल के उदाहरणों के लिए, सबसे सही प्रॉम्प्ट अपने-आप ढूंढने में मदद करता है.

उपयोगकर्ता के डिवाइस पर एआई का युग अब कोई सपना नहीं रहा, बल्कि यह हकीकत बन चुका है. Gemini Nano v3 को रिलीज़ करने के साथ ही, हम उपयोगकर्ताओं को भाषा समझने और मल्टीमॉडल की बेहतरीन सुविधाएं उपलब्ध करा रहे हैं. Gemini Nano के मॉडल, Android ईकोसिस्टम के कई डिवाइसों पर काम करते हैं. हालांकि, अगली पीढ़ी के इंटेलिजेंट ऐप्लिकेशन बनाने वाले डेवलपर के लिए, किसी दमदार मॉडल का ऐक्सेस होना सिर्फ़ पहला कदम है. असली चुनौती कस्टमाइज़ेशन में है: मोबाइल हार्डवेयर की सीमाओं को तोड़े बिना, किसी फ़ाउंडेशन मॉडल को अपने इस्तेमाल के उदाहरण के लिए, विशेषज्ञ-स्तर की परफ़ॉर्मेंस के हिसाब से कैसे तैयार किया जाए?

सर्वर-साइड पर, बड़े एलएलएम ज़्यादा सक्षम होते हैं. साथ ही, उन्हें डोमेन के हिसाब से कम अडैप्टेशन की ज़रूरत होती है. ज़रूरत पड़ने पर, LoRA (लो-रैंक अडैप्टेशन) फ़ाइन-ट्यूनिंग जैसे ज़्यादा ऐडवांस विकल्प भी इस्तेमाल किए जा सकते हैं. हालांकि, Android AICore का यूनीक आर्किटेक्चर, शेयर किए गए और कम मेमोरी इस्तेमाल करने वाले सिस्टम मॉडल को प्राथमिकता देता है. इसका मतलब है कि हर ऐप्लिकेशन के लिए कस्टम LoRA अडैप्टर को डिप्लॉय करने पर, शेयर की गई इन सिस्टम सर्विस में समस्याएं आती हैं.

हालांकि, एक और तरीका है जो उतना ही असरदार हो सकता है. Vertex AI पर ऑटोमेटेड प्रॉम्प्ट ऑप्टिमाइज़ेशन (एपीओ) का इस्तेमाल करके, डेवलपर फ़ाइन-ट्यूनिंग के करीब क्वालिटी हासिल कर सकते हैं. साथ ही, नेटिव Android एक्ज़ीक्यूशन एनवायरमेंट में आसानी से काम कर सकते हैं. एपीओ, बेहतर सिस्टम निर्देश देने पर फ़ोकस करता है. इससे डेवलपर, मॉडल के व्यवहार को ज़्यादा मज़बूत और बढ़ाए जा सकने की योग्यता के साथ बना सकते हैं. यह सुविधा, फ़ाइन-ट्यूनिंग के पारंपरिक तरीकों के मुकाबले ज़्यादा बेहतर है.

ध्यान दें: Gemini Nano V3, काफ़ी लोकप्रिय Gemma 3N मॉडल का बेहतर वर्शन है. ओपन सोर्स Gemma 3N मॉडल पर प्रॉम्प्ट को ऑप्टिमाइज़ करने के लिए किए गए बदलाव, Gemini Nano V3 पर भी लागू होंगे. इस्तेमाल किए जा सकने वाले डिवाइसों पर, ML Kit GenAI API, nano-v3 मॉडल का इस्तेमाल करते हैं. इससे Android डेवलपर को बेहतर क्वालिटी मिलती है

APO block diagram.jpg

एपीओ, प्रॉम्प्ट को स्टैटिक टेक्स्ट के तौर पर नहीं, बल्कि प्रोग्राम किए जा सकने वाले प्लैटफ़ॉर्म के तौर पर देखता है. इसे ऑप्टिमाइज़ किया जा सकता है. यह सर्वर-साइड मॉडल (जैसे, Gemini Pro और Flash) का इस्तेमाल करके, प्रॉम्प्ट के सुझाव देता है. साथ ही, अलग-अलग वर्शन का आकलन करता है और आपके टास्क के लिए सबसे सही वर्शन ढूंढता है. इस प्रोसेस में, परफ़ॉर्मेंस को बेहतर बनाने के लिए तीन खास तकनीकी तरीकों का इस्तेमाल किया जाता है:

  1. अपने-आप होने वाला गड़बड़ी का विश्लेषण: APO, ट्रेनिंग डेटा से गड़बड़ी के पैटर्न का विश्लेषण करता है. इससे, शुरुआती प्रॉम्प्ट में मौजूद कमियों का अपने-आप पता चलता है.
  2. सिमेंटिक इंस्ट्रक्शन डिस्टिलेशन: यह ट्रेनिंग के बड़े उदाहरणों का विश्लेषण करके, किसी टास्क के "असल मकसद" को समझता है. इसके बाद, ऐसे निर्देश बनाता है जो असल डेटा डिस्ट्रिब्यूशन को ज़्यादा सटीक तरीके से दिखाते हैं.
  3. पैरलल कैंडिडेट टेस्टिंग: एपीओ, एक बार में एक आइडिया टेस्ट करने के बजाय, कई प्रॉम्प्ट कैंडिडेट जनरेट करता है और उन्हें पैरलल में टेस्ट करता है. इससे क्वालिटी के लिए ग्लोबल मैक्सिमम की पहचान की जा सकती है.

एपीओ, फ़ाइन ट्यूनिंग की क्वालिटी के करीब क्यों पहुंच सकता है

यह एक आम गलतफ़हमी है कि फ़ाइन-ट्यूनिंग से हमेशा प्रॉम्प्टिंग की तुलना में बेहतर क्वालिटी मिलती है. Gemini Nano v3 जैसे आधुनिक फ़ाउंडेशन मॉडल के लिए, प्रॉम्प्ट इंजीनियरिंग अपने-आप में काफ़ी असरदार हो सकती है:

  • सामान्य क्षमताओं को बनाए रखना: फ़ाइन-ट्यूनिंग ( पीईएफ़टी/एलओआरए) की वजह से, मॉडल के वेट को डेटा के किसी खास डिस्ट्रिब्यूशन पर ओवर-इंडेक्स करना पड़ता है. इससे अक्सर "कैटास्ट्रोफ़िक फ़ॉरगेटिंग" की समस्या होती है. इसमें मॉडल आपके सिंटैक्स को बेहतर तरीके से समझने लगता है, लेकिन सामान्य लॉजिक और सुरक्षा के मामले में खराब परफ़ॉर्म करने लगता है. एपीओ, वेट में कोई बदलाव नहीं करता. इससे बेस मॉडल की क्षमताएं बनी रहती हैं.
  • निर्देशों का पालन करना और रणनीति बनाना: Gemini Nano v3 को मुश्किल सिस्टम निर्देशों का पालन करने के लिए, अच्छी तरह से ट्रेनिंग दी गई है. एपीओ, निर्देश के सटीक स्ट्रक्चर को ढूंढकर इसका फ़ायदा उठाता है. इससे मॉडल की छिपी हुई क्षमताओं का पता चलता है. इससे अक्सर ऐसी रणनीतियों का पता चलता है जिन्हें ढूंढना इंसानी इंजीनियरों के लिए मुश्किल हो सकता है. 

इस तरीके की पुष्टि करने के लिए, हमने अलग-अलग प्रोडक्शन वर्कलोड में APO का आकलन किया. पुष्टि करने के लिए किए गए टेस्ट से पता चला है कि अलग-अलग इस्तेमाल के मामलों में, 5 से 8% तक की सटीकता में लगातार सुधार हुआ है.उपयोगकर्ता के डिवाइस पर डिप्लॉय की गई कई सुविधाओं में, APO ने क्वालिटी में काफ़ी सुधार किया है.

Use Caseटास्क का टाइपटास्क की जानकारीमेट्रिकएपीओ में सुधार
विषय के हिसाब से कैटगरी तय करनाटेक्स्ट क्लासिफ़िकेशनकिसी समाचार रिपोर्ट को फ़ाइनेंस, खेल-कूद वगैरह जैसे विषयों में बांटनासटीकता+5%
इरादे के हिसाब से क्वेरी को कैटगरी में बांटनाटेक्स्ट क्लासिफ़िकेशनग्राहक सेवा से जुड़ी क्वेरी को इंटेंट के हिसाब से कैटगरी में बांटनासटीकता+8.0%
वेब पेज का अनुवादटेक्स्ट का अनुवादकिसी वेबपेज का अंग्रेज़ी से स्थानीय भाषा में अनुवाद करनाBLEU+8.57%

डेवलपर के लिए आसान और एंड-टू-एंड वर्कफ़्लो

आम तौर पर यह माना जाता है कि फ़ाइन-ट्यूनिंग से, प्रॉम्प्टिंग की तुलना में हमेशा बेहतर क्वालिटी मिलती है. हालांकि, यह एक गलत धारणा है. Gemini Nano v3 जैसे आधुनिक फ़ाउंडेशन मॉडल के लिए, प्रॉम्प्ट इंजीनियरिंग अपने-आप में काफ़ी असरदार हो सकती है:

  • सामान्य क्षमताओं को बनाए रखना: फ़ाइन-ट्यूनिंग ( पीईएफ़टी/एलओआरए) की वजह से, मॉडल के वेट को डेटा के किसी खास डिस्ट्रिब्यूशन पर ओवर-इंडेक्स करना पड़ता है. इससे अक्सर "कैटास्ट्रोफ़िक फ़ॉरगेटिंग" की समस्या होती है. इसमें मॉडल आपके सिंटैक्स को बेहतर तरीके से समझने लगता है, लेकिन सामान्य लॉजिक और सुरक्षा के मामले में खराब परफ़ॉर्म करने लगता है. एपीओ, वेट में कोई बदलाव नहीं करता. इससे बेस मॉडल की क्षमताएं बनी रहती हैं.
  • निर्देशों का पालन करना और रणनीति बनाना: Gemini Nano v3 को मुश्किल सिस्टम निर्देशों का पालन करने के लिए, अच्छी तरह से ट्रेनिंग दी गई है. एपीओ, निर्देश के सटीक स्ट्रक्चर को ढूंढकर इसका फ़ायदा उठाता है. इससे मॉडल की छिपी हुई क्षमताओं का पता चलता है. इससे अक्सर ऐसी रणनीतियों का पता चलता है जिन्हें ढूंढना इंसानी इंजीनियरों के लिए मुश्किल हो सकता है. 

इस तरीके की पुष्टि करने के लिए, हमने अलग-अलग प्रोडक्शन वर्कलोड में APO का आकलन किया. पुष्टि करने के लिए किए गए टेस्ट से पता चला है कि अलग-अलग इस्तेमाल के मामलों में, 5 से 8% तक की सटीकता में लगातार सुधार हुआ है.उपयोगकर्ता के डिवाइस पर डिप्लॉय की गई कई सुविधाओं में, APO ने क्वालिटी में काफ़ी सुधार किया है.

नतीजा

ऑटोमेटेड प्रॉम्प्ट ऑप्टिमाइज़ेशन (एपीओ) की रिलीज़, उपयोगकर्ता के डिवाइस पर जनरेटिव एआई के लिए एक अहम पड़ाव है. हम फ़ाउंडेशन मॉडल और एक्सपर्ट-लेवल परफ़ॉर्मेंस के बीच के अंतर को कम कर रहे हैं. साथ ही, डेवलपर को ज़्यादा बेहतर मोबाइल ऐप्लिकेशन बनाने के लिए टूल उपलब्ध करा रहे हैं. चाहे आपको ज़ीरो-शॉट ऑप्टिमाइज़ेशन का इस्तेमाल शुरू करना हो या डेटा पर आधारित रिफ़ाइनमेंट की मदद से प्रोडक्शन को स्केल करना हो, अब उपयोगकर्ता के डिवाइस पर मौजूद अच्छी क्वालिटी की इंटेलिजेंस का इस्तेमाल करना आसान हो गया है.ML Kit के Prompt API और Vertex AI के ऑटोमेटेड प्रॉम्प्ट ऑप्टिमाइज़ेशन की मदद से, उपयोगकर्ता के डिवाइस पर इस्तेमाल के उदाहरणों को आज ही प्रोडक्शन के लिए लॉन्च करें. 

इसी विषय से जुड़े कुछ लिंक: 

लेखक:
पढ़ना जारी रखें