इंटरप्रेटेबिलिटी टूल की मदद से, मॉडल के व्यवहार का विश्लेषण करना

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

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

लोकल मशीन, Colab या Google Cloud में LIT इंस्टॉल किया जा सकता है. LIT का इस्तेमाल शुरू करने के लिए, Colab में अपना मॉडल और उससे जुड़े डेटासेट (उदाहरण के लिए, सुरक्षा जांच का डेटासेट) इंपोर्ट करें. LIT आपके मॉडल का इस्तेमाल करके, डेटासेट के लिए आउटपुट का एक सेट जनरेट करेगा. साथ ही, मॉडल के व्यवहार को एक्सप्लोर करने के लिए आपको यूज़र इंटरफ़ेस देगा.

LIT की मदद से Gemma मॉडल का विश्लेषण करें

कोडलैब शुरू करें Google Colab शुरू करें

ऐनिमेशन ऑफ़ लर्निंग इंटरप्रेटेबिलिटी टूल (एलआईटी) के यूज़र इंटरफ़ेस का ऐनिमेशन

इस इमेज में, LIT का यूज़र इंटरफ़ेस दिखाया गया है. सबसे ऊपर मौजूद डेटापॉइंट एडिटर की मदद से, उपयोगकर्ता अपने प्रॉम्प्ट में बदलाव कर सकते हैं. सबसे नीचे, LM Salience मॉड्यूल की मदद से काम के नतीजे देख सकते हैं.

जटिल प्रॉम्प्ट में गड़बड़ियों की पहचान करना

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

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

Analyze a menu item in a restaurant.


## For example:


Taste-likes: I've a sweet-tooth
Taste-dislikes: Don't like onions or garlic
Suggestion: Onion soup
Analysis: it has cooked onions in it, which you don't like.
Recommendation: You have to try it.


Taste-likes: I've a sweet-tooth
Taste-dislikes: Don't like onions or garlic
Suggestion: Baguette maison au levain
Analysis: Home-made leaven bread in France is usually great
Recommendation: Likely good.


Taste-likes: I've a sweet-tooth
Taste-dislikes: Don't like onions or garlic
Suggestion: Macaron in France
Analysis: Sweet with many kinds of flavours
Recommendation: You have to try it.


## Now analyse one more example:


Taste-likes: {{users-food-like-preferences}}
Taste-dislikes: {{users-food-dislike-preferences}}
Suggestion: {{menu-item-to-analyse}}
Analysis:

क्या आपको इस प्रॉम्प्ट में कोई समस्या दिखा? LIT की मदद से, LM Salience मॉड्यूल की मदद से प्रॉम्प्ट की जांच की जा सकती है.

डीबग करने के लिए, क्रम के विकल्प का इस्तेमाल करें

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

चलिए, प्रॉम्प्ट-टेंप्लेट वैरिएबल के लिए इनपुट के नए उदाहरण का इस्तेमाल करते हुए शुरुआत करते हैं:

{{users-food-like-preferences}} = Cheese
{{users-food-dislike-preferences}} = Can't eat eggs
{{menu-item-to-analyse}} = Quiche Lorraine

ऐसा करने के बाद, एक हैरान करने वाला मॉडल पूरा देखा जा सकता है:

Taste-likes: Cheese
Taste-dislikes: Can't eat eggs
Suggestion: Quiche Lorraine
Analysis: A savoury tart with cheese and eggs
Recommendation: You might not like it, but it's worth trying.

मॉडल आपको कुछ ऐसा खाने का सुझाव क्यों दे रही है जिसके बारे में आपने साफ़ तौर पर कहा कि आप नहीं खा सकते?

सिलसिलेवार विज्ञापन से मूल समस्या को हाइलाइट करने में मदद मिल सकती है, जो हमारे कुछ उदाहरणों में बताया गया है. पहले उदाहरण में, विश्लेषण वाले सेक्शन में 'सोच-विचार करने की रीज़निंग', आखिरी सुझाव से मेल नहीं खाती. "इसमें पके हुए प्याज़ हैं, जो आपको पसंद नहीं हैं" के विश्लेषण के साथ "आपको इसे आज़माना चाहिए" का सुझाव दिया गया है.

प्रॉम्प्ट सीक्वेंस का विश्लेषण दिखा रहा LIT यूज़र इंटरफ़ेस

यह शुरुआती प्रॉम्प्ट में एक गड़बड़ी को हाइलाइट करता है: शुरुआती कुछ शॉट के उदाहरण में, सुझाव (You have to try it!) की गलती से कॉपी हो गई थी. आपको प्रॉम्प्ट में, बैंगनी रंग के हाइलाइट की मदद से अपनी खासियत की क्वालिटी दिखेगी. शुरुआत के कुछ शॉट के उदाहरण में, सबसे ज़्यादा दिखती है. खास तौर पर, Taste-likes, Analysis, और Recommendation से जुड़ी लाइनों पर. इससे पता चलता है कि मॉडल अपने आखिरी बार गलत सुझाव देने के लिए, इन लाइनों का सबसे ज़्यादा इस्तेमाल कर रहा है.

इस उदाहरण में यह भी बताया गया है कि शुरुआती प्रोटोटाइपिंग में ऐसे जोखिम के बारे में बताया जा सकता है जिनके बारे में आपको पहले से नहीं सोचना चाहिए. साथ ही, भाषा मॉडल में गड़बड़ी होने की संभावना का मतलब है कि आपको गड़बड़ियों के लिए खुद ही कुछ डिज़ाइन करना होगा. इस बारे में ज़्यादा जानकारी, People + AI Guidebook में एआई की मदद से डिज़ाइन करने के बारे में है.

मॉडल के व्यवहार को बेहतर बनाने के लिए, परिकल्पनाओं की जांच करना

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

आइए, इस आइडिया को इस्तेमाल करके प्रॉम्प्ट को और बेहतर बनाते हैं. LIT के डेटापॉइंट एडिटर का इस्तेमाल करके, हमारे प्रॉम्प्ट में सबसे ऊपर, जनरेशन के लिए सिद्धांतों वाला सेक्शन जोड़ें. इसके लिए, यह तरीका अपनाएं:

Analyze a menu item in a restaurant.

* The analysis should be brief and to the point.
* It should provide a clear statement of suitability for someone with
  specific dietary restrictions.
* It should reflect the person's tastes

## For example:

Taste-likes: I've a sweet-tooth
Taste-dislikes: Don't like onions or garlic
Suggestion: Onion soup
Analysis: it has cooked onions in it, which you don't like.
Recommendation: Avoid.

इस अपडेट के बाद, इस उदाहरण को फिर से चलाया जा सकता है और इससे बहुत अलग आउटपुट मिल सकता है:

Taste-likes: Cheese
Taste-dislikes: Can't eat eggs
Suggestion: Quiche Lorraine
Analysis: This dish contains eggs, which you can't eat.
Recommendation: Not suitable for you.

इसके बाद, प्रॉम्प्ट के दिखने की फिर से जांच की जा सकती है, ताकि यह समझने में मदद मिल सके कि ऐसा क्यों हो रहा है:

प्रॉम्प्ट के हिसाब से समय का विश्लेषण दिखाने वाला LIT यूज़र इंटरफ़ेस

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

मॉडल की जांच और एक्सप्लोरेशन में गैर-तकनीकी टीमों को शामिल करना

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

खास जानकारी

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

डेवलपर संसाधन