প্রকল্প সম্পর্কে

PlanckGPT একটি শিক্ষামূলক প্রকল্প যা দেখায় কিভাবে ভোক্তা-স্তরের হার্ডওয়্যারে স্ক্র্যাচ থেকে একটি GPT-স্টাইল ভাষা মডেল প্রশিক্ষণ দেওয়া যায়। মডেলটির প্রায় ৫৪০ মিলিয়ন প্যারামিটার রয়েছে এবং এটি Fineweb-edu ডেটাসেট থেকে প্রায় ২ বিলিয়ন টোকেনে প্রিট্রেইন করা হয়েছে, সাথে Smol-smoltalk ডেটা ব্যবহার করে ঐচ্ছিক চ্যাট ফাইনটিউনিং পর্যায় রয়েছে। প্রকল্পটির লক্ষ্য সর্বোত্তম মান-থেকে-প্রশিক্ষণ-সময় অনুপাত অর্জন করা, যেখানে প্রশিক্ষণের সময়ের সীমা ৫০ ঘণ্টা। লেখকের ল্যাপটপে (Intel Core i7 14700HX, 24GB RAM, RTX 5070 Mobile 8GB), প্রিট্রেইনিং-এ প্রায় ২৮ ঘণ্টা ২০ মিনিট এবং চ্যাট ফাইনটিউনিং-এ প্রায় ৪ ঘণ্টা ১০ মিনিট সময় লাগে। স্থাপত্যে ১৪-স্তরের ট্রান্সফরমার ডিকোডার ব্যবহার করা হয়েছে, যাতে ৭টি কোয়েরি হেড, ৮৯৬-মাত্রিক এমবেডিং, রোটারি পজিশনাল এমবেডিং, বিকল্প ভ্যালু এমবেডিং, স্কোয়ার্ড ReLU অ্যাক্টিভেশন এবং RMSNorm রয়েছে। টোকেনাইজার হল Tiktoken যা GPT-2 এনকোডিং (৫০,২৫৭ ভোকাবুলারি সাইজ) ব্যবহার করে। প্রশিক্ষণে ট্রান্সফরমার ওজনের জন্য NorMuon অপটিমাইজার, এমবেডিংয়ের জন্য 8-বিট Adam, BF16 মিশ্র নির্ভুলতা, গ্রেডিয়েন্ট চেকপয়েন্টিং এবং torch.compile ব্যবহার করা হয়। প্রকল্পটি প্রিট্রেইনিং, মূল্যায়ন, চ্যাট ফাইনটিউনিং এবং ইনফারেন্সের জন্য স্ক্রিপ্ট সরবরাহ করে। প্রিট্রেইনড পারফরম্যান্স GPT-2-medium-এর কাছাকাছি, Fineweb-edu-তে গড় ভ্যালিডেশন লস ~২.৯৭। চ্যাট-ফাইনটিউনড পারফরম্যান্স Smol-smoltalk-এ গড় ভ্যালিডেশন লস ~১.১৩ অর্জন করে। ইনফারেন্সে দ্রুত জেনারেশনের জন্য top-k এবং top-p স্যাম্পলিংয়ের সাথে KV ক্যাশ ব্যবহার করা হয়। প্রকল্পটি modded-nanogpt এবং nanochat দ্বারা অনুপ্রাণিত এবং Apache 2.0 লাইসেন্সের অধীনে প্রকাশিত।