Choice — Jev-এ একটি বিকল্প বাছা

Choice হলো TypeSafe-এর Jev মডেলের তিনটি প্রশ্নের ধরনের একটি। এটি আপনার ঠিক করা সেট থেকে ঠিক একটি বিকল্প বাছে আর বিজয়ী, প্রতিটি বিকল্পের সম্ভাব্যতা এবং একটি আস্থার মান ফেরত দেয়।

Choice মডেলকে নামযুক্ত বিকল্পের একটি সেট দেয় আর তার মধ্য থেকে ঠিক একটি ফেরত পায়। বিকল্পগুলোর নাম আপনারই, তাই উত্তরটি ইতিমধ্যেই এমন একটি মান যার উপর আপনার কোড শাখা বানাতে পারে — স্বাভাবিক করার মতো কোনো স্ট্রিং নেই, আর আপনি কখনো ঠিক করেননি এমন নাম আসার সম্ভাবনাও নেই।

আকর্ষণীয় অংশটি বিজয়ী নয়, বরং তার সঙ্গে আসা বণ্টন। প্রতিটি বিকল্প একটি সম্ভাব্যতা পায়, তাদের যোগফল এক, আর দ্বিতীয় স্থানেরটি বলে দেয় মডেল প্রায় কী বেছে ফেলেছিল।

একটি সত্যিকারের উত্তর

jev-1.13.0-তে পাঠানো। নিচের সংখ্যাগুলোই ফিরে এসেছে।

অবস্থাটি

আজ সকালের ৪.২ রিলিজের পর থেকে আমাদের SSO লগইন ৫০০ দিচ্ছে। দলের কেউ ঢুকতে পারছে না। Chrome আর Safari দুটোতেই একই, দুটি আলাদা টেন্যান্টে।

প্রশ্নটি

এই টিকিটটি কোন দলের হওয়া উচিত?

৮৩%
উচ্চ
4টি বিকল্পের মধ্যে কারিগরি, ৮৭%-এ
৮৭% কারিগরি

কারিগরি ৮৭%-এ জিতছে, কিন্তু অ্যাকাউন্ট ১৩% ধরে রেখেছে — আর এটাই সঠিক মতভেদ, কারণ SSO-র বিকল দুটোর সীমানাতেই বসে। শুকনো একটি লেবেল এটি লুকিয়ে ফেলত। আপনার রাউটিং ভুল হলে যদি খরচ থাকে, তবে ১৩%-ই সেই সংখ্যা যার উপর সীমা বসাতে হবে।

অনুরোধ আর প্রতিক্রিয়া, অবিকল
অনুরোধ
{
  "state": "Our SSO login has been throwing a 500 since the 4.2 release this morning. Nobody on the team can get in. Same on Chrome and Safari, two different tenants.",
  "model": "jev-latest",
  "questions": {
    "queue": {
      "type": "choice",
      "instructions": "Which team should own this ticket?",
      "criteria": {
        "Billing": "Payments, invoices, refunds, plan changes",
        "Technical": "Bugs, outages, API errors, integrations",
        "Account": "Login, permissions, seats, data export",
        "Sales": "Pricing, upgrades, contracts"
      }
    }
  }
}
প্রতিক্রিয়া
{
  "model": "jev-1.13.0",
  "answers": {
    "queue": {
      "type": "choice",
      "choice": "Technical",
      "confidence": 0.83,
      "probabilities": {
        "Technical": 0.87,
        "Sales": 0,
        "Account": 0.13,
        "Billing": 0
      }
    }
  }
}

উত্তরে কী কী থাকে

type "choice"
প্রশ্নের ধরনের সঙ্গে মেলে।
choice string
সর্বোচ্চ সম্ভাব্যতার বিকল্পটি।
probabilities map<string, number>
আপনার ঠিক করা প্রতিটি বিকল্প, তার সম্ভাব্যতার সঙ্গে মিলিয়ে। যোগফল ১।
confidence number
০ থেকে ১, সম্ভাব্যতাগুলো কতটা ছড়ানো তা থেকে হিসাব করা। একটি স্পষ্ট শিখর উচ্চ আস্থা; সমতল ছড়ানো নিম্ন।

নিয়ম আর সীমা

  • criteria প্রতিটি বিকল্পকে একটি বিবরণের সঙ্গে মেলায়, বা null-এর সঙ্গে যখন নামই যথেষ্ট।
  • একটি Choice সর্বোচ্চ ২৫৫টি বিকল্প নেয়। মডেলকে দল বা শ্রেণির পুরো তালিকাই দিন, ছাঁটা তালিকা নয় — প্রতিটি বিকল্পের খরচ মাত্র কয়েকটি টোকেন।
  • আপনার তালিকা যদি প্রতিটি ইনপুট নাও ধরতে পারে, তবে অন্যান্য বা এর কোনোটিই নয় বিকল্প যোগ করুন, যাতে মডেলের বলার উপায় থাকে যে কোনোটিই খাপ খায় না।

Choice বাছুন যখন

  • উত্তরগুলো এমন একটি বদ্ধ সেট যা আপনার কোডে আগে থেকেই আছে — সারি, শ্রেণি, অবস্থা, পরবর্তী পদক্ষেপ।
  • আপনি কেবল বিজয়ী নয়, দ্বিতীয় স্থানেরটিও দেখতে চান।
  • আপনি রাউটিং করছেন, আর প্রতিটি গন্তব্যের খরচ এতটাই আলাদা যে বিকল্প অনুযায়ী সীমা বসাতে চান।

অন্য কিছু ব্যবহার করুন যখন

  • বিকল্পগুলো একই মাপকাঠির ক্রমসাজানো ধাপ — নিম্ন, মাঝারি, উচ্চ। Score জানে যে এরা ক্রমে আছে আর মাঝেও পড়তে পারে; Choice এদের অসম্পর্কিত লেবেলের মতো দেখে।
  • একাধিক বিকল্প একসঙ্গে সত্য হতে পারে। তখন প্রতিটি বিকল্পের জন্য একটি করে Noul জিজ্ঞেস করুন।

বাকি দুটি

নিজের লেখার উপর একটি Choice জিজ্ঞেস করুন

পরীক্ষাক্ষেত্র আপনার পেস্ট করা সবকিছু Jev-এ পাঠায় আর প্রতিটি উত্তর এঁকে দেয়। অ্যাকাউন্ট লাগে না, কি-ও না।

পরীক্ষাক্ষেত্র খুলুন