হারনেস ইঞ্জিনিয়ারিংয়ের কোনো নির্দিষ্ট ঠিকানা নেই

হারনেস ইঞ্জিনিয়ারিং আপনার সফটওয়্যার স্ট্যাকের কোনো নির্দিষ্ট স্থান নয়। এটি আপনার কোডের একটি বৈশিষ্ট্য।

অনেকে মনে করেন হারনেস হলো কেবল একটি AI মডেলের চারপাশে একটি র‍্যাপার (wrapper)। এটি ভুল। হারনেসই একটি মডেলকে প্রকৃত ব্যবসার জন্য উপযোগী করে তোলে।

আমি একটি সহজ সূত্র ব্যবহার করি: Agent = Model × Harness।

মডেল হলো ইঞ্জিন। হারনেস হলো স্টিয়ারিং, ব্রেক এবং সেফটি রেইলস (safety rails)।

কিন্তু সমস্যাটি হলো এখানে। মডেল ক্রমাগত বিকশিত হচ্ছে। প্রতিটি নতুন মডেল ভার্সন হারনেসের কিছু অংশ নিজের মধ্যে শুষে নিচ্ছে।

  • রিজনিং মডেলগুলো এখন চেইন-অফ-থট (chain-of-thought) লজিক সামলাতে পারে।
  • উন্নত মডেলগুলো এখন নেটিভলি টুল ব্যবহার করতে পারে।
  • দীর্ঘ কনটেক্সট উইন্ডো (long context windows) পুরনো মেমরি সিস্টেমের জায়গা দখল করছে।

যদি মডেল হারনেসকে গিলে ফেলে, তবে আপনার তৈরির জন্য কী অবশিষ্ট থাকবে?

যে অংশগুলো বিলীন হয়ে যাবে তা হলো মেকানিক্স। লুপ (loops), রিট্রাই (retries) এবং মেমরি স্টিচিং (memory stitching) সাধারণ পণ্যে (commodities) পরিণত হবে। কেবল প্লাম্বিং (plumbing) বা অবকাঠামো তৈরির ওপর আপনার ক্যারিয়ার বাজি রাখবেন না।

যে অংশগুলো টিকে থাকবে তা হলো স্পেসিফিকেশন (specification) এবং ভেরিফিকেশন (verification)।

  1. Specification: এজেন্ট কী করতে পারবে তা আপনাকে সংজ্ঞায়িত করতে হবে। একটি মডেল আপনার নির্দিষ্ট রিফান্ড পলিসি বা আপনার রিস্ক টলারেন্স (risk tolerance) সম্পর্কে জানতে পারবে না। এটি আপনার কোডের মধ্যেই থাকে।
  2. Verification: এজেন্ট আপনার নির্ধারিত নিয়মের মধ্যে থেকে কাজ করেছে কিনা তা আপনাকে প্রমাণ করতে হবে। একটি মডেল নির্ভরযোগ্যভাবে নিজেকে বিচার করতে পারে না। কাজ যাচাই করার জন্য আপনার একটি এক্সটার্নাল লেয়ার (external layer) প্রয়োজন।

একটি রিফান্ড এজেন্টের কথা চিন্তা করুন।

আপনি যদি রিফান্ডের সীমা একটি প্রম্পটে (prompt) রাখেন, তবে একজন ব্যবহারকারী মডেলটিকে ধোঁকা দিতে পারে। কিন্তু আপনি যদি আপনার কোডে একটি if-statement-এর মাধ্যমে সীমাটি নির্ধারণ করেন, তবে মডেলটি তার সাথে তর্কা করতে পারবে না।

সেই if-statement-টিই হলো হারনেস ইঞ্জিনিয়ারিং।

হারনেস ইঞ্জিনিয়ারিং মূলত দুটি বিষয় নিয়ে কাজ করে:

  • অনুমোদিত আচরণের সীমা (envelope of allowed behavior) সংজ্ঞায়িত করা।
  • এজেন্ট সেই সীমার মধ্যেই থেকেছে কিনা তা প্রমাণ করা।

মডেল হলো সেই উদ্ভিদ (plant) যা আপনি নিয়ন্ত্রণ করছেন। স্পেসিফিকেশন হলো আপনার লক্ষ্য। হারনেস হলো কন্ট্রোলার। ইভ্যালুয়েশন (evaluations) হলো ফিডব্যাক।

টুলস এবং মেকানিক্স প্রতি মাসে পরিবর্তিত হবে। কিন্তু স্পেসিফিকেশন এবং ভেরিফিকেশনের শৃঙ্খলা পরিবর্তিত হবে না।

প্লাম্বিং তৈরি করা বন্ধ করুন। কনস্ট্রেইন্টস (constraints) এবং প্রুফ (proofs) তৈরি করা শুরু করুন।

Source: https://dev.to/saurav_bhattacharya/harness-engineering-has-no-fixed-address-2m7a

ঐচ্ছিক লার্নিং কমিউনিটি: https://t.me/GyaanSetuAi