SelfCodeAlign: কোড জেনারেশনের জন্য স্ব-সমন্বয়
Author
Venue
NeurIPS 2024
Abstract
ইনস্ট্রাকশন টিউনিং হল একটি তত্ত্বাবধায়িত ফাইন-টিউনিং পদ্ধতি যা বড় ভাষা মডেল (LLM)-এর মানব নির্দেশনা অনুসরণ করার ক্ষমতা উল্লেখযোগ্যভাবে উন্নত করে। আমরা SelfCodeAlign প্রস্তাব করছি, যা ব্যাপক মানব অ্যানোটেশন বা ডিস্টিলেশন ছাড়াই কোড LLM-গুলোকে স্ব-সমন্বয় করার জন্য প্রথম সম্পূর্ণ স্বচ্ছ এবং অনুমোদনশীল পাইপলাইন। SelfCodeAlign ডেটা জেনারেট প্রক্রিয়া জুড়ে ইনফারেন্সের জন্য একই বেস মডেল ব্যবহার করে। এটি প্রথমে উচ্চ-মানের সিড স্ন্যাপশট থেকে বিভিন্ন কোডিং ধারণা আহরণ করে নতুন টাস্ক তৈরি করে। তারপর প্রতিটি টাস্কের জন্য একাধিক উত্তর নমুনা সংগ্রহ করে, সেগুলোকে টেস্ট কেসের সাথে জোড়া দেয়, এবং একটি স্যান্ডবক্স পরিবেশে সেগুলো যাচাই করে। অবশেষে, ইনস্ট্রাকশন টিউনিং-এর জন্য উদাহরণসমূহ নির্বাচন করা হয়। আমাদের প্রাথমিক পরীক্ষায়, আমরা SelfCodeAlign-কে CodeQwen1.5-7B-এর সাথে ব্যবহার করে ৭৪ হাজার ইনস্ট্রাকশন-প্রতিক্রিয়া যুগল নিয়ে একটি ডেটাসেট তৈরি করেছি। এই ডেটাসেটে ফাইন-টিউনিং করার ফলে একটি মডেল তৈরি হয়েছে যা HumanEval+-এ pass@1 স্কোরে ৬৭.১ অর্জন করেছে, যা CodeLlama-70B-Instruct-কে ছাড়িয়ে গেছে, যদিও এটি দশ গুণ ছোট। সমস্ত বেঞ্চমার্কে, এই ফাইনটিউন করা মডেলটি OctoPack দিয়ে প্রশিক্ষিত মূল সংস্করণকে ধারাবাহিকভাবে ছাড়িয়ে যায়, যা মানব অ্যানোটেশন বা ডিস্টিলেশন ছাড়াই নির্দেশনা টিউনিংয়ের পূর্ববর্তী সর্বাধুনিক পদ্ধতি ছিল। এছাড়াও, আমরা দেখিয়েছি যে SelfCodeAlign 3B থেকে 33B পর্যন্ত বিভিন্ন আকারের LLM-এ কার্যকর, এবং বেস মডেলগুলো তাদের নিজস্ব ডেটা বিতরণে এলাইনমেন্ট থেকে আরও বেশি সুবিধা পেতে পারে। আমরা আমাদের পাইপলাইনে প্রতিটি উপাদানের কার্যকারিতা আরও যাচাই করেছি, যা দেখায় যে SelfCodeAlign GPT-4o থেকে সরাসরি ডিস্টিলেশন এবং OSS-Instruct ও Evol-Instruct-এর মতো শীর্ষস্থানীয় GPT-3.5-ভিত্তিক ডিস্টিলেশন পদ্ধতি উভয়কেই ছাড়িয়ে যায়। SelfCodeAlign আরও StarCoder2-Instruct তৈরি করেছে, যা প্রথম সম্পূর্ণ স্বচ্ছ, অনুমোদনসাপেক্ষ লাইসেন্সপ্রাপ্ত, এবং স্ব-সংগতিপূর্ণ কোড LLM, যা অত্যাধুনিক কোডিং কর্মক্ষমতা অর্জন করে।
