অ্যাকশন বিল্ডার প্রজেক্ট মাইগ্রেশনে ডায়ালগফ্লো

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

এই গাইডের মাধ্যমে কাজ করার আগে, আপনার ডায়ালগফ্লো টু অ্যাকশন বিল্ডার মাইগ্রেশন ওভারভিউ পর্যালোচনা করা উচিত, যা ডায়ালগফ্লো এবং অ্যাকশন বিল্ডারের মধ্যে গুরুত্বপূর্ণ ধারণা এবং পার্থক্যগুলি কভার করে।

মাইগ্রেশন টুল কি করে

ডায়ালগফ্লো টু অ্যাকশন বিল্ডার মাইগ্রেশন টুল অ্যাকশন বিল্ডারের সাথে কাজ করার জন্য নির্দিষ্ট ডায়ালগফ্লো উপাদানগুলিকে রূপান্তর করে, যেমন ইন্টেন্ট এবং এন্টিটি।

মাইগ্রেশন টুল স্বয়ংক্রিয়ভাবে নিম্নলিখিত ডায়লগফ্লো উপাদানগুলিকে অ্যাকশন বিল্ডারে স্থানান্তরিত করে:

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

মাইগ্রেশন টুল নিম্নলিখিত Dialogflow উপাদানগুলি পরিচালনা করে না :

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

মাইগ্রেশন টুল অ্যাক্সেস করুন

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

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

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

তথ্যগত স্লাইডের মাধ্যমে নেভিগেট করুন এবং মাইগ্রেশন ড্যাশবোর্ড দেখতে মাইগ্রেশন শুরু করুন ক্লিক করুন।

মাইগ্রেশন ড্যাশবোর্ড

মাইগ্রেশন ড্যাশবোর্ড মাইগ্রেশন বিকল্পগুলি দেখায়, সেইসাথে কোন আইটেমগুলি স্থানান্তরিত হবে তার সাথে সম্পর্কিত তথ্য।

মাইগ্রেশন বিকল্প

আপনার ডায়ালগফ্লো প্রকল্পকে অ্যাকশন বিল্ডারে স্থানান্তর করার জন্য মাইগ্রেশন টুলের দুটি বিকল্প রয়েছে:

  • একটি নতুন প্রকল্প হিসাবে স্থানান্তর করুন (প্রস্তাবিত)
    • আপনার বিদ্যমান ডায়ালগফ্লো প্রকল্প অক্ষত রাখে এবং একটি নতুন প্রকল্পে একটি অনুলিপি স্থানান্তর করে৷
    • প্রদর্শনের নাম এবং ডিরেক্টরির তথ্য বিদ্যমান উৎপাদন প্রকল্পের সাথে যুক্ত থাকে। আপনার স্থানান্তরিত প্রকল্পের সাথে কীভাবে আপনার লাইভ প্রকল্পটি ওভাররাইট করবেন তার প্রস্তাবিত প্রক্রিয়াটি দেখুন।
  • এই প্রকল্প স্থানান্তর করুন
    • বিদ্যমান ডায়ালগফ্লো প্রজেক্ট প্রতিস্থাপন করে এবং আপনার প্রোজেক্টের জন্য আপনার সংজ্ঞায়িত ডিসপ্লে নাম এবং অ্যাসিস্ট্যান্ট ডিরেক্টরির তথ্য রাখে।

মাইগ্রেশন রিপোর্ট

নিম্নলিখিত তথ্যের সাথে সম্পর্কিত প্রকল্পের নির্দিষ্ট বিবরণ দেখানোর জন্য আপনি মাইগ্রেশন রিপোর্টের প্রতিটি বিভাগ প্রসারিত করতে পারেন:

  • কি সম্পূর্ণরূপে মাইগ্রেট করা হবে.
  • কি স্থানান্তর করা হবে কিন্তু অতিরিক্ত পোস্ট মাইগ্রেশন সেটআপ প্রয়োজন হবে.
  • যা স্থানান্তরিত হবে না এবং ম্যানুয়ালি যোগ করতে হবে (যদি প্রয়োজন হয়)।
  • আপনার ডায়ালগফ্লো প্রকল্প কোন বৈশিষ্ট্যগুলি ব্যবহার করে যা অ্যাকশন বিল্ডারে উপলব্ধ হবে না।

আপনি মাইগ্রেশন রিপোর্টও ডাউনলোড করতে পারেন, যা আপনি আপনার প্রোজেক্টে মাইগ্রেশন-পরবর্তী পরিবর্তন করার সময় উল্লেখ করতে পারেন।

পোস্ট মাইগ্রেশন সেট আপ

মাইগ্রেশন টুল আপনার ডায়ালগফ্লো প্রোজেক্টের গুরুত্বপূর্ণ অংশগুলিকে অ্যাকশন বিল্ডারে স্থানান্তরিত করতে সহায়তা করলে, স্থানান্তরিত করা হয়নি এমন ট্রানজিশন, প্রম্পট এবং ওয়েবহুক সেট আপ করার জন্য অতিরিক্ত উন্নয়ন প্রয়োজন।

দৃশ্য ব্যবহার করতে আপনার কথোপকথন প্রবাহ আপডেট করুন

যদিও মাইগ্রেশন টুল ডায়ালগফ্লো অভিপ্রায়ের উপর ভিত্তি করে দৃশ্য তৈরি করে যার একটি ইনপুট প্রসঙ্গ রয়েছে, এটি এক-এক সম্পর্ক নয়। নতুন কথোপকথনের মডেলের সাথে অ্যাকশন বিল্ডার-এ কিছু স্থানান্তরিত দৃশ্যের অর্থ নাও হতে পারে।

কোন দৃশ্যের প্রয়োজন তা মূল্যায়ন করে আপনাকে কথোপকথন প্রবাহের পুনর্বিবেচনা করতে হতে পারে। আপনার অ্যাকশনের জটিলতার উপর নির্ভর করে, জেনারেট করা কিছু দৃশ্য মুছে ফেলা সহজ হতে পারে যদি সেগুলি আপনার কথোপকথন প্রবাহের সাথে খাপ খায় না।

বৈশ্বিক অভিপ্রায় পর্যালোচনা এবং আপডেট করুন

কোনো ইনপুট প্রসঙ্গ ছাড়া ডায়ালগফ্লো ইন্টেন্টগুলিকে অ্যাকশন বিল্ডারে গ্লোবাল ইন্টেন্ট হিসেবে স্থানান্তরিত করা হয়। বৈশ্বিক অভিপ্রায়গুলি একটি কথোপকথন জুড়ে সক্রিয় থাকে, যার মানে সেগুলি যে কোনও সময়ে মিলিত হতে পারে৷

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

অনুরূপ প্রশিক্ষণ বাক্যাংশ সহ অভিপ্রায় একত্রিত করুন

যদি আপনার কিছু অভিপ্রায় খুব অনুরূপ প্রশিক্ষণ বাক্যাংশ ভাগ করে, তাহলে আপনার উদ্দেশ্যগুলিকে একক সাধারণ অভিপ্রায়ে একত্রিত করা উচিত। এটা করা অভিপ্রায় ম্যাচিং এর সঠিকতা বৃদ্ধি করে।

উদাহরণস্বরূপ, Intent A- তে নিম্নলিখিত প্রশিক্ষণ বাক্যাংশ রয়েছে:

  • "ঠিক আছে, আমি নিশ্চিত করতে চাই এটা প্রস্তুত"
  • "ঠিক আছে, এটা প্রস্তুত"
  • "চল এটা করি"

অভিপ্রায় B এর নিম্নলিখিত প্রশিক্ষণ বাক্যাংশ রয়েছে:

  • "ঠিক আছে, আমি নিশ্চিত করতে চাই এটা প্রস্তুত"
  • "ঠিক আছে, আমি মনে করি আমি প্রস্তুত"

যেহেতু দুটি অভিপ্রায়ের মধ্যে প্রশিক্ষণ বাক্যাংশগুলি একই রকম, তাই অভিপ্রায় A এবং অভিপ্রায় B কে আরও সাধারণ অভিপ্রায়ে একত্রিত করুন ( ইন্টেন্ট C ) এবং মূলগুলি মুছুন৷ ইন্টেন্ট A বা ইনটেন্ট B- কে নির্দেশ করে এমন দৃশ্যে Intent C ব্যবহার করুন।

অভিপ্রায় C এর নিম্নলিখিত প্রশিক্ষণ বাক্যাংশ রয়েছে:

  • "ঠিক আছে, আমি নিশ্চিত করতে চাই এটা প্রস্তুত"
  • "ঠিক আছে, এটা প্রস্তুত"
  • "চল এটা করি"
  • "ঠিক আছে, আমি মনে করি আমি প্রস্তুত"

ইভেন্ট হ্যান্ডলিং আপডেট করুন

ডায়ালগফ্লোতে নির্দিষ্ট ইভেন্টগুলি ( fallback , media , এবং welcome ) ব্যবহার করে এমন অভিপ্রায়গুলির জন্য, মাইগ্রেশন টুল সেই ইভেন্টের জন্য একটি সম্পর্কিত সিস্টেম অভিপ্রায় তৈরি করে৷ একই ডায়ালগফ্লো অভিপ্রায়ে প্রশিক্ষণের বাক্যাংশ থাকলে, একই প্রশিক্ষণ বাক্যাংশের সাথে একটি অতিরিক্ত অভিপ্রায় তৈরি করা হয়।

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

ফলব্যাক ইন্টেন্টগুলি পরিচালনা করতে সিস্টেম ইন্টেন্ট যোগ করুন

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

NO_MATCH এবং NO_INPUT উভয় সিস্টেম ইন্টেন্ট একটি দৃশ্যে তিনবার পর্যন্ত যোগ করা যেতে পারে। উদাহরণস্বরূপ, একটি দৃশ্যে তিনটি NO_MATCH ইন্টেন্ট যোগ করার অর্থ হল আপনি ব্যবহারকারীর প্রতিক্রিয়াতে আপনার অ্যাকশন কী খুঁজছেন সে সম্পর্কে আরও বিশদ বিবরণ সহ উত্তর দিতে পারেন।

আপনার ডায়ালগফ্লো প্রজেক্ট যেখানে ফলব্যাক ইন্টেন্ট ব্যবহার করেছে সেখানে সিস্টেম ইন্টেন্ট যোগ করা গুরুত্বপূর্ণ। সাধারণত ব্যবহৃত অ্যাকশন বিল্ডার সিস্টেম ইন্টেন্টের কিছু উদাহরণ হল NO_MATCH এবং NO_INPUT । এই সিস্টেম ইন্টেন্টগুলি সম্পর্কে আরও জানতে, আপনি সিস্টেম ইন্টেন্টগুলি পরীক্ষা করে দেখতে পারেন।

আপনার পরিপূর্ণতা কৌশল আপডেট করুন

আপনার ডায়ালগফ্লো পূর্ণতা কোডকে অ্যাকশন বিল্ডারে স্থানান্তরিত করা মাইগ্রেশন প্রক্রিয়ার একটি বড় অংশ। যদিও ওয়েবহুক কল এবং সাধারণ পরিপূর্ণতার ধারণা একই থাকে, অ্যাকশন বিল্ডার ফাংশন পুনঃব্যবহারের জন্য বিকল্প সরবরাহ করে এবং আরও ওয়েবহুক ট্রিগার করার সুযোগ যোগ করে।

এটি মাথায় রেখে, আপনি অ্যাকশন বিল্ডারের বৈশিষ্ট্যগুলির সুবিধা নিতে আপনার প্রকল্পের পরিপূর্ণতা পুনর্বিবেচনা করতে চাইতে পারেন:

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

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

মাইগ্রেশন উদাহরণ

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

স্থানান্তরিত প্রকল্পগুলির তুলনা করা আপনাকে ডায়ালগফ্লো থেকে অ্যাকশন বিল্ডারে স্থানান্তর করার সময় প্রয়োজনীয় পরিবর্তনগুলির ধরন এবং সুযোগ বুঝতে সাহায্য করতে পারে। বাস্তবায়নের তুলনা করার জন্য আপনি নিম্নলিখিত স্থানান্তরিত নমুনা প্রকল্পগুলি পর্যালোচনা করতে পারেন:

নমুনা প্রকল্প ডায়ালগফ্লো কোড অ্যাকশন বিল্ডার কোড
গুগল সম্পর্কে তথ্য প্রকল্পের কোড প্রকল্পের কোড
লেনদেন প্রকল্পের কোড প্রকল্পের কোড
অ্যাকাউন্ট লিঙ্কিং প্রকল্পের কোড প্রকল্পের কোড

এই বিভাগটি প্রস্তাবিত স্থানান্তর প্রক্রিয়া বর্ণনা করে এবং আপনাকে আপনার বর্তমান প্রদর্শন (আমন্ত্রণ) নাম, ডিরেক্টরির তথ্য এবং ঐতিহাসিক বিশ্লেষণ রাখার অনুমতি দেয়।

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

  • পরীক্ষামূলক : এই প্রকল্পটি আপনার মাইগ্রেশন সেট আপ এবং পরীক্ষা করতে ব্যবহৃত হয়।
  • মূল : এই প্রকল্পটি বর্তমানে লাইভ এবং ব্যবহারকারীদের পরিবেশন করছে।

আপনার প্রকল্প স্থানান্তর করতে, নিম্নলিখিতগুলি করুন:

  1. Dialogflow এর এক্সপোর্ট বৈশিষ্ট্য ব্যবহার করে আপনার Dialogflow প্রকল্পের একটি ব্যাকআপ তৈরি করুন।
  2. অ্যাকশন কনসোলে যান এবং আপনি যে প্রকল্পটি স্থানান্তর করতে চান সেটি খুলুন।
  3. ডেভেলপ > অ্যাকশন- এ নেভিগেট করুন এবং প্রিভিউ মাইগ্রেশন-এ ক্লিক করুন।
  4. তথ্যগত স্লাইডের মাধ্যমে ক্লিক করুন এবং তারপরে মাইগ্রেশন শুরু করুন ক্লিক করুন।
  5. একটি নতুন প্রকল্প হিসেবে মাইগ্রেট বেছে নিন।
  6. মাইগ্রেশন রিপোর্ট পর্যালোচনা করুন এবং ভবিষ্যতের রেফারেন্সের জন্য ঐচ্ছিকভাবে এটি ডাউনলোড করুন।
  7. মাইগ্রেট এ ক্লিক করুন।
  8. আপনার "পরীক্ষামূলক" প্রকল্পের জন্য একটি নাম লিখুন এবং প্রকল্প তৈরি করুন ক্লিক করুন। প্রকল্প আইডি একটি নোট করুন.
  9. যেকোন পোস্ট-মাইগ্রেশন সেট আপ সম্পূর্ণ করুন এবং যাচাই করুন যে আপনার অ্যাকশন উদ্দেশ্য অনুযায়ী কাজ করছে।
  10. আপনার "পরীক্ষামূলক" প্রকল্পের খসড়া টানতে gactions CLI ব্যবহার করুন৷

    gactions pull --project-id experimental-project-id

  11. অ্যাকশন কনসোলে আপনার "অরিজিনাল" ডায়ালগফ্লো প্রোজেক্ট আবার খুলুন।

  12. ডেভেলপ > অ্যাকশন- এ নেভিগেট করুন এবং প্রিভিউ মাইগ্রেশন-এ ক্লিক করুন।

  13. এই প্রকল্পটি স্থানান্তর করুন চয়ন করুন।

  14. মাইগ্রেট এ ক্লিক করুন।

  15. আরও আইকনে ক্লিক করুন > প্রকল্প সেটিংস এবং প্রজেক্ট আইডি নোট করুন।

  16. আপনার স্থানীয় সিস্টেমে, আপনার টানা "পরীক্ষামূলক" প্রকল্পের settings.yaml ফাইলটি খুলুন এবং "অরিজিনাল" প্রকল্পের প্রকল্প আইডি দিয়ে প্রজেক্টআইডি প্রতিস্থাপন করুন।

  17. আপনার স্থানীয়ভাবে সংরক্ষিত প্রকল্পের খসড়া পুশ করতে গ্যাকশন CLI ব্যবহার করুন।

    gactions push

  18. আলফা বা বিটা চ্যানেলের মাধ্যমে প্রকাশের জন্য ধাপগুলি অনুসরণ করুন, অথবা আপনার অ্যাকশনকে প্রোডাকশনে প্রকাশ করুন