লেখক:
(1) গৌরব কোলহাটকার, SCTR-এর পুনে ইনস্টিটিউট অফ কম্পিউটার টেকনোলজি, পুনে, ভারত ([email protected]);
(2) অক্ষিত মদন, SCTR এর পুনে ইনস্টিটিউট অফ কম্পিউটার টেকনোলজি, পুনে, ভারত ([email protected]);
(3) নিধি কৌটাল, SCTR এর পুনে ইনস্টিটিউট অফ কম্পিউটার টেকনোলজি, পুনে, ভারত ([email protected]);
(4) সত্যজিৎ রায়, SCTR এর পুনে ইনস্টিটিউট অফ কম্পিউটার টেকনোলজি, পুনে, ভারত ([email protected])।
বিমূর্ত — ব্যবহারকারীর মহাকাব্য বা গল্পগুলিকে সিউডোকোড বা কোডে তাদের উপযুক্ত উপস্থাপনায় রূপান্তর করা একটি সময়সাপেক্ষ কাজ, যা একটি শিল্প প্রকল্পে সময়ের একটি বড় অংশ নিতে পারে। এই গবেষণা পত্রের সাথে, আমরা ছোট কার্যকারিতাগুলির একটি প্রদত্ত চটপটে ব্যবহারকারীর গল্প থেকে সিউডোকোড তৈরি করার জন্য একটি পদ্ধতি উপস্থাপন করার লক্ষ্য রাখি যাতে শিল্প প্রকল্পে ব্যয় করা সামগ্রিক সময় কমানো যায়। সিউডোকোড হল একটি প্রোগ্রামিং ভাষা যা একটি কম্পিউটার প্রোগ্রামের সাথে জড়িত পদক্ষেপগুলির অজ্ঞেয়বাদী উপস্থাপনা, যা সহজেই যেকোনো প্রোগ্রামিং ভাষায় রূপান্তরিত করা যায়। প্রাকৃতিক ভাষা প্রক্রিয়াকরণের সম্ভাবনাকে কাজে লাগিয়ে, আমরা সফ্টওয়্যার ডেভেলপমেন্টের চটপটে মডেল ব্যবহার করে এমন সংস্থাগুলির উন্নয়ন প্রক্রিয়াকে সহজ করতে চাই। ইংরেজি ভাষায় বর্ণিত একটি সমস্যাকে সিউডোকোডে রূপান্তর করার জন্য আমরা একটি পদ্ধতি উপস্থাপন করি। এই পদ্ধতিটি টেক্সট থেকে সিউডোকোড রূপান্তর টাস্ককে দুটি পর্যায়ে বা সাবটাস্কে বিভক্ত করে, যার প্রতিটিকে একটি পৃথক মেশিন অনুবাদ কাজের মতো বিবেচনা করা হয়। স্টেজ 1 হল টেক্সট থেকে কোড কনভার্সন এবং স্টেজ 2 হল কোড থেকে সিউডোকোড কনভার্সন। আমরা দেখতে পাই যে CodeT5 মডেলটি BLEU স্কোরের ক্ষেত্রে সেরা ফলাফল দেয় যখন উপরে উল্লিখিত দুটি সাবটাস্কে আলাদাভাবে প্রশিক্ষণ দেওয়া হয়। BLEU স্কোর হল একটি মেট্রিক যা একটি মেশিন-অনুবাদিত পাঠ্য এবং রেফারেন্স অনুবাদের একটি সেটের মধ্যে মিল পরিমাপ করতে ব্যবহৃত হয়।
সূচক শর্তাবলী — কোড জেনারেশন থেকে টেক্সট, কোড থেকে সিউডোকোড জেনারেশন, ট্রান্সফরমার
আধুনিক প্রতিষ্ঠান এবং ব্যবসায় কাজের দক্ষতা সর্বাধিক গুরুত্বপূর্ণ। বেশিরভাগ কর্মক্ষেত্র আজ সফ্টওয়্যার বিকাশের জন্য চতুর মডেল ব্যবহার করে। চতুর হল একটি সফ্টওয়্যার বিকাশের পদ্ধতি যা পুনরাবৃত্তিমূলক বিকাশের উপর ভিত্তি করে, যেখানে কাজগুলিকে ছোট পুনরাবৃত্তি বা স্প্রিন্টে ভাগ করা হয়। এজিল প্রজেক্ট ম্যানেজমেন্ট টুলস যেমন জিরা ব্যবহার করা হয় মহাকাব্য বা ব্যবহারকারীর গল্পের আকারে ব্যবহারকারীর প্রয়োজনীয়তা নথিভুক্ত করতে। বিকাশকারীদের এই প্রয়োজনীয়তাগুলি বুঝতে হবে এবং এর জন্য কোড লিখতে হবে। যাইহোক, কোড/ছদ্ম কোড তৈরির প্রক্রিয়াকে স্বয়ংক্রিয় করে উন্নয়নের একটি উল্লেখযোগ্য পরিমাণ সময় এবং প্রচেষ্টা সংরক্ষণ করা যেতে পারে, বিশেষ করে সহজ বা পুনরাবৃত্তিমূলক সমস্যাগুলির জন্য যা আগে সমাধান করা হয়েছে। আমাদের গবেষণা পত্রের অনুপ্রেরণা হল ডেভেলপারদের কাজকে সহজ করা যাতে তারা আরও জটিল কাজগুলিতে ফোকাস করতে পারে এবং প্রক্রিয়ায় সফ্টওয়্যার বিকাশের জীবনচক্রকে অপ্টিমাইজ করতে পারে৷
জিরা একটি সফ্টওয়্যার অ্যাপ্লিকেশন যা ইস্যু ট্র্যাকিং এবং প্রকল্প পরিচালনার জন্য ব্যবহৃত হয়। এটি বাগ, গল্প, মহাকাব্য এবং অন্যান্য কাজগুলি ট্র্যাক করতে চটপটে উন্নয়ন দলগুলি দ্বারা ব্যাপকভাবে ব্যবহৃত হয়। মহাকাব্য হল কাজের একটি বড় অংশ যা অনেকগুলি ছোট ছোট কাজের মধ্যে বিভক্ত করা যেতে পারে (যাকে গল্প বলা হয়)। গল্প, যাকে "ব্যবহারকারীর গল্প"ও বলা হয়, হল সংক্ষিপ্ত প্রয়োজনীয়তা বা শেষ ব্যবহারকারীর দৃষ্টিকোণ থেকে লেখা অনুরোধ। আমাদের লক্ষ্য হল মহাকাব্য/গল্পগুলিকে ছদ্ম কোডে রূপান্তর করা।
চতুর মডেলের সুবিধা থাকা সত্ত্বেও, সফ্টওয়্যার বিকাশ করা এখনও একটি কঠিন এবং টানা-আউট প্রক্রিয়া হতে পারে, বিশেষত যখন এটি কার্যকরী কোডে ব্যবহারকারীর প্রয়োজনীয়তা অনুবাদ করার ক্ষেত্রে আসে। বিকাশকারীরা প্রায়শই এই প্রক্রিয়ার অংশ হিসাবে ব্যবহারকারীর মহাকাব্য বা গল্পগুলিকে ম্যানুয়ালি কোডে অনুবাদ করে, যা অনেক সময় এবং কাজ করতে পারে।
আমাদের অধ্যয়ন এই অসুবিধা মোকাবেলা করার জন্য ব্যবহারকারীর গল্প থেকে কোড এবং সিউডোকোড তৈরির প্রক্রিয়াটিকে স্বয়ংক্রিয় করতে মেশিন লার্নিং পদ্ধতি এবং প্রাকৃতিক ভাষা প্রক্রিয়াকরণ ব্যবহারের সম্ভাব্যতা তদন্ত করতে চায়। এটি করার মাধ্যমে, আমরা ডেভেলপারদের কাজগুলিকে স্ট্রীমলাইন করতে, সফ্টওয়্যার ডেভেলপমেন্ট লাইফসাইকেল উন্নত করতে এবং সমগ্র শিল্প প্রকল্পের কার্যকারিতা বাড়াতে আশা করি৷
প্রাকৃতিক ভাষা প্রক্রিয়াকরণের ক্ষেত্রে সাম্প্রতিক অগ্রগতিগুলি পূর্বে বিভিন্ন ধরনের ম্যানুয়াল ক্রিয়াকলাপগুলিকে স্বয়ংক্রিয় করা সম্ভব করেছে। গভীর শিক্ষার সাম্প্রতিক উন্নয়নগুলি, বিশেষ করে, পরিশীলিত প্রাকৃতিক ভাষা মডেল তৈরি করা সম্ভব করেছে যা পাঠ্য ইনপুট থেকে প্রসঙ্গ এবং অর্থ বের করতে পারে। এই মডেলগুলি ব্যবহার করে, আমরা দ্রুত এবং দক্ষতার সাথে ব্যবহারকারীর গল্পগুলি থেকে কোড বা সিউডোকোড তৈরি করতে পারি, ডেভেলপারদের উপর চাপ কমাতে পারি।
আমাদের গবেষণায় ব্যবহারকারীর গল্প থেকে কোড বা সিউডোকোড তৈরির জন্য নিয়ম-ভিত্তিক সিস্টেম, পরিসংখ্যান মডেল এবং গভীর শিক্ষার কৌশল সহ বর্তমানে ব্যবহৃত বিভিন্ন পদ্ধতি পরীক্ষা করা হবে। আমরা প্রতিটি পদ্ধতির সুবিধা এবং ত্রুটিগুলি মূল্যায়ন করব এবং একটি অভিনব কৌশল প্রস্তাব করব যা তাদের সুবিধাগুলিকে সর্বাধিক করে তোলে।
সামগ্রিকভাবে, আমাদের গবেষণাপত্রটির লক্ষ্য ব্যবহারকারীর গল্প থেকে কোড/সিউডোকোড তৈরির প্রক্রিয়া স্বয়ংক্রিয় করে সফ্টওয়্যার বিকাশকে আরও দক্ষ এবং কার্যকর করা। এটি করার মাধ্যমে, আমরা আরও জটিল কাজগুলিতে ফোকাস করতে, ত্রুটির ঝুঁকি কমাতে এবং শেষ পর্যন্ত ব্যবহারকারীদের কাছে আরও ভাল সফ্টওয়্যার পণ্য সরবরাহ করার জন্য বিকাশকারীদের মুক্ত করার আশা করি।
এই কাগজটি CC 4.0 লাইসেন্সের অধীনে arxiv-এ উপলব্ধ ।