ইউনিট 8 / 11

RAG মূল্যায়ন এবং পর্যবেক্ষণ

লাভ:

  • মেট্রিক্স সংজ্ঞায়িত করা যা ধারণ এবং প্রজন্মের গুণমানকে আলাদাভাবে পরিমাপ করে
  • একটি সোনার প্রশ্ন সেট আপ করুন এবং বিচারক হিসাবে LLM-এর সাথে স্বয়ংক্রিয় মূল্যায়ন চালান
  • প্রতিক্রিয়া, পর্যবেক্ষণ এবং উত্পাদনে রিগ্রেশন পরীক্ষার মাধ্যমে গুণমান বজায় রাখা

বাক্যটি "আমি সহকারী ইনস্টল করেছি, এটি ভাল কাজ করছে বলে মনে হচ্ছে" একটি প্রকৌশল বিবৃতি নয়। RAG সিস্টেমগুলি নিঃশব্দে ভেঙ্গে যায়: একটি নতুন নথির ধরন পুনরুদ্ধারকে বোকা বানায়, দ্রুত পরিবর্তন সঠিকতা হ্রাস করে, সূচকটি বাসি হয়ে যায়। এটি উপলব্ধি করার একমাত্র উপায় হল পরিমাপ করা। এই ইউনিটে, আমরা কীভাবে আরএজি গুণমান পরিমাপ করব (পুনরুদ্ধার এবং প্রজন্ম আলাদাভাবে), স্বয়ংক্রিয় মূল্যায়ন (এলএলএম-বিচারক) এবং উত্পাদনের গুণমান বজায় রাখব (মনিটরিং, রিগ্রেশন)। "আপনি যা পরিমাপ করেন না তা আপনি উন্নত করতে পারবেন না" এই ইউনিটের মূলমন্ত্র।

দুটি পৃথক জিনিস পরিমাপ

RAG এর দুটি পা আছে এবং আলাদাভাবে পরিমাপ করতে হবে কারণ সমস্যাটি তাদের যেকোনো একটিতে হতে পারে:

  1. পুনরুদ্ধারের গুণমান: সঠিক অংশটি কি এসেছে?
  2. প্রজন্মের গুণমান: সঠিক উত্তর কি আগত অংশ থেকে উত্পাদিত হয়েছিল?

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

পুনরুদ্ধার মেট্রিক্স

পুনরুদ্ধার একটি বাছাই/অ্যাক্সেস সমস্যা; শাস্ত্রীয় তথ্য পুনরুদ্ধার মেট্রিক্স দ্বারা পরিমাপ করা হয়। এর জন্য আপনার অবশ্যই গোল্ডেন ক্লাস্টার থাকতে হবে: প্রতিটি প্রশ্নের জন্য কোন অংশটি "সঠিক" তা জানা।

মেট্রিক

কি ব্যবস্থা

সহজ সংজ্ঞা

Recall@k

উপরের কে সঠিক টুকরা?

সঠিক অংশ ক্যাপচার হার

নির্ভুলতা@k

ফিরে আসা k টুকরাগুলির কতগুলি প্রাসঙ্গিক?

যা আনা হয় তা পরিষ্কার করা

MRR (গড় পারস্পরিক র‌্যাঙ্ক)

কোন ক্রমে সঠিক টুকরা?

পুরষ্কারগুলি শীর্ষস্থানীয় স্থানে রয়েছে

হিট রেট

অন্তত একটি সঠিক টুকরা পৌঁছেছেন?

সাফল্যের সবচেয়ে মৌলিক পরিমাপ

ব্যবহারিক মন্তব্য: Recall@k কম হলে, চঙ্কিং বা অনুসন্ধান কৌশল (হাইব্রিড, কে, রি-র্যাঙ্কিং) পুনরায় কাজ করা উচিত। যদি নির্ভুলতা কম হয় কিন্তু রিকল বেশি হয়, তাহলে পুনরায় র‌্যাঙ্কিং যোগ করা একটি ভালো পদক্ষেপ।

জেনারেশন মেট্রিক্স

যখন সঠিক অংশটি আসে, আমরা মডেল দ্বারা উত্পাদিত প্রতিক্রিয়ার গুণমান পরিমাপ করি। তিনটি মৌলিক মাত্রা:

  • বিশ্বস্ততা: উত্তরের প্রতিটি দাবি কি প্রসঙ্গ দ্বারা সমর্থিত? কোন ফিটিং আছে? এটি হ্যালুসিনেশনের একটি সরাসরি পরিমাপ।
  • উত্তরের প্রাসঙ্গিকতা: উত্তরটি কি আসলেই প্রশ্নের উত্তর দেয় নাকি বিষয়বস্তু নয়?
  • সম্পূর্ণতা: প্রসঙ্গের সমস্ত প্রাসঙ্গিক তথ্য ব্যবহার করা হয়েছে বা এটি অনুপস্থিত?

এইগুলি প্রায়শই "সত্য/মিথ্যা" এর মত বাইনারি না করে গ্রেডেড ভিত্তিতে (যেমন 1-5) স্কোর করা হয়।

টিপ: একটি পৃথক মেট্রিক হিসাবে বিশ্বস্ততা ট্র্যাক করুন। যথার্থতা কমে গেলে বিশ্বস্ততা কমে গেলে সমস্যা হয় প্রজন্ম; যদি বিশ্বস্ততা বেশি হয় কিন্তু উত্তরটি ভুল হয়, তাহলে সমস্যা হল ভুল অংশ (পুনরুদ্ধার)। একসাথে, এই দুটি মেট্রিক একটি কম্পাস যা ত্রুটির অবস্থান দেখায়।

একটি গোল্ডেন প্রশ্ন সেট স্থাপন

প্রতিটি পরিমাপের জন্য একটি সুবর্ণ সেট/মূল্যায়ন ডেটাসেট প্রয়োজন: বাস্তবসম্মত প্রশ্ন + প্রত্যাশিত সঠিক উত্তর + সঠিক উৎস অংশ। 30-50টি ভালভাবে বাছাই করা প্রশ্ন দিয়ে শুরু করা 500টি এলোমেলো প্রশ্নের চেয়ে ভালো। সেটে নিম্নলিখিতগুলি অন্তর্ভুক্ত করুন: প্রায়শই জিজ্ঞাসিত বাস্তব প্রশ্ন, পরিচিত কঠিন প্রশ্ন, কোন উত্তর ছাড়া ফাঁদ প্রশ্ন (একটি বলা উচিত "আমি জানি না"), পরস্পরবিরোধী উত্স সহ প্রশ্ন।

# গোল্ডেন ক্লাস্টারের উদাহরণ (ধারণাগত)[ {"প্রশ্ন": "বার্ষিক ছুটি কত দিনের?", "প্রত্যাশিত_উত্তর": "1-5 বছরের জ্যেষ্ঠতার জন্য 14 দিন", "সঠিক_পার্ট_আইডি": "দুই-অংশ-3", "বিভাগ": "ছুটি"}, {"প্রশ্ন": "কোথায় আছে?" # ফাঁদ: আমি "সঠিক_পার্ট_আইডি" জানি না: নাল, "বিভাগ": "ফাঁদ"}]

এলএলএম-এজ-জজ: স্বয়ংক্রিয় মূল্যায়ন

হাত দিয়ে শত শত উত্তর স্কোর করা ক্লান্তিকর। এলএলএম-বিচারক মডেল হল যখন একটি মডেল নির্দিষ্ট মানদণ্ডের ভিত্তিতে অন্য মডেলের উত্তরকে স্কোর করে এবং ন্যায্যতা দেয়। একটি ভাল বিচারক প্রম্পট স্পষ্টভাবে মানদণ্ড সংজ্ঞায়িত করে, উদাহরণ দেয় এবং ন্যায্যতার জন্য জিজ্ঞাসা করে।

# LLM-এজ-জজ প্রম্পট (ধারণাগত) আপনি একজন নিরপেক্ষ মূল্যায়নকারী। প্রদত্ত CONTEXT এবং প্রত্যাশিত উত্তর অনুযায়ী নিচের উত্তরটির মূল্যায়ন করুন। স্কোর (1-5) এবং ন্যায্যতা:- বিশ্বস্ততা: উত্তরের প্রতিটি দাবি কি প্রসঙ্গে সমর্থিত?- নির্ভুলতা: উত্তর কি প্রত্যাশিত উত্তরের সাথে মেলে?- সম্পূর্ণতা: প্রাসঙ্গিক তথ্য কি সম্পূর্ণ? বিশেষ করে: যদি উত্তরে তথ্য থাকে না, তাহলে বিশ্বস্ততা 1 দিন এবং কোন দাবিটি বানোয়াট তা নির্দেশ করুন৷ CONTEXT: {context}প্রত্যাশিত: {প্রত্যাশিত}উত্তর: {উত্তর}আউটপুট: {বিশ্বস্ততা, নির্ভুলতা, সম্পূর্ণতা, ন্যায্যতা}

সতর্কতা: বিচারক হিসেবে এলএলএম নিখুঁত নয়; তাদের নিজস্ব পক্ষপাত থাকতে পারে (দীর্ঘ উত্তর, তাদের নিজস্ব শৈলী পছন্দ করে)। এছাড়াও বিচারক যাচাই করুন: বিচারক এবং মানব উভয়ের দ্বারা কিছু উত্তর স্কোর করুন এবং তাদের মধ্যে চুক্তি পরিমাপ করুন। বিচারক যদি মানুষের স্কোরের সাথে সামঞ্জস্যপূর্ণ হন, আপনি তাকে বিশ্বাস করতে পারেন।

দুর্বল/শক্তিশালী রেটিং

দুর্বল ("এটি আমার জন্য ভাল ছিল"):

আমি কয়েকটি প্রশ্ন জিজ্ঞাসা করেছি এবং উত্তরগুলি ভাল বলে মনে হয়েছিল। আমি এটি লাইভ পেয়েছি। # সমস্যা: কোন পরিমাপ নেই, রিগ্রেশন অদৃশ্য, উন্নতি অন্ধ।

শক্তিশালী (গোল্ড ক্লাস্টার + বিযুক্ত মেট্রিক্স + স্বয়ংক্রিয় রায় + রিগ্রেশন):

40টি প্রশ্নের গোল্ডেন ক্লাস্টার। প্রতিটি পরিবর্তনের সাথে, recall@5, বিশ্বস্ততা এবং নির্ভুলতা স্বয়ংক্রিয়ভাবে পরিমাপ করা হয়। স্কোর কমে গেলে, পরিবর্তনটি ফিরিয়ে আনা হয়। উৎপাদনে, ব্যবহারকারীর প্রতিক্রিয়া সংগ্রহ করা হয় এবং সেটে যোগ করা হয়।

উৎপাদনে মনিটরিং এবং রিগ্রেশন

মূল্যায়ন একবার করে শেষ করা হয় না। তিনটি ধ্রুবক অনুশীলন:

  • রিগ্রেশন টেস্টিং: প্রতিটি প্রম্পট/পুনরুদ্ধার/মডেল পরিবর্তনে স্বয়ংক্রিয়ভাবে চালানো গোল্ডেন ক্লাস্টার। স্কোর কম হলে, পরিবর্তন বিপরীত হয়। এটি "এটি আরও ভাল করার চেষ্টা করার সময় এটি ভাঙতে" বাধা দেয়।
  • উৎপাদন পর্যবেক্ষণ: বাস্তব প্রশ্নে "আমি তথ্য খুঁজে পাইনি" হার, গড় বিলম্ব, খরচ, ব্যবহারকারীর প্রতিক্রিয়া (👍/👎) পর্যবেক্ষণ করা হয়। "আমি জানি না" হঠাৎ বৃদ্ধি প্রায়শই একটি সূচক বা পুনরুদ্ধার ত্রুটির প্রথম লক্ষণ।
  • ফিডব্যাক লুপ: ব্যবহারকারীর দ্বারা প্রদত্ত আসল প্রশ্নগুলি পর্যালোচনা করা হয় এবং সোনার স্তূপে যোগ করা হয়; এইভাবে, সেটটি সময়ের সাথে সাথে আরও সমৃদ্ধ হয় এবং সিস্টেমের অন্ধ দাগগুলি বন্ধ হয়ে যায়।

তিনটি মিনি কেস

কেস 1 - নীরব রিগ্রেশন। একটি দল এটিকে "উন্নতি" করার জন্য প্রম্পটটিকে সংশোধন করেছে; সাধারণ নির্ভুলতা বৃদ্ধি পেয়েছে, কিন্তু ট্র্যাপ প্রশ্নে বিশ্বস্ততা 30% কমেছে (মডেলটি আরও ফিট হতে শুরু করেছে)। সোনালি গুচ্ছের ফাঁদ প্রশ্ন না হলে তা নজরে পড়ত না; রিগ্রেশন টেস্টিং পরিবর্তনটি ফিরিয়ে দিয়েছে।

কেস 2 - ভুল পা সোজা করা। একজন সহকারীর উত্তর খারাপ ছিল; দলটি কয়েক সপ্তাহ ধরে প্রম্পটে কাজ করেছিল। যখন আমরা পুনরুদ্ধারের মেট্রিক্স পরিমাপ করি, তখন recall@5 ছিল মাত্র 48% — সমস্যাটি পুনরুদ্ধারের মধ্যে ছিল, প্রজন্মের নয়। যখন হাইব্রিড + রি-র‍্যাঙ্কিং যোগ করা হয়, তখন প্রত্যাহার বেড়ে 89% হয় এবং সঠিকতাও বেড়ে যায়।

কেস 3 - উৎপাদন সতর্কতা। একদিন, একজন সহায়তা সহকারীর জন্য "আমি তথ্য খুঁজে পাইনি" হার 6% থেকে 34% এ বেড়েছে। ট্র্যাকপ্যাড সতর্ক করেছে; কারণটি ছিল যে ইন্ডেক্সিং কাজ, যা রাতে চলে, নীরবে ব্যর্থ হয়েছে এবং নতুন নিবন্ধ আপলোড করা হয়নি। মনিটরিং ছাড়া, ভুল "আমি জানি না" বিবৃতি কয়েক দিন অব্যাহত থাকত।

সাধারণ ভুল

  • "এটি আমার জন্য ভাল কাজ করেছে" এর সাথে সন্তুষ্ট হওয়া: পরিমাপ ছাড়া, রিগ্রেশন অলক্ষিত হয়।
  • পুনরুদ্ধার এবং প্রজন্মকে পৃথক না করা: আপনি ভুল পা সংশোধন করবেন এবং সময় নষ্ট করবেন।
  • ফাঁদ প্রশ্ন জিজ্ঞাসা না করা: জিনিসগুলি তৈরি করার প্রবণতা সোনালী ক্লাস্টারে প্রদর্শিত হয় না।
  • বিচারক যাচাই না করা: একটি পক্ষপাতদুষ্ট জুরি মিথ্যা আস্থা দেয়।
  • উৎপাদন পর্যবেক্ষণ নয়: সূচকের ব্যর্থতা, ব্যয় বিস্ফোরণ নীরবে চলছে।

সংক্ষেপে

  • RAG-তে, পুনরুদ্ধার এবং প্রজন্মের গুণমান আলাদাভাবে পরিমাপ করা হয়; কোন পা ক্ষতিগ্রস্ত হয়েছে তা আগে নির্ধারণ করতে হবে।
  • recall@k, precision@k, MRR উদ্ধারের জন্য; বিশ্বস্ততা, উপযুক্ততা, সম্পূর্ণতা প্রজন্মের জন্য ব্যবহৃত হয়।
  • প্রতিটি পরিমাপের জন্য একটি সোনার ক্লাস্টার প্রয়োজন; এতে বাস্তব, কঠিন, ফাঁদ এবং পরস্পরবিরোধী প্রশ্ন রাখুন।
  • LLM-বিচারক হিসেবে বড় সেট স্বয়ংক্রিয় স্কোর; কিন্তু বিচারক নিজেই মানুষের বিরুদ্ধে ন্যায়সঙ্গত হতে হবে.
  • রিগ্রেশন টেস্টিং, প্রোডাকশন মনিটরিং এবং ফিডব্যাক লুপ সময়ের সাথে সাথে মান বজায় রাখে।

আবেদন টাস্ক

(1) আপনার নিজের সহকারীর জন্য কমপক্ষে 15টি প্রশ্নের একটি সোনালী সেট তৈরি করুন: কমপক্ষে 3টি ফাঁদ (কোনও উত্তর নেই), 3টি কঠিন, 2টি পরস্পর বিরোধী উত্স প্রশ্ন অন্তর্ভুক্ত করুন৷ প্রতিটি প্রশ্নের জন্য প্রত্যাশিত উত্তর এবং সঠিক অংশ লিখুন। (2) ম্যানুয়ালি এই সেটের সাথে দুটি ভিন্ন প্রম্পট সংস্করণ তুলনা করুন; বিশ্বস্ততা এবং নির্ভুলতার জন্য প্রতিটি উত্তরকে 1-5 পয়েন্ট দিন। (3) আপনার নিজের মানদণ্ডে উপরের LLM-এজ-জজ প্রম্পটটিকে মানিয়ে নিন। (4) 3টি মেট্রিক সনাক্ত করুন যা আপনি উত্পাদনে ট্র্যাক করবেন এবং প্রতিটির জন্য জিজ্ঞাসা করুন "আমি কোন প্রান্তে অ্যালার্ম করব?" মান লিখুন।

চেকলিস্ট

  • [ ] আমি আলাদা মেট্রিক্স দিয়ে ধরে রাখা এবং প্রজন্মের গুণমান পরিমাপ করতে পারি।
  • [ ] আমি জানি recall@k, বিশ্বস্ততা মানে কি।
  • আমি একটি সোনালী ক্লাস্টার তৈরি করতে পারি যাতে বাস্তব, কঠিন, ফাঁদ এবং পরস্পরবিরোধী প্রশ্ন রয়েছে।
  • [ ] আমি স্বয়ংক্রিয় মূল্যায়ন সেট আপ করতে পারি এবং বিচারককে LLM-এ-জজ দিয়ে যাচাই করতে পারি।
  • [] আমি রিগ্রেশন টেস্টিং, প্রোডাকশন মনিটরিং এবং ফিডব্যাক লুপ পরিচালনা করতে পারি।