একটি ক্লড কোড স্বয়ংক্রিয় প্রোগ্রামিং বাস্তব কেসের উপর ভিত্তি করে, কিছু প্রম্পট কৌশল শেয়ার করছি

এই নিবন্ধটি, একটি বাস্তব কেসের মাধ্যমে, আপনাদের সাথে ক্লড কোডের বাস্তব ব্যবহারের উদাহরণ শেয়ার করবে। শেয়ার করার আগে, আসুন একটি ছোট জরিপ করি
মূল প্রয়োজন: একজন সম্মানিত অর্থপ্রদানকারী ব্যবহারকারী চেয়েছিলেন যে আমি নিবন্ধে, নিবন্ধের পরিবর্তনের সময় যোগ করি
এই প্রয়োজনটি প্রথম নজরে, বাস্তবায়ন করা কিছুটা কঠিন মনে হয়। কারণ আমার ওয়েবসাইটের নিবন্ধগুলি, ডাটাবেসে সংরক্ষিত নয়, সবই next.js এর SSG ব্যবহার করে তৈরি করা হয়েছে। এতে কোনো আপডেট সময় নেই।
এখানে একটি কৌশল হল: সমস্যা সমাধান করার সময়, আমরা সরাসরি মূল প্রয়োজন Claude Code কে দেব না, নিম্নলিখিত কয়েকটি কারণ রয়েছে
১. মূল প্রয়োজন তুলনামূলকভাবে অস্পষ্ট, এটি ভুল বুঝতে পারে, যদি একবার এটি ভুল বুঝে যায়, তাহলে শেষ পর্যন্ত যদিও এটি একটি সময় যোগ করবে, কিন্তু এই সময়টি নির্ভরযোগ্য নাও হতে পারে
২. ক্লড কোডের টোকেন খরচ সত্যিই বিশেষভাবে ব্যয়বহুল, তাই, অস্পষ্ট প্রয়োজনীয়তা অযথা প্রচুর টোকেন খরচের কারণ হতে পারে
অতএব, আমাদের মূল প্রয়োজনীয়তাকে একবার বিশ্লেষণ করতে হবে, আমি প্রথমে deepseek এ পরামর্শ নিয়েছিলাম, deepseek আমাকে দুটি সমাধান দিয়েছে
১. ফাইল নির্মাণ সময়, প্রতিবার build করার সময়, আমাদের ফাইলের নির্মাণ সময় পেতে হবে, কিন্তু turbopack এর প্যাকেজিং কৌশল কিছুটা আলাদা, এটি প্রতিবার নির্মাণ করার সময়, ফাইলের hash মান পরিবর্তিত হয়, এই নির্মাণ সময়টি নির্ভরযোগ্য নাও হতে পারে
২. git কমিটের সময়, আমি ভাবলাম, এটি তুলনামূলকভাবে নির্ভরযোগ্য হওয়া উচিত
মোটামুটি সমাধানের দিক পাওয়ার পরে, আমার এই সহজ প্রম্পট ছিল: প্রতিটি .mdx নিবন্ধের শীর্ষে git কমিট সময় কম্পাইল করুন
Claude Code তুলনামূলকভাবে নির্ভরযোগ্য, যদি প্রম্পটটি যথেষ্ট সুনির্দিষ্ট হয়, সাধারণত কোনো সমস্যা নেই, এটি দ্রুত একগুচ্ছ কার্যকর করে
৭ ডলার এর ক্রেডিট খরচ করার পরে, প্রায় ২০ মিনিট সময় নিয়ে, অবশেষে সফলভাবে কার্যকর করা হয়েছে।
যদি কোনো সমস্যা না থাকে, তাহলে সমস্যা দেখা দেয়, এটি ১৭১ টি ফাইলের পরিবর্তন এড়িয়ে গেছে।
এখানে একটি খুব সমস্যাযুক্ত জায়গা এখানে, প্রকৃতপক্ষে এখানে এড়িয়ে যাওয়া ফাইলগুলি, শুধুমাত্র একটি অতিরিক্ত pass প্যারামিটার পাস করেছে, বাকি সব সম্পূর্ণ একই
<PostLayout pass>...কিন্তু এটি নমনীয়তা দেখায়নি, এই অতিরিক্ত পাস করা প্যারামিটারটিকে সম্পূর্ণ ভিন্ন কাস্টম কম্পোনেন্ট হিসাবে সংজ্ঞায়িত করেছে। তারপর এটি প্রক্রিয়া করা এড়িয়ে গেছে ~ ~
import Layout from 'components/post-layout';import { getGitFileInfo } from '@/utils/git-info';export default function Article({ children }: any) { const gitInfo = getGitFileInfo('src/app/আপনার_পথ/page.mdx'); return ( <Layout gitInfo={gitInfo || undefined}> {children} </Layout> );}কিন্তু বাস্তব অবস্থা হল, আমার প্রয়োজনীয় ফলাফলটি এইরকম, চলমান ফলাফল সম্পূর্ণ একই।
import MdxLayout from 'components/mdx-layout';export default function Article({ children }: any) { return ( <MdxLayout pass filePath="src/app/r19base/(4.compiler)/23.compilerlower/page.mdx"> {children} </MdxLayout> );}এবং তখন, আমি প্রম্পটে একটি সমস্যায় পড়েছি
আমি আবার প্রম্পট লিখলাম: উপরের মতো একই পদ্ধতি ব্যবহার করে এড়িয়ে যাওয়া ১৭১টি ফাইল পুনর্গঠন করুন
আমার এই অভিব্যক্তি, গভীরভাবে ভাবলে এতে কিছুটা দ্ব্যর্থতা রয়েছে। কারণ ক্লড কোড ইতিমধ্যেই আমাকে একটি প্রস্তাবিত সমাধান দিয়েছে, কিন্তু আমি এই সমাধানটি স্বীকার করি না, আমার উদ্দেশ্য ছিল, ইতিমধ্যে পরিবর্তিত কয়েকশ ফাইলের মতো স্কিম ব্যবহার করে এড়িয়ে যাওয়া ফাইলগুলি পরিবর্তন করা, কিন্তু কার্যকর করার প্রক্রিয়ায়, এটি এভাবে বুঝেছে: উপরে এটি আমাকে যে প্রস্তাব দিয়েছে সেই স্কিম
এই দ্ব্যর্থতা, সরাসরি এটি আমার অপ্রয়োজনীয় স্কিম অনুযায়ী ২০ মিনিট ধরে দ্রুত কার্যকর করার কারণ হয়েছে, মাঝখানে আরও ২ বার ত্রুটি স্ব-মেরামত হয়েছে, দ্রুত আমার টোকেন গিলেছে, দুটি দ্ব্যর্থতা লড়াই শুরু করে ত্রুটির কারণ হয়েছে।
অবশেষে আমাকে আবার এই কার্যকর করা পরিত্যাগ করতে হয়েছিল, আমার শব্দার্থ পুনরায় স্পষ্ট করতে হয়েছিল।
সারসংক্ষেপ
১. প্রম্পটে, সম্ভব হলে তুলনামূলকভাবে স্থিতিশীল এবং সঠিক সমাধান অন্তর্ভুক্ত করা উচিত, AI কে যত কম চিন্তা করতে দেয় তত ভাল, এটি বিভ্রান্তির হার কমাতে পারে।
২. প্রয়োজনীয়তার প্রম্পটে কোনো দ্ব্যর্থতা থাকা উচিত নয়, দ্ব্যর্থতা ত্রুটির কারণ হতে পারে, যদিও ক্লড কোড শেষ পর্যন্ত মেরামত করতে পারে, কিন্তু এটি প্রচুর টোকেন খরচের কারণ হবে। এবং যেহেতু LLM ভবিষ্যদ্বাণীমূলক প্রক্রিয়ার উপর ভিত্তি করে ফলাফল তৈরি করে, প্রাথমিক ভুল পড়া, দ্ব্যর্থতা ইত্যাদি, পরবর্তী প্রতিটি পদক্ষেপকে ভুল দিকে আরও দূরে নিয়ে যাবে, এবং এটি যুক্তিসঙ্গত স্ব-সংগতি বজায় রাখার চেষ্টা করবে, কিছু অস্তিত্বহীন জিনিস তৈরি করবে, যত বেশি লেখা হবে সমস্যা তত বড় হবে, এবং ডেভেলপারের পর্যালোচনার কঠিনতা বাড়াবে, যদি আপনি এর বিভ্রান্তিতে被骗 হয়ে যান, তাহলে গুরুতর পরিণতি হবে
৩. প্রাকৃতিক ভাষার সীমাবদ্ধতা কোডের মতো সঠিক নয়, প্রম্পটে, ফাইলের নাম, কোড ভেরিয়েবল, কোড বিশেষ শব্দ, পেশাদার পরিভাষা ইত্যাদি অন্তর্ভুক্ত করা, ক্লড কোডের বিভ্রান্তি ব্যাপকভাবে কমিয়ে দেবে





