লাভ:
- জ্ঞান-ভিত্তিক প্রজন্মের (RAG) যুক্তি বোঝা এবং কেন এটি হ্যালুসিনেশন হ্রাস করে
- শুধুমাত্র প্রদত্ত উৎস নথির উপর ভিত্তি করে মডেলটিকে উদ্ধৃতি সহ সাড়া দেওয়ার ক্ষমতা
- প্রশ্নগুলি তৈরি না করেই নিরাপদে স্থানান্তর করে উৎসে নেই এমন প্রশ্নগুলি পরিচালনা করার ক্ষমতা
একটি ভাষা মডেল অনেক "জানে", কিন্তু এটি আপনার কোম্পানির আজকের রিটার্ন নীতি, আপনার বর্তমান মূল্য তালিকা, বা গতকাল পরিবর্তিত আপনার শিপিং চুক্তি জানে না। আরও খারাপ, যখন তিনি জানেন না, তিনি প্রায়শই এটি তৈরি করেন এবং অত্যন্ত আত্মবিশ্বাসী সুরে লেখেন। এটি গ্রাহক পরিষেবার একটি মারাত্মক ত্রুটি: মডেলটি বলে "রিফান্ড 30 দিনের মধ্যে জারি করা হয়" যখন আপনার নীতি 14 দিন হতে পারে৷ যে পদ্ধতিটি এই ফাঁক বন্ধ করে তাকে বলা হয় RAG: Retrieval-Augmented Generation, অর্থাৎ "Retrieval-Augmented Production"।
ধারণাটি সহজ: মডেলটি মেমরি থেকে নয়, তবে সেই মুহূর্তে এটির সামনে রাখা সঠিক উত্স নথি থেকে প্রশ্নের উত্তর দেয়। প্রথমত, প্রশ্নের সাথে প্রাসঙ্গিক নথির সঠিক অংশটি হল "পুনরুদ্ধার", তারপর মডেলটি শুধুমাত্র সেই অংশের উপর ভিত্তি করে উত্তর "উত্পন্ন" করে। এই ইউনিটে, আপনি RAG-এর যুক্তি বুঝতে পারবেন এবং মডেলটিকে কীভাবে লাগাতে হবে তা শিখবেন যাতে এটি শুধুমাত্র আপনার প্রদান করা যাচাইকৃত উৎসের সাথে লেগে থাকে।
দ্রষ্টব্য: এই ইউনিটটি RAG-এর কার্যকরী যুক্তি এবং প্রম্পট দিক শেখায়। এন্টারপ্রাইজ-স্কেল স্বয়ংক্রিয় নথি পুনরুদ্ধার সিস্টেম (ভেক্টর ডাটাবেস, ইত্যাদি) একটি প্রযুক্তিগত ইনস্টলেশন প্রয়োজন; শৃঙ্খলা এখানে সঠিকভাবে প্রতিক্রিয়া জানানোর জন্য সেই সিস্টেমের ভিত্তি।
কেন RAG হ্যালুসিনেশন কমায়?
হ্যালুসিনেশন হল যখন মডেল অবাস্তব তথ্য তৈরি করে যেন এটি বাস্তব। মডেলটিকে এমন একটি প্রতিক্রিয়া তৈরি করার জন্য প্রোগ্রাম করা হয়েছে যা "সম্ভব" বলে মনে হয় যখন এটি একটি ফাঁক দেখে; এটা সত্য কি না জানি না। RAG এই ফাঁকটি পূরণ করে: আপনি মডেলটিকে প্রশ্নের সাথে প্রকৃত প্রাসঙ্গিক পাঠ্য দিন এবং বলুন "শুধুমাত্র এখান থেকে উত্তর"। এই ভাবে মডেলের মাপসই করার "প্রয়োজন" নেই।
তিনটি উপাদান আছে:
- জ্ঞানের ভিত্তি: নির্ভরযোগ্য পাঠ্য যেমন প্রায়শই জিজ্ঞাসিত প্রশ্নাবলী, নীতি নথি, পণ্য ম্যানুয়াল, মূল্য তালিকা।
- পুনরুদ্ধার: প্রশ্নের উত্তর সম্বলিত নথির টুকরো খুঁজে বের করা এবং মডেলকে দেওয়া।
- সীমিত সংস্করণ: শুধুমাত্র সরবরাহকৃত অংশের উপর ভিত্তি করে মডেলটি উদ্ধৃতি সহ প্রতিক্রিয়া জানায়।
ধাপে ধাপে: উৎসের প্রতি বিশ্বস্ত প্রতিক্রিয়া
- উত্স প্রস্তুত করুন। একটি স্পষ্ট এবং আপ-টু-ডেট বিন্যাসে যে পাঠ্যটির উপর ভিত্তি করে প্রতিক্রিয়া হবে তা খুঁজুন (নীতি, FAQ)।
- প্রম্পটে উত্সটি এম্বেড করুন। <source> এর মত একটি ট্যাগে টেক্সট রাখুন।
- আনুগত্যের নিয়ম লিখুন। "শুধুমাত্র উৎস থেকে তথ্য ব্যবহার করুন; উৎস থেকে বিপথগামী হবেন না।"
- উদ্ধৃতি প্রয়োজন. উত্তরটি কোন বিভাগের উপর ভিত্তি করে তাকে নির্দেশ করতে দিন।
- অ-সম্পদ আচরণ সনাক্ত করুন. যদি উত্তরটি উৎসে না থাকে, তাহলে তাকে বলুন "আমার কাছে এই তথ্য নেই" এবং এটি পাস করুন।
- যাচাই করুন। এটির উপর ভিত্তি করে উৎস বাক্যের সাথে তুলনা করে উত্তরটি নিশ্চিত করুন।
অনুলিপিযোগ্য প্রম্পট
অন্তর্নিহিত উত্সের উপর ভিত্তি করে প্রতিক্রিয়া প্রম্পট:
ভূমিকা: আপনি একজন গ্রাহক সহায়তা সহকারী। শুধুমাত্র নীচের <উৎস> ব্লকের তথ্যের উপর ভিত্তি করে প্রশ্নের উত্তর দিন। আপনার সাধারণ জ্ঞান থেকে উৎস, অনুমান বা উত্তরে নেই এমন কোনো তথ্য যোগ করবেন না। "[সূত্র: ...]" বিন্যাসে আপনার উত্তরের শেষে আপনি যে বিভাগটির উপর নির্ভর করছেন সেটি যোগ করুন। উত্তরটি উৎসে না থাকলে, নিম্নলিখিতটি লিখুন: "আমার কাছে এই বিষয়ে নিশ্চিত তথ্য নেই, আমি আপনাকে একজন কর্মকর্তার কাছে স্থানান্তর করছি যিনি সঠিক উত্তর দিতে পারেন।"<source>{{ policy_or_faq_text }}</source>প্রশ্ন: {{ customer_question }}
মাল্টি-সোর্সের ক্ষেত্রে, এটি কোন নথির উপর ভিত্তি করে তা দেখানোর প্রম্পট:
নীচে সংখ্যাযুক্ত একাধিক সংস্থান রয়েছে। প্রশ্নের উত্তর দেওয়ার সময়, আপনি যে উৎসটি ব্যবহার করেছেন তার সংখ্যা উল্লেখ করুন, যেমন [উৎস 2]। যদি একাধিক সূত্র আপনার বিরোধিতা করে, তাহলে স্পষ্টভাবে বলুন এবং বলুন যে কোনটি বেশি আপ-টু-ডেট তা আপনার জিজ্ঞাসা করা উচিত।<sources>1) {{ source_1 }}2) {{ source_2 }}3) {{ source_3 }}</sources>প্রশ্ন: {{ customer_question }}
প্রম্পট যা নিরাপদে অ-উৎস প্রশ্ন পরিচালনা করে:
যদি প্রশ্নের উত্তরটি আংশিকভাবে উৎসে পাওয়া যায়: শুধুমাত্র উৎস দ্বারা আচ্ছাদিত অংশটির উত্তর দিন এবং অবশিষ্ট অংশের জন্য "এই বিশদটি উৎসে নেই" বলুন। অনুমান করে অনুপস্থিত অংশ পূরণ করবেন না।
প্রম্পট যা প্রতিক্রিয়াটিকে ক্লায়েন্টের ভাষায় অনুবাদ করে, কিন্তু উৎসে সত্য থাকে:
উৎসে অফিসিয়াল/প্রযুক্তিগত অভিব্যক্তিকে সরল ভাষায় অনুবাদ করুন যা গ্রাহক বুঝতে পারে, কিন্তু অর্থ এবং সংখ্যাসূচক মান (দিন, পরিমাণ, হার) পরিবর্তন করবেন না। উদাহরণস্বরূপ, "14 ক্যালেন্ডার দিন" থেকে "প্রায় দুই সপ্তাহ" রাউন্ডিং করা; সম্পূর্ণ মান রাখুন।
দুর্বল প্রম্পট / শক্তিশালী প্রম্পট
দুর্বল প্রম্পট
শক্তিশালী প্রম্পট
"আমাদের রিটার্ন পলিসি সম্পর্কে বলুন"
এম্বেড সোর্স + "এখানে শুধুমাত্র উত্তর" + অনুরোধ উদ্ধৃতি
মডেলের স্মৃতি থেকে উত্তর (হয়ত ভুল)
আপনার বর্তমান নথি থেকে উত্তর
যদি এটি উত্সে না থাকে তবে তিনি এটি তৈরি করেন
তিনি বলেন "আমার কাছে এই তথ্য নেই" এবং এটি পাস করে।
বৃত্তাকার এবং সংখ্যা বিকৃত করতে পারেন
দিন/পরিমাণ/রেট ঠিক রাখে
পার্থক্য হল যে শক্তিশালী প্রম্পট মডেলটিকে একটি অ্যাঙ্কর (সোর্স টেক্সট) এবং একটি ব্যান (উৎস বন্ধ করা) দেয়। মডেল আর স্মৃতি থেকে কথা বলে না, তার সামনের বাস্তবতা থেকে।
তিনটি মিনি কেস
কেস 1 - পুরানো নীতির ফাঁদ। "30 দিনের মধ্যে রিটার্ন গৃহীত হয়," এক দোকানের বট ক্রেডিট ছাড়া চলাকালীন বলেছিল; তবে কোম্পানিটি মেয়াদ কমিয়ে ১৪ দিন করেছে। যখন RAG ইনস্টলেশনের সূত্রে আপডেট করা নীতির পাঠ্য যোগ করা হয়, তখন বটটি এখন "14 ক্যালেন্ডার দিন [সূত্র: রিটার্ন পলিসি, নিবন্ধ 2]" প্রতিক্রিয়া জানায়। মিথ্যা প্রতিশ্রুতি থেকে উদ্ভূত রিফান্ড বিরোধ পুনরায় সেট করা হয়েছে।
কেস 2 - দ্বন্দ্ব ধরা। একজন গ্রাহক শিপিং খরচ সম্পর্কে জিজ্ঞাসা. পুরোনো এবং নতুন উভয় মূল্য তালিকা সূত্র হিসাবে সিস্টেমে প্রবেশ করা হয়েছিল। মাল্টি-সোর্স প্রম্পটের জন্য ধন্যবাদ, মডেলটি বলেছে, "দুটি উত্স ভিন্ন মূল্য দেয় (49 TL এবং 59 TL); আমাকে বর্তমানটি নিশ্চিত করতে হবে" এবং সমস্যাটি মানুষের কাছে জানিয়েছি। গ্রাহককে একটি ভুল পরিমাণ বলার পরিবর্তে, তিনি সততার সাথে অনিশ্চয়তা জানান।
কেস 3 - আংশিক প্রতিক্রিয়া শৃঙ্খলা। "আপনি কি পণ্যটি বিদেশে পাঠান এবং কে শুল্ক প্রদান করে?" প্রশ্নে সূত্রটি শুধু বলেছে, চালানটি হয়েছে, কারা কর দিয়েছে সে বিষয়ে কিছুই নেই। মডেলটি বলল, "হ্যাঁ, বিদেশে শিপিং করা হয় [সূত্র: কার্গো FAQ]। তবে, কে কাস্টমস ডিউটি দেয় তা এই নথিতে বলা হয়নি; আমি আপনাকে এটি স্পষ্ট করার জন্য কর্মকর্তার কাছে স্থানান্তর করছি।" অর্ধ-সত্য, অর্ধ-বানোয়াট উত্তরের পরিবর্তে, এটি একটি সৎ এবং আত্মবিশ্বাসী আউটপুট তৈরি করেছে।
পরামর্শ: আপনার জ্ঞানের ভিত্তির সত্য সংস্করণের সবচেয়ে সাম্প্রতিক এবং একক উৎস রাখুন। একই তথ্য থাকা (যেমন রিটার্ন সময়কাল) তিনটি পৃথক নথিতে ভিন্নভাবে লেখা RAG-এর সবচেয়ে বড় শত্রু; মডেলটি কোনটির দিকে তাকায় তার উপর নির্ভর করে ভিন্নভাবে সাড়া দেয়। প্রথমে আপনার ডকুমেন্ট ডিডপ্লিকেট করুন, তারপর সেগুলি স্বয়ংক্রিয় করুন।
যাচাইকরণ: উৎস বিদ্যমান থাকায় শিথিল করবেন না
RAG ব্যাপকভাবে হ্যালুসিনেশন হ্রাস করে তবে এটি পুনরায় সেট করে না। মডেল কখনও কখনও উত্সের ভুল ব্যাখ্যা করতে পারে, দুটি বাক্য মিশ্রিত করতে পারে, বা উত্সে নেই এমন একটি "উপসংহার" আঁকতে পারে। এই কারণেই উদ্ধৃতি প্রয়োজনীয়তা গুরুত্বপূর্ণ: যে বিভাগটির উপর উত্তরটি ভিত্তি করে বলে দাবি করে সেটি খুলুন এবং এটি আসলে তা বলে কিনা তা পরীক্ষা করুন। এই নিয়ন্ত্রণটি আলোচনার অযোগ্য, বিশেষ করে সংখ্যা (দিন, পরিমাণ, হার) এবং শর্ত (ব্যতিক্রম, শর্ত) ধারণকারী প্রতিক্রিয়াগুলিতে।
সতর্কতা: যদি উৎস নিজেই ভুল বা পুরানো হয়, RAG বিশ্বস্তভাবে সেই ভুলের পুনরাবৃত্তি করে। "মডেলটি উৎস থেকে কথা বলে" বলার অর্থ এই নয় যে "মডেল সঠিকভাবে কথা বলে"; আপনি আপনার উৎসের মুদ্রা এবং নির্ভুলতার জন্য দায়ী।
প্রতিক্রিয়ার জন্য জ্ঞানের ভিত্তি প্রস্তুত রাখা
সোর্স টেক্সট কিভাবে লেখা হয় তার উপর RAG-এর মান অনেকাংশে নির্ভর করে। মডেলটি সুগঠিত, শিরোনামযুক্ত, একক-বিষয়ক পাঠ্যের চেয়ে অনেক বেশি সঠিক প্রতিক্রিয়া প্রদান করে। ব্যবহারিক পরামর্শ: আপনার নীতিগুলি দীর্ঘ, নেস্টেড অনুচ্ছেদের পরিবর্তে সংক্ষিপ্ত, শিরোনামযুক্ত বিভাগে লিখুন; প্রতিটি বিভাগে একটি একক প্রশ্নের উত্তর দিন ("ফেরার সময়কাল কত দিন?", "কোন পণ্য ফেরত দেওয়া যাবে না?")। একটি প্রশ্ন-উত্তর বিন্যাসে প্রায়শই জিজ্ঞাসিত প্রশ্ন (FAQs) রাখা মডেলটির পক্ষে সঠিক অংশটি খুঁজে পাওয়া সহজ করে তোলে। রাষ্ট্রীয় মান যেমন তারিখ, পরিমাণ এবং হার স্পষ্টভাবে এবং পাঠ্যের মধ্যে এক জায়গায়; বিভিন্ন বিভাগে একই সংখ্যা ভিন্নভাবে লেখা মডেলকে বিভ্রান্ত করে।
আরেকটি গুরুত্বপূর্ণ অভ্যাস হল জ্ঞানের ভিত্তিকে বাঁচিয়ে রাখা। নীতি, মূল্য এবং প্রচার পরিবর্তিত হয়; যদি উত্সটি আপডেট না করা হয়, মডেলটি নিরাপদে পুরানো সত্য পুনরাবৃত্তি করতে থাকে। প্রতিটি নীতি পরিবর্তনের সাথে, উত্সটি আপডেট করুন এবং মডেলটিকে পরিবর্তিত বিষয় সম্পর্কে কয়েকটি পরীক্ষামূলক প্রশ্ন পুনরায় জিজ্ঞাসা করুন যাতে এটি সঠিক উত্তর দেয়। এই ছোট কিন্তু নিয়মিত রক্ষণাবেক্ষণ RAG সিস্টেমকে সময়ের সাথে "নিঃশব্দে ভুল হতে" বাধা দেয়।
সাধারণ ভুল
- উৎস কবর না দিয়ে এবং মডেলের মুখস্থ করার উপর নির্ভর না করে "আমাদের নীতি ব্যাখ্যা করুন" বলা।
- "শুধু উৎস থেকে উত্তর" সীমানা এবং অ-উৎস আচরণ সংজ্ঞায়িত না করা।
- একটি উদ্ধৃতি/উত্স রেফারেন্সের অনুরোধ না করা এবং উত্তরটি যাচাই করা যায় না।
- জ্ঞানভাণ্ডারে একাধিক নথিতে একই তথ্যের বিরোধপূর্ণ সংস্করণ রাখা।
- মডেলটিকে সাংখ্যিক মানগুলিকে বৃত্তাকার/ব্যাখ্যা করার অনুমতি দেয়৷
- উত্স আপডেট করতে ভুলে যাওয়া, মডেলটিকে বিশ্বস্তভাবে পুরানো তথ্যের পুনরাবৃত্তি ঘটায়।
সংক্ষেপে
- RAG মানে যে মডেলটি মেমরির পরিবর্তে বর্তমান উৎস নথি থেকে তার উত্তর তৈরি করে।
- হ্যালুসিনেশন কমানোর সবচেয়ে ব্যবহারিক উপায়: উত্সটি কবর দিন, বলুন "শুধু এখানে উত্তর দিন", উদ্ধৃতি জিজ্ঞাসা করুন।
- যদি উত্তরটি উৎসে না থাকে, তাহলে একটি মডেলের সাথে মাপসই করা উচিত নয়; তাকে বলা উচিত "আমার কাছে নেই" এবং এটি হস্তান্তর করা উচিত।
- মডেলটিকে পরস্পরবিরোধী উত্স সম্পর্কে সচেতন করুন; আপনি সংখ্যাসূচক মান ঠিকভাবে সংরক্ষণ করেছেন।
- RAG নির্ভুলতা আপনার উৎসের সময়োপযোগীতার উপর নির্ভর করে; সর্বদা উদ্ধৃতি নিশ্চিত করুন.
আবেদন টাস্ক
আপনার নিজের ব্যবসা থেকে একটি প্রকৃত নীতি পাঠ্য (রিটার্ন, শিপিং বা সদস্যপদ) নিন এবং উপরের মৌলিক RAG প্রম্পটে এটি একটি উত্স হিসাবে এম্বেড করুন৷ তারপর তিনটি প্রশ্ন জিজ্ঞাসা করুন: (1) একটি প্রশ্ন যার উত্তর উৎসে স্পষ্ট, (2) একটি প্রশ্ন যার উত্তর উৎসে একেবারেই নেই, (3) একটি প্রশ্ন যার উত্তর উৎসে অসম্পূর্ণ। যাচাই করুন যে মডেলটি সঠিকভাবে উত্তর দিয়েছে, বলছে "আমার কাছে এটি নেই" এবং যথাক্রমে আংশিক উত্তর এবং অনুপস্থিতটিকে যথাক্রমে চিহ্নিত করে৷ প্রম্পটে বিশ্বস্ততা এবং অ-সম্পদ বিধিগুলিকে শক্তিশালী করে বিচ্যুত আচরণকে সঠিক করুন।
চেকলিস্ট
- [ ] আমি বর্তমান উৎসটি এম্বেড করেছি যার উপর প্রতিক্রিয়া প্রম্পটে ভিত্তিক হবে।
- [ ] আমি যোগ করেছি "শুধুমাত্র উৎস থেকে উত্তর, এর বাইরে যাবেন না" নিয়ম।
- [ ] আমি একটি উত্স রেফারেন্স / উদ্ধৃতি প্রয়োজন রেখেছি।
- [ ] উত্তরটি উৎসে পাওয়া না গেলে আমি প্রতিনিধিত্বের আচরণকে সংজ্ঞায়িত করেছি।
- [ ] আমি চাই যে সংখ্যাসূচক মান ঠিকভাবে সংরক্ষণ করা হবে।
- [ ] আমি উৎস বাক্য থেকে উত্তর নিশ্চিত করেছি যার উপর ভিত্তি করে।