- सप्ताहांत में कुछ घंटे लगाकर LLM कैसे काम करता है इसे code के साथ follow करते हुए implementation, learning और usage flow को एक साथ समझने वाली वर्कशॉप है
- hands-on practice LLM के परिचय से शुरू होकर input data, tokenizer और model architecture implementation तक step-by-step आगे बढ़ती है
- architecture implementation के बाद GPT-2 और Llama 2, pretraining, pretrained weights loading को कवर किया जाता है और इसे वास्तविक model usage flow से जोड़ा जाता है
- LitGPT का उपयोग करके weights इस्तेमाल करना, instruction fine-tuning, benchmark evaluation और conversation performance evaluation भी शामिल हैं
- किताब, GitHub repository, workshop code, Lightning Studio और LitGPT repository साथ में दिए गए हैं, इसलिए खुद follow करना आसान है
3 घंटे की वर्कशॉप वीडियो का flow
- LLM को implement, train और use करने की प्रक्रिया को एक coding workshop के रूप में कवर किया गया है
- clickable chapter markers हैं, ताकि जरूरत के topic पर सीधे जा सकें
-
basics और input processing
- 0:00 वर्कशॉप overview
- 2:17 LLM introduction
- 9:14 वर्कशॉप सामग्री
- 10:48 LLM input data को समझना
- 23:25 एक सरल tokenizer class
-
model implementation और training
- 41:03 LLM architecture coding
- 45:01 GPT-2 और Llama 2
- 1:07:11 pretraining
- 1:29:37 pretrained weights loading
- 1:45:12 LitGPT के जरिए pretrained weights का उपयोग
-
fine-tuning और evaluation
- 1:53:09 instruction fine-tuning
- 2:08:21 LitGPT के जरिए instruction fine-tuning
- 2:26:45 benchmark evaluation
- 2:36:55 conversation performance evaluation
- 2:42:40 समाप्ति
साथ-साथ करने के लिए जरूरी सामग्री
- Build an LLM from Scratch book: शुरुआत से LLM बनाने की किताब
- Build an LLM from Scratch GitHub repository: किताब से संबंधित GitHub repository
- GitHub repository with workshop code: वर्कशॉप code repository
- Lightning Studio for this workshop: इस वर्कशॉप के लिए Lightning Studio
- LitGPT GitHub repository: LitGPT GitHub repository
1 टिप्पणियां
Hacker News की राय
इनमें काफ़ी overlap है, लेकिन दोनों अलग-अलग topics को ज़्यादा detail में कवर करते हैं या उनका focus अलग है। Andrej की पूरी series देखना पूरी तरह worthwhile है, और आगे आने वाला Eureka Labs का काम भी बहुत अच्छा लग रहा है। Sebastian का blog और किताब भी समय और पैसे देने लायक हैं
https://ai.meta.com/research/publications/the-llama-3-herd-o...
यह एक अच्छा PyTorch tutorial है, लेकिन इसे low-level होने का दिखावा नहीं करना चाहिए
उससे पहले मैंने fast.ai से सीखने की कोशिश की थी, लेकिन वहाँ सीधे Pytorch में network बनाना शुरू कर दिया जाता था, इसलिए मैं जल्दी ही बाहर हो गया। वह मुझे हाई स्कूल में Java सीखने जितना ही उबाऊ लगा, और मुझे समझना था कि मैं आखिर किस चीज़ से डील कर रहा हूँ
https://16x.engineer/2023/12/29/nanoGPT-azure-T4-ubuntu-guid...
यह भी जानना चाहूँगा कि उससे आप क्या कर पाए, और मौजूदा घटनाओं जैसी नई चीज़ों को train कैसे कराते हैं
अब अगर nitpick करें, तो "code" वह चीज़ है जो codex नाम के माध्यम की सामग्री से बनती है। इसका historical background https://en.wikipedia.org/wiki/Codex में देखा जा सकता है, और कानून के क्षेत्र में rule set से शुरू होकर अंग्रेज़ी में कम-से-कम 16वीं सदी के मध्य से इसका इस्तेमाल दूसरे domains तक फैल गया।
"program" किसी इरादों के set को प्रकाशित करने के काफ़ी करीब है, जैसे "पहले Bach बजाया जाएगा और फिर Mozart"। इस तरह का उपयोग "rule set" वाले code की तुलना में कई सदियों बाद आया।
"develop" का मतलब unfold करना है, जो अच्छा है, लेकिन यह पहले दो शब्दों की तरह rules या sequential procedure का अर्थ नहीं देता
पक्का कारण तो नहीं पता, लेकिन शायद इसलिए कि ब्राज़ीलियन पुर्तगाली में "program" का वेश्यावृत्ति से काफ़ी मज़बूत संबंध है
Andrej की सामग्री मेरे लिए बहुत ज़्यादा low-level हो जाती है, और मैं details में उलझकर रास्ता खो देता हूँ। यह आलोचना नहीं, बल्कि मेरे जैसी स्थिति वाले लोगों के लिए मददगार comment है
बहुत पहले मैंने deep RNN में backpropagation कैसे काम करता है, यह follow किया था, इसलिए लगा कि बाकी चीज़ें भी देखना मज़ेदार होगा
जब Windows का साफ़-साफ़ ज़िक्र नहीं होता, तो अक्सर इसका मतलब होता है कि उस environment में इसे test नहीं किया गया, और कई बार यह किसी random issue की वजह से ठीक से नहीं चलता
https://developer.nvidia.com/cuda-downloads?target_os=Linux&...