আপনার মডেল ফাইন-টিউন করা বন্ধ করুন। সমস্যাটি আপনার আর্কিটেকচারে।

ডেমো দেখতে দারুণ লাগে। প্রোডাকশন সিস্টেমগুলো ভিন্ন রকম হয়। এই দুটির মধ্যে একটি ব্যবধান রয়েছে।

মানুষ এখন সবকিছুকেই 'এজেন্ট' বলছে। মেমরি সম্পন্ন একটি চ্যাটবট হলো একটি এজেন্ট। একটি লুপযুক্ত স্ক্রিপ্ট হলো একটি এজেন্ট। এই ভুলটি ইঞ্জিনিয়ারিং ত্রুটির কারণ হয়ে দাঁড়ায়। এর ফলে আপনি সহজ কাজগুলোর জন্য অতিরিক্ত ইঞ্জিনিয়ারিং (over-engineering) করেন এবং জটিল কাজগুলোর জন্য অপর্যাপ্ত ইঞ্জিনিয়ারিং (under-engineering) করেন।

একটি এজেন্টের একটি লক্ষ্য (objective) প্রয়োজন। এটি কেবল একটি নির্দেশ অনুসরণ করে না। এটি পরবর্তী পদক্ষেপ কী হবে তা সিদ্ধান্ত নেয়। এটি ব্যর্থতা সামাল দেয়। এটি জানে কখন থামতে হবে।

আপনার সিস্টেম যাচাই করতে এই নিয়মগুলো ব্যবহার করুন:

  • যদি প্রতিটি ধাপে একজন মানুষের নির্দেশনার প্রয়োজন হয়, তবে এটি একটি চ্যাট ইন্টারফেস।
  • যদি এটি একটি ব্যর্থ টুল কল (tool call) থেকে পুনরুদ্ধার করতে পারে, তবে এটি একটি এজেন্ট।
  • যদি এটি একটি লক্ষ্যকে উপ-কাজে (subtasks) বিভক্ত করতে পারে, তবে এটি একটি প্রকৃত এজেন্ট।

সফল দলগুলো নতুন মডেলের পেছনে ছোটে না। তারা নির্দিষ্ট এবং উদ্দেশ্যমূলক পাইপলাইন তৈরি করে। তারা এই তিনটি বিষয়ের ওপর গুরুত্ব দেয়:

  • টুল ডিজাইন: ইন্টারফেসটি কতটা পরিচ্ছন্ন?
  • ফেইলিউর হ্যান্ডলিং: যখন একটি টুল কোনো ফলাফল দেয় না তখন কী ঘটে?
  • অবজারভেবিলিটি (Observability): আপনি কি প্রতিটি সিদ্ধান্ত ট্র্যাক করতে পারেন?

আপনি কোন ফ্রেমওয়ার্ক ব্যবহার করছেন তার চেয়ে আপনার প্যাটার্নগুলো বেশি গুরুত্বপূর্ণ। আমি বিভিন্ন ফ্রেমওয়ার্কে আর্কিটেকচার পুনরায় তৈরি করেছি এবং ফলাফল একই থাকে। ফ্রেমওয়ার্ক হলো মাচা (scaffolding), আর আর্কিটেকচার হলো মূল ভবন।

এই প্যাটার্নগুলো অনুসরণ করুন:

  • পরিকল্পনা করুন তারপর কার্যকর করুন। যুক্তির (reasoning) জন্য একটি ধাপ এবং কাজের (action) জন্য একটি আলাদা ধাপ ব্যবহার করুন।
  • রিট্রিভাল (retrieval) এবং রিজনিং (reasoning)-কে আলাদা করুন। কনটেক্সট সংগ্রহ করা এবং কনটেক্সট ব্যবহার করা দুটি ভিন্ন কাজ।
  • স্পষ্ট হ্যান্ডঅফ (handoff) ব্যবহার করুন। যখন একটি এজেন্ট অন্যটির কাছে কাজ হস্তান্তর করে, তখন স্ট্রাকচার্ড লগ (structured logs) ব্যবহার করুন।

RAG একটি স্ট্যান্ডার্ড পদ্ধতি, কিন্তু চাঙ্কিং (chunking) প্রায়শই ভুল হয়। আপনি যদি ডকুমেন্টগুলোকে সঠিকভাবে বিভক্ত না করেন, তবে মডেল কনটেক্সট হারিয়ে ফেলে। এর ফলে হ্যালুসিনেশন (hallucinations) ঘটে।

যদি আপনার RAG পাইপলাইন অকেজো ফলাফল দেয়, তবে আপনার চাঙ্কিং এবং মেটাডেটা পরীক্ষা করুন। এমবেডিং মডেলকে দোষারোপ করবেন না।

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

সেরা ইঞ্জিনিয়াররা সিস্টেম ডিজাইনের ওপর গুরুত্ব দেবেন। তারা এমন AI সিস্টেম তৈরি করবেন যা অন্যরা রক্ষণাবেক্ষণ করতে পারে এবং বিশ্বাস করতে পারে।

উৎস: https://dev.to/aibughunter/stop-fine-tuning-your-model-your-architecture-is-the-problem-3kkg