Gemini API की मदद से बेहतर बनाना

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

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

शॉर्ट वीडियो को बेहतर बनाने की सुविधा कैसे काम करती है

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

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

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

अपना डेटासेट तैयार करना

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

फ़ॉर्मैट

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

उदाहरण के लिए, अगर आपके डेटासेट के उदाहरणों में "question:" और a "context:", प्रोडक्शन ट्रैफ़िक को भी फ़ॉर्मैट किया जाना चाहिए, ताकि "question:" और "context:", उसी क्रम में हों जैसा डेटासेट में दिखता है उदाहरण. अगर कॉन्टेक्स्ट को हटा दिया जाता है, तो मॉडल, पैटर्न को नहीं पहचान पाएगा, भले ही सटीक सवाल डेटासेट के किसी उदाहरण में दिया गया हो.

दूसरे उदाहरण के तौर पर, यहां ऐसे ऐप्लिकेशन के लिए Python ट्रेनिंग का डेटा दिया गया है जो क्रम में अगली संख्या जनरेट करता है:

training_data = [
  {"text_input": "1", "output": "2"},
  {"text_input": "3", "output": "4"},
  {"text_input": "-3", "output": "-2"},
  {"text_input": "twenty two", "output": "twenty three"},
  {"text_input": "two hundred", "output": "two hundred one"},
  {"text_input": "ninety nine", "output": "one hundred"},
  {"text_input": "8", "output": "9"},
  {"text_input": "-98", "output": "-97"},
  {"text_input": "1,000", "output": "1,001"},
  {"text_input": "10,100,000", "output": "10,100,001"},
  {"text_input": "thirteen", "output": "fourteen"},
  {"text_input": "eighty", "output": "eighty one"},
  {"text_input": "one", "output": "two"},
  {"text_input": "three", "output": "four"},
  {"text_input": "seven", "output": "eight"},
]

अपने डेटासेट में हर उदाहरण के लिए प्रॉम्प्ट या प्रीएंबल जोड़ने से भी मदद मिल सकती है ट्यून किए गए मॉडल की परफ़ॉर्मेंस को बेहतर बनाना. ध्यान दें, अगर आपके डेटासेट में कोई प्रॉम्प्ट या प्रीऐबल शामिल है, तो अनुमान लगाने के समय, उसे ट्यून किए गए मॉडल के प्रॉम्प्ट में भी शामिल किया जाना चाहिए.

सीमाएं

ध्यान दें: Gemini 1.5 Flash के लिए डेटासेट को बेहतर बनाने की सुविधा में ये सीमाएं हैं:

  • हर उदाहरण के लिए, इनपुट का ज़्यादा से ज़्यादा साइज़ 40,000 वर्ण हो सकता है.
  • हर उदाहरण के लिए, आउटपुट साइज़ ज़्यादा से ज़्यादा 5,000 वर्ण हो सकता है.

ट्रेनिंग के लिए डेटा का साइज़

आप कम से कम 20 उदाहरणों के साथ किसी मॉडल को बेहतर बना सकते हैं. अतिरिक्त डेटा आम तौर पर जवाबों की क्वालिटी को बेहतर बनाता है. आपको 100 के बीच लक्षित करना चाहिए और 500 उदाहरण देखें. नीचे दी गई टेबल में अलग-अलग सामान्य कामों के लिए, टेक्स्ट मॉडल को बेहतर बनाने के लिए, डेटासेट साइज़ के सुझाव दिए गए हैं:

टास्क डेटासेट में उदाहरणों की संख्या
कैटगरी 100+
खास जानकारी 100-500+
दस्तावेज़ खोजें 100+

ट्यूनिंग डेटासेट अपलोड करना

डेटा को एपीआई का इस्तेमाल करके या Google में अपलोड की गई फ़ाइलों के ज़रिए इनलाइन पास किया जाता है AI Studio.

क्लाइंट लाइब्रेरी का इस्तेमाल करने के लिए, createTunedModel कॉल में डेटा फ़ाइल दें. फ़ाइल का साइज़ 4 एमबी से ज़्यादा नहीं होना चाहिए. ज़्यादा जानकारी के लिए, Python की मदद से बेहतर ट्यूनिंग वाले क्विकस्टार्ट 'प्रॉडक्ट एक्सप्लोर करें' में जाकर Reader Revenue Manager चुनें.

cURL का इस्तेमाल करके REST API को कॉल करने के लिए, training_data आर्ग्युमेंट में JSON फ़ॉर्मैट में ट्रेनिंग के उदाहरण दें. ज़्यादा जानकारी के लिए, cURL की मदद से क्विकस्टार्ट ट्यून करना 'प्रॉडक्ट एक्सप्लोर करें' में जाकर Reader Revenue Manager चुनें.

बेहतर ट्यूनिंग की सेटिंग

ट्यूनिंग जॉब बनाते समय, इन बेहतर सेटिंग को तय किया जा सकता है:

  • Epoch: पूरे ट्रेनिंग सेट के लिए एक पूरा ट्रेनिंग पास, जैसे कि हर एक को उदाहरण को एक बार प्रोसेस कर दिया गया है.
  • बैच का साइज़: एक ट्रेनिंग इटरेशन में इस्तेमाल किए गए उदाहरणों का सेट. कॉन्टेंट बनाने बैच साइज़ से बैच में उदाहरणों की संख्या तय होती है.
  • लर्निंग रेट: एक फ़्लोटिंग-पॉइंट नंबर, जो एल्गोरिदम को यह बताता है कि का इस्तेमाल हर इटरेशन पर मॉडल पैरामीटर को अडजस्ट करने के लिए किया जाता है. उदाहरण के लिए, लर्निंग रेट 0.3 होने पर, वज़न और पक्षपात को तीन गुना ज़्यादा अडजस्ट किया जा सकता है सीखने की दर 0.1 से भी ज़्यादा बेहतर तरीके से काम करती है. सीखने-सिखाने की ज़्यादा और कम दर से उन्हें खास तौर पर ध्यान में रखकर, कॉन्टेंट बनाने की सुविधा मिलती है. साथ ही, उन्हें आपके इस्तेमाल के उदाहरण के आधार पर अडजस्ट किया जाना चाहिए.
  • लर्निंग रेट मल्टीप्लायर: रेट मल्टीप्लायर, मॉडल के ओरिजनल लर्निंग रेट. वैल्यू 1 होने पर, मॉडल की मूल लर्निंग रेट का इस्तेमाल किया जाता है. एक से ज़्यादा वैल्यू देने पर, सीखने की दर और वैल्यू एक के बीच बढ़ जाती है और 0 सीखने की दर कम हो जाती है.

नीचे दी गई टेबल में कॉन्फ़िगरेशन को बेहतर बनाने के लिए सुझाए गए कॉन्फ़िगरेशन दिए गए हैं फ़ाउंडेशन मॉडल:

हाइपर पैरामीटर डिफ़ॉल्ट वैल्यू सुझाए गए बदलाव
युग (एपक) 5

अगर 5 epoch से पहले इसकी वैल्यू में गिरावट शुरू होती है, तो कम वैल्यू का इस्तेमाल करें.

अगर नुकसान की वैल्यू एक जैसी है और अनुमानित नहीं है, तो ज़्यादा वैल्यू इस्तेमाल करें.

बैच का साइज़ 4
सीखने की दर 0.001 छोटे डेटासेट के लिए, कम वैल्यू का इस्तेमाल करें.

लॉस कर्व दिखाता है कि मॉडल का अनुमान, आदर्श से कितना भटका सुझाव दिए गए हैं. आम तौर पर, आपको रोकना है इसके ठीक पहले, कर्व के सबसे निचले पॉइंट पर ट्रेनिंग करें. उदाहरण के लिए, नीचे दिए गए ग्राफ़ में लॉस कर्व, एपिक 4 से 6 के आस-पास प्लैटफ़ॉर्म पर दिख रहा है. इसका मतलब है कि Epoch पैरामीटर को 4 पर सेट किया जा सकता है और फिर भी आपको वही परफ़ॉर्मेंस मिल सकती है.

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

ट्यूनिंग जॉब की स्थिति देखें

Google AI Studio में, मेरी लाइब्रेरी टैब में जाकर या Gemini API में ट्यून किए गए मॉडल की metadata प्रॉपर्टी का इस्तेमाल करके, ट्यूनिंग की स्थिति देखी जा सकती है.

गड़बड़ियां ठीक करना

इस सेक्शन में, ट्यून किया गया मॉडल बनाते समय होने वाली गड़बड़ियों को हल करने के बारे में सलाह दी गई है.

पुष्टि करना

एपीआई और क्लाइंट लाइब्रेरी का इस्तेमाल करके ट्यून करने के लिए, उपयोगकर्ता की पुष्टि करना ज़रूरी है. सिर्फ़ एपीआई पासकोड काफ़ी नहीं है. अगर आपको 'PermissionDenied: 403 Request had insufficient authentication scopes' गड़बड़ी दिखती है, तो आपको उपयोगकर्ता खाता सेट अप करना होगा पुष्टि करने के लिए.

Python के लिए OAuth क्रेडेंशियल कॉन्फ़िगर करने के लिए, यह तरीका अपनाएं OAuth सेटअप ट्यूटोरियल.

रद्द किए गए मॉडल

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

ट्यून किए गए मॉडल की सीमाएं

ध्यान दें: ट्यून किए गए मॉडल की सीमाएं नीचे दी गई हैं:

  • ट्यून किए गए Gemini 1.5 Flash मॉडल के इनपुट की सीमा, 40,000 वर्ण है.
  • JSON मोड, ट्यून किए गए मॉडल के साथ काम नहीं करता.
  • सिर्फ़ टेक्स्ट इनपुट का इस्तेमाल किया जा सकता है.

आगे क्या करना है

इन ट्यूटोरियल को देखें: