1 पॉइंट द्वारा GN⁺ 2024-02-25 | 1 टिप्पणियां | WhatsApp पर शेयर करें

डेटाबेस query optimization के तरीके

  • डेटाबेस queries को तेज़ बनाने के तरीकों की व्याख्या।

SQL में GPT मॉडल लागू करना

  • GPT मॉडल को SQL में लागू करने के सिद्धांत और वास्तविक implementation process के बारे में।
  • GPT मॉडल एक ऐसा function है जो input text string लेता है और strings तथा numbers की array लौटाता है।
  • यह function deterministic है, और एक ही input पर हमेशा वही output लौटाता है।

सिद्धांत

  • GPT मॉडल के आंतरिक काम करने के तरीके का संक्षिप्त विवरण।
  • तकनीकी दृष्टिकोण से generative large language model क्या है, इसकी व्याख्या।
  • function का return value tuples की एक array है, जो prompt को आगे बढ़ाने वाले शब्दों और उनकी probabilities को दर्शाती है।

मानों का अर्थ

  • function द्वारा लौटाया गया मान tuples की एक array है, जिसमें शब्द और वह संख्या शामिल होती है जो दर्शाती है कि वह शब्द prompt को आगे बढ़ाने की कितनी संभावना रखता है।

टेक्स्ट जनरेशन के विभिन्न तरीके

  • large language models का उपयोग text applications में किया जाता है, और वे मॉडल द्वारा सुझाए गए शब्दों को चुनकर prompt में जोड़ने के तरीके से काम करते हैं।
  • यह process ऐसा text उत्पन्न करता है जिसमें मानव भाषा का grammar, syntax, intelligence और reasoning शामिल होते हैं।

Generative Pre-trained Transformer का अर्थ

  • "Generative" का मतलब है text generate करना, और "Transformer" यह दर्शाता है कि इसमें एक खास प्रकार का neural network इस्तेमाल होता है।
  • "Pre-trained" यह दिखाता है कि text को आगे बढ़ाने की मॉडल की क्षमता को पहले किसी विशेष कार्य के लिए pre-training stage माना जाता था, लेकिन पर्याप्त बड़े models अतिरिक्त training के बिना भी मानव भाषा के निर्देशों का पालन कर सकते हैं।

जनरेशन

  • GPT2 का उपयोग करके prompt से text generate करने की process का विवरण।
  • text को tokens की सूची में बदलकर algorithm चलाया जाता है और candidate tokens की probabilities की गणना की जाती है।
  • फिर अगला token चुना जाता है, उसे token सूची में जोड़ा जाता है, और पर्याप्त शब्द बनने तक यह प्रक्रिया दोहराई जाती है।

tokenizer

  • text को neural network में देने से पहले numbers की सूची में बदलने की process।
  • GPT2 tokenizer को लागू करने के लिए Byte pair encoding algorithm के एक variant का उपयोग करता है।

embedding

  • क्योंकि tokens मानव भाषा के हिस्सों का प्रतिनिधित्व करते हैं, इसलिए text completion के लिए tokens के बीच संबंधों को encode करना ज़रूरी होता है।
  • GPT2 हर token को 768-dimensional vector का उपयोग करके embed करता है।

attention mechanism

  • Transformer architecture के केंद्र में मौजूद self-attention mechanism की व्याख्या।
  • यह हर token के vector को एक-दूसरे को प्रभावित करने देता है, ताकि properties अंतिम vector तक पहुँच सकें।

feedforward

  • deep neural network में किया जाने वाला चरण, जिसमें input को कई layers के माध्यम से process किया जाता है।
  • हर layer learned parameters का उपयोग करके input को transform करती है।

blocks

  • पिछले चरणों में समझाई गई process कई layers (blocks) में दोहराई जाती है।
  • हर block का output अगले block के input के रूप में उपयोग किया जाता है।

GN⁺ की राय

  • यह लेख database experts और software engineers के लिए बेहद उपयोगी है, और GPT मॉडल को SQL में लागू करने की जटिल प्रक्रिया को समझने में मदद कर सकता है।
  • GPT मॉडल के बुनियादी सिद्धांत और implementation method समझाकर यह पाठकों को AI language models के काम करने के तरीके पर insight देता है।
  • लेख तकनीकी है, लेकिन AI और database technology के मेल का एक दिलचस्प उदाहरण भी देता है, जिससे इस क्षेत्र के नवीनतम रुझानों को समझने में मदद मिलती है।

1 टिप्पणियां

 
GN⁺ 2024-02-25
Hacker News राय
  • यह बेहद सुंदर काम है। लेखक SQLite का उपयोग करके इसी दिशा में खोजबीन कर रहे थे और कहा कि neural network जोड़ने तक वे अभी नहीं पहुँचे थे। makemore lecture series से प्रेरित होकर, लगभग 1 घंटे बाद उन्होंने neural network का उपयोग शुरू किया, और लेखक भी लगभग उसी स्तर तक पहुँचे। इसे relational model में विभाजित करना वास्तव में बहुत अच्छा अभ्यास बन जाता है।
  • डेमो अच्छा है, लेकिन लेख में causal masking की व्याख्या भ्रमित करने वाली है। causal masking इसलिए होता है ताकि model training के दौरान भविष्य के tokens को "झाँक" न सके, और GPT जैसी संरचना में inference के दौरान autoregressive पक्ष को लागू करने के लिए भी यह मौजूद रहता है। inference के दौरान वैसे भी केवल आख़िरी token का उपयोग होता है, इसलिए यह token पूरे input sequence पर ध्यान देगा। इसलिए यह token निश्चित रूप से सिर्फ़ आख़िरी token की embedding से तय नहीं होता।
  • पूछा गया कि क्या यह GPT driver loop का सटीक निरूपण है। कोड string को token की सूची में बदलता है, algorithm चलाकर tokens की probabilities लौटाता है, candidates की सूची में से अगला token चुनता है, उसे token सूची में जोड़ता है, फिर यह तय करने की प्रक्रिया दोहराता है कि generation रोकनी है या नहीं। अंत में token सूची को फिर string में बदलकर लौटाया जाता है। यह Shlemiel the painter के algorithm को लागू करने वाली state machine से बहुत मिलता-जुलता लगता है, और generation कार्य की अंतर्निहित computational cost पर सवाल उठाता है।
  • आधुनिक machine learning को Turing completeness की आवश्यकता नहीं है, लेकिन लोग AGI की संभावना पर विचार कर रहे हैं। अगर Turing completeness ज़रूरी नहीं है, तो यह काफ़ी दिलचस्प होगा।
  • संबंधित लिंक: "NumPy में बना 60-line GPT" - फ़रवरी 2023 (146 टिप्पणियाँ)
  • यह बहुत पसंद आया। एक साल पहले जो किसी तरह के जादू जैसा लगता था, अब वह बहुत अच्छी तरह समझाया गया है और लगभग बच्चों जैसी सरल शैली में समझाया गया है।
  • मैं GPT और LLM से पूरी तरह बचता रहा हूँ। इससे लगता है कि यह text output में एक स्तर की fluency पैदा कर सकता है, लेकिन शायद सवालों को parse करके जवाब देने के लिए इसका उपयोग नहीं किया जा सकता। मैं जानना चाहता हूँ कि ये कैसे काम करते हैं, या क्या Python जैसी भाषा में toy engine दिखाने वाली कोई सरल blog post या course है। अब तक मैंने जो भी शिक्षण सामग्री देखी है, वह platforms का उपयोग कैसे करें, इसी पर केंद्रित है।
  • यह शानदार है। इसी तरह के संदर्भ में, लेखक ने केवल spreadsheet functions का उपयोग करके GPT लागू किया है और साथ में video tutorial भी दिया है।
  • यह अप्रत्याशित रूप से insightful है, और शुरू में मेरे मन में उठे कुछ सवालों के जवाब देता है: सिर्फ़ "कैसे" नहीं बल्कि "क्यों" वाले सवाल भी। softmax pattern अक्सर दिखाई देता है। काश लोगों को सीधे formula देने के बजाय इसे "differentiable argmax" के रूप में सिखाया जाता। यह पूरी कहानी नहीं है, लेकिन अक्सर इसका उपयोग ऐसे ही होता है।
  • मैं बार-बार पढ़ता हूँ कि GPT सिर्फ़ अगला शब्द किसी probability के साथ उगलने वाला एक "ज़्यादा स्मार्ट" "ज़्यादा जटिल" Markov है। लेकिन मेरे अनुभव में यह सही नहीं लगता — इसे किसी न किसी तरह सीखना तो पड़ता है। उदाहरण के लिए, अगर आप आज हुई किसी घटना के बारे में कुछ ऐसा कहें जो अतीत से विरोधाभासी हो (मैंने Qatar World Cup से इसका परीक्षण किया), और फिर उस घटना से प्रभावित कोई सवाल पूछें, तो यह सही जवाब देता है। सोचता हूँ कि एक साधारण वाक्य (जो जानकारी आप देते हैं) अगले token की probability को इतनी दूर तक कैसे बदल सकता है।