تتيح لك "إجراءات المحادثة" توسيع نطاق "مساعد Google" من خلال واجهات المحادثة الخاصة بك التي تمنح المستخدمين إمكانية الوصول إلى منتجاتك وخدماتك. وتستفيد الإجراءات من محرّك "مساعد Google " الفعّال لفهم اللغة الطبيعية (NLU) لمعالجة إدخالات اللغة الطبيعية وفهمها وتنفيذ المهام استنادًا إلى هذا الإدخال.
نظرة عامة
الإجراء الحواري هو كائن بسيط يحدد نقطة دخول (يُشار إليها كاستدعاء) في محادثة:
- يحدد الاستدعاء كيفية إخبار المستخدمين لـ "مساعد Google" برغبتهم في بدء محادثة مع أحد إجراءاتك. يتم تعريف استدعاء الإجراء بواسطة نية واحدة تتم مطابقتها عندما يطلب المستخدمون الإجراء.
- تحدد المحادثة كيفية تفاعل المستخدمين مع الإجراء بعد استدعاؤه. يمكنك إنشاء محادثات باستخدام النية بالشراء والأنواع والمشاهد والإشعارات.
- بالإضافة إلى ذلك، يمكن أن فوّضت إجراءاتك تنفيذ المزيد من العمل من أجل الوفاء، وهو عبارة عن خدمات ويب تتواصل مع إجراءاتك من خلال الردود التلقائية على الويب. ويتيح لك هذا إجراء التحقق من صحة البيانات، والاتصال بخدمات ويب أخرى، وتنفيذ منطق النشاط التجاري، والمزيد.
يمكنك تجميع إجراء واحد أو أكثر معًا، بناءً على حالات الاستخدام المهمة للمستخدمين، في حاوية منطقية تُسمى مشروع "الإجراءات". يحتوي مشروع الإجراءات على نموذج الاستدعاء (مجموعة الاستدعاءات) بالكامل، والذي يتيح للمستخدمين البدء من أماكن منطقية في نموذج المحادثة (كل ما يمكن أن يقوله المستخدمون وكل الطرق الممكنة للرد على المستخدمين).
استدعاء
ويرتبط الاستدعاء باسم العرض الذي يمثّل علامة تجارية أو اسمًا أو شخصية تتيح للمستخدمين طلب تنفيذ الإجراءات من "مساعد Google". يمكن للمستخدمين استخدام هذا الاسم المعروض بشكل مستقل (يُطلق عليه الاستدعاء الرئيسي) أو في مجموعة من العبارات الاختيارية رابط لموضع معين لاستدعاء الإجراءات.
على سبيل المثال، يمكن للمستخدمين قول العبارات التالية لاستدعاء ثلاثة إجراءات منفصلة في مشروع يحمل اسم العرض "حقائق عن Google":
- "Ok Google, talk to Facts about Google"
- "Ok Google، أريد مناقشة الحقائق حول Google للحصول على معلومات عن الشركة"
- "Ok Google، أريد التحدث إلى فريق Google بشأن حقائق حول Google للحصول على معلومات تاريخية"
الاستدعاء الأول في المثال هو الاستدعاء الرئيسي. ويرتبط هذا الاستدعاء
بهدف نظام خاص يُسمى
actions.intent.MAIN
. الاستدعاءان الثاني والثالث عبارة عن استدعاءات لروابط لمواضع معينة
تتيح لك تحديد عبارات إضافية تتيح للمستخدمين طلب وظائف معينة. وتتطابق هذه الاستدعاءات مع نوايا المستخدم التي
صنفتها على أنها عامة. يوفر كل استدعاء في هذا المثال نقطة إدخال إلى محادثة ويتوافق مع إجراء واحد.
يوضح الشكل 2 تدفقًا نموذجيًا للاستدعاء الرئيسي:
- عندما يطلب المستخدمون إجراءً، يطلبون عادةً من "مساعد Google" تنفيذ هذا الإجراء حسب الاسم المعروض.
- يطابق "مساعد Google" طلب المستخدم مع
الغرض المقابل الذي يطابق الطلب. في هذه الحالة، سيكون
actions.intent.MAIN
. - يتم إعلام الإجراء بمطابقة الهدف ويستجيب مع المطالبة المقابلة لبدء محادثة مع المستخدم.
محادثة
تحدّد المحادثة كيفية تفاعل المستخدمين مع الإجراء بعد استدعاؤه. يمكنك إنشاء هذه التفاعلات من خلال تحديد إدخال المستخدم الصالح لمحادثتك، والمنطق المطلوب لمعالجة هذا الإدخال، والإشعارات المناسبة للرد على المستخدم. يوضّح لك الشكل والتفسير التاليان آلية عمل الدور النموذجي للمحادثة مع مكوّنات المحادثة منخفضة المستوى: النية والأنواع والمشاهد والإشعارات.
يوضح الشكل 3 منعطفًا عاديًا للمحادثة:
- عندما يقول المستخدمون شيئًا ما، يُطابق NLU لمساعد Google الإدخال بقصد مناسب. وتتم مطابقة الهدف إذا كان نموذج اللغة لذلك الهدف متطابقًا إلى حد كبير أو دقيق مع إدخال المستخدم. يمكنك تحديد نموذج اللغة من خلال تحديد عبارات التدريب، أو أمثلة لما قد يرغب المستخدمون في قوله. يأخذ "مساعد Google" عبارات التدريب هذه ويتوسّع فيها لإنشاء نموذج لغة الهدف.
- عندما يتطابق NLU مع "مساعد Google" مع intent، يمكنه استخراج المعلّمات التي تحتاجها من الإدخال. وتحتوي هذه المعلمات على أنواع مرتبطة بها، مثل التاريخ أو الرقم. يمكنك إضافة تعليقات توضيحية لأجزاء محددة من العبارات التدريبية لقصد من أجل تحديد المعلمات التي تريد استخلاصها.
- بعد ذلك، يعالج المشهد القصد من المطابقة. يمكنك اعتبار المشاهد بمثابة منفِّذي المنطق لأحد الإجراءات، مما يؤدي إلى رفع الأعباء الثقيلة وتنفيذ المنطق اللازم لإطلاق المحادثة. تعمل المشاهد بشكل متكرر، مما يوفر دورة حياة تنفيذ مرنة تتيح لك تنفيذ إجراءات مثل التحقّق من صحة معلَمات intent، وتنفيذ خانات التعبئة، وإرسال رسائل المطالبة مرة أخرى إلى المستخدم، والمزيد.
- عند الانتهاء من تنفيذ مشهد، فإنه عادة ما يرسل رسالة مطالبة إلى المستخدمين مرة أخرى لمتابعة المحادثة أو يمكنهم إنهاء المحادثة إذا كان ذلك مناسبًا.
توصيل الطلب
أثناء الاستدعاء أو المحادثة، يمكن أن يؤدي الإجراء إلى تشغيل رد تلقائي على الويب يرسل إشعارًا إلى خدمة توصيل الطلبات لتنفيذ بعض المهام.
يوضح الشكل 4 كيفية استخدام توصيل الطلبات لإنشاء المطالبات، وهي طريقة شائعة لاستخدام التنفيذ.
- في مراحل تنفيذ الإجراء، سيؤدي ذلك إلى تشغيل الرد التلقائي على الويب الذي يرسل طلبًا إلى معالج الرد التلقائي على الويب المسجّل (خدمة توصيل الطلبات) باستخدام حمولة JSON.
- يعالج الوفاء الطلب، مثل طلب بيانات من واجهة برمجة تطبيقات REST لإجراء بعض عمليات البحث عن البيانات أو التحقّق من صحّة بعض البيانات من حمولة JSON. ومن الطرق الشائعة جدًا لاستخدام طريقة تنفيذ الطلب إنشاء مطالبة ديناميكية في وقت التشغيل بحيث تكون محادثاتك أكثر تخصيصًا للمستخدم الحالي.
- يعرض تنفيذ الطلب ردًا على إجراء يحتوي على حمولة JSON. يمكنها استخدام البيانات من الحمولة لمتابعة تنفيذها والرد على المستخدم.