কোডিং প্রতিযোগিতায় সমস্যা সমাধানে AI কে আরও ভালো করা

কোডিং প্রতিযোগিতায় সমস্যা সমাধানে AI কে আরও ভালো করা

সাক্ষাত্কার প্রতিযোগিতামূলক প্রোগ্রামিং সমস্যা সমাধানের জন্য বাণিজ্যিক বৃহৎ ভাষার মডেলের ক্ষমতাগুলিকে চতুর প্রম্পট ইঞ্জিনিয়ারিং এর মাধ্যমে সাবধানতার সাথে এর প্রক্রিয়াগুলি পরিচালনা করে উল্লেখযোগ্যভাবে বৃদ্ধি করা যেতে পারে।

এটি প্রদর্শনের জন্য, ইস্রায়েলে অবস্থিত কোডিয়াম এআই, আলফাকোডিয়াম এবং তৈরি করেছে মুক্ত এই মাসে GitHub এ সফ্টওয়্যার। আলফাকোডিয়াম একটি বড় ভাষা মডেল নয়। পরিবর্তে এটি এমন একটি পদ্ধতি যা জিপিটি-4 এর মতো জেনারেটিভ AI সরঞ্জামগুলির সমস্যা সমাধানের ক্ষমতাকে উন্নত করে যাকে সিইও ইটামার ফ্রাইডম্যান "ফ্লো ইঞ্জিনিয়ারিং" বলেছেন।

প্রথমত, একটি প্রোগ্রামিং প্রশ্ন অন্তর্নিহিত বৃহৎ ভাষার মডেলে দেওয়া হয়, এবং এটিকে সমস্যাটি বর্ণনা এবং সংক্ষিপ্ত করতে বলা হয়। সেই তথ্যটি নির্দেশ করে যে কীভাবে এটি সমস্যার সমাধান করা শুরু করা উচিত। আলফাকোডিয়াম জিনিসগুলিকে সংজ্ঞায়িত করে, যেমন ইনপুট এবং আউটপুটগুলি কী হওয়া উচিত, যখন একটি সমাধান নিয়ে আসে৷ এই সব প্রাকৃতিক ভাষায় নির্দিষ্ট করা হয়.

মডেলটি তখন কোড তৈরি করতে শুরু করে যা শুধুমাত্র বর্ণনা করা স্পেসিফিকেশনের সাথে সারিবদ্ধ করে। প্রোগ্রামিং প্রতিযোগিতাগুলি প্রতিযোগীদেরকে নির্দিষ্ট করার জন্য কোড করতে বলে যা সাধারণত একটি প্রদত্ত ইনপুটের জন্য একটি স্ক্রিপ্টের কী আউটপুট করা উচিত তা দেখায়। AlphaCodium এই পরীক্ষার ক্ষেত্রে আরও বেশি করে তৈরি করে এবং তারপরে কোডটি প্রত্যাশিতভাবে কাজ করছে কিনা তা পরীক্ষা করার জন্য সম্ভাব্য সমাধানের মাধ্যমে চলে।

যদি এটি কোনও পরীক্ষায় সংজ্ঞায়িত আউটপুটগুলির সাথে মেলে না, তবে মডেলটি বিভিন্ন সমাধান তৈরি করে যতক্ষণ না তারা সমস্ত পরীক্ষায় উত্তীর্ণ হয় বা এটি ব্যর্থ হয়। ত্রুটি দেখা দিতে পারে যখন এর কোড কম্পাইল হয় না বা ভুল হয়।

আপনি নীচের চিত্রে প্রবাহ প্রকৌশল প্রক্রিয়ার বিভিন্ন ধাপ দেখতে পারেন। এটি মূলত একটি প্রাক-প্রক্রিয়াকরণ পর্যায়ে বিভক্ত, যেখানে সিস্টেমটি প্রাকৃতিক ভাষায় সমস্যাটি বিশ্লেষণ করে এবং একটি কোড পুনরাবৃত্তি পর্যায়ে, যেখানে এটি পাবলিক এবং এআই-উত্পন্ন পরীক্ষার বিরুদ্ধে সম্ভাব্য সমাধান চালায়।

আলফাকোডিয়াম

সমস্ত বিস্তৃত পদক্ষেপ যা আলফাকোডিয়ামকে সমস্যা সমাধানের জন্য কোড তৈরি করার জন্য গাইড করে

"আমরা সমস্যাটি গ্রহণ করি না এবং মডেলের কাছে যাই এবং বলি, 'আরে, দয়া করে চূড়ান্ত সমাধান তৈরি করুন,'" ফ্রিডম্যান বলেছিলেন নিবন্ধনকর্মী. "আমরা মডেলটিকে অনুগ্রহ করে বুলেট পয়েন্টগুলিতে এই সমস্যাটিকে পুনরায় সংজ্ঞায়িত করতে বলি।" এটিকে সরলীকরণ করা এবং জিনিসগুলিকে খণ্ডে বিভক্ত করা মডেলটির জন্য পরবর্তীতে একটি অ্যালগরিদমের বিভিন্ন অংশের জন্য কোড তৈরি করা সহজ করে তোলে।

মূলত, ফ্লো ইঞ্জিনিয়ারিং হল এমন একটি পদ্ধতি যা মডেলের সমস্যা-সমাধান প্রক্রিয়াটিকে সু-সংজ্ঞায়িত ধাপে বিভক্ত করে নির্দেশনা দেয়। এটিকে "উৎপাদিত কোডকে অর্থপূর্ণ নাম এবং কার্যকারিতা সহ ছোট সাব-ফাংশনে বিভক্ত করার" অনুরোধ করা, আমাদের বলা হয়েছে, কম বাগগুলির দিকে নিয়ে যায় এবং কোডটিকে পরীক্ষা এবং ঠিক করা সহজ করে তোলে৷

"আমরা মূলত আমাদের সময়ের 95 শতাংশ ফ্লো ইঞ্জিনিয়ারিংয়ে ব্যয় করেছি, এবং শুধুমাত্র 5 শতাংশ প্রম্পট ইঞ্জিনিয়ারিংয়ে এবং আমরা প্রতিটি [পদক্ষেপ] জন্য প্রম্পট পরিবর্তন করিনি," ফ্রাইডম্যান যোগ করেছেন।

কোডিয়ামের ইঞ্জিনিয়াররা দুই বছর আগে গুগল ডিপমাইন্ড দ্বারা সংকলিত কোডফোর্সেস ডেটা সেটের যাচাইকরণ এবং পরীক্ষার অংশগুলিতে ব্যবহৃত শত শত সমস্যার উপর তাদের মডেলের কার্যকারিতা পরীক্ষা করেছে। তারা দাবি করে যে Google DeepMind এর AlphaCode এবং AlphaCode2 মডেলের তুলনায় কোডিং সমস্যা সমাধানে আলফাকোডিয়াম ভালো ছিল।

ফলাফল একটি arXiv রিপোর্ট কাগজ [পিডিএফ], আলফাকোডিয়াম আলফাকোডের 44 শতাংশের তুলনায় 24 শতাংশ প্রশ্নের সঠিক উত্তর দিতে সক্ষম হয়েছে, যখন 107টি বৈধতা সমস্যার জন্য আলফাকোডের দশটি নির্বাচিত সমাধানের তুলনায় মাত্র পাঁচটি সমাধান তৈরি করেছে। মজার বিষয় হল, আলফাকোডিয়ামের 165 শতাংশের তুলনায় আলফাকোডিয়াম 29 শতাংশ সমাধান করে 28টি পরীক্ষার সমস্যায় এলে ব্যবধানটি সংকুচিত হয়।

AlphaCode এটি তৈরি করা সম্ভাব্য স্ক্রিপ্টগুলির দশ হাজার, বা কয়েক হাজার, মধ্যে থেকে দশটি সবচেয়ে প্রতিশ্রুতিশীল সমাধান নির্বাচন করে – এটি চালানোর জন্য গণনাগতভাবে নিবিড় করে তোলে।

"আমরা পরীক্ষার পুরো প্রবাহের উপর অনেক বেশি মনোনিবেশ করেছি," ফ্রিডম্যান বলেছিলেন। “[গুগল] এর জন্য, তারা প্রজন্মের উপর অনেক কাজ করেছে। তারা শত শত অন্যান্য বিকল্প তৈরি করার চেষ্টা করে এবং আমরা খুব কম সমাধান তৈরি করি, কিন্তু কোডের উন্নতির জন্য তাদের সত্যিই ভালভাবে পরীক্ষা করি।"

আলফাকোডিয়াম গুগল ডিপমাইন্ডের সর্বশেষ আলফাকোড 2 মডেলের চেয়ে কিছুটা ভাল যা তার পূর্বসূরী আলফাকোডের চেয়ে 10,000 গুণ বেশি দক্ষ, তিনি যোগ করেছেন।

alphacodium_2

আলফাকোডিয়াম কীভাবে নির্ভুলতা এবং দক্ষতার দিক থেকে অন্যান্য অত্যাধুনিক মডেলের সাথে তুলনা করে

ফ্রিডম্যান বলেছিলেন যে তিনি আত্মবিশ্বাসী যে আলফাকোডিয়ামের কর্মক্ষমতা ডেটা ফাঁসের কারণে নয়, যেখানে অন্তর্নিহিত মডেলটি একই সমস্যাগুলির উপর প্রশিক্ষিত এবং পরীক্ষা করা হয়েছে। GPT-4 সংস্করণকে শক্তি প্রদানকারী AlphaCodium 2021 সালের সেপ্টেম্বর পর্যন্ত ইন্টারনেট থেকে স্ক্র্যাপ করা পাঠ্যের উপর প্রশিক্ষণ দেওয়া হয়েছিল, যেখানে এটি এর সিস্টেমে যে সমস্যাগুলি পরীক্ষা করেছিল তা পূর্বোক্ত কোডফোর্সেস ডেটা সেট থেকে নেওয়া হয়েছিল যা অনেক পরে প্রকাশিত হয়েছিল।

একটি ভাল আপেল-টু-আপেল তুলনা যা ফ্লো ইঞ্জিনিয়ারিং প্রক্রিয়ার মূল্যায়ন করে, যাইহোক, আলফাকোডিয়াম প্রয়োগ না করেও একই প্রশ্নগুলি সমাধান করার জন্য GPT-4 এর ক্ষমতার দিকে নজর দিচ্ছে। AlphaCodium-চালিত ভেরিয়েন্টের 4 এবং 19 শতাংশের তুলনায় সাধারণ পুরানো GPT-12 বৈধকরণ এবং পরীক্ষা সেটে যথাক্রমে 44 এবং 29 শতাংশ সমস্যার সঠিক উত্তর দিতে পারে।

সংক্ষেপে, এটি প্রদর্শিত হয় যে একটি সতর্ক পাইপলাইন প্রয়োগ করা যা অতিরিক্ত ডেটা তৈরি করে কোড কীভাবে তৈরি করা হয় এবং পরীক্ষার প্রক্রিয়াটি উন্নত করার জন্য স্ক্র্যাচ থেকে একটি বড় ভাষা মডেলকে প্রশিক্ষণ দেওয়ার চেয়ে আরও কার্যকর হতে পারে।

কোডিয়াম সম্প্রতি পাইথন ডেভেলপারদের সমর্থন করার জন্য একটি নতুন টুল প্রকাশ করেছে, যারা এখন তাদের IDE-তে একটি কোডিং সমস্যা সরাসরি সমাধান করতে AlphaCodium কল করতে পারে। আপনি এটি সঙ্গে খেলতে পারেন এখানে. ®

সময় স্ট্যাম্প:

থেকে আরো নিবন্ধনকর্মী