Skip to content

Latest commit

 

History

History
355 lines (195 loc) · 49.2 KB

File metadata and controls

355 lines (195 loc) · 49.2 KB

शुरुआती लोगों के लिए जेनरेटिव AI के लिए स्मॉल लैंग्वेज मॉडल का परिचय

जेनरेटिव AI कृत्रिम बुद्धिमत्ता का एक आकर्षक क्षेत्र है जो नई सामग्री बनाने में सक्षम सिस्टम बनाने पर ध्यान केंद्रित करता है। यह सामग्री टेक्स्ट और इमेज से लेकर संगीत और यहां तक कि पूरे वर्चुअल वातावरण तक हो सकती है। जेनरेटिव AI का सबसे रोमांचक अनुप्रयोगों में से एक भाषा मॉडल के क्षेत्र में है।

स्मॉल लैंग्वेज मॉडल क्या हैं?

एक स्मॉल लैंग्वेज मॉडल (SLM) बड़े भाषा मॉडल (LLM) का एक छोटा रूप है, जो LLM के कई वास्तुशिल्प सिद्धांतों और तकनीकों का उपयोग करता है, जबकि कंप्यूटेशनल पदचिह्न को काफी कम करता है।

SLMs भाषा मॉडलों का एक उपसमूह हैं जो मानव जैसे टेक्स्ट उत्पन्न करने के लिए डिज़ाइन किए गए हैं। अपने बड़े समकक्षों जैसे GPT-4 के विपरीत, SLMs अधिक कॉम्पैक्ट और कुशल होते हैं, जिससे वे उन अनुप्रयोगों के लिए आदर्श होते हैं जहां कंप्यूटेशनल संसाधन सीमित होते हैं। अपनी छोटी आकार के बावजूद, वे अभी भी विभिन्न कार्य कर सकते हैं। आमतौर पर, SLMs को LLMs को संपीड़ित या आसवन करके बनाया जाता है, जिसका उद्देश्य मूल मॉडल की कार्यक्षमता और भाषाई क्षमताओं का एक महत्वपूर्ण हिस्सा बनाए रखना होता है। मॉडल के आकार में यह कमी कुल जटिलता को कम करती है, जिससे SLMs मेमोरी उपयोग और कंप्यूटेशनल आवश्यकताओं दोनों के संदर्भ में अधिक कुशल होते हैं। इन अनुकूलनों के बावजूद, SLMs अभी भी कई प्राकृतिक भाषा प्रसंस्करण (NLP) कार्य कर सकते हैं:

  • टेक्स्ट जनरेशन: संगत और संदर्भानुसार उपयुक्त वाक्य या पैराग्राफ बनाना।
  • टेक्स्ट कंप्लीशन: दिए गए प्रॉम्प्ट के आधार पर वाक्य की भविष्यवाणी करना और पूरा करना।
  • अनुवाद: टेक्स्ट को एक भाषा से दूसरी भाषा में बदलना।
  • सारांश निर्माण: लंबे टेक्स्ट को संक्षिप्त, आसानी से समझने योग्य संक्षेप में समेटना।

हालांकि उनके बड़े समकक्षों की तुलना में प्रदर्शन या समझ की गहराई में कुछ समझौते हो सकते हैं।

स्मॉल लैंग्वेज मॉडल कैसे काम करते हैं?

SLMs विशाल मात्रा में टेक्स्ट डेटा पर प्रशिक्षित किए जाते हैं। प्रशिक्षण के दौरान, वे भाषा के पैटर्न और संरचनाओं को सीखते हैं, जिससे वे व्याकरणिक रूप से सही और संदर्भानुसार उपयुक्त टेक्स्ट उत्पन्न करने में सक्षम होते हैं। प्रशिक्षण प्रक्रिया में शामिल हैं:

  • डेटा संग्रह: विभिन्न स्रोतों से बड़े टेक्स्ट डेटासेट इकट्ठा करना।
  • पूर्वप्रसंस्करण: डेटा को साफ़ करना और उसे प्रशिक्षण के लिए उपयुक्त बनाना।
  • प्रशिक्षण: मशीन लर्निंग एल्गोरिदम का उपयोग करके मॉडल को टेक्स्ट समझने और उत्पन्न करने की शिक्षा देना।
  • फाइन-ट्यूनिंग: मॉडल के प्रदर्शन को विशिष्ट कार्यों पर सुधारना।

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

slm

सीखने के उद्देश्य

इस पाठ में, हम SLM का परिचय देंगे और इसे Microsoft Phi-3 के साथ जोड़कर टेक्स्ट कंटेंट, विज़न और MoE में विभिन्न परिदृश्यों को सीखेंगे।

इस पाठ के अंत तक, आप निम्नलिखित प्रश्नों के उत्तर देने में सक्षम होंगे:

  • SLM क्या है?
  • SLM और LLM में क्या अंतर है?
  • Microsoft Phi-3/3.5 परिवार क्या है?
  • Microsoft Phi-3/3.5 परिवार के साथ इनफेरेंस कैसे चलाएं?

तैयार हैं? चलिए शुरू करते हैं।

बड़े भाषा मॉडल (LLMs) और छोटे भाषा मॉडल (SLMs) के बीच अंतर

LLMs और SLMs दोनों संभाव्य मशीन लर्निंग के बुनियादी सिद्धांतों पर आधारित हैं, और अपने वास्तुशिल्प डिजाइन, प्रशिक्षण विधियों, डेटा जनरेशन प्रक्रियाओं, और मॉडल मूल्यांकन तकनीकों में समान दृष्टिकोण अपनाते हैं। हालाँकि, कुछ प्रमुख कारक इन दोनों प्रकार के मॉडलों को अलग करते हैं।

स्मॉल लैंग्वेज मॉडल के अनुप्रयोग

SLMs के कई अनुप्रयोग हैं, जिनमें शामिल हैं:

  • चैटबॉट्स: ग्राहक सहायता प्रदान करना और संवादात्मक तरीके से उपयोगकर्ताओं के साथ बातचीत करना।
  • कंटेंट क्रिएशन: लेखकों की सहायता करना, विचार उत्पन्न करना या पूरे लेख का ड्राफ्ट तैयार करना।
  • शिक्षा: छात्रों को लिखित कार्यों या नई भाषाएँ सीखने में सहायता प्रदान करना।
  • पहुँच: विकलांग व्यक्तियों के लिए उपकरण बनाना, जैसे टेक्स्ट-टू-स्पीच सिस्टम।

आकार

LLMs और SLMs के बीच एक प्रमुख अंतर मॉडल के आकार से संबंधित है। LLMs, जैसे ChatGPT (GPT-4), अनुमानित 1.76 ट्रिलियन पैरामीटर्स पर आधारित हो सकते हैं, जबकि ओपन-सोर्स SLMs जैसे Mistral 7B में काफी कम पैरामीटर्स होते हैं—लगभग 7 बिलियन। यह अंतर मुख्य रूप से मॉडल वास्तुशिल्प और प्रशिक्षण प्रक्रियाओं के बीच अंतर के कारण होता है। उदाहरण के लिए, ChatGPT एक एन्कोडर-डिकोडर फ्रेमवर्क में सेल्फ-अटेंशन तंत्र का उपयोग करता है, जबकि Mistral 7B डिकोडर-ओनली मॉडल के भीतर अधिक कुशल प्रशिक्षण सक्षम करने के लिए स्लाइडिंग विंडो अटेंशन का उपयोग करता है। इस वास्तुशिल्प भिन्नता का इन मॉडलों की जटिलता और प्रदर्शन पर गहरा प्रभाव पड़ता है।

समझ

SLMs आमतौर पर विशिष्ट डोमेन में प्रदर्शन के लिए अनुकूलित होते हैं, जिससे वे बहुत विशेषीकृत होते हैं लेकिन कई ज्ञान क्षेत्रों में व्यापक संदर्भात्मक समझ प्रदान करने में सीमित हो सकते हैं। इसके विपरीत, LLMs व्यापक स्तर पर मानव जैसी बुद्धिमत्ता का अनुकरण करने का लक्ष्य रखते हैं। विशाल, विविध डेटासेट पर प्रशिक्षित, LLMs विभिन्न डोमेन में अच्छा प्रदर्शन करने के लिए डिज़ाइन किए गए हैं, जिससे अधिक बहुमुखी प्रतिभा और अनुकूलनशीलता मिलती है। परिणामस्वरूप, LLMs प्राकृतिक भाषा प्रसंस्करण और प्रोग्रामिंग जैसे व्यापक श्रेणियों के डाउनस्ट्रीम कार्यों के लिए अधिक उपयुक्त होते हैं।

गणना

LLMs का प्रशिक्षण और तैनाती संसाधन-गहन प्रक्रियाएं हैं, जिनके लिए अक्सर बड़े पैमाने के GPU क्लस्टर जैसे महत्वपूर्ण कम्प्यूटेशनल इंफ्रास्ट्रक्चर की आवश्यकता होती है। उदाहरण के लिए, ChatGPT जैसे मॉडल को शून्य से प्रशिक्षित करने के लिए हज़ारों GPU की ज़रूरत होती है और यह लंबी अवधि तक चलता है। इसके विपरीत, SLMs, जिनके पैरामीटर कम होते हैं, कम्प्यूटेशनल संसाधनों के संदर्भ में अधिक सुलभ होते हैं। Mistral 7B जैसे मॉडल मध्यम GPU क्षमता वाले स्थानीय मशीनों पर प्रशिक्षित और चलाए जा सकते हैं, हालांकि प्रशिक्षण के लिए अभी भी कई GPUs पर कई घंटों की आवश्यकता होती है।

पूर्वाग्रह

पूर्वाग्रह LLMs में एक ज्ञात समस्या है, मुख्यतः प्रशिक्षण डेटा की प्रकृति के कारण। ये मॉडल अक्सर इंटरनेट से खुले रूप में उपलब्ध कच्चे डेटा पर निर्भर करते हैं, जो कुछ समूहों का कम या गलत प्रतिनिधित्व कर सकता है, गलत लेबलिंग पेश कर सकता है, या बोलचाल, भौगोलिक विविधताओं, और व्याकरणिक नियमों से प्रभावित भाषाई पूर्वाग्रह को प्रतिबिंबित कर सकता है। इसके अलावा, LLM वास्तुशिल्प की जटिलता अनजाने में पूर्वाग्रह को बढ़ा सकती है, जो सावधानीपूर्वक फाइन-ट्यूनिंग के बिना नजरअंदाज रह सकती है। दूसरी ओर, SLMs, जो अधिक सीमित, डोमेन-विशिष्ट डेटासेट पर प्रशिक्षित होते हैं, स्वाभाविक रूप से ऐसी पूर्वाग्रहों के प्रति कम संवेदनशील होते हैं, हालांकि वे पूरी तरह से मुक्त नहीं होते।

इन्फेरेंस

SLMs का छोटा आकार उन्हें इन्फेरेंस गति के संदर्भ में एक महत्वपूर्ण लाभ देता है, जिससे वे स्थानीय हार्डवेयर पर प्रभावी रूप से आउटपुट उत्पन्न कर सकते हैं बिना व्यापक पैरेलल प्रोसेसिंग की आवश्यकता के। इसके विपरीत, LLMs, अपने आकार और जटिलता के कारण, स्वीकार्य इन्फेरेंस समय प्राप्त करने के लिए अक्सर महत्वपूर्ण पैरेलल कम्प्यूटेशनल संसाधनों की मांग करते हैं। कई सहवर्ती उपयोगकों की उपस्थिति LLMs की प्रतिक्रिया समय को और धीमा कर देती है, विशेष रूप से बड़े पैमाने पर तैनाती पर।

संक्षेप में, जबकि LLMs और SLMs दोनों मशीन लर्निंग पर आधारित होते हैं, वे मॉडल के आकार, संसाधन आवश्यकताओं, संदर्भात्मक समझ, पूर्वाग्रह के प्रति संवेदनशीलता, और इन्फेरेंस गति में महत्वपूर्ण रूप से भिन्न होते हैं। ये अंतर उनके विभिन्न उपयोग मामलों के लिए उपयुक्तता को दर्शाते हैं, जहां LLMs अधिक बहुमुखी परन्तु संसाधन-गहन होते हैं, और SLMs कम कम्प्यूटेशनल मांग के साथ अधिक डोमेन-विशिष्ट दक्षता प्रदान करते हैं।

ध्यान दें: इस पाठ में, हम Microsoft Phi-3 / 3.5 का उपयोग करके SLM का परिचय देंगे।

Phi-3 / Phi-3.5 परिवार का परिचय

Phi-3 / 3.5 परिवार मुख्य रूप से टेक्स्ट, विज़न, और एजेंट (MoE) अनुप्रयोग परिदृश्यों को लक्षित करता है:

Phi-3 / 3.5 इन्स्ट्रक्ट

मुख्य रूप से टेक्स्ट जनरेशन, चैट कंप्लीशन, और कंटेंट जानकारी निष्कर्षण आदि के लिए।

Phi-3-मिनी

3.8B भाषा मॉडल Microsoft Foundry, Hugging Face, और Ollama पर उपलब्ध है। Phi-3 मॉडल समकक्ष और बड़े आकार के भाषा मॉडलों की तुलना में प्रमुख बेंचमार्क पर काफी बेहतर प्रदर्शन करते हैं (नीचे बेंचमार्क नंबर देखें, उच्च नंबर बेहतर हैं)। Phi-3-मिनी अपने आकार से दोगुने मॉडल से बेहतर प्रदर्शन करता है, जबकि Phi-3-स्मॉल और Phi-3-मीडियम बड़े मॉडलों सहित GPT-3.5 से बेहतर प्रदर्शन करते हैं।

Phi-3-स्मॉल और मीडियम

केवल 7B पैरामीटर्स के साथ, Phi-3-स्मॉल विभिन्न भाषा, तर्क, कोडिंग, और गणित बेंचमार्क पर GPT-3.5T को हराता है।

14B पैरामीटर्स वाले Phi-3-मीडियम ने इस रुझान को जारी रखा है और Gemini 1.0 Pro से बेहतर प्रदर्शन करता है।

Phi-3.5-मिनी

इसे Phi-3-मिनी का अपग्रेड माना जा सकता है। जबकि पैरामीटर्स अपरिवर्तित रहते हैं, यह कई भाषाओं (20+ भाषाओं का समर्थन: अरबी, चीनी, चेक, डेनिश, डच, अंग्रेजी, फिनिश, फ्रेंच, जर्मन, हिब्रू, हंगेरियन, इतालवी, जापानी, कोरियाई, नॉर्वेजियन, पोलिश, पुर्तगाली, रूसी, स्पेनिश, स्वीडिश, थाई, टर्किश, यूक्रेनी) को समर्थन देने की क्षमता बढ़ाता है और लंबी संदर्भ अवधि के लिए मजबूत समर्थन जोड़ता है।

3.8B पैरामीटर्स वाले Phi-3.5-मिनी समान आकार के भाषा मॉडलों से बेहतर प्रदर्शन करता है और दोगुने आकार के मॉडलों के तुल्य है।

Phi-3 / 3.5 विज़न

Phi-3/3.5 के इन्स्ट्रक्ट मॉडल को Phi की समझने की क्षमता के रूप में माना जा सकता है, और विज़न वह है जो Phi को दुनिया को देखने की क्षमता देता है।

Phi-3-विजन

केवल 4.2B पैरामीटर्स वाले Phi-3-विजन इस रुझान को जारी रखते हुए, सामान्य दृश्य तर्क कार्यों, OCR, और टेबल तथा आरेख समझ कार्यों में Claude-3 Haiku और Gemini 1.0 Pro जैसे बड़े मॉडलों को पीछे छोड़ता है।

Phi-3.5-विजन

Phi-3.5-विजन भी Phi-3-विजन का एक अपग्रेड है, जिसमें कई छवियों का समर्थन जोड़ा गया है। इसे विज़न में सुधार माना जा सकता है, अब आप न केवल तस्वीरें देख सकते हैं, बल्कि वीडियो भी।

Phi-3.5-विजन OCR, टेबल और चार्ट समझ कार्यों में Claude-3.5 सोननेट और Gemini 1.5 फ्लैश जैसे बड़े मॉडलों से बेहतर प्रदर्शन करता है और सामान्य दृश्य ज्ञान तर्क कार्यों में बराबरी करता है। मल्टी-फ्रेम इनपुट का समर्थन करता है, यानी कई इनपुट छवियों पर तर्क कर सकता है।

Phi-3.5-MoE

मिश्र विशेषज्ञ (Mixture of Experts, MoE) मॉडल को कम कंप्यूटेशन के साथ प्रीट्रेन करने में सक्षम बनाता है, जिसका अर्थ है कि आप समान कंप्यूटेशन बजट के साथ मॉडल या डेटासेट का आकार नाटकीय रूप से बढ़ा सकते हैं। विशेष रूप से, एक MoE मॉडल प्रीट्रेनिंग के दौरान अपने घने (dense) समकक्ष की तुलना में अधिक तेजी से समान गुणवत्ता प्राप्त करना चाहिए।

Phi-3.5-MoE में 16x3.8B विशेषज्ञ मॉड्यूल शामिल हैं। केवल 6.6B सक्रिय पैरामीटर्स के साथ Phi-3.5-MoE बड़े मॉडलों के समान तर्क, भाषा समझ और गणित स्तर पर पहुंचता है।

हम विभिन्न परिदृश्यों के आधार पर Phi-3/3.5 परिवार मॉडल का उपयोग कर सकते हैं। LLM के विपरीत, आप Phi-3/3.5-मिनी या Phi-3/3.5-विजन को एज डिवाइसेस पर तैनात कर सकते हैं।

Phi-3/3.5 परिवार मॉडलों का उपयोग कैसे करें

हम चाहेंगे कि Phi-3/3.5 को विभिन्न परिदृश्यों में उपयोग किया जाए। अगले भाग में, हम विभिन्न परिदृश्यों के आधार पर Phi-3/3.5 का उपयोग करेंगे।

phi3

क्लाउड APIs के माध्यम से इन्फेरेंस

Microsoft Foundry मॉडल्स

ध्यान दें: GitHub मॉडल्स जुलाई 2026 के अंत में बंद हो रहे हैं। Microsoft Foundry मॉडल्स उनका सीधा विकल्प है।

Microsoft Foundry मॉडल्स सबसे सीधा तरीका है। आप Foundry मॉडल कैटलॉग के माध्यम से तेजी से Phi-3/3.5-इन्स्ट्रक्ट मॉडल तक पहुँच सकते हैं। Azure AI Inference SDK / OpenAI SDK के साथ संयोजन में, आप कोड के माध्यम से API तक पहुँच कर Phi-3/3.5-इन्स्ट्रक्ट कॉल पूरा कर सकते हैं। आप Playground में विभिन्न प्रभावों का परीक्षण भी कर सकते हैं।

  • डेमो: चीनी परिदृश्यों में Phi-3-मिनी और Phi-3.5-मिनी के प्रभावों की तुलना

phi3

phi35

Microsoft Foundry

या यदि हम विज़न और MoE मॉडल का उपयोग करना चाहते हैं, तो आप Microsoft Foundry का उपयोग करके कॉल पूरा कर सकते हैं। यदि आप इच्छुक हैं, तो आप Phi-3 कुकबुक पढ़ सकते हैं और सीख सकते हैं कि Microsoft Foundry के माध्यम से Phi-3/3.5 इन्स्ट्रक्ट, विज़न, MoE को कैसे कॉल करें इस लिंक पर क्लिक करें

NVIDIA NIM

क्लाउड-आधारित Microsoft Foundry मॉडल कैटलॉग के अलावा, आप संबंधित कॉल पूरा करने के लिए NVIDIA NIM का भी उपयोग कर सकते हैं। आप NVIDIA NIM पर जाकर Phi-3/3.5 परिवार के API कॉल पूरा कर सकते हैं। NVIDIA NIM (NVIDIA Inference Microservices) त्वरित इन्फेरेंस माइक्रोसर्विसेज का एक सेट है, जो डेवलपर्स को विभिन्न वातावरणों में, जिनमें क्लाउड, डेटा सेंटर, और वर्कस्टेशन शामिल हैं, AI मॉडल प्रभावी ढंग से तैनात करने में मदद करता है।

यहाँ NVIDIA NIM की कुछ प्रमुख विशेषताएं हैं:

  • तैनाती की आसान प्रक्रिया: NIM एक कमांड के साथ AI मॉडल की तैनाती की अनुमति देता है, जिससे मौजूदा वर्कफ़्लोज़ में इसे एकीकृत करना सरल हो जाता है।

  • अनुकूलित प्रदर्शन: यह NVIDIA के पूर्व- अनुकूलित इनफरेंस इंजन जैसे TensorRT और TensorRT-LLM का उपयोग करता है, ताकि कम विलंबता और उच्च थ्रूपुट सुनिश्चित किया जा सके।

  • विस्तारणशीलता: NIM Kubernetes पर ऑटोस्केलिंग का समर्थन करता है, जो इसे बदलते हुए वर्कलोड को प्रभावी ढंग से संभालने में सक्षम बनाता है।

  • सुरक्षा और नियंत्रण: संगठन अपने डेटा और अनुप्रयोगों पर नियंत्रण बनाए रख सकते हैं, अपनी स्वयं की प्रबंधित इंफ्रास्ट्रक्चर पर NIM माइक्रोसर्विसेज को होस्ट करके।

  • मानक APIs: NIM उद्योग-मानक APIs प्रदान करता है, जिससे चैटबॉट, AI सहायक और अन्य AI अनुप्रयोगों को बनाना और एकीकृत करना आसान हो जाता है।

NIM NVIDIA AI Enterprise का हिस्सा है, जिसका उद्देश्य AI मॉडल की तैनाती और संचालन को सरल बनाना है, यह सुनिश्चित करते हुए कि वे NVIDIA GPU पर कुशलतापूर्वक चलें।

Phi-3/3.5 को लोकल रूप से चलाना

Phi-3, या किसी भी भाषा मॉडल जैसे GPT-3 से संबंधित इनफरेंस का मतलब है उस इनपुट के आधार पर प्रतिक्रियाएँ या भविष्यवाणियाँ उत्पन्न करने की प्रक्रिया, जो इसे प्राप्त होती है। जब आप Phi-3 को कोई प्रॉम्प्ट या प्रश्न देते हैं, तो यह अपने प्रशिक्षित न्यूरल नेटवर्क का उपयोग करके सबसे संभावित और संबंधित प्रतिक्रिया अनुमानित करता है, जो उस डेटा में पैटर्न और संबंधों का विश्लेषण करता है जिस पर इसे प्रशिक्षित किया गया था।

Hugging Face ट्रांसफॉर्मर Hugging Face Transformers एक शक्तिशाली लाइब्रेरी है, जो प्राकृतिक भाषा संसाधन (NLP) और अन्य मशीन लर्निंग कार्यों के लिए डिज़ाइन की गई है। इसके बारे में कुछ मुख्य बिंदु निम्नलिखित हैं:

  1. प्रशिक्षित मॉडल: यह हजारों pretrained मॉडल प्रदान करता है, जिन्हें विभिन्न कार्यों जैसे टेक्स्ट वर्गीकरण, नामित इकाई मान्यता, प्रश्नोत्तर, सारांश, अनुवाद और टेक्स्ट जनरेशन के लिए उपयोग किया जा सकता है।

  2. फ्रेमवर्क इंटरऑपरेबिलिटी: यह लाइब्रेरी कई डीप लर्निंग फ्रेमवर्क का समर्थन करती है, जिनमें PyTorch, TensorFlow, और JAX शामिल हैं। इससे आप एक फ्रेमवर्क में मॉडल प्रशिक्षित कर सकते हैं और दूसरे में उपयोग कर सकते हैं।

  3. मल्टीमोडल क्षमताएँ: NLP के अलावा, Hugging Face Transformers कंप्यूटर विज़न (जैसे, छवि वर्गीकरण, ऑब्जेक्ट डिटेक्शन) और ऑडियो प्रोसेसिंग (जैसे, भाषण पहचान, ऑडियो वर्गीकरण) कार्यों का भी समर्थन करता है।

  4. उपयोग में सहजता: यह लाइब्रेरी मॉडल डाउनलोड और फाइन-ट्यून करने के लिए APIs और उपकरण प्रदान करती है, जो शुरुआती और विशेषज्ञ दोनों के लिए सुलभ हैं।

  5. समुदाय और संसाधन: Hugging Face के पास एक सक्रिय समुदाय और व्यापक दस्तावेज़ीकरण, ट्यूटोरियल, और गाइड्स हैं, जो उपयोगकर्ताओं को शुरुआत करने और लाइब्रेरी का अधिकतम उपयोग करने में मदद करते हैं। अधिकृत दस्तावेज़ीकरण या उनका GitHub रिपोजिटरी देख सकते हैं।

यह सबसे आमतौर पर उपयोग की जाने वाली विधि है, लेकिन इसे GPU एक्सेलेरेशन की आवश्यकता होती है। आखिरकार, विज़न और MoE जैसी परिस्थितियाँ बहुत सारे गणना की मांग करती हैं, जो CPU पर बिना क्वांटाइज़ किए बहुत धीमी होंगी।

Ollama Ollama एक ऐसा प्लेटफ़ॉर्म है जो आपके मशीन पर स्थानीय रूप से बड़े भाषा मॉडल (LLMs) चलाना आसान बनाता है। यह Llama 3.1, Phi 3, Mistral, और Gemma 2 जैसे विभिन्न मॉडल का समर्थन करता है। यह प्लेटफ़ॉर्म मॉडल वज़न, कॉन्फ़िगरेशन, और डेटा को एक पैकेज में बंडल करता है, जिससे उपयोगकर्ता अपने मॉडल को कस्टमाइज़ और बनाने में आसानी होती है। Ollama macOS, Linux, और Windows के लिए उपलब्ध है। यह एक शानदार उपकरण है यदि आप क्लाउड सेवाओं पर निर्भर हुए बिना LLMs के साथ प्रयोग या तैनाती करना चाहते हैं। Ollama सबसे सीधा तरीका है, आपको केवल निम्नलिखित कमांड को निष्पादित करना होगा।

ollama run phi3.5

Foundry Local

Foundry Local Microsoft का ऑफ़लाइन, ऑन-डिवाइस रनटाइम है, जो Phi जैसे मॉडल को पूरी तरह से आपके अपने हार्डवेयर पर चलाने के लिए है - इसमें कोई Azure सदस्यता, API कुंजी, या नेटवर्क कनेक्शन आवश्यक नहीं। यह स्वचालित रूप से सबसे अच्छा उपलब्ध निष्पादन प्रदाता (NPU, GPU, या CPU) चुनता है और एक OpenAI-संगत एंडपॉइंट प्रदान करता है, जिससे मौजूदा openai/Azure AI Inference SDK कोड को न्यूनतम परिवर्तन के साथ इसका उपयोग किया जा सके। शुरुआत के लिए Foundry Local दस्तावेज़ देखें।

winget install Microsoft.FoundryLocal
foundry model run phi-3.5-mini

या सीधे Python में SDK का उपयोग करें:

pip install foundry-local-sdk
from foundry_local import FoundryLocalManager

manager = FoundryLocalManager("phi-3.5-mini")
print(manager.endpoint, manager.api_key)

GenAI के लिए ONNX Runtime

ONNX Runtime एक क्रॉस-प्लेटफ़ॉर्म इनफरेंस और प्रशिक्षण मशीन-लर्निंग त्वरण सुविधा है। GenAI के लिए ONNX Runtime एक शक्तिशाली उपकरण है जो आपको विभिन्न प्लेटफ़ॉर्म पर जेनरेटिव AI मॉडल कुशलतापूर्वक चलाने में मदद करता है।

ONNX Runtime क्या है?

ONNX Runtime एक ओपन-सोर्स प्रोजेक्ट है जो मशीन लर्निंग मॉडल के उच्च प्रदर्शन इनफरेंस को सक्षम बनाता है। यह Open Neural Network Exchange (ONNX) फॉर्मेट में मॉडल का समर्थन करता है, जो मशीन लर्निंग मॉडल का प्रतिनिधित्व करने का एक मानक है। ONNX Runtime इनफरेंस तेज़ ग्राहक अनुभव और कम लागत सक्षम कर सकता है, और PyTorch, TensorFlow/Keras जैसे डीप लर्निंग फ्रेमवर्क तथा scikit-learn, LightGBM, XGBoost जैसे क्लासिकल मशीन लर्निंग लाइब्रेरीज़ के मॉडल का समर्थन करता है। ONNX Runtime विभिन्न हार्डवेयर, ड्राइवर, और ऑपरेटिंग सिस्टम के साथ संगत है, और हार्डवेयर त्वरण का लाभ उठाते हुए ग्राफ़ ऑप्टिमाइजेशन और ट्रांसफॉर्म का उपयोग करके सर्वोत्तम प्रदर्शन प्रदान करता है।

जेनरेटिव AI क्या है?

जेनरेटिव AI उन AI सिस्टम को संदर्भित करता है जो नए कंटेंट जैसे कि टेक्स्ट, छवियाँ, या संगीत उत्पन्न कर सकते हैं, जिन्हें उन्होंने प्रशिक्षण के दौरान देखे डेटा के आधार पर सीखा है। उदाहरण के लिए भाषा मॉडल जैसे GPT-3 और इमेज जनरेशन मॉडल जैसे Stable Diffusion। GenAI के लिए ONNX Runtime लाइब्रेरी ONNX मॉडल के लिए जेनरेटिव AI लूप प्रदान करती है, जिसमें ONNX Runtime के साथ इनफरेंस, लॉजिट्स प्रोसेसिंग, सर्च और सैंपलिंग, और KV कैश प्रबंधन शामिल हैं।

ONNX Runtime GENAI के लिए

ONNX Runtime GENAI की क्षमताओं का विस्तार करता है ताकि यह जेनरेटिव AI मॉडल का समर्थन कर सके। यहाँ कुछ मुख्य विशेषताएँ हैं:

  • व्यापक प्लेटफ़ॉर्म समर्थन: यह विभिन्न प्लेटफ़ॉर्म पर काम करता है, जिनमें Windows, Linux, macOS, Android, और iOS शामिल हैं।
  • मॉडल समर्थन: यह लोकप्रिय जेनरेटिव AI मॉडलों का समर्थन करता है, जैसे LLaMA, GPT-Neo, BLOOM, और अधिक।
  • प्रदर्शन अनुकूलन: इसमें NVIDIA GPUs, AMD GPUs, और अन्य हार्डवेयर त्वरण के लिए अनुकूलन शामिल हैं।
  • उपयोग में सरलता: यह एप्लिकेशन में आसान एकीकरण के लिए API प्रदान करता है, जिससे न्यूनतम कोड के साथ आप टेक्स्ट, छवियाँ, और अन्य कंटेंट जेनरेट कर सकते हैं।
  • उपयोगकर्ता एक उच्च स्तरीय generate() विधि को कॉल कर सकते हैं, या मॉडल के प्रत्येक चक्र को एक लूप में चला सकते हैं, एक समय में एक टोकन जेनरेट करते हुए, और वैकल्पिक रूप से लूप के अंदर जेनरेशन पैरामीटर अपडेट कर सकते हैं।
  • ONNX Runtime में greedy/beam सर्च और TopP, TopK सैंपलिंग के लिए समर्थन है ताकि टोकन अनुक्रम उत्पन्न किए जा सकें और पुनरावृत्ति दंड जैसे अंतर्निहित लॉजिट्स प्रोसेसिंग हो। आप आसानी से कस्टम स्कोरिंग भी जोड़ सकते हैं।

आरंभ करना

ONNX Runtime GENAI के साथ आरंभ करने के लिए, आप निम्नलिखित कदम उठा सकते हैं:

ONNX Runtime इंस्टॉल करें:

pip install onnxruntime

जेनरेटिव AI एक्सटेंशन इंस्टॉल करें:

pip install onnxruntime-genai

मॉडल चलाएँ: Python में एक सरल उदाहरण यहाँ है:

import onnxruntime_genai as og

model = og.Model('path_to_your_model.onnx')

tokenizer = og.Tokenizer(model)

input_text = "Hello, how are you?"

input_tokens = tokenizer.encode(input_text)

output_tokens = model.generate(input_tokens)

output_text = tokenizer.decode(output_tokens)

print(output_text) 

डेमो: ONNX Runtime GenAI का उपयोग करके Phi-3.5-Vision कॉल करना

import onnxruntime_genai as og

model_path = './Your Phi-3.5-vision-instruct ONNX Path'

img_path = './Your Image Path'

model = og.Model(model_path)

processor = model.create_multimodal_processor()

tokenizer_stream = processor.create_stream()

text = "Your Prompt"

prompt = "<|user|>\n"

prompt += "<|image_1|>\n"

prompt += f"{text}<|end|>\n"

prompt += "<|assistant|>\n"

image = og.Images.open(img_path)

inputs = processor(prompt, images=image)

params = og.GeneratorParams(model)

params.set_inputs(inputs)

params.set_search_options(max_length=3072)

generator = og.Generator(model, params)

while not generator.is_done():

    generator.compute_logits()
    
    generator.generate_next_token()

    new_token = generator.get_next_tokens()[0]
    
    output = tokenizer_stream.decode(new_token)
    
    print(tokenizer_stream.decode(new_token), end='', flush=True)

अन्य

ONNX Runtime, Ollama, और Foundry Local संदर्भ विधियों के अलावा, हम विभिन्न निर्माताओं द्वारा प्रदान की गई मॉडल संदर्भ विधियों पर आधारित मात्रात्मक मॉडल के संदर्भ को भी पूरा कर सकते हैं। जैसे Apple MLX फ्रेमवर्क Apple Metal के साथ, Qualcomm QNN NPU के साथ, Intel OpenVINO CPU/GPU के साथ, आदि। आप Phi-3 कुकबुक से अधिक सामग्री भी प्राप्त कर सकते हैं।

अधिक

हमने Phi-3/3.5 परिवार की बुनियादी बातें सीख ली हैं, लेकिन SLM के बारे में अधिक जानने के लिए हमें और ज्ञान चाहिए। आप उत्तर Phi-3 कुकबुक में पा सकते हैं। यदि आप और अधिक सीखना चाहते हैं, तो कृपया Phi-3 कुकबुक पर जाएँ।


अस्वीकरण: इस दस्तावेज़ का अनुवाद AI अनुवाद सेवा Co-op Translator का उपयोग करके किया गया है। जबकि हम सटीकता के लिए प्रयास करते हैं, कृपया ध्यान दें कि स्वचालित अनुवादों में त्रुटियाँ या अशुद्धियाँ हो सकती हैं। मूल दस्तावेज़ अपनी मूल भाषा में ही प्रामाणिक स्रोत माना जाना चाहिए। महत्वपूर्ण जानकारी के लिए, पेशेवर मानव अनुवाद की सिफारिश की जाती है। इस अनुवाद के उपयोग से उत्पन्न किसी भी गलतफहमी या गलत व्याख्या के लिए हम उत्तरदायी नहीं हैं।