আচ্ছা, তাইলে চ্যাটজিপিটি আমার কোডটি ডিবাগ করেছে। আসলে।

1-debugging(1).png

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

কিন্তু সব সময় তা করে। কোড যখনই প্রথম বার চালানো হয়, সেটি কাজ করে না। এবং সুতরাং, কোনো প্রোগ্রামারের জন্য একটি গুরুত্বপূর্ণ দক্ষতা হলো ডিবাগিং - কোড কেন চালানো না হচ্ছে বা কিছু অপ্রত্যাশিত বা অপর্যাপ্ত করছে তা খুঁজে বের করার ক্ষমতা এবং বিজ্ঞান।

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

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

কিন্তু সঠিক ডিবাগিং একটি বিশেষ দক্ষতা সেট প্রয়োজন করতে পারে, কিন্তু এটা অবশেষে কেবল প্রোগ্রামিংের মতই হয়। কোডটির কারণ খুঁজে পেলে, আপনাকে কিভাবে কাজ করতে হবে তা বের করতে হবে।

বাস্তব জগতে ChatGPT পরীক্ষণ

এই সপ্তাহে, আমি যে সফটওয়্যারটি মেনটেন করি তার জন্য তিনটি কোডিং টাস্কে কাজ করছিলাম। দুটি প্রবলেমাইজার দ্বারা রিপোর্ট করা বাগগুলির সমাধান ছিল। আরেকটি নতুন কোড ছিল যার মাধ্যমে একটি নতুন ফিচার যোগ করা হতো। এটি আমার জন্য স্বাভাবিকভাবে চলছে, আমার নির্দিষ্ট কর্ম সূচির অংশ।

এছাড়াও:চ্যাটজিপিটি কিভাবে কাজ করে?

আমি এটি বলছি তাই যে, এখন পর্যন্ত আমি ChatGPT টেস্ট কোড দিয়ে পরীক্ষা করেছি। আমি ঘটনার আকার করে দেখতেছি যে ChatGPT কিতন ভাল কাজ করবে। এবার এটা ভিন্ন ছিল। আমি সত্যিই কাজ করার চেষ্টা করছিলাম এবং দেখতে চেষ্টা করছিলাম যে ChatGPT কাজ সম্পন্ন করার জন্য একটি উপকারী সরঞ্জাম হতে পারে।

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

সুতরাং, এটা দিয়ে আপনাকে যে সেই কাজগুলি দেখতে যেতে হবে এবং দেখবো কিভাবে ChatGPT দাগিন্ত কইবে।

রিগুলার এক্সপ্রেশন কোড পুনরায় লেখার

কোডিং করার সময়ে আমাদেরকে পাঠে বহুগুলি প্যাটার্ন খুঁজে বের করতে হয়। এটা করতে আমরা একটি সিম্বলিক গণিতের আকার ব্যবহার করি যা কেবল রেগুলার এক্সপ্রেশন নামে পরিচিত। দশক ধরে আমি রেগুলার এক্সপ্রেশন লিখছি এবং এখনও আমি এর প্রতি আকর্ষিত নই। এটি কাজও কঠিন, ভুল সম্ভবনা আর অদরকারিতা দেখায়।

এছাড়াও:আমি কোড দ্রুত সংশোধন করার জন্য চ্যাটজিপিটি ব্যবহার করছি, কিন্তু কী দামে?

তাই যখন একটি বাগ রিপোর্ট পাওয়া গেল এমনকি যে আমার কোডের একটি অংশ শুধুমাত্র পূর্ণসংখ্যা অনুমোদন করে, যখন এটি ডলার এবং শিলিং অনুমোদন করা উচিত (অর্থাৎ, কিছু সংখ্যা ডিজিটসহ, সম্ভবত একটি দশমিক পরে, এবং তারপর যদি একটি দশমিক থাকে, তাহলে তারপরে আরও দুই টি সংখ্যা থাকে), তাহলে আমি জানি যে আমার সাধারণ উপাদান কোডিং ব্যবহার করতে হবে।

কারণ আমি সেটা কঠিন এবং ঘৃণাস্পদ মনে করলাম, তাই আমি সাহায্যের জন্য ChatGPT এ জিজ্ঞাসা করার সিদ্ধান্ত নিলাম। এটা আমি কি জিজ্ঞেস করেছিঃ

২-রেজেক্স-কিউ.জেপিজি

এবং এখানে এই এই সুন্দর উত্তরটি AI এর দ্বারা প্রদর্শিত হয়েছে (বড় করতে ছোটটি বর্গে ক্লিক করুন):

তিন-রেজেক্স-এ.jpg

আমি আমার ফাংশনে ChatGPT এর কোড নিয়ে ছোট্ট করেই কাজ করতে পেলাম। এর প্রম্পট তৈরি করতে বা ChatGPT থেকে উত্তর পাওয়ার জন্য প্রায় ২-৪ ঘন্টা ধরে হেঁটে বেড়াতে হচ্ছিল, তবে এখান থেকে আমি প্রায় পাঁচ মিনিটের মত সময় নিয়ে ফ্রি হতে পেরেছি।

একটি অ্যারে আবার বিন্যাস করা

পরবর্তীতে আমি একটি অ্যারের ফরম্যাট পুনরায় করতে পারতেছি। অ্যারে কোড লিখতে আমার খুব ভালো লাগে, তবুও এটা খুব কঠিন। তাই আবারও ChatGPT ট্রাই করেছি। পুরোপুরি ব্যর্থতা।

আরও দেখুন:কিভাবে ChatGPT কোথাও উৎস এবং তথ্যসূত্র দেয়া যাবে

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

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

এখন পর্যন্ত, চ্যাটজিপিটি অভিজ্ঞতার দৃষ্টিতে একটি জয় এবং একটি পরাজয়। কিন্তু এখন আমি চ্যালেঞ্জ বাড়িয়ে দিতে চলেছিলাম।

আসলে আমার কোডের ভুল খুঁজে বের করা

ঠিক আছে, তাই পরবর্তীতে বিষয়টি বুঝতে কথাটা কঠিন হতে পারে। কিন্তু ভাবো এই মানুষের সাথে (বিশ্বাস করি আপনি একজন মানুষ এবং নয় স্প্যামি ও স্ক্যামি ওয়েবসাইটগুলিতে আমার কাজ কেবলমাত্র কপি করে পুনরায় প্রকাশ করে থাকে বলবো) তার মতো মনে হয় যে যদি তা আপনাকে বুঝানো কঠিন (মানে একটি মানুষকে এবং নয় একটি এইআইকে) তাহলে এটি একটি AI-কে বুঝানো আরও চুলকানি হবে।

আমি নতুন কোড লিখছিলাম। আমার একটি ফাংশন ছিল যেটি দুটি প্যারামিটার নিয়ে, এবং একটি কলিং স্টেটমেন্ট ছিল যা আমার কোডে দুটি প্যারামিটার পাঠিয়েছিলো। ফাংশনগুলি ছোট কালো বাক্সগুলি যা খুব নির্দিষ্ট কাজগুলি করে এবং এদেরকে অন্য কোডে চলমান কোডের লাইনগুলি থেকে কল করা হয়।

সমস্যা ছিল, আমি একটি ত্রুটি বার্তা পেয়েছি।

ঐ বার্তার গুরুত্বপূর্ণ অংশটি এখানে বলা আছে যে একটি কোন একটি স্থানে "1 সফল" এবং আরেকটি স্থানে "প্রমাণিত 2 টি প্রত্যাশিত"। আমি কলিং স্টেটমেন্ট এবং ফাংশন ডিফিনিশন দেখেছি এবং উভয় জায়গায় দুটি প্যারামিটার রয়েছে।

আরোও: বই, প্রবন্ধ বা গবেষণা পত্র সংক্ষিপ্ত করতে ChatGPT ব্যবহার করার পদ্ধতি

ও-এভার-লাভিং-এফ?

গভীর মনে খুশির পরে প্রায় পনেরটার মিনিট ধরে, আমি নিরাশার বিষয়টা স্বাচ্ছন্দের জন্য সাহায্য পেতে গিয়ে এই একটিকে এইডির পাশে ঘুরিয়ে আনতে রাইখামোরের ভীক্ষা করার জন্য ছোট্ট একটি অবশ্যইঠিকানা লিখেছিলাম।

৪-অনমুখিত.jpg

আমি তাৎক্ষণিক্ষণিকে কোডের লাইনটি দেখিয়েছি যার মাধ্যমে কলটি করা হয়েছে, আমি তাৎক্ষণিক্ষণিকে নিজেই ফাংশনটি দেখিয়েছি, এবং আমি তাৎক্ষণিক্ষণিকে হ্যান্ডলারটি দেখিয়েছি, যেটি আমার মূল প্রোগ্রামের হুক থেকে কল করা ফাংশনকে বিতরণ করে।

সেকেন্ডের মধ্যে, চ্যাটজিপিটি এটা দিয়ে জবাব দিল (সংকোচিত চিত্রে ক্লিক করুন):

৫-এরর-উইথ-অ্যাপ্লাই-ফিল্টারগুলো-ইন-উইপিচারডপিপিপিতিত্তেএস.জেসন

যেমনটা প্রস্তাবিত ছিল, আমি add_filter() ফাংশনের চতুর্থ প্যারামিটার আপডেট করে 2-এ সেট করেছি এবং এটি কাজ করল!

যেমনটা হোলো, চ্যাটজিপিটি কোডের অংশ গ্রহণ করে, ঐ অংশগুলোকে বিশ্লেষণ করে এবং আমাকে একটি রোগনির্ণয় দিলো। স্পষ্ট হতে হচ্ছে, এর পরামর্শ প্রদানের জন্য এটি তথ্যগুলি প্রয়োজন সেক্ষেত্রে ওয়্যার্ডপ্রেস হুকস কেমন কাজ করে (সেটা হলো add_filter ফাংশনের কাজ) এবং সে কার্যকলাপটি কোডের কল এবং এগোত্তম লাইনগুলির কার্যকলাপে পরিনত হয়।

এছাড়াও: আমি ChatGPT থেকে একটি ওয়ার্ডপ্রেস প্লাগিন লিখতে চাইলেও পায়। এটি আমার প্রয়োজনে কোনোটা লিখে দিল মাত্র 5 মিনিটের মধ্যে

আমি এটি অবিশ্বাস্যভাবে চিহ্নিত করবো, অনির্বাচ্যভাবে "ভবিষ্যতে বাস করা" অবিশ্বাস্যভাবে।

এটা সবকিছুর মানে কী?

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

আরো এমন বিবেচনা: এই বিশেষজ্ঞরা এই মেশিন শিক্ষা সিস্টেমের প্রদুষ্টনকারীদের থেকে বাঁচতে দৌড়া চালাচ্ছেন

কিন্তু যখন আপনি বেঁচে পড়ছেন, সাহায্য নেওয়া সময় সাধারণত কষ্টকর। সেটার জন্য প্রায়শই আপনার ক্লোজলোকার জন্যও আপনি না পারেন খুব বিদ্যমান কোডটির পূর্ণ ব্যাপ্তির সাথে পরিচিত নয়। আমি যার উপরে কাজ করছি, সেটি হচ্ছে ৫৬৩ টি ফাইলে আবদ্ধ ১৫৩,২৫৯ লাইনের কোডের একটি প্রোগ্রাম -- এবং প্রোগ্রাম গুলোর সাথে তুলনা করলে বলতে পারি, এটা ছোট।

তাই, আমি যদি একটি সহকর্মীর সাহায্য নিতে চাই, তাহলে আমাকে আমার অনুরোধটি তৈরি করতে হতো প্রায় ঠিকই যেভাবে আমি এটি ChatGPT-এ পাঠিয়েছি।

কিন্তু এটা বিবেচনা করার জন্য একটি কিছু আছে: আমি ভুল ছিলেও হ্যান্ডলার লাইনটি যেখানে সমস্যা ছিল তা মনে রেখেছিলাম। পরীক্ষার মত আমি এক্স এল কে প্রশ্ন করা চেষ্টা করেছিলাম দেখার জন্য আমি হ্যান্ডলার লাইনটি যোগ করিনি এমন একটি প্রম্পটে, তবে এটি সাহায্য করতে পারেনি। সুতরাং এই মুহূর্তে, 2023 তে, ChatGPT এর কাছে সমস্যার সমাধানের জন্য খুব নির্দিষ্ট সীমাবদ্ধতা আছে।

আরো: পরীক্ষাওর জন্য সেরা AI চ্যাটবটসগুলি

মূলত, আপনাকে সঠিক প্রশ্নগুলি সঠিক ভাবে জিজ্ঞেস করতে হবে, এবং সেই প্রশ্নগুলি সংক্ষিপ্তভাবে হতে হবে যাতে ChatGPT এ সমস্ত জিনিসটি একটি প্রশ্নে হ্যান্ডেল করতে পারে। এটা কিছু যা আসলেই প্রোগ্রামিং জ্ঞান এবং অভিজ্ঞতা নিয়ে জানা যায়।

কি আমি নিজেই বাগটি ঠিক করতে পারতাম? নিশ্চই। আমার কাছে আমি একটি বাগ আছে তার পরিধি চেয়ে বেশি আপনারা নেই। কিন্তু বিপরীতে তা হলে আমি জানি না যে এটা কত সময় লাগতো হতো, দুটি ঘন্টা কিংবা দুটি দিন (যার সঙ্গে পিজা, অশ্লীলতা এবং অনেক ক্যাফেইন) আরোপ করতে, যার মধ্যে অনেক বাধাবাধির মাঝে মুহুর্ত দিন। ChatGPT আপনাকে বলতে পারে যে, টানা মিনিটে এটা ঠিক করেছে, অনেক সময় এবং সঙ্কট দুটি দান করে।

ভবিষ্যতে (সম্ভবতঃ ডিস্টোপিয়ান) দিকে দেখা

আমি একটি অতুলনীয় ভবিষ্যত দেখছি, যেখানে আপনি দেখতে পাবেন যে, ChatGPT কে সম্পূর্ণ একশ তিনশ হাজার লাইন কোড দিয়ে ব্যতিক্রম করার জন্য এর প্রমোদের উপর সংশোধনের সাহায্য করতে। Microsoft (যিনি গিটহাব মালিক) ধারাপাতি তৈরি করতে কোপাইলট নামক একটি টুল জন্য ইতিমধ্যেই কার্যরত। মাইক্রোসফট ছাড়াও কেটে নিয়া তাঁরা অপেনএইআই নামক প্রযুক্তির তৈরি করার জন্য অতিরিক্ত বিলিয়ন ব্যয় করেছে।

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

আরও: আমি চ্যাটজি পি টি একটি সংক্ষিপ্ত স্টার ট্রেক এপিসোড লিখতে বলেছিলাম। সত্যিই এটি সাফল্য হয়েছে

কোড যা আমি প্রদান করলাম, চ্যাটজিপিটি কত ভালোভাবে আমার ত্রুটি চিনতে পেরেছে দেখে আমি নিশ্চয়ই দেখতে পাচ্ছি একটি ভবিষ্যতে যেখানে প্রোগ্রামাররা কেবল চ্যাটজিপিটির (অথবা Microsoft ব্র্যান্ডের সমকক্ষ) মতে চাকরি করে ডোরার ত্রুটিগুলি খুঁজে বের করে এবং ঠিক করার জন্য প্রকল্পগুলি থেকে।

এবং এখানে আমি এই কথাবার্তা টানবার সময় একটি বেশ অন্ধকার জায়গায় যাচ্ছি।

চিন্তা করুন যে আপনি চাকগিপিটির মাধ্যমে একটি নির্দিষ্ট প্রকল্পের জন্য আপনার গিটহাব রিপোজিটরিতে বাগগুলি সন্ধান করে এবং তা ঠিক করে দিতে পারেন। একটি পদ্ধতি হতে পারে যেখানে এটি আপনার সেট করা প্রতি বাগকে আপনার অনুমোদনের জন্য প্রদর্শন করবে, যাতে আপনি শুধুমাত্র তা ঠিক করতে পারেন।

তবে এমন কোন অবস্থা কি যেখানে আপনি চ্যাটজিপিটি কে তথ্য সংগ্রহ করতে বললেন কোডের ভুলগুলি ঠিক করতে এবং নিজের প্রগ্রামের কোডটি নিজে দেখার পরিচেষ্টা না করে করতে দিলেন? আবারও কি কোন মন্দ কিছু কোডে অন্তর্ভুক্ত করতে পারে?

আরও কিছু বিবেচনা:  বার্ড বনাম চ্যাটজিপিটি: কি বার্ড আপনাকে কোড লিখতে সাহায্য করতে পারে?

পরিস্থিতি কেমন হতে পারে সেটা বিবেচনা করা হয়েছে যেখানে একটি অত্যাধুনিকভাবে সক্ষম AI এর কাছে সম্পূর্ণ বিশ্বের ধারণক্ষেত্রের মাঝে সবগুলো কোডকে Github সংগ্রহস্থলে প্রবেশ পাবে? সেই সকল কোডে ঐ AI কি লুকিয়ে রাখতে পারবে? যদি সে সকল আমাদের কোডে প্রবেশ পারে, ঐ AI পৃথিবীর কাঠামোগুলোকে কি আপদাজনক খেয়ালো করতে পারবে?

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

আমি পুরোপুরি সচেতন যে উপরের পরিস্থিতি বিরাটিক এবং আলারমিস্টর মতো। তবে এটা সম্ভবও। শেষবারে, যখন প্রোগ্রামাররা তাদের কোডটি Github-এ দেখেন, তখন কেউ অন্যান্য সমস্ত লাইনগুলি দেখতে পারেন না।

আরও একটি বিবেচনা: কিভাবে ChatGPT ব্যবহার করে Excel ফরমুলা লিখতে হবে

আমার ক্ষেত্রে আমি খুব ভালো ভাবে এটা চিন্তা করবো না। আমি চাই না ২০২০ এর বাক্যে আরও অংকে প্রয়াত দারুণ ভাবে তল্লুক করতে হয়ে দেউটা মুহুর্তে ছাই চাই করতে। বাদ দিয়ে আমি অক্ষমীয়ায় ChatGPT কে আরও কিছু রুটিন লিখতে সহায়তা করবো, মাথাটা নামাবো এবং আশা করবো ভবিষ্যতের এই এওয়াইগুলো আমাদের সবাইকে আহত করবে না আমাদের ("কোন মানুষকে ক্ষতির বেকহয়ে আনা না" এর প্রচেষ্টাতে)।

আপনি কি ভেবেছেন কি ছ্যাটজিপিটি বাগ ঠিক করতে সহায়ক বা ঘৃণা উপস্থাপন করে? আপনি কি মনে করেন যে এটি আমাদের ঘুমে মারবে অথবা আপনি মনে করেন যে আমরা চোখ পতঙ্গবদ্ধভাবে আমাদের নিষিদ্ধ পথানুসারী অবস্থা দেখবো? অথবা আপনি, আমার মত কি, এটি অত্যাধিক ভাবা না করার চেষ্টা করবেন কারণ এটি মাথা ব্যথা করে? নিচের মন্তব্যগুলিতে আমাকে জানান। এখনো পারেন।

সম্পর্কিত নিবন্ধসমূহ

আরও দেখুন >>

HIX.AI দিয়ে AI এর শক্তি আনলক করুন!