𝗜 𝗔𝗱𝗱𝗲𝗱 𝗮 𝗩𝗲𝗿𝗶𝗳𝘆 𝗟𝗮𝘆𝗲𝗿 𝘁𝗼 𝗠𝘆 𝗟𝗼𝗰𝗮𝗹 𝗥𝗔𝗚 𝘁𝗼 𝗖𝗮𝘁𝗰𝗵 𝗛𝗮𝗹𝗹𝘂𝗰𝗶𝗻𝗮𝘁𝗶𝗼𝗻𝘀
আমি Ollama ব্যবহার করে একটি লোকাল রিসার্চ অ্যাসিস্ট্যান্ট তৈরি করেছি। এটি আমার নিজস্ব গবেষণাপত্রগুলোর ওপর ভিত্তি করে চলে। আমার মেশিন থেকে কোনো তথ্য বাইরে যায় না।
আমি হ্যালুসিনেশন (hallucinations) বন্ধ করতে চেয়েছিলাম। এমন একটি টুল যা আত্মবিশ্বাসের সাথে ভুল সংখ্যা প্রদান করে, তা বিপজ্জনক।
আমি একটি ভেরিফিকেশন লেয়ার যোগ করেছি। এটি তিনটি ধাপে কাজ করে:
- উত্তরটিকে ছোট ছোট দাবিতে (claims) ভাগ করা।
- প্রতিটি দাবি সোর্সের (source) সাথে যাচাই করতে একটি LLM ব্যবহার করা।
- যে দাবিগুলো সোর্স সমর্থন করে না, সেগুলোকে ফ্ল্যাগ (flag) করা।
এর ফলাফল আমাকে একটি কঠিন শিক্ষা দিয়েছে। আমি আমার নিজের ডেটা সম্পর্কে দুবার ভুল করেছিলাম।
প্রথমত, মডেলটি একটি সঠিক সংখ্যা দিয়েছিল কিন্তু ভুল প্রেক্ষাপট (context) ব্যবহার করেছিল। এটি এমন একটি টেস্ট সেটের জন্য ০.৮০৪ AUROC উল্লেখ করেছিল যা আসলে নেই। সংখ্যাটি সঠিক ছিল, কিন্তু প্রেক্ষাপটটি ছিল মিথ্যা। আমার ভেরিফায়ার এটিকে পাস করে দিয়েছিল কারণ সংখ্যাগুলো মিলে গিয়েছিল।
দ্বিতীয়ত, মডেলটি গবেষণাপত্রের অন্য একটি অংশ থেকে একটি সংখ্যা নিয়েছিল। এটি ভুল পরীক্ষার (experiment) সাথে একটি মানকে যুক্ত করেছিল।
এটি পরীক্ষা করে আমি যা শিখেছি তা হলো:
১. ভেরিফিকেশন শুধুমাত্র অনুপস্থিত মানগুলো ধরতে পারে। যদি কোনো সংখ্যা টেক্সটে একেবারেই না থাকে, তবে ভেরিফায়ার তা ধরতে পারে। কিন্তু সংখ্যাটি যদি সঠিক হয় কিন্তু ভুল তথ্যের সাথে যুক্ত থাকে, তবে এটি প্রায়ই ব্যর্থ হয়।
২. একই মডেলের বিচারকদের অন্ধস্থান (blind spots) থাকে। যদি একই মডেল উত্তর লেখে এবং সেই উত্তরটিকেই বিচার করে, তবে সেটি নিজের ভুলগুলোকেই মেনে নেয়। ভুলভাবে যুক্ত করা সংখ্যাগুলো ধরার জন্য ভিন্ন একটি মডেল ব্যবহার করা সাহায্য করে।
৩. একটি ফ্ল্যাগ মানেই সবসময় মিথ্যা নয়। একটি ফ্ল্যাগ তিনটি বিষয় নির্দেশ করতে পারে:
- একটি প্রকৃত হ্যালুসিনেশন।
- একটি রিট্রিভাল এরর (retrieval error) যেখানে সোর্সটি খুঁজে পাওয়া যায়নি।
- একটি সত্য তথ্য যা রিট্রিভ করা টেক্সটে ছিল না। যখন আপনি একটি ফ্ল্যাগ দেখবেন, তখন কেবল দাবিটি মুছে না ফেলে বরং ডেটাটি পুনরায় রিট্রিভ (re-retrieving) করার চেষ্টা করুন।
৪. আপনার গ্রাউন্ড ট্রুথ (ground truth) প্রয়োজন। প্রকৃত উত্তর না জেনে আপনি হ্যালুসিনেশন পরিমাপ করতে পারবেন না। আমি আমার নিজের কাজ সম্পর্কে প্রায় দুটি ভুল ফলাফল প্রকাশ করে ফেলেছিলাম। আমার ফাইলগুলোতে একটি সাধারণ অনুসন্ধানই উভয় ভুল সংশোধন করে দিয়েছে।
আপনার RAG-এর জন্য কিছু ব্যবহারিক পরামর্শ:
- উত্তর দেওয়ার মডেলের চেয়ে ভিন্ন একটি মডেল বিচার করার জন্য ব্যবহার করুন।
- উন্নত রিট্রিভালের (retrieval) দিকে মনোযোগ দিন। বেশিরভাগ "হ্যালুসিনেশন" আসলে রিট্রিভাল ব্যর্থতা মাত্র।
- ফ্ল্যাগগুলোকে কেবল ভুলের চিহ্ন হিসেবে না দেখে, আরও গভীরভাবে দেখার একটি সংকেত হিসেবে বিবেচনা করুন।
Optional learning community: https://t.me/GyaanSetuAi