انتقال پروژه Dialogflow به Actions Builder

به عنوان یک توسعه دهنده Dialogflow، ممکن است بخواهید اقدامات موجود خود را به Actions Builder منتقل کنید. استفاده از روش جدید درون کنسولی برای توسعه Actions چندین مزیت دارد و انتقال پروژه Dialogflow موجود شما آسان است. این صفحه نحوه استفاده از ابزار انتقال Dialogflow/Actions Builder را شرح می دهد.

قبل از کار بر روی این راهنما، باید نمای کلی مهاجرت Dialogflow به Actions Builder را مرور کنید، که مفاهیم و تفاوت های مهم بین Dialogflow و Actions Builder را پوشش می دهد.

کاری که ابزار مهاجرت انجام می دهد

ابزار انتقال Dialogflow به Actions Builder عناصر خاص Dialogflow را مانند intent ها و موجودیت ها برای کار با Action Builder تبدیل می کند.

ابزار مهاجرت به طور خودکار عناصر Dialogflow زیر را به Actions Builder منتقل می کند:

  • هدف پیش‌فرض خوش‌آمدگویی Dialogflow که به عنوان فراخوان اصلی منتقل می‌شود.
  • تمام عبارات و موجودیت های آموزشی برای هر زبانی که Action شما پشتیبانی می کند.
  • مقاصد بدون زمینه ورودی، که به عنوان مقاصد جهانی منتقل می شوند.
  • مقاصد با یک زمینه ورودی، که به عنوان صحنه ها و مقاصد منتقل می شوند.
  • مقاصد با یک زمینه ورودی و پر کردن شکاف منجر به دو صحنه و یک هدف برای مدیریت انتقال به صحنه با پر کردن شکاف می شود.
  • اهدافی که از Dialogflow بازگشتی، رسانه و رویدادهای خوش آمد استفاده می‌کنند، منجر به کنترل‌کننده Actions Builder مرتبط و یک قصد با عبارات آموزشی می‌شوند.
  • مقاصدی که از موجودیت‌های سیستم شماره و تاریخ Dialogflow استفاده می‌کنند، منجر به انواع سیستم‌های مربوط به Actions Builder می‌شوند.

ابزار انتقال عناصر Dialogflow زیر را کنترل نمی کند:

  • مقاصد با زمینه های ورودی متعدد. صحنه ها باید به صورت دستی ایجاد شوند.
  • Intent هایی که از رویدادهای سفارشی در Dialogflow استفاده می کنند.
  • موجودیت های سیستم Dialogflow که تاریخ یا شماره نیستند. این موجودیت ها به عنوان انواع جدید ایجاد می شوند، اما شما باید مترادف ها را به صورت دستی اضافه کنید.
  • کد منبع اجرای Dialogflow. این کد به دلیل تفاوت در نسخه های API به Builder منتقل نشده است.

به ابزار مهاجرت دسترسی پیدا کنید

برای دسترسی به ابزار انتقال، یک پروژه Dialogflow را در کنسول Actions باز کنید و به Develop > Actions بروید.

اگر از پروژه مورد استفاده در کنسول Actions مطمئن نیستید، به کنسول Dialogflow بروید و این مراحل را دنبال کنید:

  1. پروژه ای را که می خواهید منتقل کنید باز کنید و روی نماد تنظیمات کلیک کنید.
  2. در بخش عمومی > شناسه پروژه ، روی پیوند Action on Google کلیک کنید. این مرحله شما را به کنسول Actions برای پروژه خاص هدایت می کند.
  3. به Develop > Actions بروید و روی Preview migration کلیک کنید.

در میان اسلایدهای اطلاعاتی پیمایش کنید و روی Start migration کلیک کنید تا داشبورد مهاجرت را ببینید.

داشبورد مهاجرت

داشبورد مهاجرت گزینه‌های مهاجرت و همچنین اطلاعات مربوط به مواردی را نشان می‌دهد که منتقل خواهند شد.

گزینه های مهاجرت

ابزار مهاجرت دو گزینه برای انتقال پروژه Dialogflow شما به Actions Builder دارد:

  • مهاجرت به عنوان پروژه جدید (توصیه می شود)
    • پروژه Dialogflow موجود شما را دست نخورده نگه می دارد و یک کپی را به پروژه جدید منتقل می کند.
    • نام نمایشی و اطلاعات دایرکتوری مرتبط با پروژه تولید موجود باقی می ماند. روند توصیه شده در مورد نحوه بازنویسی پروژه زنده خود را با پروژه مهاجرتی خود مشاهده کنید.
  • این پروژه را مهاجرت کنید
    • پروژه Dialogflow موجود را جایگزین می کند و نام نمایشی موجود و اطلاعات دایرکتوری Assistant را که برای پروژه خود تعریف کرده اید حفظ می کند.

گزارش مهاجرت

می توانید هر بخش از گزارش مهاجرت را گسترش دهید تا جزئیات خاص پروژه مربوط به اطلاعات زیر را نشان دهید:

  • آنچه به طور کامل مهاجرت خواهد شد.
  • چه چیزی منتقل می شود اما به تنظیمات اضافی پس از مهاجرت نیاز دارد.
  • آنچه منتقل نمی شود و باید به صورت دستی اضافه شود (در صورت نیاز).
  • پروژه Dialogflow شما از چه ویژگی هایی استفاده می کند که در Actions Builder در دسترس نخواهد بود.

همچنین می‌توانید گزارش مهاجرت را دانلود کنید، که می‌توانید هنگام ایجاد تغییرات پس از مهاجرت در پروژه خود به آن مراجعه کنید.

پس از مهاجرت راه اندازی شد

در حالی که ابزار مهاجرت به انتقال بخش‌های مهم پروژه Dialogflow شما به Actions Builder کمک می‌کند، برای راه‌اندازی انتقال‌ها، درخواست‌ها و وبکهک‌هایی که منتقل نشده‌اند، به توسعه بیشتری نیاز است.

جریان مکالمه خود را برای استفاده از صحنه ها به روز کنید

در حالی که ابزار مهاجرت صحنه هایی را بر اساس اهداف Dialogflow تولید می کند که دارای یک زمینه ورودی هستند، این یک رابطه یک به یک نیست. ممکن است برخی از صحنه های انتقال یافته در Actions Builder با مدل مکالمه جدید معنی نداشته باشند.

ممکن است لازم باشد با ارزیابی صحنه های مورد نیاز، در جریان گفتگو تجدید نظر کنید. بسته به پیچیدگی اکشن شما، حذف برخی از صحنه های ایجاد شده در صورتی که دیگر با جریان مکالمه شما مطابقت نداشته باشند، ممکن است آسان تر باشد.

بررسی و به روز رسانی مقاصد جهانی

اهداف Dialogflow بدون زمینه ورودی به عنوان مقاصد جهانی به Actions Builder منتقل می شوند. مقاصد جهانی در طول یک مکالمه فعال هستند، به این معنی که می توان آنها را در هر نقطه ای با هم مطابقت داد.

همچنین می‌توان از مقاصد جهانی برای پیوند عمیق کاربران به جریان‌های خاص در هنگام فراخوانی Action استفاده کرد. مهم است که تأیید کنیم آیا مقاصد جهانی تولید شده باید فعال و قابل دسترسی برای کاربران در محدوده جهانی باشند. برای تغییر مقاصد جهانی به مقاصد عادی، بر روی intent کلیک کنید و گزینه global intent handling را به NO تغییر دهید.

اهداف را با عبارات آموزشی مشابه ادغام کنید

اگر برخی از مقاصد شما عبارات آموزشی بسیار مشابهی دارند، باید مقاصد را در یک هدف کلی ادغام کنید. انجام این کار دقت تطبیق قصد را افزایش می دهد.

به عنوان مثال، Intent A دارای عبارات آموزشی زیر است:

  • "باشه، من می خواهم مطمئن شوم که آماده است"
  • "باشه، این آماده است"
  • "بیا انجامش بدهیم"

Intent B دارای عبارات آموزشی زیر است:

  • "باشه، من می خواهم مطمئن شوم که آماده است"
  • "باشه، فکر می کنم آماده ام"

از آنجایی که عبارات آموزشی بین دو مقصود مشابه هستند، Intent A و Intent B را در یک هدف کلی تر ( Intent C ) ادغام کنید و اصل ها را حذف کنید. از Intent C در صحنه هایی استفاده کنید که به Intent A یا Intent B اشاره دارند.

Intent C دارای عبارات آموزشی زیر است:

  • "باشه، من می خواهم مطمئن شوم که آماده است"
  • "باشه، این آماده است"
  • "بیا انجامش بدهیم"
  • "باشه، فکر می کنم آماده ام"

مدیریت رویداد را به‌روزرسانی کنید

برای اهدافی که از رویدادهای خاصی ( fallback ، media و welcome ) در Dialogflow استفاده می‌کنند، ابزار مهاجرت یک هدف سیستم مرتبط برای آن رویداد ایجاد می‌کند. اگر همان هدف Dialogflow دارای عبارات آموزشی باشد، یک intent اضافی با همان عبارات آموزشی ایجاد می شود.

برای تکمیل تنظیم رویدادها در Actions Builder، باید کنترل‌کننده‌های وب هوک و همچنین انتقال‌ها را در صورت نیاز اضافه کنید.

برای مدیریت مقاصد بازگشتی، مقاصد سیستم را اضافه کنید

در Dialogflow، مقاصد بازگشتی به مواردی رسیدگی می‌کنند که یک intent ورودی کاربر را تشخیص نمی‌دهد. Action Builder از اهداف سیستم NO_MATCH و NO_INPOUT برای محاسبه این موارد استفاده می کند.

هر دو هدف سیستم NO_MATCH و NO_INPUT را می توان تا سه بار به یک صحنه اضافه کرد. برای مثال، افزودن سه هدف NO_MATCH به یک صحنه به این معنی است که می‌توانید به تدریج با جزئیات بیشتری درباره آنچه که Action شما در پاسخ کاربر به دنبال آن است، پاسخ دهید.

افزودن مقاصد سیستم در جایی که پروژه Dialogflow شما از مقاصد بازگشتی استفاده می‌کند، مهم است. برخی از نمونه‌هایی از مقاصد سیستم Action Builder معمولاً مورد استفاده قرار می‌گیرند NO_MATCH و NO_INPUT . برای کسب اطلاعات بیشتر در مورد این اهداف سیستم، می توانید اهداف سیستم را بررسی کنید.

استراتژی تحقق خود را به روز کنید

انتقال کد تکمیل Dialogflow به Actions Builder یکی از بخش‌های بزرگ‌تر فرآیند انتقال است. در حالی که مفاهیم فراخوانی وب هوک و اجرای کلی یکسان باقی می‌مانند، Actions Builder گزینه‌هایی را برای استفاده مجدد از توابع ارائه می‌دهد و فرصت‌های راه‌اندازی وب‌هوک بیشتری را اضافه می‌کند.

با در نظر گرفتن این موضوع، ممکن است بخواهید برای بهره مندی از ویژگی های Actions Builder، پروژه خود را مجدداً مشاهده کنید:

  • نام‌های کنترل‌کننده وب‌هوک سفارشی به این معنی است که می‌توانید یک تابع webhook را از قسمت‌های مختلف صحنه‌های مختلف فراخوانی کنید.
  • تماس‌های Webhook را می‌توان بر اساس وارد کردن صحنه، اعتبارسنجی شرطی، پر کردن شکاف و تطبیق قصد انجام داد. کنترل دقیق‌تر زمان و مکان برقراری تماس‌های وب هوک، امکان راه‌حل‌های خلاقانه‌تری را فراهم می‌کند.

همانطور که کد تکمیل خود را به روز می کنید، در نظر بگیرید که چه زمانی و کجا باید تماس های وب هوک را راه اندازی کنید. با استفاده از گزینه Call your webhook می توانید وب هوک ها را در بیش از یک قسمت از صحنه فعال کنید. برای کسب اطلاعات بیشتر در مورد فعال کردن وبکهک‌ها، بخش webhooks راهنمای مهاجرت تحقق را ببینید.

نمونه های مهاجرت

پروژه های منتقل شده از Dialogflow به Actions Builder به دلیل تفاوت در مدل مکالمه ای که هر ابزار استفاده می کند، ساختارهای متفاوتی دارند. استفاده از صحنه‌ها، اعلان‌ها و انتقال‌ها در Actions Builder، و همچنین ویژگی‌هایی مانند کنترل‌کننده‌های وب هوک قابل استفاده مجدد، کد یک پروژه انتقال‌یافته را به‌طور قابل‌توجهی با نسخه اصلی متفاوت می‌کند.

مقایسه پروژه های منتقل شده می تواند به شما در درک نوع و دامنه تغییرات مورد نیاز هنگام مهاجرت از Dialogflow به Actions Builder کمک کند. می توانید پروژه های نمونه مهاجرت شده زیر را برای مقایسه پیاده سازی ها مرور کنید:

نمونه پروژه کد جریان گفتگو Actions Builder Code
حقایقی در مورد گوگل کد پروژه کد پروژه
معاملات کد پروژه کد پروژه
پیوند دادن حساب کد پروژه کد پروژه

این بخش فرآیند انتقال پیشنهادی را توضیح می‌دهد و به شما امکان می‌دهد تا نام نمایشی (فراخوانی) فعلی، اطلاعات فهرست و تجزیه و تحلیل تاریخی خود را حفظ کنید.

این فرآیند شامل کار با دو پروژه مختلف Action Builder است که هر دو از یک پروژه Dialogflow منتقل شده‌اند. برای وضوح، به این پروژه ها به شرح زیر اشاره می شود:

  • آزمایشی : این پروژه برای راه اندازی و آزمایش مهاجرت شما استفاده می شود.
  • اصل : این پروژه در حال حاضر به صورت زنده و در خدمت کاربران است.

برای انتقال پروژه خود، موارد زیر را انجام دهید:

  1. با استفاده از ویژگی صادرات Dialogflow یک نسخه پشتیبان از پروژه Dialogflow خود ایجاد کنید.
  2. به کنسول Actions بروید و پروژه ای را که می خواهید منتقل کنید باز کنید.
  3. به Develop > Actions بروید و روی Preview migration کلیک کنید.
  4. روی اسلایدهای اطلاعاتی کلیک کنید و سپس روی Start migration کلیک کنید.
  5. مهاجرت را به عنوان یک پروژه جدید انتخاب کنید.
  6. گزارش مهاجرت را مرور کنید و به صورت اختیاری آن را برای مراجعات بعدی دانلود کنید.
  7. روی مهاجرت کلیک کنید.
  8. یک نام برای پروژه "تجربی" خود وارد کنید و روی ایجاد پروژه کلیک کنید. شناسه پروژه را یادداشت کنید.
  9. تمام تنظیمات موردنیاز پس از مهاجرت را تکمیل کنید و بررسی کنید که Action شما طبق برنامه عمل می کند.
  10. از gactions CLI برای کشیدن پیش نویس پروژه "تجربی" خود استفاده کنید.

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

  11. پروژه Dialogflow "اصلی" خود را در کنسول Actions دوباره باز کنید.

  12. به Develop > Actions بروید و روی Preview migration کلیک کنید.

  13. مهاجرت این پروژه را انتخاب کنید.

  14. روی مهاجرت کلیک کنید.

  15. روی نماد بیشتر > تنظیمات پروژه کلیک کنید و شناسه پروژه را یادداشت کنید.

  16. در سیستم محلی خود، فایل settings.yaml پروژه "تجربی" را که کشیده اید باز کنید و ID پروژه پروژه "اصلی" را جایگزین projectId کنید.

  17. از gactions CLI برای فشار دادن پیش نویس پروژه ذخیره شده محلی خود استفاده کنید.

    gactions push

  18. مراحل انتشار را از طریق کانال های آلفا یا بتا دنبال کنید یا اقدام به تولید خود را منتشر کنید .