ডায়ালগফ্লো সিএক্স জেনারেটর এবং ডেটা স্টোর ব্যবহার করে সিদ্ধান্ত নেওয়ার বিষয়ে অবহিত

১. সংক্ষিপ্ত বিবরণ

সর্বশেষ হালনাগাদ: ২০২৩-১০-১০

আপনি যা তৈরি করবেন

এই কোডল্যাবে, আপনি Vertex AI Conversation এবং Dialogflow CX ব্যবহার করে একটি ভার্চুয়াল এজেন্ট তৈরি, ডেপ্লয় এবং কনফিগার করবেন। এই এজেন্টটি রক্তদান করতে ইচ্ছুক ব্যক্তিদের সহায়তা করবে এবং তারা প্রয়োজনীয় যোগ্যতার শর্তাবলী পূরণ করছেন কিনা তা নিশ্চিত করবে। Dialogflow CX ফুলফিলমেন্টের সময় এজেন্টটি বাস্তব পাবলিক ডেটা এবং গুগলের জেনারেটিভ লার্জ ল্যাঙ্গুয়েজ মডেল (LLM) ব্যবহার করবে।

আপনি কোন বৈশিষ্ট্যগুলি ব্যবহার করবেন

কোডল্যাবটি সম্পন্ন করতে আপনাকে তিনটি স্বতন্ত্র ফিচার কনফিগার ও ব্যবহার করতে হবে:

ডেটা স্টোর এজেন্ট

Vertex AI Conversation ফিচারটি একটি বিশেষ Dialogflow এজেন্ট তৈরি করে, যাকে ডেটা স্টোর এজেন্ট বলা হয়।

এই ফিচারের মাধ্যমে, আপনি একটি ওয়েবসাইট ইউআরএল, স্ট্রাকচার্ড ডেটা বা আনস্ট্রাকচার্ড ডেটা (ডেটা স্টোর) প্রদান করেন, তারপর গুগল আপনার কন্টেন্ট পার্স করে এবং ডেটা স্টোর ও বৃহৎ ল্যাঙ্গুয়েজ মডেল দ্বারা চালিত একটি ভার্চুয়াল এজেন্ট তৈরি করে। এরপর আপনার গ্রাহক এবং ব্যবহারকারীরা এজেন্টের সাথে কথোপকথন করতে এবং কন্টেন্ট সম্পর্কে প্রশ্ন করতে পারেন। এই ধরনের এজেন্ট সম্পর্কে তথ্যের জন্য ভার্টেক্স এআই কনভারসেশন পরিচিতিটি দেখুন।

জেনারেটর

জেনারেটর ফিচারটি হলো Dialogflow CX-এর একটি ফিচার, যা ডেভেলপারদের গুগলের সর্বশেষ জেনারেটিভ লার্জ ল্যাঙ্গুয়েজ মডেল (LLM) এবং কাস্টম প্রম্পট ব্যবহার করে রানটাইমে এজেন্টের প্রতিক্রিয়া তৈরি করতে দেয়। একটি জেনারেটর এমন সাধারণ প্রতিক্রিয়াগুলো পরিচালনা করতে পারে, যেগুলোতে প্রশিক্ষণের জন্য ব্যবহৃত কোনো বৃহৎ টেক্সচুয়াল ডেটাসেট থেকে প্রাপ্ত সাধারণ জ্ঞান অথবা কথোপকথনের প্রেক্ষাপট অন্তর্ভুক্ত থাকে।

জেনারেটিভ ফলব্যাক

ফর্ম পূরণের জন্য যখন ব্যবহারকারীর ইনপুট কোনো ইন্টেন্ট বা প্যারামিটারের সাথে মেলে না, তখন ভার্চুয়াল এজেন্ট প্রতিক্রিয়া তৈরি করতে জেনারেটিভ ফলব্যাক ফিচারটি গুগলের সর্বশেষ জেনারেটিভ লার্জ ল্যাঙ্গুয়েজ মডেল (LLM) ব্যবহার করে। এই ফিচারটি একটি টেক্সট প্রম্পট দিয়ে কনফিগার করা যায়, যা LLM-কে কীভাবে প্রতিক্রিয়া জানাতে হবে তার নির্দেশ দেয়। আপনি একটি পূর্বনির্ধারিত টেক্সট প্রম্পট ব্যবহার করতে পারেন অথবা আপনার নিজের প্রম্পট যোগ করতে পারেন। আপনি ফ্লো, পেজ বা প্যারামিটার পূরণের সময় ব্যবহৃত নো-ম্যাচ ইভেন্ট হ্যান্ডলারগুলিতে জেনারেটিভ ফলব্যাক সক্রিয় করতে পারেন। যখন কোনো নো-ম্যাচ ইভেন্টের জন্য জেনারেটিভ ফলব্যাক সক্রিয় করা হয়, তখন যখনই সেই ইভেন্টটি ট্রিগার হয়, Dialogflow একটি জেনারেটেড প্রতিক্রিয়া তৈরি করার চেষ্টা করবে যা ব্যবহারকারীকে শোনানো হবে। যদি প্রতিক্রিয়া তৈরি করা অসফল হয়, তবে তার পরিবর্তে নিয়মিত নির্ধারিত এজেন্ট প্রতিক্রিয়াটি প্রদান করা হবে। আপনি যদি জেনারেটিভ ফলব্যাক সম্পর্কে আরও জানতে আগ্রহী হন, তবে এই কোডল্যাবটি চেষ্টা করে দেখুন!

আপনি যা শিখবেন

  • অসংগঠিত ডেটা থেকে কীভাবে একটি ডেটা স্টোর এজেন্ট তৈরি করবেন
  • ডেটা স্টোরে যুক্ত করা বিষয়বস্তু সম্পর্কে এন্ড-ইউজারদের ভার্চুয়াল এজেন্টের সাথে কথোপকথনের সুযোগ দিতে নলেজ হ্যান্ডলার কীভাবে ব্যবহার করবেন।
  • বিল্ট-ইন জেনারেটর প্রম্পট প্লেসহোল্ডার ব্যবহার করে কীভাবে একটি জেনারেটর টেক্সট প্রম্পট কনফিগার করবেন এবং এটিকে প্রাসঙ্গিক করে তুলবেন।
  • কীভাবে শব্দগুলোকে জেনারেটর প্রম্পট প্লেসহোল্ডার হিসেবে চিহ্নিত করা যায় এবং পরবর্তীতে এক্সিকিউশনের সময় তাদের মান ব্যবহার করার জন্য সেগুলোকে সেশন প্যারামিটারের সাথে যুক্ত করা যায়।
  • একটি বৃহৎ টেক্সচুয়াল ডেটাসেট থেকে প্রাপ্ত জ্ঞান এবং বর্তমান কথোপকথনের প্রেক্ষাপট ব্যবহার করে প্রতিক্রিয়াগুলি পরিচালনা করার জন্য একটি জেনারেটর কীভাবে কনফিগার করতে হয়।
  • জেনারেটর ব্যবহার করে কীভাবে একটি আনুষ্ঠানিক ইমেল তৈরি করবেন
  • আপনার এজেন্টকে কীভাবে পরীক্ষা করবেন এবং গ্রাহকের প্রশ্ন অনুকরণ করে কীভাবে স্বয়ংক্রিয়ভাবে প্রতিক্রিয়া তৈরি করবেন

আপনার যা যা লাগবে

  • একটি গুগল ক্লাউড প্রজেক্ট
  • ক্রোমের মতো একটি ব্রাউজার

২. এপিআই সক্রিয় করুন

Vertex AI Conversation- এ ডেটা স্টোর এজেন্ট তৈরি করার আগে, আপনাকে Dialogflow এবং Vertex AI Search ও Conversation API-গুলো সক্রিয় করতে হবে।

Dialogflow API সক্রিয় করতে, এই ধাপগুলো অনুসরণ করুন:

  1. আপনার ব্রাউজারে Dialogflow API Service Details পৃষ্ঠায় যান।
  2. আপনার গুগল ক্লাউড প্রজেক্টে Dialogflow API চালু করতে Enable বাটনে ক্লিক করুন।

Vertex AI Search and Conversation API সক্রিয় করতে, এই ধাপগুলো অনুসরণ করুন:

  1. Google Cloud কনসোলে, Vertex AI Search and Conversation কনসোলে যান।
  2. পরিষেবার শর্তাবলী পড়ুন এবং তাতে সম্মত হন, তারপর 'চালিয়ে যান'-এ ক্লিক করুন এবং এপিআই (API) সক্রিয় করুন

৩. আপনার অ্যাপের জন্য একটি নতুন চ্যাট অ্যাপ এবং একটি ডেটা স্টোর তৈরি করুন।

এখন, আপনি আপনার ভার্চুয়াল এজেন্টের জন্য একটি নতুন চ্যাট অ্যাপ তৈরি করবেন এবং এটিকে একটি ডেটা সোর্স দিয়ে কনফিগার করবেন। আপনি যে এজেন্টটি তৈরি করবেন তার উদ্দেশ্য হলো, রক্তের যোগ্যতা সম্পর্কে প্রশ্ন আছে এমন গ্রাহকদের সহায়তা করা। আপনি তথ্যের মূল উৎস হিসেবে অস্ট্রেলিয়ান রেড ক্রস লাইফব্লাডকে ব্যবহার করবেন এবং রক্তের যোগ্যতা সংক্রান্ত ওয়েবসাইট থেকে প্রাপ্ত অসংগঠিত ডেটার উপর ভিত্তি করে একটি ডেটা স্টোর তৈরি করবেন।

  1. Vertex AI Conversation-এ একটি নতুন চ্যাট অ্যাপ তৈরি করতে, আপনি নিম্নলিখিত যেকোনো একটি করতে পারেন:
    1. Vertex AI Conversation কনসোলে যান, তারপর কনসোলের উপরের দিকে থাকা +New app-এ ক্লিক করুন।
    2. Dialogflow CX কনসোলে যান, +Create new agent-এ ক্লিক করুন এবং Auto-generate অপশনটি নির্বাচন করুন, তাহলে আপনাকে Vertex AI Conversation কনসোলের পরবর্তী ধাপে নিয়ে যাওয়া হবে।
  2. Vertex AI Conversation কনসোল থেকে, আপনি যে ধরনের অ্যাপ তৈরি করতে চান, সেই হিসেবে Chat নির্বাচন করুন।
  3. Save a Life (Save a Life) কোম্পানির নাম ইনপুট করুন। এই প্যারামিটারটি আপনার এজেন্ট কোন কোম্পানির প্রতিনিধিত্ব করে এবং তার কাজের পরিধি নির্ধারণ করতে ব্যবহৃত হয়।
  4. Blood Donation Agent নাম উল্লেখ করুন।
  5. চালিয়ে যান-এ ক্লিক করুন।
  6. নতুন ডেটা স্টোর তৈরি করুন -এ ক্লিক করুন।
  7. আপনার ডেটা স্টোরের জন্য ডেটা উৎস হিসেবে ক্লাউড স্টোরেজ নির্বাচন করুন।
  8. এই কোডল্যাবের নমুনা ডেটা ধারণকারী নিম্নলিখিত গুগল ক্লাউড স্টোরেজ ফোল্ডারটি নির্দিষ্ট করুন, এবং মনে রাখবেন যে gs:// প্রিফিক্সটির প্রয়োজন নেই:
    cloud-samples-data/dialogflow-cx/arc-lifeblood
    
  9. আপনি যে ধরনের ডেটা ইম্পোর্ট করছেন, তা হিসেবে অসংগঠিত নথি নির্বাচন করুন।
  10. চালিয়ে যান-এ ক্লিক করুন।
  11. Australian Red Cross Lifeblood Unstructured এর জন্য একটি ডেটা স্টোরের নাম নির্দিষ্ট করুন।
  12. ডেটা স্টোর তৈরি করতে Create-এ ক্লিক করুন।
  13. ডেটা স্টোরের তালিকা থেকে, নতুন তৈরি করা Australian Red Cross Lifeblood Unstructured নির্বাচন করুন।
  14. আপনার চ্যাট অ্যাপ তৈরি করতে Create-এ ক্লিক করুন।

অভিনন্দন! আপনি আপনার জ্ঞান-ভিত্তিক চ্যাট অ্যাপটি তৈরি করা শেষ করেছেন যা সম্ভাব্য দাতাদের সাহায্য করার জন্য প্রস্তুত, তাই এই মুহূর্তটি উদযাপন করুন!

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

৪. রক্তের যোগ্যতা সম্পর্কিত প্রায়শই জিজ্ঞাসিত প্রশ্নের উত্তর দেওয়ার জন্য এজেন্টকে কনফিগার করুন।

তারিখ সংরক্ষণের প্রম্পট প্রদান করুন

ব্যাকগ্রাউন্ডে ডকুমেন্ট সংগ্রহের প্রক্রিয়াটি চলার সময়, ডেটা স্টোর প্রম্পটটি এডিট করে এজেন্টকে একটি ব্র্যান্ড দেওয়া যাক।

  1. Vertex AI Conversation কনসোল থেকে আপনার চ্যাট অ্যাপের নামে ক্লিক করুন, যা আপনাকে আরও পরীক্ষা এবং কাস্টমাইজেশনের জন্য Dialogflow CX কনসোলে নিয়ে যাবে।
  2. Dialogflow CX কনসোলে এবং আপনার এজেন্টের ভেতর থেকে, এজেন্ট সেটিংস-এ (পৃষ্ঠার উপরের ডান কোণায়) ক্লিক করুন, তারপর ML ট্যাবে যান এবং সবশেষে জেনারেটিভ AI ট্যাবটি খুলুন।

ডেটা স্টোর প্রম্পটে যান

  1. নিম্নলিখিত ডেটা স্টোর প্রম্পটটি তৈরি করতে নিচের ফর্মটি পূরণ করুন: আপনার নাম Donate , এবং আপনি Save a life, a fictitious organization -এর একজন সহায়ক ও ভদ্র chatbot । আপনার কাজ হলো humans with eligibility information সহায়তা করা।

আপনার প্রম্পট তৈরি করতে ফর্মটি পূরণ করুন।

ডিফল্ট স্টার্ট ফ্লো-এর নো-ম্যাচ ইভেন্টের জন্য জেনারেটিভ ফলব্যাক সক্রিয় করুন।

  1. বিল্ড ট্যাবে যান এবং স্টার্ট পেজটি খুলুন।
  2. sys.no-match-default ইভেন্ট হ্যান্ডলারটিতে ক্লিক করুন। বক্সটি আগে থেকে চেক করা না থাকলে, জেনারেটিভ ফলব্যাক ফিচারটি সক্রিয় করুন।

ফ্লো অমিলের ক্ষেত্রে জেনারেটিভ ফলব্যাক সক্রিয় করুন

এজেন্টের ডেটা স্টোর চেক করুন

স্টার্ট পেজে , ডেটা স্টোর সেটিংস দেখতে 'Edit data stores'- এ ক্লিক করুন।

ডেটা স্টোর সম্পাদনা করুন

আপনার পূর্বে তৈরি করা ডেটা স্টোরটি Dialogflow আপনার জন্য ইতিমধ্যেই নির্বাচন করে দিয়েছে।

আপনার তৈরি করা ডেটা স্টোরটি সংযুক্ত করুন।

Fulfillment-এর অধীনে Agent Responses পর্যন্ত স্ক্রোল করুন। একটি Fulfillment হল শেষ ব্যবহারকারীর কাছে এজেন্টের প্রতিক্রিয়া। Dialogflow $request.knowledge.answers[0] প্যারামিটার দিয়ে Agent says আগে থেকেই পূরণ করে রেখেছে, যা রান টাইমে ব্যবহারকারীর প্রশ্নের সেরা উত্তরটি ধারণ করে।

এজেন্টের উত্তরে ব্যবহারকারীর প্রশ্নের সেরা উত্তরটি থাকে।

৫. এজেন্টকে পরীক্ষা করুন

নথিগুলো হাতে পাওয়ার পর এবং আপনার এজেন্টের ব্যবহারের জন্য প্রস্তুত হয়ে গেলে, উত্তরগুলো কতটা সঠিক তা যাচাই করে দেখুন।

সিমুলেটরটি পুনরায় খুলতে টেস্ট এজেন্ট-এ ক্লিক করুন।

Test agent again

এমন প্রশ্ন করুন যা আপনি ওয়েবসাইটের প্রায়শই জিজ্ঞাসিত প্রশ্নাবলী (FAQ) পাতায় খুঁজে পাওয়ার আশা করেন:

  • What age do I need to be to donate?
  • Can pregnant women donate?
  • I've just come back from a trip to Africa. Can I donate?
  • How can I schedule an appointment?

যাচাই করুন উত্তরগুলো নলেজ বেস থেকে আসছে।

লক্ষ্য করুন, উত্তরগুলো অস্ট্রেলিয়ান রেড ক্রস লাইফব্লাড সাইট থেকে সংগ্রহ করা হয়েছে। এই পৃষ্ঠায় যেমন বলা হয়েছে, রক্তদানের জন্য সর্বনিম্ন এবং সর্বোচ্চ বয়সসীমা রয়েছে। প্রথমবারের রক্তদাতাদের জন্য সর্বনিম্ন বয়স ১৮ এবং সর্বোচ্চ বয়স ৭৫। আমরা যে ডেটা স্টোর থেকে তথ্য নিচ্ছি, তার আরও প্রমাণ হলো এজেন্ট রেসপন্সে প্রদর্শিত ছোট তারকা আইকনটি এবং মূল JSON রেসপন্সটি।

মূল JSON প্রতিক্রিয়াটি পরিদর্শন করুন

সবশেষে, চলুন রক্তদানের সাথে সম্পূর্ণ সম্পর্কহীন একটি প্রশ্ন দিয়ে এজেন্টকে চ্যালেঞ্জ করার চেষ্টা করি।

ব্যবহারকারী: "মেলবোর্নের আবহাওয়া কেমন?"

এজেন্ট: "দুঃখিত, আমি আপনাকে এ ব্যাপারে সাহায্য করতে পারব না। আমি আপনাকে যোগ্যতার তথ্য দিয়ে কীভাবে সাহায্য করতে পারি?"

এই উত্তরে এআই দ্বারা তৈরি কন্টেন্ট রয়েছে এবং এটি পূর্বে প্রদত্ত নলেজ কানেক্টর সেটিং থেকে Dialogflow দ্বারা তৈরি করা টেক্সট প্রম্পট থেকে উদ্ভূত হয়েছে: "আপনার নাম ডোনেট, এবং আপনি সেভ এ লাইফ-এর একজন সহায়ক ও ভদ্র চ্যাটবট। আপনার কাজ হলো যোগ্যতার তথ্য দিয়ে মানুষকে সহায়তা করা" এই টেক্সট প্রম্পটে কোম্পানির নাম, এজেন্টের নাম এবং সবচেয়ে গুরুত্বপূর্ণভাবে এর আওতাভুক্ত বিষয়গুলো থাকে, যা Dialogflow এজেন্টের প্রতিক্রিয়া তৈরি করতে ব্যবহার করে।

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

৬. যোগ্যতা যাচাই কুইজের জন্য এজেন্টকে প্রস্তুত করুন।

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

নতুন রুট এবং প্যারামিটার কনফিগার করুন

  1. স্টার্ট পেজ খুলুন এবং ডেটা স্টোর সম্পাদনা করুন-এ ক্লিক করুন।
  2. বিদ্যমান এজেন্টের প্রতিক্রিয়া পরিবর্তন করে $request.knowledge.answers[0] Would you like to take the eligibility quiz to find out if you can donate blood, and start changing lives? .

ব্যবহারকারীর প্রায়শই জিজ্ঞাসিত প্রশ্নের উত্তরে এজেন্টের প্রতিক্রিয়াকে আরও সমৃদ্ধ করুন।

  1. সেভ বোতামে ক্লিক করুন
  2. এখন আমাদের 'হ্যাঁ' এবং 'না' প্রতিক্রিয়াগুলি পরিচালনা করার জন্য এজেন্টটি ডিজাইন করতে হবে। শুরুতেই, একটি confirmation.yes ইন্টেন্ট এবং একটি confirmation.no ইন্টেন্ট তৈরি করুন। ইন্টেন্ট পুনঃব্যবহার সম্পর্কে এই নির্দেশিকাগুলি অনুসরণ করুন।
  3. এরপর স্টার্ট পেজে confirmation.yes ইন্টেন্টের জন্য একটি রাউট তৈরি করুন, যা Eligibility Quiz নামের একটি নতুন পেজে ট্রানজিশন করবে।

confirmation.yes ইন্টেন্টের জন্য একটি রুট তৈরি করুন।

যখন confirmation.yes ট্রিগার করা হয়, তখন Eligibility Quiz নামক একটি নতুন পৃষ্ঠায় চলে যায়।

  1. পূর্বে যেমন উল্লেখ করা হয়েছে, আমরা কুইজটি সরল করব এবং ব্যবহারকারী দান করার যোগ্য কিনা তা নির্ধারণ করতে শুধুমাত্র তার বয়স এবং ওজন বিবেচনা করব। 'Eligibility Quiz' পৃষ্ঠাটি খুলুন এবং 'age-weight' নামে একটি নতুন ফর্ম প্যারামিটার যোগ করুন, এনটিটি টাইপ হিসেবে @sys.any বেছে নিন। প্রাথমিক প্রম্পট পূরণের জন্য "What is your age and weight?" লিখুন। আমরা বয়স এবং ওজন উভয়ই একবারে সংগ্রহ করতে চাই। সমস্ত পরিবর্তন সংরক্ষণ করুন।

প্যারামিটার তৈরি করুন

যোগ্যতা জেনারেটর তৈরি এবং কনফিগার করুন

জেনারেটর ফিচারটি হলো Dialogflow CX-এর একটি ফিচার, যা ডেভেলপারদের Dialogflow CX ফুলফিলমেন্টের সময় গুগলের সর্বশেষ জেনারেটিভ লার্জ ল্যাঙ্গুয়েজ মডেল (LLM) ব্যবহার করার সুযোগ দেয়। জেনারেটরগুলো রানটাইমে এজেন্টের প্রতিক্রিয়া তৈরি করে। একটি জেনারেটর এমন সাধারণ প্রতিক্রিয়াগুলো পরিচালনা করতে পারে, যেগুলোতে প্রশিক্ষণের জন্য ব্যবহৃত একটি বৃহৎ টেক্সচুয়াল ডেটাসেট থেকে প্রাপ্ত সাধারণ জ্ঞান অথবা কথোপকথনের প্রেক্ষাপট অন্তর্ভুক্ত থাকে।

আমরা একটি নতুন জেনারেটর তৈরি করব যা ব্যবহারকারীর দেওয়া তথ্য (যেমন বয়স এবং ওজন) যোগ্যতার শর্তাবলীর সাথে তুলনা করে নির্ধারণ করবে যে ব্যবহারকারী রক্তদান করতে পারবেন কি না।

  1. Dialogflow CX কনসোলে Manage ট্যাবে যান, Generators নির্বাচন করুন এবং Create new-তে ক্লিক করুন।

একটি নতুন জেনারেটর তৈরি করুন

  1. এরপর, একটি বর্ণনামূলক ডিসপ্লে নাম দিন এবং টেক্সট প্রম্পটটি লিখুন। ডিফল্ট মডেল কোয়ালিটি কন্ট্রোল সেটিংস অপরিবর্তিত রাখুন। তারপর জেনারেটরটি তৈরি করতে সেভ-এ ক্লিক করুন।
    • প্রদর্শিত নাম: Blood Donation Eligibility
    • টেক্সট প্রম্পট: Check the users eligibility against the following criteria: the minimum age is 18 and the maximum age is 75. Weight should be above 50 Kg. The user age and weight is $last-user-utterance. Be nice and tell the user if they are eligible to donate (also tell them why not in case)

রানটাইমে ফুলফিলমেন্টের সময় টেক্সট প্রম্পটটি জেনারেটিভ মডেলে পাঠানো হয়। মডেলটি যাতে একটি সন্তোষজনক প্রতিক্রিয়া তৈরি করতে পারে, তার জন্য এটি একটি স্পষ্ট প্রশ্ন বা অনুরোধ হওয়া উচিত। আপনি আপনার টেক্সট প্রম্পটে বিশেষ বিল্ট-ইন জেনারেটর প্রম্পট প্লেসহোল্ডার ব্যবহার করতে পারেন:

  • $conversation এজেন্ট এবং ব্যবহারকারীর মধ্যকার কথোপকথন, ব্যবহারকারীর একেবারে শেষ উক্তিটি বাদে।
  • $last-user-utterance ব্যবহারকারীর সর্বশেষ উক্তি।

আপনার কনফিগার করা টেক্সট প্রম্পট অনুযায়ী, ব্যবহারকারী একটিমাত্র কথোপকথনের পালাতেই (অর্থাৎ `$last-user-utterance`) তার বয়স এবং ওজন জানাবেন।

পূরণের জন্য জেনারেটরটি ব্যবহার করুন এবং সমস্ত প্রয়োজনীয় প্যারামিটার কনফিগার করুন।

  1. যোগ্যতা যাচাই (Eligibility Quiz) পৃষ্ঠায়, একটি নতুন রুট যোগ করুন যা সমস্ত প্যারামিটার পূরণ করা হলে চালু হবে। শর্ত হিসেবে $page.params.status = "FINAL" লিখুন এবং সেভ (Save) বাটনে ক্লিক করুন।

একটি নতুন রুট যোগ করুন যা সমস্ত প্যারামিটার পূরণ হয়ে গেলে চালু হবে।

  1. Fulfillment প্যানেলের Generators সেকশনে যান এবং এটিকে এক্সপ্যান্ড করুন। এরপর, Add generator-এ ক্লিক করুন এবং Blood Donation Eligibility জেনারেটরটি সিলেক্ট করুন। জেনারেটরটি সিলেক্ট করার পর আপনাকে আউটপুট প্যারামিটারটি নির্ধারণ করতে হবে, যেটিতে এক্সিকিউশনের পর জেনারেটরটির ফলাফল থাকবে।

“রক্তদানের যোগ্যতা” জেনারেটরটি নির্বাচন করুন, সেশন প্যারামিটারগুলির সাথে প্রম্পট প্লেসহোল্ডারগুলিকে সংযুক্ত করুন এবং আউটপুট প্যারামিটারটি সংজ্ঞায়িত করুন।

  1. এজেন্ট রেসপন্সে আউটপুট প্যারামিটারটি ব্যবহার করুন এবং রাউটটি সেভ করুন। এখন আপনি সবকিছু পরীক্ষা করার জন্য প্রস্তুত।

এজেন্ট প্রতিক্রিয়ায় আউটপুট প্যারামিটার ব্যবহার করুন

৭. আপনার এজেন্টকে পুনরায় পরীক্ষা করুন।

সিমুলেটরটি পুনরায় খুলতে টেস্ট এজেন্ট-এ ক্লিক করুন।

Test agent again

সিমুলেটরে এজেন্টের সাথে একটি নতুন কথোপকথন শুরু করুন। প্রথমে বয়সের প্রয়োজনীয়তা সম্পর্কে জিজ্ঞাসা করুন এবং তারপরে যোগ্যতার কুইজে যান। প্রথমে 'যোগ্য' পথটি পরীক্ষা করুন, তাই ১৮-৭৫ এর মধ্যে একটি বয়স এবং ৫০ কেজির বেশি ওজন লিখুন।

যোগ্য পথ

এরপর পরীক্ষা করে দেখুন যে, এক বা উভয় শর্ত পূরণ না হলে যোগ্যতার যাচাইকরণ ব্যর্থ হয়।

অযোগ্য পথ

দারুণ, জেনারেটরটি প্রত্যাশা অনুযায়ী কাজ করছে! কিন্তু আসলেই কি তাই? যদি ব্যবহারকারী বয়স দেয় কিন্তু ওজন না দেয় (অথবা এর উল্টোটা), তাহলে কী হবে?

বয়স উল্লেখ করুন, কিন্তু ওজন নয়।

৮. জেনারেটরের প্রম্পট টিউনিং

একই সাথে বয়স ও ওজন সংগ্রহ করা কাজ করে না, যদি না বয়স এবং ওজন উভয়ই প্রদান করা হয়। এর পরিবর্তে আমাদের এমন একটি ফর্ম তৈরি করা উচিত যা উভয় মানকে এনটিটি প্যারামিটার হিসেবে সংগ্রহ করবে। যোগ্যতার সমস্ত প্রয়োজনীয়তার (যেমন বয়স এবং ওজন) সাথে প্রম্পটটিকে প্রাসঙ্গিক করার জন্য, আমরা শব্দের আগে একটি $ চিহ্ন যোগ করে প্লেসহোল্ডার ব্যবহার করতে পারি। পরবর্তীতে আমরা ফুলফিলমেন্টের সময় এই জেনারেটর প্রম্পট প্লেসহোল্ডারগুলোকে সেশন প্যারামিটারের সাথে যুক্ত করব এবং এক্সিকিউশনের সময় এগুলো সেশন প্যারামিটারের মান দ্বারা প্রতিস্থাপিত হবে।

  1. যোগ্যতা যাচাইয়ের পৃষ্ঠাটি খুলুন এবং দুটি পৃথক ফর্ম প্যারামিটার যোগ করুন: একটি ওজনের জন্য এবং অন্যটি বয়সের জন্য। এনটিটি টাইপ হিসেবে @sys.number-integer নির্বাচন করুন এবং প্যারামিটারগুলোকে আবশ্যক হিসেবে চিহ্নিত করুন। প্রাথমিক প্রশ্নগুলোর উত্তর দিন, যেমন— How old are you? এবং What is your correct weight? সমস্ত পরিবর্তন সংরক্ষণ করুন।

যোগ্যতা ফর্ম

  1. যেহেতু আমরা দুটি নতুন কাস্টম প্লেসহোল্ডার যোগ করতে যাচ্ছি, তাই জেনারেটরের টেক্সট প্রম্পট পরিবর্তন করার আগে আমাদের প্রথমে রাউট ফুলফিলমেন্ট থেকে জেনারেটরটি সরিয়ে ফেলতে হবে। সেভ-এ ক্লিক করুন।

জেনারেটরটি সরিয়ে ফেলুন

  1. ম্যানেজ ট্যাবে যান, জেনারেটর নির্বাচন করুন এবং রক্তদান যোগ্যতা জেনারেটরের টেক্সট প্রম্পটটি নিম্নলিখিত তথ্য দিয়ে আপডেট করুন: Check the users eligibility against the following criteria: the minimum age is 18 and the maximum age is 75. The weight must be at least 50 kg. The user is $age years old and weighs $weight Kg. Craft an email and politely explain to the user if they're eligible to donate and if not why. সেভ-এ ক্লিক করুন।

লক্ষ্য করুন যে, আমরা শুধু বয়স এবং ওজন ফর্মের প্যারামিটারগুলোর সাথে টেক্সট প্রম্পটটিকে প্রাসঙ্গিকই করিনি, বরং শেষ বাক্যটিও পরিবর্তন করেছি, যাতে ব্যবহারকারীর কাছে একটি আনুষ্ঠানিক ইমেল পাঠানো যায়, যেটিতে যোগ্যতা যাচাইয়ের কুইজের আনুষ্ঠানিক ফলাফল উল্লেখ থাকবে।

টেক্সট প্রম্পট পুনরায় কনফিগার করুন

  1. এলিজিবিলিটি কুইজ পেজে, রুটটি নির্বাচন করুন এবং ফুলফিলমেন্ট প্যানেলের জেনারেটর সেকশনটি এক্সপ্যান্ড করুন। এরপর, অ্যাড জেনারেটর-এ ক্লিক করুন এবং ব্লাড ডোনেশন এলিজিবিলিটি জেনারেটরটি নির্বাচন করুন। জেনারেটরটি নির্বাচন করার পর, আপনাকে নতুন প্রম্পট প্লেসহোল্ডারগুলোকে সংশ্লিষ্ট সেশন প্যারামিটারগুলোর সাথে যুক্ত করতে হবে। এছাড়াও, আপনাকে আউটপুট প্যারামিটারটি পুনরায় সেট করতে হবে। সেভ-এ ক্লিক করুন।

জেনারেটর বাইন্ডিং আপডেট করুন

  1. এজেন্টটিকে আবার পরীক্ষা করুন। যোগ্যতা যাচাইয়ের ক্ষেত্রে এখন বয়স ও ওজন উভয়ই বিবেচনা করা হয় এবং এর ভাষা কথোপকথনের সুর থেকে পরিবর্তিত হয়ে আরও বিনয়ী একটি উত্তরে পরিণত হয়েছে, যা কোনো সম্ভাব্য মানুষের হস্তক্ষেপ ছাড়াই পাঠানোর জন্য প্রস্তুত।

ব্যবহারকারী যোগ্য নন জানিয়ে ইমেল পাঠানো হয়েছে

ব্যবহারকারী যোগ্য জানিয়ে ইমেল

৯. অভিনন্দন

এই কোডল্যাবটি সম্পন্ন করার জন্য অভিনন্দন!

কোডল্যাবটি সম্পন্ন করার জন্য অভিনন্দন!

আজ আমরা যোগ্যতা যাচাই কুইজের প্রেক্ষাপটে জেনারেটর নিয়ে অনুসন্ধান করেছি। আপনারা দেখেছেন যে, জেনারেটরগুলো এজেন্টের প্রতিক্রিয়া তৈরি করতে এলএলএম (LLM) ব্যবহার করে এবং একটি নলেজ বেস দ্বারা চালিত হলে, সেগুলো সুচিন্তিত সিদ্ধান্তও নিতে পারে। নিঃসন্দেহে, জেনারেটর এবং ডেটা স্টোরকে কাজে লাগিয়ে আরও অনেক ব্যবহারের ক্ষেত্র বাস্তবায়ন করা যেতে পারে এবং আমরা সেগুলো সম্পর্কে জানতে অধীর আগ্রহে অপেক্ষা করছি!

পরিষ্কার করা

এই কোডল্যাবে ব্যবহৃত রিসোর্সগুলির জন্য আপনার গুগল ক্লাউড অ্যাকাউন্টে চার্জ হওয়া এড়াতে, আপনি নিম্নলিখিত পরিষ্করণটি সম্পাদন করতে পারেন:

  • অপ্রয়োজনীয় গুগল ক্লাউড চার্জ এড়াতে, আপনার প্রজেক্টটি প্রয়োজন না হলে গুগল ক্লাউড কনসোল ব্যবহার করে তা ডিলিট করে দিন।
  • আপনি যদি আগে থেকে বিদ্যমান কোনো গুগল ক্লাউড প্রজেক্ট ব্যবহার করে থাকেন, তাহলে আপনার অ্যাকাউন্টে চার্জ হওয়া এড়াতে আপনার তৈরি করা রিসোর্সগুলো ডিলিট করে দিন। আরও তথ্যের জন্য, ‘একটি অ্যাপ ডিলিট করুন’ -এর ধাপগুলো দেখুন।
  • আপনি যদি Vertex AI Conversation এবং Dialogflow-এর API-গুলো নিষ্ক্রিয় করতে চান, তাহলে Discovery Engine API Service Details পৃষ্ঠায় গিয়ে Disable API-তে ক্লিক করে নিশ্চিত করুন এবং Dialogflow API Service Details পৃষ্ঠায় গিয়ে Disable API-তে ক্লিক করে নিশ্চিত করুন।

আরও জানুন

এই গাইড ও রিসোর্সগুলোর মাধ্যমে কনভারসেশনাল এআই এবং জেনারেটিভ এআই সম্পর্কে আরও জানুন:

লাইসেন্স

এই কাজটি ক্রিয়েটিভ কমন্স অ্যাট্রিবিউশন ২.০ জেনেরিক লাইসেন্সের অধীনে রয়েছে।