खास जानकारी देने की सुविधा के साथ एलएलएम की तुलना करना

पब्लिश करने की तारीख: 30 अक्टूबर, 2024

लार्ज लैंग्वेज मॉडल (एलएलएम) की मदद से सुविधाएं बनाना, सामान्य सॉफ़्टवेयर इंजीनियरिंग से काफ़ी अलग है. डेवलपर को प्रॉम्प्ट इंजीनियरिंग के बारे में जानना होगा, ताकि वे नतीजों को तय करने के लिए, इनपुट को पहले से प्रोसेस करने और प्रोसेस करने के बाद के नतीजों को मैनेज कर सकें.

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

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

इस दस्तावेज़ में, हम खास जानकारी का इस्तेमाल करके यह दिखाते हैं कि अलग-अलग मॉडल की तुलना कैसे की जा सकती है. साथ ही, बोनस के तौर पर, Gemma से Gemma 2 में क्वालिटी में हुए सुधार को दिखाते हैं.

तुलना करने और डेटा को तैयार करने के लिए मॉडल चुनना

हमने खास जानकारी देने के लिए, तीन मॉडल की क्षमताओं का आकलन किया. हमने Google के दो ऐसे ओपन मॉडल के नतीजों की तुलना की है जो क्लाइंट-साइड पर काम कर सकते हैं. ये मॉडल, Gemma और Gemma 2 हैं. दोनों मॉडल के पैरामीटर साइज़ 200 करोड़ हैं. इसके उलट, हमने क्लाउड पर काम करने वाले बड़े और बेहतर मॉडल का भी आकलन किया: Gemini 1.5 Flash.

हमने बीबीसी के 2,225 लेखों के डेटासेट का इस्तेमाल किया. इसमें कारोबार, मनोरंजन, राजनीति, खेल, और टेक्नोलॉजी जैसे विषयों के लेख शामिल हैं. साथ ही, हमने चुने गए हर मॉडल का इस्तेमाल करके, हर लेख की खास जानकारी जनरेट की. सभी मॉडल के लिए एक ही प्रॉम्प्ट का इस्तेमाल किया गया था:

लेख की खास जानकारी एक पैराग्राफ़ में दें.

हमने ओरिजनल लेखों और जनरेट की गई खास जानकारी को डेटाबेस में सेव किया, ताकि उन्हें हर चरण में आसानी से ऐक्सेस किया जा सके.

खास जानकारी का विश्लेषण करने और उसे स्कोर करने के लिए कोई जज चुनना

खास जानकारी की क्वालिटी का विश्लेषण करने के लिए, हमने Gemini 1.5 Flash का इस्तेमाल किया. इससे, Gemma 2B और Gemma 2 2B से जनरेट की गई खास जानकारी का आकलन किया गया. हमारा खास तरीका अलाइनमेंट पर आधारित है, जो DeepEval की समराइज़ेशन मेट्रिक का हिस्सा है.

अलाइनमेंट एक ऐसी मेट्रिक है जिससे यह पता चलता है कि जवाब में शामिल स्टेटमेंट, उस ओरिजनल कॉन्टेंट में कितनी बार काम करते हैं जिस पर वह जवाब आधारित होता है.

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

जवाबों से स्टेटमेंट निकालें

हमने Gemini 1.5 Flash को लंबे टेक्स्ट को अलग-अलग स्टेटमेंट में बांटने के लिए कहा. उदाहरण के लिए:

एवर्टन के डिफ़ेंडर डेविड वीर ने यूरोपियन फ़ुटबॉल के बारे में बात करने से इनकार कर दिया है. भले ही, उनकी टीम ने लिवरपूल को हराकर प्रीमियरशिप में दूसरा स्थान हासिल किया है.

Gemini 1.5 Flash ने इस वाक्य को इन स्टेटमेंट में बांटा है:

  • "डेविड वीर, एवर्टन के लिए डिफ़ेंडर के तौर पर खेलते हैं."
  • "फ़िलहाल, एवर्टन प्रीमियरशिप में दूसरे स्थान पर है."
  • "हाल ही के मैच में, Everton ने Liverpool को हराया."
  • "डेविड वीर ने यूरोपियन फ़ुटबॉल में एवर्टन के खेलने के बारे में कम से कम चर्चा की है."

स्टेटमेंट की पुष्टि करना

इसके बाद, हमने Gemini 1.5 Flash को अलग-अलग स्टेटमेंट के मुकाबले, मूल वाक्य का विश्लेषण करने के लिए कहा. मॉडल ने हर स्टेटमेंट की वैधता को इन कैटगरी में बांटा है:

  • हां: ओरिजनल टेक्स्ट में इस बात की पुष्टि की गई है.
  • नहीं. यह स्टेटमेंट मूल टेक्स्ट से मेल नहीं खाता है.
  • Idk. इस बात की पुष्टि नहीं की जा सकती कि स्टेटमेंट सही है या नहीं या यह ओरिजनल टेक्स्ट के मुताबिक है या नहीं.

नतीजों का विश्लेषण

इस प्रोसेस से दो मेट्रिक मिलती हैं, जिनका इस्तेमाल मॉडल की तुलना करने के लिए किया जा सकता है:

  • अलाइनमेंट: मॉडल ने कितनी बार ऐसी खास जानकारी जनरेट की जिसमें ओरिजनल टेक्स्ट से जुड़े स्टेटमेंट शामिल थे.
  • रिचनेस: मॉडल से जनरेट की गई खास जानकारी में मौजूद स्टेटमेंट की औसत संख्या.
मॉडल की बेहतर जानकारी और अलाइनमेंट की तुलना करने वाला चार्ट.
पहली इमेज. Gemma 2B, Gemma 2 2B, और Gemini 1.5 Flash की तुलना की गई है. इन सभी का स्कोर अच्छा है.

अलाइनमेंट

हमने अलाइनमेंट का हिसाब लगाने के लिए, उन खास जानकारी की संख्या गिनी जिनमें कम से कम एक स्टेटमेंट "नहीं" के तौर पर मार्क किया गया था. इसके बाद, इस संख्या को खास जानकारी की कुल संख्या से भाग दिया.

Gemini 1.5 Flash मॉडल का अलाइनमेंट स्कोर सबसे ज़्यादा है, जो 92% से ज़्यादा है. इसका मतलब है कि यह तथ्यों से जुड़े रहने में बहुत अच्छा है और चीज़ों को साफ़ तौर पर बताने से बचाता है.

Gemma 2 2B का स्कोर 78.64% है. इससे पता चलता है कि यह सटीक है. वहीं, Gemma 2B के पिछले वर्शन का अलाइनमेंट स्कोर कम है. इसका मतलब है कि इसमें मूल टेक्स्ट से मेल न खाने वाली जानकारी शामिल होने की संभावना ज़्यादा होती है.

Richness

हमने हर खास जानकारी के लिए, मॉडल से जनरेट किए गए स्टेटमेंट की औसत संख्या का हिसाब लगाकर, मॉडल की बेहतरी का हिसाब लगाया है.

Gemma 2 2B का रिचनेस स्कोर 9.1 है. इससे पता चलता है कि इसकी खास जानकारी में ज़्यादा जानकारी और मुख्य पॉइंट शामिल हैं. Gemini 1.5 Flash मॉडल का स्कोर भी ज़्यादा है. यह 8.4 से ज़्यादा है. Gemma 2B के रिचनेस स्कोर कम थे. इससे पता चलता है कि हो सकता है कि यह ओरिजनल टेक्स्ट से ज़्यादा ज़रूरी जानकारी कैप्चर न कर पाए.

नतीजा

हमने पाया है कि क्लाइंट-साइड पर काम करने वाले छोटे मॉडल, जैसे कि Gemma 2 2B, अच्छी क्वालिटी का आउटपुट जनरेट कर सकते हैं. Gemini 1.5 Flash जैसे क्लाउड-आधारित मॉडल, ओरिजनल लेख से मेल खाने वाली खास जानकारी देने में माहिर होते हैं. साथ ही, काफ़ी जानकारी देते हैं, ऐप्लिकेशन की परफ़ॉर्मेंस, निजता, सुरक्षा, और अन्य सवालों के साथ-साथ इन फ़र्क़ को भी ध्यान में रखना चाहिए. आपको क्लाइंट-साइड एआई बनाने के बारे में पूछे जाने वाले अन्य सवाल पूछने चाहिए.

Gemma मॉडल फ़ैमिली की सुविधाओं में साफ़ तौर पर बदलाव हुआ है. Gemma 2 2B, Gemma 2B की तुलना में ज़्यादा बेहतर और अलाइन की गई खास जानकारी जनरेट कर सकता है.

इस्तेमाल के उदाहरणों का आकलन करना

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

टेक्स्ट लिखने, टेक्स्ट को फिर से लिखने या रिट्रीवल ऑगमेंटेड जनरेशन (आरएजी) जैसे अन्य इस्तेमाल के उदाहरणों में, एक ही मेट्रिक के लिए अलग-अलग नतीजे मिल सकते हैं. इसके अलावा, आकलन के लिए अन्य मेट्रिक का इस्तेमाल किया जाना चाहिए.

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

क्या आपने मॉडल का आकलन करने के लिए, एलएलएम को जज के तौर पर लागू किया है? अपनी खोज के नतीजे @ChromiumDev पर ट्वीट करें या LinkedIn पर डेवलपर के लिए Chrome के साथ शेयर करें.