बातचीत के मॉडल बनाएं

बातचीत वाले मॉडल से यह तय होता है कि उपयोगकर्ता आपकी कार्रवाइयों के लिए क्या कह सकते हैं और कार्रवाइयां, लोगों को जवाब देती हैं. अपने बातचीत मॉडल के मुख्य बिल्डिंग ब्लॉक इंटेंट, टाइप, सीन, और प्रॉम्प्ट. आपकी कोई एक कार्रवाई शुरू होने के बाद, Google Assistant उपयोगकर्ता को उस कार्रवाई पर भेज देता है और वह कार्रवाई, जिसमें ये शामिल हैं:

  • मान्य उपयोगकर्ता अनुरोध - उपयोगकर्ता आपकी कार्रवाइयों के लिए क्या कह सकते हैं, यह तय करने के लिए आपको इंटेंट का एक कलेक्शन तैयार कर सकें, ताकि Assistant के एनएलयू को बेहतर बनाया जा सके, ताकि यह आपकी कार्रवाइयों से जुड़े अनुरोधों को समझने में. हर इंटेंट तय करता है ट्रेनिंग के लिए वाक्यांश से पता चलता है कि उपयोगकर्ता, इंटेंट के हिसाब से क्या कह सकते हैं. कॉन्टेंट बनाने Assistant NLU, ट्रेनिंग के इन वाक्यांशों में मिलते-जुलते वाक्यांशों को शामिल करता है और उन वाक्यांशों के एग्रीगेट होने पर इंटेंट के लैंग्वेज मॉडल में नतीजे मिलते हैं.

  • ऐक्शन लॉजिक और जवाब - सीन, इंटेंट को प्रोसेस करते हैं, ज़रूरी लॉजिक लागू करते हैं, और उपयोगकर्ता के पास वापस जाने के लिए प्रॉम्प्ट जनरेट करते हैं.

पहली इमेज. बातचीत वाले मॉडल में इंटेंट, टाइप, आपके उपयोगकर्ता अनुभव को बताने वाले सीन और प्रॉम्प्ट. ऐसे इंटेंट जो बातचीत में शामिल होने के लिए भी उपलब्ध हैं.

मान्य उपयोगकर्ता अनुरोधों के बारे में बताएं

उपयोगकर्ता आपकी कार्रवाइयों के लिए क्या कह सकते हैं, यह तय करने के लिए इंटेंट के कॉम्बिनेशन का इस्तेमाल किया जा सकता है और प्रकार. उपयोगकर्ता के इंटेंट और टाइप की मदद से, Assistant NLU को बेहतर बनाया जा सकता है अपनी भाषा के मॉडल चुनें. सिस्टम इंटेंट और टाइप की मदद से, पहले से मौजूद बिल्ट-इन सुविधाओं का फ़ायदा लिया जा सकता है भाषा मॉडल और इवेंट की पहचान करने की सुविधा, जैसे कि उपयोगकर्ता आपकी सेट की गई कार्रवाई को बंद करना चाहते हैं या Assistant को कोई इनपुट नहीं मिल रहा है.

उपयोगकर्ता के लिए इंटेंट बनाएं

उपयोगकर्ता के इंटेंट की मदद से, अपने हिसाब से ट्रेनिंग वाक्यांश तय किए जा सकते हैं. इनसे यह तय होता है कि उपयोगकर्ता क्या खोजेंगे आपकी कार्रवाइयाँ कह सकती हैं. Assistant एनएलयू, खुद को ट्रेनिंग देने के लिए इन वाक्यांशों का इस्तेमाल करता है ताकि उपयोगकर्ताओं की बात को समझा जा सके. जब उपयोगकर्ता कुछ ऐसा कहते हैं जो उपयोगकर्ता के इंटेंट के लैंग्वेज मॉडल के आधार पर, Assistant इंटेंट से मेल खाती है और सूचना देती है आपकी कार्रवाई की ज़रूरत है, ताकि आप तर्क लागू कर सकें और उपयोगकर्ताओं को जवाब दे सकें.

पहली इमेज. उपयोगकर्ता के इंटेंट का उदाहरण

यूज़र इंटेंट बनाने के लिए:

  1. डेवलप करें टैब में, उपयोगकर्ता इंटेंट > ⊕ (नया इंटेंट), कोई नाम डालें और इंटेंट बनाने के लिए, Enter दबाएं.
  2. बाएं मेन्यू में, बनाए गए नए इंटेंट पर क्लिक करें. इंटेंट एडिटर दिखाई देता है.
  3. इंटेंट में ट्रेनिंग वाक्यांश जोड़ें. आपको ट्रेनिंग वाले ज़्यादा से ज़्यादा वाक्यांश जोड़ने चाहिए Assistant एनएलयू को ट्रेनिंग देने की कोशिश करें.
  4. ज़रूरी नहीं: Assistant एनएलयू को पार्स करने के निर्देश देने के लिए, ट्रेनिंग के वाक्यांशों की व्याख्या करें और उपयोगकर्ता के इनपुट से ऐसे पैरामीटर एक्सट्रैक्ट करें जो किसी खास टाइप से मेल खाते हों:
    1. नया पैरामीटर जोड़ें फ़ील्ड में, पैरामीटर के लिए एक नाम डालें.
    2. ड्रॉप-डाउन मेन्यू से सिस्टम का कोई टाइप चुनें या पसंद के मुताबिक टाइप बनाएं.
    3. बताएं कि पैरामीटर, सूची है या नहीं. इसकी मदद से पैरामीटर एक ही टाइप की कई वैल्यू होनी चाहिए.
    4. ट्रेनिंग के लिए वाक्यांश जोड़ें सेक्शन में, उस टेक्स्ट को हाइलाइट करें जिसका आपको इस्तेमाल करना है टाइप को लागू करें. इससे Assistant एनएलयू को, हाइलाइट की गई फ़ोटो का इस्तेमाल करने के लिए कहा जाता है पैरामीटर के रूप में टेक्स्ट. अगर लोग ऐसा कुछ कहते हैं जो टाइप से मेल खाता है, तो NLU उस वैल्यू को पैरामीटर के तौर पर छांटकर.

सिस्टम इंटेंट बनाएं

सिस्टम इंटेंट, पहले से तय भाषा वाले इंटेंट का फ़ायदा लेने में आपकी मदद करते हैं सामान्य इवेंट के लिए मॉडल, जैसे कि उपयोगकर्ता आपकी सेट की गई कार्रवाई को बंद करना चाहते हैं या जब कोई उपयोगकर्ता इनपुट का समय खत्म हो गया है. सिस्टम इंटेंट बनाने के लिए:

  1. डेवलप करें टैब में, सिस्टम इंटेंट पर क्लिक करें. सिस्टम इंटेंट का सेट उपलब्ध हैं, जैसे कि NO_MATCH, NO_INPUT, और CANCEL.
  2. हर सिस्टम इंटेंट में उसका अपना हैंडलर होता है, जिसे अपनी पसंद के मुताबिक बनाया जा सकता है चुनें. उदाहरण के लिए, सिस्टम इंटेंट से आपको वेबहुक इवेंट खोलें और इवेंट होने पर स्टैटिक प्रॉम्प्ट भेजें.

कस्टम टाइप बनाएं

पसंद के मुताबिक टाइप की सुविधा से, NLU को ट्रेनिंग देने के लिए, अपने हिसाब से खास निर्देश बनाए जा सकते हैं उन वैल्यू के सेट को समझती है जिन्हें एक कुंजी पर मैप करना चाहिए.

दूसरी इमेज. पसंद के मुताबिक बनाए गए टाइप का उदाहरण

अपना कस्टम टाइप बनाने के लिए:

  1. डेवलप करें टैब में, टाइप > ⊕ (नया टाइप).
  2. टाइप वैल्यू के साथ किस तरह की वैल्यू दिखाएं support? सेक्शन में जाकर देखें:

    • शब्द और समानार्थी शब्द से आपको एक कुंजी पर कई वैल्यू मैप करने की सुविधा मिलती है, जिसे एंट्री कहते हैं. आपके टाइप में एक या एक से ज़्यादा एंट्री हो सकती हैं. अगर आपको यह विकल्प चुनने के बाद, आप नीचे दी गई NLU सेटिंग भी चालू कर सकते हैं:
      • फ़ज़ी मैच करने की सुविधा चालू करें - इससे एक से ज़्यादा शब्दों वाली एंट्री की अनुमति मिलती है मिलान करने के लिए, भले ही शब्द किसी अलग क्रम में बोले गए हों.
      • अनजान वैल्यू स्वीकार करना - जब आप सभी संभावित वैल्यू तय नहीं कर पा रहे हों, यह आस-पास के इनपुट के आधार पर अनजान शब्दों या वाक्यांशों को स्वीकार करेगा और इंटेंट ट्रेनिंग डेटा, जैसे कि किराने के सामान में जोड़े जा सकने वाले आइटम सूची.
    • रेगुलर एक्सप्रेशन, किसी टाइप को रेगुलर एक्सप्रेशन पैटर्न से मैच करने की अनुमति देता है यह जानकारी, Google के RE2 स्टैंडर्ड पर आधारित होती है.
    • फ़्री फ़ॉर्म टेक्स्ट की मदद से, टाइप किए गए टेक्स्ट को उपयोगकर्ता की कही गई किसी भी बात से मैच किया जा सकता है.
  3. एंट्रीब्यूट जोड़ें सेक्शन में टाइप वैल्यू डालें. अगर आपने फ़्री फ़ॉर्म चुना है टेक्स्ट टाइप करते हैं, तो आपका टाइप किसी भी टेक्स्ट से मेल खाता है. इसलिए, आपको कोई एंट्री देने की ज़रूरत नहीं है.

ऐक्शन लॉजिक और जवाब बनाएं

Assistant का NLU, उपयोगकर्ता के अनुरोधों को इंटेंट से मैच करता है, ताकि आपका Action उन्हें सीन में प्रोसेस करते हैं. सीन, लॉजिक के हिसाब से दमदार होते हैं. इनकी मदद से, बातचीत के दौरान इवेंट प्रोसेस करते हैं.

अभी तक किसी भी व्यक्ति ने चेक इन नहीं किया है
तीसरी इमेज. पसंद के मुताबिक बनाए गए सीन का उदाहरण

सीन बनाएं

इन सेक्शन में सीन बनाने और फ़ंक्शन तय करने का तरीका बताया गया है हर सीन के लाइफ़साइकल स्टेज के लिए.

सीन बनाने के लिए:

  1. डेवलप करें टैब में, सीन > ⊕ (नया सीन), कोई नाम डालें और सीन बनाने के लिए, Enter दबाएं.
  2. बाएं मेन्यू में, बनाए गए नए सीन पर क्लिक करें. सीन एडिटर दिखाई देता है.

एक बार किया जाने वाला सेटअप तय करें

जब कोई सीन पहली बार ऐक्टिव हो जाता है, तो एक बार किए जाने वाले टास्क को पूरा किया जा सकता है शामिल होने पर स्टेज. 'Enter' चरण सिर्फ़ एक बार लागू होता है. साथ ही, यह सिर्फ़ एक बार काम करता है स्टेज जो किसी सीन के एक्ज़ीक्यूशन लूप के अंदर नहीं चलता.

  1. किसी सीन के अंदर, Enter स्टेज पर क्लिक करें. इससे यह पता चलेगा कि उस सीन का फ़ंक्शन क्या है. इस चरण में, नीचे दिए गए फ़ंक्शन के बारे में बताया जा सकता है:

    • अपने वेबहुक को कॉल करें - यह वेबहुक को ट्रिगर करता है. वेबहुक देखें दस्तावेज़ देखें.
    • प्रॉम्प्ट भेजें - उपयोगकर्ता को स्टैटिक प्रॉम्प्ट भेजें, ताकि उन्हें बातचीत जारी रखें. प्रॉम्प्ट वाला दस्तावेज़ देखें देखें.
    चौथी इमेज. स्टेज पर कोई सीन दिखाए जाने का उदाहरण

शर्तें देखें

शर्तों से आपको स्लॉट भरने, सेशन का स्टोरेज, उपयोगकर्ता के स्टोरेज, और होम स्टोरेज पैरामीटर का इस्तेमाल करके सीन एक्ज़ीक्यूशन फ़्लो को कंट्रोल किया जा सकता है.

  1. किसी सीन में, शर्त चरण के लिए, + आइकॉन पर क्लिक करें. कॉन्टेंट बनाने शर्त संपादक दाईं ओर दिखाई देता है. आप इन्हें निर्दिष्ट कर सकते हैं फ़ंक्शन के बारे में बताएं:

    • शर्त - बेस लॉजिक को बंद करने के लिए शर्त वाला असल स्टेटमेंट तय करें में से. सिंटैक्स के लिए शर्तों का दस्तावेज़ देखें जानकारी.
    • अपने वेबहुक को कॉल करें - यह वेबहुक को ट्रिगर करता है. वेबहुक देखें दस्तावेज़ देखें.
    • प्रॉम्प्ट भेजें - यह उपयोगकर्ता को भेजने के लिए स्टैटिक प्रॉम्प्ट करता है, ताकि वे सकता है कि बातचीत कैसे जारी रखी जाए. अनुरोध देखें प्रॉम्प्ट तय करने के बारे में ज़्यादा जानकारी के लिए दस्तावेज़.
    • ट्रांज़िशन - ट्रांज़िशन के लिए वह सीन बताता है जिस पर शर्त लागू है कथन सही है.
पांचवीं इमेज. किसी सीन के लिए कंडिशन स्टेज का उदाहरण

स्लॉट भरना तय करें

स्लॉट की मदद से, उपयोगकर्ता के इनपुट से टाइप किए गए पैरामीटर एक्सट्रैक्ट किए जा सकते हैं.

सीन एडिटर में, स्लॉट भरने वाले स्टेज के लिए + आइकॉन पर क्लिक करें. कॉन्टेंट बनाने स्लॉट के लिए एडिटर, दाईं ओर दिखता है. आप इन्हें निर्दिष्ट कर सकते हैं स्लॉट की प्रॉपर्टी:

  • स्लॉट का नाम: स्लॉट का नाम बताता है. अगर आपको डिजिटल विज्ञापनों से स्लॉट वैल्यू मैपिंग के तौर पर, वही नाम इस्तेमाल करें जो संबंधित इंटेंट पैरामीटर.
  • स्लॉट टाइप: किसी सिस्टम के साथ स्लॉट के टाइप के बारे में बताता है प्रकार या कस्टम प्रकार.
  • यह स्लॉट ज़रूरी है: इस स्लॉट को ज़रूरत के मुताबिक मार्क करता है. चालू होने पर, स्लॉट जब तक यह स्लॉट नहीं भर जाता, तब तक भरना पूरा नहीं होगा.
  • इस स्लॉट के लिए डिफ़ॉल्ट मान असाइन करें: स्लॉट के लिए एक डिफ़ॉल्ट मान तय करता है इसे, तय किए गए सेशन पैरामीटर से पढ़ा जाता है.
  • स्लॉट वैल्यू में मौजूद राइटबैक को पसंद के मुताबिक बनाएं: इससे एक सेशन पैरामीटर तय होता है, ताकि उसे बनाए रखा जा सके स्लॉट भरने के पूरा होने के बाद, स्लॉट की वैल्यू.
  • स्लॉट की पुष्टि: स्लॉट भर जाने पर वेबहुक को ट्रिगर करें. यह सेटिंग सभी स्लॉट पर लागू होता है.
  • अपने वेबहुक को कॉल करें (स्लॉट की ज़रूरत होने पर चालू किया जाता है): इससे वेबहुक ट्रिगर होता है. इसके बारे में ज़्यादा जानकारी के लिए वेबहुक दस्तावेज़ देखें वेबहुक.
  • प्रॉम्प्ट भेजें (स्लॉट की ज़रूरत होने पर चालू किया जाता है): स्टैटिक प्रॉम्प्ट बताता है ताकि उन्हें बातचीत जारी रखने का तरीका पता हो. यहां जाएं: यह जानकारी देने के बारे में ज़्यादा जानकारी के लिए, प्रॉम्प्ट का दस्तावेज़ प्रॉम्प्ट.

कुछ खास तरह के स्लॉट के लिए, जैसे कि लेन-देन या उपयोगकर्ता के जुड़ाव से जुड़े स्लॉट आपको एक अतिरिक्त सेक्शन दिखेगा, जहां स्लॉट कॉन्फ़िगर किया जा सकता है. स्लॉट कॉन्फ़िगरेशन के हिसाब से, लोगों के लिए बातचीत वाली सुविधा बदल सकती है. ऐसा प्रॉपर्टी भी उपलब्ध कराती हैं.

किसी स्लॉट को कॉन्फ़िगर करने के लिए, JSON ऑब्जेक्ट में प्रॉपर्टी उपलब्ध कराएं फ़ुलफ़िलमेंट (सेशन पैरामीटर के रूप में बताया गया है) या इनलाइन JSON एडिटर में. हर स्लॉट टाइप के लिए उपलब्ध प्रॉपर्टी यहां देखी जा सकती हैं: Actions Builder JSON का रेफ़रंस. उदाहरण के लिए, actions.type.DeliveryAddressValue स्लॉट प्रकार, DeliveryAddressValue स्लॉट.

छठी इमेज. सीन में स्लॉट भरने से जुड़ी सेटिंग का उदाहरण

स्लॉट की वैल्यू को मैप करना

कई मामलों में, पिछले इंटेंट मैच में ऐसे पैरामीटर शामिल हो सकते हैं जो आंशिक रूप से या सीन के स्लॉट की वैल्यू को पूरी तरह से भरें. इन मामलों में, सभी स्लॉट इंटेंट पैरामीटर से भरी गई वैल्यू, सीन के स्लॉट से मैप करती है, अगर स्लॉट का नाम इंटेंट पैरामीटर के नाम से मेल खाता है.

उदाहरण के लिए, अगर कोई उपयोगकर्ता किसी पीने की चीज़ का ऑर्डर देने के इरादे से "मुझे चाहिए बड़ी वैनिला कॉफ़ी ऑर्डर करने के लिए", जैसे कि साइज़, फ़्लेवर, और पीने की चीज़ों के लिए मौजूदा स्लॉट अगर कोई सीन एक जैसे स्लॉट हैं.

इनपुट प्रोसेस करें

इस चरण में, उपयोगकर्ताओं के इनपुट को इंटेंट से मैच करने के लिए, Assistant एनएलयू को इस्तेमाल किया जा सकता है. मनचाहे इंटेंट जोड़कर, किसी खास सीन के लिए इंटेंट मैचिंग का स्कोप किया जा सकता है घटना हुई. इससे Assistant को बोलकर, बातचीत के फ़्लो को कंट्रोल करने में मदद मिलती है का इस्तेमाल करें.

  1. किसी सीन में, यूज़र इंटेंट हैंडलिंग के लिए + आइकॉन पर क्लिक करें या सिस्टम इंटेंट हैंडलिंग स्टेज. इंटेंट हैंडलर का एडिटर दिखेगा दाईं ओर. इंटेंट के नीचे दिए गए फ़ंक्शन तय किए जा सकते हैं हैंडलर:

    • इंटेंट - उस इंटेंट के बारे में बताता है जिसे आपको इस सीन में मैच करना है.
    • अपने वेबहुक को कॉल करें - यह वेबहुक को ट्रिगर करता है. वेबहुक देखें वेबहुक अनुरोध को मैनेज करने के तरीके के बारे में ज़्यादा जानकारी के लिए, इस दस्तावेज़ का इस्तेमाल करें.
    • प्रॉम्प्ट भेजें - उपयोगकर्ता को स्टैटिक प्रॉम्प्ट भेजें, ताकि उन्हें पता हो कि जवाब. इस बारे में ज़्यादा जानकारी के लिए, अनुरोधों का दस्तावेज़ देखें प्रॉम्प्ट तय करके.
    • ट्रांज़िशन (अगर लागू हो) - इससे ट्रांज़िशन के लिए सीन के बारे में पता चलता है मौजूद इंटेंट मैच हो रहा है.
सातवीं इमेज. किसी सीन के यूज़र इंटेंट हैंडलर का उदाहरण
आठवीं इमेज. किसी सीन के सिस्टम इंटेंट हैंडलर का उदाहरण