সেই বিকাশকারী হল চ্যাটজিপিটি, এবং এর সাথে আমার প্রেম-ঘৃণার সম্পর্ক রয়েছে।
আজকাল এআই সম্পর্কে অনেক নিবন্ধ রয়েছে, তাই আমি এটিকে সংক্ষিপ্ত রাখার চেষ্টা করব।
কোড করার জন্য ChatGPT ব্যবহার করা আপনার অধীনে একজন জুনিয়র ডেভেলপার থাকার মতো। তারা সেখানে 80% কোড পেতে পারে, কিন্তু আপনাকে কার্যত প্রতিটি লাইন পর্যালোচনা করতে হবে।
আমাকে স্বীকার করতে হবে যে কোড লিখতে সাহায্য করার জন্য আপনি ChatGPT ব্যবহার করতে পারেন এমন অনেক উপায় রয়েছে। এটি সম্ভবত তাদের মধ্যে ভাল এবং অন্যদের জন্য খারাপ।
উদাহরণস্বরূপ, আমি অনেক লোককে সার্চ ইঞ্জিন হিসাবে এটি ব্যবহার করার কথা শুনেছি। আমি ব্যক্তিগতভাবে এটি কিছুটা সন্দেহজনক মনে করি। অনুসন্ধানের মাধ্যমে ডকুমেন্টেশন বা এমনকি উত্তর খুঁজে পাওয়া কঠিন নয়। আমি কাগি ব্যবহার করি যা ফ্লাফ কাটতে সাহায্য করে।
বিপরীতে, ChatGPT ব্যবহার করে, উত্তরটি সত্য কিনা তা আপনি কীভাবে জানবেন?
স্পেকট্রামের অন্য দিকে, প্রচুর লোক এটিকে একটি মহিমান্বিত স্বয়ংক্রিয় সমাপ্তি হিসাবে ব্যবহার করছে। Github Copilot এর মত কিছু। আমি যে দরকারী হচ্ছে দেখতে পারেন.
আমি যে দৃশ্যকল্পটি বেছে নিয়েছি তা হল:
আমার কোডকে chakra-ui থেকে tailwindcss এ রূপান্তর করা হচ্ছে।
কেন?
মাঠের চারপাশে তাকিয়ে দেখে মনে হলো ভালো প্রম্পট করাই ভালো বা মাঝারি ফল পাওয়ার পার্থক্য। আমি এটিতে সেরা নই, তবে আমি কিছু গবেষণা করেছি এবং আমার সেরা চেষ্টা করেছি।
আমি এটিকে একটি ভাল অবস্থায় পেতে একাধিক প্রম্পট ব্যবহার করা নিশ্চিত করেছি। শুধুমাত্র আমার কোড পেস্ট করা যখনই মনে হয় এটি জানে যে এটি শুধুমাত্র আমার কোড রূপান্তর করা উচিত।
সত্যই, এই অংশ উন্নত করা যেতে পারে. UI এবং ইন্টারঅ্যাকশনের মধ্যে, এটি ব্যবহার করা বেশ একটি কাজ:
এটি কাঙ্ক্ষিত অবস্থায় পৌঁছাতে কিছুটা সময় লাগতে পারে
আমি কি লিখব তা নিয়ে ভাবার মাঝে, তারপর প্রতিক্রিয়ার জন্য অপেক্ষা করা এবং লেখা শেষ করা, এই কাজটি করতে বেশ বিরক্ত লাগে।
এটা অসামঞ্জস্যপূর্ণ
এটি সাহায্য করে না যে আপনি সবসময় একই প্রম্পটগুলি পুনরায় ব্যবহার করতে পারবেন না। ChatGPT এর কিছু এলোমেলোতা আছে, তাই আমাকে প্রতিবার প্রম্পটটি টুইক করতে হয়েছিল। পূর্বে কাজ করা একটি প্রম্পট কপি-পেস্ট করা সাহায্য করেনি।
পছন্দসই অবস্থা থেকে বেরিয়ে আসা খুব সহজ
উপরেরটি ঠিক আছে যদি এটি একবারের জিনিস হয়। কিন্তু আমি দেখেছি যে AI এর পক্ষে প্রথম কোড রূপান্তরের পরে সবকিছু ভুলে যাওয়া খুব সহজ। আমি বিশ্বাস করি 3 বার সবচেয়ে বারবার সাফল্য পেয়েছি। এর বাইরে, এটি আমার কোড কী করে তা ব্যাখ্যা করার মতো সম্পূর্ণ সম্পর্কহীন জিনিস ফিরিয়ে দিয়েছে।
টোকেন বেশ সীমিত ফ্যাক্টর
এটির টোকেন সীমার কারণে এটি তৈরি করতে পারে এমন অনেক কোড রয়েছে। এটি কিভাবে টোকেন গণনা করে তা দেখতে আপনি এখানে টোকেনাইজারটি পরীক্ষা করতে পারেন। এটি কোডের জন্য খুব বন্ধুত্বপূর্ণ নয়। নীচে এর আউটপুটগুলির একটির উদাহরণ দেওয়া হল। প্রতিটি ভিন্ন রঙ একটি টোকেন প্রতিনিধিত্ব করে।
এই কারণে, আমাকে রূপান্তরটিকে একাধিক ধাপে ভাগ করতে হবে। তা না হলে মাঝপথেই থেমে যাবে প্রজন্ম। এটিকে চালিয়ে যেতে বলা বেশিরভাগ সময় কাজ করে না। উপরের পয়েন্টগুলির সাথে একত্রিত হলে, এটি দ্রুত একটি কাজ হয়ে যায়।
সব মিলিয়ে, আমি যে অনুভূতি পাই তা হল আমি ইংরেজি লিখতে চাই না। যদি আমাকে ইতিমধ্যে কিছু লিখতে হয়, আমি বরং সরাসরি কোড লিখব যা কাজ করে।
আমি দেখতে পাচ্ছি প্রম্পট ইঞ্জিনিয়ারিং ভবিষ্যতের জন্য একটি মূল দক্ষতা। আজকের বিশ্বে কীভাবে অনুসন্ধান করতে হয় তা জানার মতোই একটি মূল দক্ষতা।
সমস্ত কাজের জন্য, ChatGPT কিছু চমত্কার চিত্তাকর্ষক কোড আউটপুট করেছে। এখানে মূল এবং ফলাফলের মধ্যে কিছু তুলনা রয়েছে:
আপনি দেখতে পাচ্ছেন, এটি শালীনভাবে কাজটি করেছে।
ভাল
কাঠামোটি বেশ ভালভাবে আনা হয়েছে
বিশদ বিবরণ ব্যতীত, এইচটিএমএল কাঠামোটি আসলটির মতোই। ব্যবধান বন্ধ, কিন্তু সামগ্রিক বিন্যাস রয়ে গেছে.
পাঠ্য বিষয়বস্তু পরিবর্তন হয় না
বিষয়বস্তু নিজেই ভাল পরিচালনা করা হয়েছে. যদিও আমাকে তাদের সবগুলোই দুবার চেক করতে হয়েছিল, এর কোনোটিই পরিবর্তন করা হয়নি। একমাত্র ব্যতিক্রম হল যারা জেএস থেকে প্রাপ্ত।
খারাপ জন
এটা র্যান্ডম ক্লাস ছিল
এমন অনেক ক্লাস আছে যা কিছুই করে না। কিছু পরিবর্তন করা হয়েছে, এবং অন্য কিছু অবৈধ টেলওয়াইন্ড ক্লাস ছিল।
অনেক ক্ষুদ্র পার্থক্য আছে
UI দেখে মনে হচ্ছে যেন একটি লাইব্রেরি সবেমাত্র আপগ্রেড করা হয়েছে এবং কেউ কোডটি স্থানান্তর করতে ভুলে গেছে। এই ক্ষেত্রে, এর কারণ হল ChatGPT এলোমেলোভাবে ক্লাসের মান পরিবর্তন করেছে। উদাহরণস্বরূপ, 3 থেকে 4 এর padding
, অথবা font-weight
মোটা থেকে স্বাভাবিক পরিবর্তন করা। বিস্তারিত সব ভুল ছিল.
এটি অর্ধেক সময় কাজ করে না
উপরের স্ক্রিনশটগুলি আমি সরাসরি তুলনা করতে পারি। বাস্তবে, ফলাফলগুলি হয় অসম্পূর্ণ বা শুধু যথেষ্ট ভুল ছিল যে আমাকে এটিকে কাজ করতে অনেক পরিবর্তন করতে হয়েছিল। এবং সেই কারণে, আমি এটিকে পাশাপাশি তুলনা করতে পারি না। কোডটি চালানো না হওয়ায় আমি তুলনা করতে পারি এমন কিছুই নেই।
এই সম্পর্কে মহান কি আমি থেকে কাজ কিছু আছে. ধন্যবাদ, কাজ নিজেই খুব সহজবোধ্য. ত্রুটিগুলি সনাক্ত করা সহজ। চক্র-উই এবং টেইলওয়াইন্ড থেকে ক্লাসের মধ্যে ম্যাপিং প্রায় এক-এক। এটি শুধুমাত্র ক্লান্তিকর কারণ সিনট্যাক্স ভিন্ন।
কিন্তু এই পদ্ধতিটি PRs পর্যালোচনা করার মতো। সবকিছু সঠিকভাবে করা হয়েছে তা নিশ্চিত করতে আমাকে পুরো কোডটি স্ক্যান করতে হয়েছিল।
এটা প্রথম নজরে ঠিক দেখায়. কিন্তু অনেক গোছা আছে একবার আপনি এটির সাথে কাজ করুন এবং ঘনিষ্ঠভাবে মনোযোগ দিন। এটি নিরাপত্তার এই মিথ্যা অনুভূতি নিয়ে আসে যা একবার আমি সমস্ত ত্রুটিগুলি সম্পর্কে জানতে পেরে আমাকে কিছুটা হতাশ করে তোলে।
এটির একটি বড় অংশ হল কোড যা অন্যান্য কোডবেস থেকে ইন্টারপোলেট করা হয়। এটা ভয়ানক দেখায় না, কিন্তু আমি যা চেয়েছিলাম তা নয়।
এমনকি কিছু উদ্বেগজনক পরিবর্তন রয়েছে যেমন h2 থেকে h1 তে শিরোনাম পরিবর্তন করা। আমি কেবল অনুমান করতে পারি এটি বিষয়বস্তুর কারণে এটি করেছে।
এটি অনুভূত হয়েছে যে একজন জুনিয়র বিকাশকারী একসাথে কিছু থাপ্পড় মেরেছে এবং তাদের কোড পরীক্ষা করেনি । এবং এখন আমাকে তাদের নিজেরাই ঠিক করতে বলতে না পেরে এটি পর্যালোচনা করতে হবে এবং ঠিক করতে হবে।
এবং এই ভয়ঙ্কর. আমি ইতিমধ্যে কর্মক্ষেত্রে PR পর্যালোচনা করার আমার ফিক্স করেছি। এখন আমার নিজের প্রজেক্টের জন্যও এটা করতে হবে? না ধন্যবাদ!
যদিও আমি মনে করি না যে এটি এখনও কাছাকাছি কোথাও আছে, আমি মনে করি AI ভবিষ্যতে উন্নয়নের জন্য কোনও সময়ে সহায়ক হবে। উত্তর এলএলএম আছে কিনা, কে জানে?
টোকেনের সীমা ক্রমাগত বাড়ছে
আমি এই নিবন্ধটি যথেষ্ট দীর্ঘ বন্ধ রাখা হয়েছে. সেই সময়ে, টোকেন সীমা বাড়ানোর প্রচুর ঘোষণা রয়েছে৷ যদিও আমি নিশ্চিত নই যে এটি সর্বজনীন, অর্থপ্রদান, বা যাই হোক না কেন, এটি দেখতে দুর্দান্ত।
UX প্রম্পট করা সময়ের সাথে সহজ হওয়া উচিত
ChatGPT প্লাগইন এবং আরও ভাল ইন্টিগ্রেশন সহ, অবস্থা মনে রাখা এবং সামঞ্জস্যতা উন্নত করা উচিত। আশা করি, এটি ChatGPT থেকে দরকারী আউটপুট পাওয়ার জন্য প্রয়োজনীয় প্রচেষ্টাকে কমিয়ে দেবে।
ইতিমধ্যে, আমি মাইগ্রেশনের বাকি অর্ধেক ম্যানুয়ালি সম্পন্ন করেছি। এটা কি দ্রুত ছিল? আচ্ছা, কে জানে। এটা একই সম্পর্কে অনুভূত. কিন্তু ম্যানুয়ালি লেখাটা অনেক ভালো লাগলো।