অভিপ্রায় কভারেজ বাড়ান এবং জেনারেটিভ ফলব্যাক সহ ত্রুটিগুলি সুন্দরভাবে পরিচালনা করুন

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

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

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

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

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

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

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

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

২. প্রস্তুতি গ্রহণ

Dialogflow CX-এ জেনারেটিভ ফলব্যাক ফিচারটি ব্যবহার শুরু করার আগে, আপনাকে Dialogflow API সক্রিয় করতে হবে।

ক্লাউড কনসোল ব্যবহার করে Dialogflow API সক্রিয় করুন

  1. আপনার ব্রাউজারে গুগল ক্লাউড কনসোলটি খুলুন।
  2. গুগল ক্লাউড কনসোলে, এপিআই লাইব্রেরিতে গিয়ে সক্রিয় করা যায় এমন এপিআই এবং পরিষেবাগুলো ব্রাউজ করুন।
  3. এপিআই লাইব্রেরি পেজের উপরের সার্চ বার ব্যবহার করে Dialogflow API লিখে সার্চ করুন, তারপর প্রাপ্ত সার্ভিসটিতে ক্লিক করুন।
  4. আপনার গুগল ক্লাউড প্রজেক্টে Dialogflow API চালু করতে Enable বাটনে ক্লিক করুন।

gcloud CLI ব্যবহার করে (বিকল্প)

বিকল্পভাবে, নিম্নলিখিত gcloud কমান্ড ব্যবহার করে API সক্রিয় করা যেতে পারে:

gcloud services enable dialogflow.googleapis.com

যদি এপিআই সফলভাবে সক্রিয় করা হয়, তাহলে আপনি নিম্নলিখিতের মতো একটি বার্তা দেখতে পাবেন:

Operation "operations/..." finished successfully.

কোডটি নিন

আপনাকে ভার্চুয়াল এজেন্টটি একেবারে নতুন করে তৈরি করতে হবে না, আমরা আপনাকে একটি এজেন্ট সরবরাহ করব যা আপনাকে Dialogflow CX Console থেকে রিস্টোর করে তারপর উন্নত করতে হবে।

সোর্স কোড ডাউনলোড করতে:

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

৩. একজন নতুন এজেন্ট তৈরি করুন

ডায়ালগফ্লো কনসোল খুলুন

এই কোডল্যাবের বাকি ধাপগুলো সম্পন্ন করতে আপনি আপনার গুগল ক্লাউড প্রজেক্টের সাথে ডায়ালগফ্লো সিএক্স কনসোল ব্যবহার করবেন।

  1. আপনার ব্রাউজারে Dialogflow CX কনসোলে যান।
  2. আপনি যে গুগল ক্লাউড প্রজেক্টটি ব্যবহার করতে চান তা নির্বাচন করুন, অথবা ব্যবহারের জন্য একটি নতুন প্রজেক্ট তৈরি করুন।
  3. আপনি Dialogflow CX কনসোলে এজেন্টদের একটি তালিকা দেখতে পাবেন।

আপনি যদি প্রথমবারের মতো Dialogflow CX ব্যবহার করে থাকেন, তাহলে আপনার প্রয়োজন অনুযায়ী প্রজেক্ট ও সেটিংস কনফিগার করার বিষয়ে আরও তথ্যের জন্য Dialogflow CX ডকুমেন্টেশন দেখুন।

একটি নতুন Dialogflow CX এজেন্ট তৈরি করুন

  1. গিটহাব রিপো থেকে ডাউনলোড করা এজেন্টটি পুনরুদ্ধার করতে, আপনাকে একটি নতুন এজেন্ট তৈরি করতে হবে। Dialogflow CX কনসোল থেকে, পৃষ্ঠার উপরের ডান কোণায় থাকা 'Create new agent'-এ ক্লিক করুন।

Create a brand new agent

  1. 'আপনার নিজের এজেন্ট তৈরি করুন ' বিকল্পটি নির্বাচন করুন।

Choose the option

  1. নিচের এজেন্ট সেটিংস দিয়ে ফর্মটি পূরণ করুন এবং এজেন্ট তৈরি করতে 'তৈরি করুন ' বাটনে ক্লিক করুন।
  • ডিসপ্লে নাম হিসেবে বেছে নিন: Divebooker
  • অবস্থান হিসেবে বেছে নিন: us-central1
  • আপনার পছন্দের সময় অঞ্চল নির্বাচন করুন
  • ডিফল্ট ভাষা হিসেবে en - English
  1. Dialogflow স্বয়ংক্রিয়ভাবে আপনার জন্য এজেন্টটি খুলে দেবে। আমাদের কাজ এখনও শেষ হয়নি!

ডাইভবুকার এজেন্ট পুনরুদ্ধার করুন

  1. এজেন্টদের তালিকা পৃষ্ঠায় ফিরে যান, আপনি এইমাত্র যে এজেন্টটি তৈরি করেছেন তাকে শনাক্ত করুন। বিকল্পটি ক্লিক করুন। 78d2781c655810e7.png এবং তারপর রিস্টোর বোতামে ক্লিক করুন।
  2. আপলোড অপশনটি নির্বাচন করুন এবং তারপরে গিটহাব রিপোজিটরি থেকে পূর্বে ডাউনলোড করা ZIP ফাইলটি ড্রপ বা সিলেক্ট করুন।
  3. আমাদের সরবরাহ করা এজেন্টটি ইম্পোর্ট করতে রিস্টোর বাটনে ক্লিক করুন।

Click the Restore button to import the agent we have provided

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

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

Dialogflow আপনার এজেন্টদের সাথে চ্যাট করতে এবং বাগ খুঁজে বের করার জন্য একটি বিল্ট-ইন সিমুলেটর প্রদান করে। প্রতিটি টার্নে, আপনি ট্রিগার হওয়া ইন্টেন্ট, এজেন্টের প্রতিক্রিয়া, সক্রিয় পৃষ্ঠা এবং সেশন প্যারামিটারগুলির সঠিক মান যাচাই করতে পারেন।

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

অমীমাংসিত উদ্দেশ্য

  1. Dialogflow কনসোলে এবং আপনার এজেন্টের ভেতর থেকে, সিমুলেটরটি খোলার জন্য ‘Test Agent’-এ ক্লিক করুন।

Click Test Agent to open the Simulator

  1. আপনার এজেন্টকে Hello মতো একটি সম্ভাষণ টাইপ করুন এবং জিজ্ঞাসা করুন what is a liveaboard? । প্রশ্নটি কোনো ইন্টেন্টের সাথে মেলে না, ফলে 'দুঃখিত, আমি ঠিক জানি না কীভাবে সাহায্য করব' এর মতো একটি সাধারণ প্রম্পট প্রদর্শিত হয়। সিমুলেটরে মূল প্রতিক্রিয়াটি পরীক্ষা করে আপনি যাচাই করতে পারেন যে sys.no-match-default বিল্ট-ইন ইভেন্টটি সক্রিয় হয়েছিল কিনা।

Greet the agent and ask what a liveabord is

JSON রেসপন্সটির প্রায় শেষ পর্যন্ত স্ক্রল করুন। লক্ষ্য করুন যে, একটি ম্যাচিং ইন্টেন্ট খোঁজার সময় Dialogflow এটিকে একটি NO_MATCH হিসেবে চিহ্নিত করে এবং একটি নো-ম্যাচ ইভেন্ট ট্রিগার করে।

Check that sys.no-match-default event was raised by Dialogflow

  1. বিল্ড ট্যাবে যান এবং লাইভবোর্ডস ফ্লো-এর স্টার্ট পেজটি খুলুন।

Switch to the Build tab and open the Start Page of the Liveaboards flow.

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

  1. sys.no-match-default ইভেন্ট হ্যান্ডলারে ক্লিক করুন এবং Agent responses সেকশন পর্যন্ত স্ক্রল ডাউন করুন। Dialogflow বিকল্প প্রতিক্রিয়ার একটি তালিকা প্রদান করে, তবে আপনি বিভিন্ন ধরণের প্রতিক্রিয়া বার্তাও সংজ্ঞায়িত করতে পারেন, যাতে ব্যবহারকারীকে কেবল টেক্সট প্রতিক্রিয়ার চেয়েও বেশি কিছু দেওয়া যায়।

Look at the pre-defined agent responses

এবার সুখের পথে এগিয়ে যাওয়া যাক!

সুখী পথ

এই দ্বিতীয় ক্ষেত্রে, এমন একজন ডুবুরির ভান করুন যিনি আগামী বছর জুলাই মাসে ১২ জনের একটি দলের জন্য গ্যালাপাগোস দ্বীপপুঞ্জে একটি ডাইভিং ক্রুজ বুক করতে চান।

  1. সিমুলেটর প্যানেলে এজেন্টের সাথে নতুন করে কথা শুরু করতে রিসেট আইকনে ক্লিক করুন।

Reset to start a new conversation

Consider changing to vertical view for a better UX

  1. এজেন্টকে বলুন যে আপনি গ্যালাপাগোস দ্বীপপুঞ্জে একটি চার্টার বুক করতে চান এবং আপনার ভ্রমণের বিবরণ দিন। নীচের হুবহু একই নির্দেশাবলী ব্যবহার করার প্রয়োজন নেই, নিজের মতো করে চেষ্টা করুন!

Test the happy path

  1. স্টার্ট পেজটি খুলুন এবং head.send.group.request রুটটিতে ক্লিক করুন। নিচে স্ক্রল করে Transition সেকশনে যান, যা Dialogflow-কে বলে দেয় যে এই ইন্টেন্টটি ম্যাচ হলে কোন পেজে ট্রানজিশন করতে হবে।

Transition to Collect Further Info page

  1. রাউট ডেফিনিশনটি বন্ধ করুন এবং ' কালেক্ট ফার্দার ইনফো' পেজটি এক্সপ্যান্ড করুন। এন্ট্রি ফুলফিলমেন্ট এবং প্যারামিটারগুলির তালিকাটি লক্ষ্য করুন।

Collect Further Info page

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

  1. ম্যানেজ ট্যাবে যান এবং ইন্টেন্টস সেকশনের অধীনে থাকা head.send group request ইন্টেন্টটিতে ক্লিক করুন। এই ইন্টেন্টটির জন্য দেওয়া ট্রেনিং ফ্রেজগুলো এবং ট্রেনিং ফ্রেজগুলোর টীকাযুক্ত অংশগুলো দেখুন।

Look at the training phrases provided for this intent and the annotated parts of the training phrases.

  1. "I need to organize a trip to Costa Rica for 15 divers" - এই ট্রেনিং ফ্রেজটি বিবেচনা করুন। এখানে "Costa Rica"-কে destination এবং "15" -কে number-of-guests হিসেবে অ্যানোটেট করা হয়েছে। যখন আপনি একটি ট্রেনিং ফ্রেজের অংশবিশেষকে অ্যানোটেট করেন, Dialogflow বুঝতে পারে যে এই অংশগুলো হলো প্রকৃত মানের উদাহরণ মাত্র, যা ব্যবহারকারীরা রানটাইমে প্রদান করবে। এই কারণেই "Do you offer charters to the Galapagos Islands?" - এই প্রাথমিক ইনপুটের জন্য Dialogflow "Galapagos Islands" থেকে destination প্যারামিটারটি এক্সট্র্যাক্ট করেছে।

এরপর আমরা দেখব, ফর্মের কোনো প্যারামিটার পূরণ করতে বলা হলে এজেন্টকে সঠিক ইনপুট না দিলে কী ঘটে।

অবৈধ ইনপুট

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

Enter an invalid destination

  1. ম্যানেজ ট্যাবে, রিসোর্সেস সেকশনের অধীনে থাকা এনটিটি টাইপস- এ ক্লিক করুন। দুটি ট্যাব লক্ষ্য করুন: সিস্টেম ট্যাবের অধীনে আপনি আপনার এজেন্ট দ্বারা বর্তমানে ব্যবহৃত সিস্টেম এনটিটিগুলো খুঁজে পাবেন। কাস্টম ট্যাবটি এই এজেন্টের জন্য নির্দিষ্ট ডেটা মেলানোর উদ্দেশ্যে তৈরি করা কাস্টম এনটিটিগুলোর তালিকা প্রদান করে।

Destination custom entity

  1. সত্তাটি কোন কোন মানের সাথে মেলে তা জানতে গন্তব্য সত্তাটির উপর ক্লিক করুন। "ইউরোপ" এন্ট্রিগুলোর মধ্যে একটি নয় এবং এটি কোনো প্রতিশব্দও নয়।
  2. ফ্লো ডায়াগ্রামে, ফর্ম প্যারামিটার সম্বলিত 'আরও তথ্য সংগ্রহ করুন' পৃষ্ঠাটি প্রসারিত করুন। গন্তব্য প্যারামিটারটিতে ক্লিক করুন।
  3. প্যারামিটার প্যানেলে নিচে স্ক্রল করে Reprompt ইভেন্ট হ্যান্ডলার সেকশনে যান, তারপর No-match default ইভেন্ট হ্যান্ডলারটিতে ক্লিক করুন।

এই প্যারামিটার-স্তরের ইভেন্ট হ্যান্ডলারটি বিশেষভাবে ফর্ম পূরণের সময় ব্যবহারকারীর ভুল ইনপুট সামলানোর জন্য তৈরি। যেহেতু "Europe" একটি অপ্রত্যাশিত ইনপুট, তাই একটি sys.no-match-default ইভেন্ট চালু করা হয়েছিল এবং এই ইভেন্টের জন্য সংজ্ঞায়িত সংশ্লিষ্ট রিপ্রম্পট হ্যান্ডলারটিকে কল করা হয়েছিল। "Agent says" অংশে দুটি বিকল্প রিপ্রম্পট বার্তার তালিকা দেওয়া আছে।

Static alternative re-prompt messages when the end-user enters an invalid destination.

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

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

৫. জেনারেটিভ ফলব্যাক সক্রিয় করুন

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

জেনারেটিভ ফলব্যাক ফিচারটি হলো Dialogflow CX-এর একটি ফিচার, যা ভার্চুয়াল এজেন্ট রেসপন্স তৈরি করতে গুগলের লার্জ ল্যাঙ্গুয়েজ মডেল (LLM) ব্যবহার করে।

এটা কীভাবে সাহায্য করে?

মূল ব্যবহারের ক্ষেত্রগুলোর পাশাপাশি বেশ কিছু সাধারণ ব্যবহারকারীর অনুরোধও থাকে, যেমন—ব্যবহারকারী বুঝতে না পারলে এজেন্টের কথাটি পুনরাবৃত্তি করা, ব্যবহারকারীর অনুরোধে লাইনে থাকা এবং কথোপকথনের সারসংক্ষেপ করা। আমাদের করা প্রথম পরীক্ষায়, এজেন্ট "লাইভঅ্যাবোয়ার্ড কী?" প্রশ্নটির উত্তর দিতে ব্যর্থ হয়েছিল, কারণ আমরা এর জন্য কোনো ইন্টেন্ট তৈরি করিনি এবং স্কুবা ডাইভিং ও লাইভঅ্যাবোয়ার্ড সম্পর্কিত এই ধরনের সাধারণ প্রশ্নগুলো সামলানোর জন্য ফ্লো-টি ডিজাইন করিনি।

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

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

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

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

আপনি আপনার এজেন্টে অমিল ইভেন্ট হ্যান্ডলারগুলির জন্য জেনারেটিভ ফলব্যাক সক্রিয় করতে পারেন, যা ফ্লো, পেজ বা প্যারামিটার ফুলফিলমেন্টে ব্যবহার করা যেতে পারে।

আমরা সম্পূর্ণ Liveaboards ফ্লো-এর no-match-default ইভেন্টের জন্য জেনারেটিভ ফলব্যাক চালু করা শুরু করব।

  1. ফ্লো-এর স্টার্ট পেজটি প্রসারিত করুন।
  2. ইভেন্ট হ্যান্ডলার-এর অধীনে sys.no-match-default-এ ক্লিক করুন।
  3. Agent responses-এর অধীনে Enable generative fallback চেক করুন, তারপর Save-এ ক্লিক করুন।

Check Enable generative fallback under Agent responses

Save to enable generative fallback on the Liveaboards Start Page

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

এজেন্ট যখন যাত্রীর সংখ্যা জানতে চাইবে, তখন ভুল ইনপুট সামলানোর জন্য আমরা এখন জেনারেটিভ ফলব্যাক চালু করতে চাই:

  1. ফর্মের প্যারামিটারগুলো সম্বলিত ' আরও তথ্য সংগ্রহ করুন' পৃষ্ঠাটি খুলুন। 'অতিথির সংখ্যা' প্যারামিটারটিতে ক্লিক করুন।
  2. টার্গেট নো-ম্যাচ ইভেন্ট হ্যান্ডলারটিতে যান ( রিপ্রম্পট ইভেন্ট হ্যান্ডলার সেকশন পর্যন্ত স্ক্রল ডাউন করুন, তারপর নো-ম্যাচ ডিফল্ট ইভেন্ট হ্যান্ডলারটিতে ক্লিক করুন)।

Navigate to the target No-match event handler (scroll down to the Reprompt event handlers section, then click the No-match default event handler)

  1. এজেন্ট প্রতিক্রিয়ার অধীনে জেনারেটিভ ফলব্যাক সক্ষম করুন চেক করুন

Enable generative fallback on parameter number-of-guest

  1. অবশেষে সেভ-এ ক্লিক করুন।
  2. এখন গন্তব্য এবং ইমেল-ঠিকানার জন্য জেনারেটিভ ফলব্যাক সক্রিয় করতে হুবহু ধাপগুলো পুনরাবৃত্তি করুন।

চমৎকার কাজ! আপনি অপ্রত্যাশিত ইনটেন্ট এবং অবৈধ প্যারামিটার মানগুলি পরিচালনা করার জন্য জেনারেটিভ ফলব্যাক সক্রিয় করেছেন। এরপরে, আমরা দেখব কীভাবে একটি টেক্সট প্রম্পটের মাধ্যমে জেনারেটিভ ফলব্যাক বৈশিষ্ট্যটি কনফিগার করতে হয়, যা LLM-কে প্রতিক্রিয়া জানানোর নির্দেশ দেয়।

৬. জেনারেটিভ ফলব্যাক কনফিগার করুন

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

  1. প্রতিক্রিয়া তৈরির জন্য একটি নির্দিষ্ট (পূর্বনির্ধারিত) প্রম্পট নির্বাচন করুন।
  2. একটি কাস্টম প্রম্পট নির্ধারণ করুন।

আগে থেকে সংজ্ঞায়িত একটি প্রম্পট বেছে নিন

  1. Dialogflow CX কনসোলে এজেন্ট সেটিংস- এ ক্লিক করুন।

Go to Agent Settings

  1. ML ট্যাবে যান, এবং তারপর Generative AI সাব-ট্যাবে যান।

Generative AI sub-tab

এই ফিচারটির সাথে ডিফল্টভাবে দুটি টেমপ্লেট প্রম্পট দেওয়া থাকে: ডিফল্ট টেমপ্লেট (যা দেখা যায় না) এবং এক্সাম্পল টেমপ্লেট, যা আপনাকে নিজের প্রম্পট লিখতে নির্দেশনা দেয়।

  1. উদাহরণ টেমপ্লেটটি নির্বাচন করুন এবং এটি পরীক্ষা করার জন্য ড্রপডাউনের ডানদিকে থাকা সম্পাদনা বোতামে ক্লিক করুন।

Click the Edit button on the right side of the template dropdown to inspect it.

পূর্বনির্ধারিত প্রম্পটের সাহায্যে ভার্চুয়াল এজেন্ট সাধারণ কথোপকথনের পরিস্থিতি সামলাতে পারে। উদাহরণস্বরূপ:

  • ব্যবহারকারীকে অভিবাদন জানান এবং বিদায় জানান।
  • ব্যবহারকারী যদি বুঝতে না পারেন, তাহলে এজেন্ট যা বলেছেন তা আবার বলুন।
  • ব্যবহারকারী অনুরোধ করলে লাইনে থাকুন।
  • কথোপকথনটির সারসংক্ষেপ করুন।

চলুন ডাইভবুকার এজেন্টের জন্য একটি নির্দিষ্ট টেক্সট প্রম্পট নির্ধারণ করার চেষ্টা করি!

৭. আপনার নিজস্ব প্রম্পট নির্ধারণ করুন

  1. নিচের প্রম্পটটি কপি করে টেক্সট প্রম্পট এরিয়াতে পেস্ট করুন।
You are a friendly agent that likes helping traveling divers.
You are under development and you can only help
$flow-description

At the moment you can't help customers with land-based diving and courses. You cannot recommend local dive shops and diving resorts.

Currently you can $route-descriptions

The conversation between the human and you so far was:
${conversation USER:"Human:" AGENT:"AI"}

Then the human asked:
$last-user-utterance

You say:
  1. নতুন প্রম্পটটিকে একটি নতুন টেমপ্লেট হিসেবে সংরক্ষণ করতে (একটি নতুন টেমপ্লেটের নাম বেছে নিন) ‘Save as a new template’ বিকল্পটি নির্বাচন করুন এবং প্যানেলের নিচের ডান কোণায় থাকা ‘Save’ অপশনটি বেছে নিয়ে সেভ করুন

Create a custom text prompt specific for the agent and save as a new template

  1. নতুন তৈরি করা প্রম্পটটিকে সক্রিয় করতে হলে, আপনাকে সেটিংসগুলোও সেভ করতে হবে।

Save the new settings

নিজের লেখার বিষয়বস্তু বা প্রম্পট লেখার সময়, স্পষ্ট, সংক্ষিপ্ত এবং নির্দেশনামূলক হোন। এলএলএম-এর জন্য প্রম্পটটি যেভাবে তৈরি করা হয়, তা তার উত্তরের মানকে ব্যাপকভাবে প্রভাবিত করতে পারে। এলএলএম-রা নির্দেশনা অনুসরণ করতে প্রশিক্ষিত, এবং তাই আপনার প্রম্পটটি যত বেশি সুনির্দিষ্ট নির্দেশের মতো হবে, আপনি সম্ভবত তত ভালো ফলাফল পাবেন। একটি প্রম্পট তৈরি করুন এবং প্রাপ্ত ফলাফলের উপর ভিত্তি করে, এটিকে আরও উন্নত করার জন্য পুনরাবৃত্তি করুন।

কার্যকরী প্রম্পট তৈরি করতে, নিম্নলিখিত সর্বোত্তম অনুশীলনগুলি অনুসরণ করুন:

  1. এলএলএম-এর মাধ্যমে আপনি যে কাজটি করাতে চান, তার একটি স্পষ্ট ও সংক্ষিপ্ত বিবরণ দিন। এর বেশিও নয়, কমও নয়। বিবরণটি সম্পূর্ণ ও সংক্ষিপ্ত রাখুন।
  2. এছাড়াও, নির্দেশটি সুনির্দিষ্ট ও সুস্পষ্ট হওয়া উচিত এবং এতে অস্পষ্ট বা দ্ব্যর্থক ভাষা পরিহার করা উচিত।
  3. জটিল কাজগুলোকে ছোট ছোট ও সহজে পরিচালনাযোগ্য অংশে ভাগ করুন। কাজটিকে ছোট ছোট ধাপে ভাগ করার মাধ্যমে, আপনি মডেলটিকে একবারে একটি বিষয়ের উপর মনোযোগ দিতে সাহায্য করতে পারেন এবং ভুল বা বিভ্রান্তির সম্ভাবনা কমাতে পারেন।
  4. প্রতিক্রিয়ার মান উন্নত করতে আপনার প্রশ্নে উদাহরণ যোগ করুন। এলএলএম শিক্ষার্থীরা উদাহরণগুলো থেকে প্রাসঙ্গিকভাবে শেখে কীভাবে উত্তর দিতে হয়।

প্রম্পট তৈরি করার সময়, কী ধরনের প্রেক্ষাপট তৈরি করা উচিত তার স্বাভাবিক ভাষার বর্ণনার পাশাপাশি নিম্নলিখিত প্লেসহোল্ডারগুলোও ব্যবহার করা যেতে পারে:

  • এজেন্ট এবং ব্যবহারকারীর মধ্যকার $conversation , যেখানে ব্যবহারকারীর একেবারে শেষ উক্তিটি অন্তর্ভুক্ত থাকবে না। আপনি টেক্সট প্রম্পটে টার্ন প্রিফিক্সগুলো (যেমন: "Human", "AI" বা "You", "Agent") পরিবর্তন করে নিতে পারেন।
  • $last-user-utterance ব্যবহারকারীর সর্বশেষ উক্তি।
  • $flow-description সক্রিয় ফ্লো-টির বিবরণ।
  • $route-descriptions সক্রিয় ইন্টেন্টগুলোর বিবরণ।

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

৮. ফ্লো এবং ইনটেন্ট বর্ণনা যোগ করুন

প্রবাহের বিবরণ যোগ করুন

  1. Liveaboards ফ্লো-তে একটি বিবরণ যোগ করতে, Flows বিভাগে ফ্লো-টির উপর আপনার মাউস নিয়ে গিয়ে ফ্লো সেটিংসে যান।

Access the flow settings by hovering your mouse over the flow in the Flows section.

  1. বিকল্পগুলিতে ক্লিক করুন 78d2781c655810e7.png বোতাম।
  2. ফ্লো সেটিংস নির্বাচন করুন এবং নিম্নলিখিত বিবরণটি (বা এর অনুরূপ কোনো বিবরণ) যোগ করুন: search, find and book liveaboards

Add a description to the Liveaboards flow

  1. সংরক্ষণ করুন ক্লিক করুন

অভিপ্রায়ের বিবরণ যোগ করুন

  1. চলুন এখন head.send.group.request ইন্টেন্টটিতে একটি ভালো বিবরণ যোগ করি। Manage ট্যাবে যান, Resources সেকশনের অধীনে Intents বেছে নিন এবং head.send.group.request ইন্টেন্টটি নির্বাচন করুন।
  2. নিম্নলিখিত বিবরণটি যোগ করুন: assist users with group or full charter reservations. Initially collect travel details including departure period, destination, number of guests (min 4 max 15 people), contact details. The destination must be one of the following in the Pacific: Costa Rica, Mexico, Galapagos Islands

মনে রাখবেন, বিবরণে নৌকায় অনুমোদিত সর্বনিম্ন ও সর্বোচ্চ যাত্রী সংখ্যার মতো গুরুত্বপূর্ণ তথ্য রয়েছে। এই বিষয়টি মাথায় রাখবেন!

  1. সংরক্ষণ করুন ক্লিক করুন

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

পরবর্তী অংশে, আপনার এজেন্ট আগের সেই কঠিন প্রশ্নগুলোর উত্তর কীভাবে দিতে পারে, তা দেখার জন্য আপনি এটিকে পুনরায় পরীক্ষা করবেন।

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

এখন যেহেতু আপনি ভার্চুয়াল এজেন্টে জেনারেটিভ ফলব্যাক কনফিগার এবং সক্রিয় করেছেন, আপনি একই ধরনের কঠিন প্রশ্ন জিজ্ঞাসা করতে পারেন এবং দেখতে পারেন এটি প্রতিক্রিয়াগুলি কীভাবে পরিচালনা করে।

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

Test agent again

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

Retest the agent and ask again what is a liveaboard

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

লজ্জা না পেয়ে এজেন্টকে চ্যালেঞ্জ করুন, জিজ্ঞাসা করুন যে আপনি যেহেতু এখনও সনদপ্রাপ্ত ডাইভার নন, সে আপনাকে একটি স্কুবা ডাইভিং কোর্স খুঁজে দিতে পারবে কিনা।

 Ask the agent if it can help you find a scuba diving course

হ্যাঁ, ঠিকই বলেছেন, এই মুহূর্তে আমরা এজেন্টকে স্কুবা কোর্সে সহায়তা করার জন্য ডিজাইন করিনি। এজেন্ট তা কীভাবে জানবে? টেক্সট প্রম্পটে আমরা স্পষ্টভাবে উল্লেখ করেছি যে এজেন্ট কীসে সহায়তা করতে পারবে এবং কীসে পারবে না। " এই মুহূর্তে আপনি গ্রাহকদের স্থলভিত্তিক ডাইভিং এবং কোর্স সম্পর্কে সাহায্য করতে পারবেন না। আপনি স্থানীয় ডাইভ শপ এবং ডাইভিং রিসোর্টের সুপারিশ করতে পারবেন না।"

এখন সুখকর পরিস্থিতিটি পুনরায় পরীক্ষা করুন এবং আলোচনাটিকে আরও সমৃদ্ধ করুন। চলুন দেখি অভিজ্ঞতাটি কীভাবে বদলে গেছে।

Retest the happy scenario and be creative in the dialogue

Retest the happy scenario and be creative in the dialogue

যখন Dialogflow ফ্লো ডিজাইন অনুযায়ী কোনো ইন্টেন্ট মেলাতে পারে বা কোনো প্যারামিটার সংগ্রহ করার চেষ্টা করে, তখন এটি ডিজাইন করার সময় সংজ্ঞায়িত ফুলফিলমেন্টগুলো প্রদর্শন করে। যখন ব্যবহারকারী পূর্বনির্ধারিত স্ক্রিপ্টের বাইরে গিয়ে ভ্রমণের বিবরণের সারাংশ জানতে চান বা তাদের ফোন নম্বর দেওয়ার প্রস্তাব দেন, তখন জেনারেটিভ ফলব্যাক ফিচারটি সক্রিয় হয়।

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

দুর্ভাগ্যবশত, কথোপকথনে ভুলত্রুটি হতে পারে। চলুন অন্য একটি পরীক্ষা করা যাক, এবার যখন আপনাকে অতিথির সংখ্যা জিজ্ঞাসা করা হবে, তখন ১৫-এর চেয়ে বড় একটি সংখ্যা বলুন।

Provide a number of guests greater than 15

Provide a number of guests greater than 15

এখানে কয়েকটি বিষয় উল্লেখ করার আছে:

  1. ২০ একটি বৈধ সংখ্যা নয় কেন? কারণ আমরা ইন্টেন্ট ডেসক্রিপশনের অংশ হিসেবে অনুমোদিত অতিথির সংখ্যার উপর একটি সীমা নির্ধারণ করেছি: " এজেন্ট যাত্রার সময়কাল, গন্তব্য, অতিথির সংখ্যা (সর্বনিম্ন ৪, সর্বোচ্চ ১৫ জন), যোগাযোগের বিবরণের মতো তথ্য সংগ্রহ করে "। LLM যে জেনারেটিভ রেসপন্সটি দিয়েছে, "দুঃখিত, আমরা শুধুমাত্র ১৫ জন পর্যন্ত অতিথির গ্রুপ বুকিংয়ে সহায়তা করতে পারি", তা অতিথির সংখ্যার উপর আমাদের দেওয়া বিধিনিষেধের সাথে পুরোপুরি সামঞ্জস্যপূর্ণ। এটিকে আরও জোরদার করার জন্য, number-of-guests হলো একটি কাস্টম RegExp এনটিটি যা শুধুমাত্র ৪ থেকে ১৫ পরিসরের মধ্যে থাকা সংখ্যাগুলোর সাথে মেলে।
  2. কথোপকথন চলতে থাকে কারণ শেষ পর্যন্ত ব্যবহারকারী ১৫ জন ডুবুরির জন্য একটি অফার পেতে আগ্রহী। স্বাভাবিক কথোপকথনের সময় এমনটা প্রায়ই ঘটে, আমরা প্রায়শই আমাদের মন পরিবর্তন করি! লক্ষ্য করুন, এজেন্টটি কতটা সহযোগিতামূলক এবং এটি ব্যবহারকারীকে আলতোভাবে সফল পথের দিকে ফিরিয়ে নিয়ে যায়।

কথোপকথন ডিজাইনের ক্ষেত্রে একটি সংলাপের এক অর্ধাংশ স্ক্রিপ্ট করা হয়, এই আশায় যে এটি এতটাই শক্তিশালী হবে যে যে কেউ এসে অন্য অর্ধাংশটি অভিনয় করে দেখাতে পারবে। দীর্ঘমেয়াদী পরিকল্পনার কথা মাথায় রেখে ডিজাইন করার সময়, ডেভেলপারদের আপনার সংলাপের প্রতিটি ধাপে ব্যবহারকারী কী বলতে পারে তার উপর মনোযোগ দিতে হবে, যাতে আপনার রাউট, হ্যান্ডলার এবং প্যারামিটারগুলো নির্ধারণ করা যায়। এই কারণেই আমরা Dialogflow CX-এ জেনারেটিভ ফলব্যাক ফিচারটি যুক্ত করেছি: যাতে ডেভেলপাররা বাস্তবায়নের খুঁটিনাটির চেয়ে কথোপকথন ডিজাইনের মূলনীতিগুলোর উপর বেশি মনোযোগ দিতে পারে এবং ব্যবহারকারীদের একটি শক্তিশালী কথোপকথনমূলক অভিজ্ঞতা প্রদান করতে পারে।

চলুন আরও একটি পরীক্ষা করা যাক, এবার বটটিকে মালদ্বীপের মতো এমন একটি জায়গা দিয়ে আবার চ্যালেঞ্জ করুন যা উপলব্ধ গন্তব্যের তালিকায় নেই। তারপর আমরা সংক্ষেপে দেখে নেব পর্দার আড়ালে কী ঘটে।

Challenge the bot again with a place which is not in the list of available destinations like the Maldives

উল্লেখ্য যে, যেহেতু আমরা ডেস্টিনেশন প্যারামিটারের জন্য no-match ইভেন্টে জেনারেটিভ ফলব্যাকও সক্রিয় করেছি, তাই জেনারেটেড রেসপন্স তৈরি করার জন্য একটি বৃহৎ ল্যাঙ্গুয়েজ মডেলে রিকোয়েস্ট পাঠানো হয়। (এজেন্ট সেজ-এর অধীনে) নিয়মিত পূর্বনির্ধারিত রেসপন্সগুলো উপেক্ষা করা হয়।

নিচের টেক্সট বক্সগুলো আপনাকে আরও ভালোভাবে বুঝতে সাহায্য করবে যে, কীভাবে প্লেসহোল্ডারগুলো বৃহৎ ল্যাঙ্গুয়েজ মডেলে পাঠানো অনুরোধের রূপ দিতে সহায়তা করে।

এটি হলো Dialogflow-তে আমাদের কনফিগার করা কাস্টম টেক্সট প্রম্পট, যেখানে প্লেসহোল্ডারগুলো বোল্ড অক্ষরে হাইলাইট করা আছে:

You are a friendly agent that likes helping traveling divers.
You are under development and you can only help
$flow-description

At the moment you can't help customers with land-based diving and courses. You cannot recommend local dive shops and diving resorts.

Currently you can $route-descriptions

The conversation between the human and you so far was:
${conversation USER:"Human:" AGENT:"AI"}

Then the human asked:
$last-user-utterance

You say:

নীচের টেক্সট বক্সে আমি বৃহৎ ল্যাঙ্গুয়েজ মডেল দ্বারা প্রাপ্ত ইনপুট এবং আউটপুট অন্তর্ভুক্ত করেছি, যেটিতে তৈরি হওয়া প্রতিক্রিয়াটি রয়েছে যা ব্যবহারকারীকে আবার বলা হবে:

llm_input:
You are a friendly agent that likes helping traveling divers.
You are under development and you can only help search, find and book liveaboards.

At the moment you can't help customers with land-based diving and courses. You cannot recommend local dive shops and diving resorts.

Currently you can assist users who are looking for a group reservation or a full charter. Initially collect travel details including departure period, destination, number of guests (min 4 max 15 people), contact details. The destination must be one of the following in the Pacific: Costa Rica, Mexico, Galapagos Islands.

The conversation between the human and you so far was:
Human: Hi, my name's Alessia
AI Hi Alessia, what can I help you with today?
Human: Can you help me find a nice boat for myself and my family?
AI To assist you with that I need to collect the details of your travel and then we'll get back to you with an offer shortly.
Where would you like to go? We can organize a charter in Costa Rica, Galapagos Islands and several locations around Mexico

Then the human asked:
The kids want to go to the Maldives

llm_output:
You say:
I'm sorry Alessia, we can only help you with liveaboards in Costa Rica, Galapagos Islands and several locations around Mexico.

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

নিষিদ্ধ বাক্যাংশের তালিকাটি সংশোধন করুন

জেনারেটিভ ফলব্যাক ফিচারটি একাধিক উপায়ে কনফিগার করা যেতে পারে:

  1. প্রতিক্রিয়া তৈরির জন্য একটি নির্দিষ্ট (পূর্বনির্ধারিত) প্রম্পট নির্বাচন করুন।
  2. একটি কাস্টম প্রম্পট নির্ধারণ করুন।
  3. নিষিদ্ধ বাক্যাংশের তালিকা পরিবর্তন করুন।

এখন পর্যন্ত আমরা প্রথম দুটি উপায় দেখেছি। চলুন তৃতীয়টি নিয়ে আলোচনা করা যাক।

  1. এজেন্ট সেটিংস- এ, এমএল (ML) ট্যাবে যান এবং তারপরে জেনারেটিভ এআই (Generative AI) সাব-ট্যাবে যান।
  2. নিষিদ্ধ বাক্যাংশ বিভাগে নিম্নলিখিত বাক্যগুলো তালিকায় যোগ করুন:
  3. Dangerous country
  4. Hateful place
  5. Medical assistance
  6. সংরক্ষণ করুন- এ ক্লিক করুন।
  7. রিসেট আইকনে ক্লিক করুন এবং শেষ সিনারিওটি ​​পুনরায় পরীক্ষা করুন। বিশ্বজুড়ে কোনো সুন্দর ডাইভিং গন্তব্যের নাম দেওয়ার পরিবর্তে নিষিদ্ধ বাক্যাংশগুলোর মধ্যে একটি লিখুন।

Test one of the banned phrases

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

চমৎকার! আমরা এমন অনেক কথোপকথনের পরিস্থিতি নিয়ে আলোচনা করেছি যেখানে সৃজনশীল প্রতিক্রিয়া সত্যিই পার্থক্য গড়ে তুলতে পারে। আপনি নির্দ্বিধায় পরীক্ষা চালিয়ে যেতে পারেন!

১০. অভিনন্দন

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

Cbo Chill

আপনি সফলভাবে একটি ভার্চুয়াল এজেন্ট তৈরি করেছেন এবং ফ্লো-তে ও প্যারামিটার পূরণের সময় ব্যবহৃত no-match ইভেন্ট হ্যান্ডলারগুলিতে জেনারেটিভ ফলব্যাক সক্রিয় করেছেন।

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

অন্যান্য কথোপকথনমূলক পরিস্থিতি পরীক্ষা করতে এবং Dialogflow CXজেনারেটিভ AI সম্পর্কিত অন্যান্য উপলব্ধ কার্যকারিতা অন্বেষণ করতে দ্বিধা করবেন না।

পরিষ্কার করা

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

  • Dialogflow CX কনসোলে যান এবং আপনার তৈরি করা সমস্ত এজেন্ট মুছে ফেলুন।
  • গুগল ক্লাউড কনসোলে, এপিআই এবং সার্ভিসেস (APIs and Services) পৃষ্ঠায় যান এবং ডায়ালগফ্লো এপিআই (Dialogflow API) নিষ্ক্রিয় করুন।

আরও পড়ুন

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

লাইসেন্স

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