लंबी पूंछ के लिए डिज़ाइन
ओवर डिज़ाइन न करें
ज़रूरी शर्तों के चरण में, आपने इस्तेमाल के उदाहरणों के लिए साफ़ तौर पर सेट किया है. इन प्राथमिकताओं को ध्यान में रखें और इस केस में एज केस जोड़ने से बचें. डिज़ाइन की बारीकियों के बारे में जानने के बाद, आपको नई स्थितियां मिल सकती हैं. डिज़ाइन से जुड़ी इन नई स्थितियों को ध्यान में रखते हुए, दायरे को बढ़ाने से पहले, इसके असर को ध्यान से देखें.
सिर | मुख्य हिस्सा | लॉन्ग टेल |
---|---|---|
इस्तेमाल के मुख्य उदाहरण आपकी सुविधा की मदद से, सबसे अहम और सबसे आम बातचीत वाले पाथ भेजे जाते हैं. इन पाथ को बेहतर उपयोगकर्ता अनुभव देने के लिए, अपने ज़्यादातर काम पर ध्यान दें. |
चक्कर लगाना ये आम तौर पर कम इस्तेमाल होते हैं. आम तौर पर, इस सुविधा की मदद से, बातचीत के पाथ सीधे हो जाते हैं या कम सफल होते हैं. पूरी तरह से उनका समर्थन करने के लिए समय निकालें और उन्हें डिज़ाइन करने में बहुत ज़्यादा समय और मेहनत से बचें. |
Edge से जुड़े मामले ये बहुत ही असामान्य पाथ हैं. इस बात पर विचार करें कि "माफ़ करें, मुझे नहीं पता कि आपकी मदद कैसे करनी है" जैसे सामान्य निर्देश आपके लिए काफ़ी हैं या नहीं. आप चाहें, तो किसी ऐसे तरीके का इस्तेमाल करें जिससे, ज़रूरत के हिसाब से काम हो सके. |
ज़्यादा डिज़ाइन करने से बचने के लिए, 80/20 नियम या पैरेटो प्रिंसिपल का इस्तेमाल करें.
बातचीत के डिज़ाइन में, यह नियम यह बताने का एक तरीका है कि सभी पाथ एक जैसे नहीं बनाए गए हैं. 80% उपयोगकर्ता किसी डायलॉग में, सबसे ज़्यादा संभावित 20% पाथ को फ़ॉलो करते हैं. इसलिए, सबसे ज़्यादा असरदार बनाने के लिए संसाधनों को निवेश करें.
इसी तरह, किसी काम को पूरा करने या उसके पूरा होने में कुछ रुकावटें आती हैं. प्रोजेक्ट के आखिरी 20% हिस्से को बनाने में 80% काम लग सकता है. इन मामलों में, बिना किसी रुकावट के कोशिश करना "बहुत अच्छा" हो सकता है.
![](https://developers.google.cn/static/assistant/conversation-design/images/8020diagram.png?authuser=0000&hl=hi)
आम रास्ता
हालांकि, इस्तेमाल के कुछ खास मामलों और असामान्य मामलों के बारे में भी बताया गया है. आम तौर पर, ये ऐसी नई स्थितियां होती हैं जिन पर तब तक विचार नहीं किया गया था, जब तक कि टेस्ट के दौरान और डेवलपमेंट के दौरान उनका पता नहीं चल गया था. ज़्यादातर मामलों में, उन्हें वैकल्पिक पाथ की तुलना में लंबे हैंडल की ज़रूरत पड़ती है.
यहां ध्यान देने वाली कुछ सामान्य चीज़ें दी गई हैं:
अनलिंक किए गए खाते
![](https://developers.google.cn/static/assistant/conversation-design/images/unlinkedaccounts.png?authuser=0000&%3Bhl=hi&hl=hi)
इस मामले में, उपयोगकर्ता ने अपना खाता नहीं जोड़ा है.
काम न करने वाले ऐक्शन
![](https://developers.google.cn/static/assistant/conversation-design/images/common-detours2.png?authuser=0000&%3Bhl=hi&hl=hi)
उपयोगकर्ता ऐसी कार्रवाइयां कर सकते हैं जिनका इस्तेमाल आपकी कार्रवाई नहीं कर सकती.
इंटेंट कवरेज
बातचीत के डिज़ाइन में, डायलॉग का आधा हिस्सा स्क्रिप्ट किया जाता है. इससे, यह पक्का होता है कि डायलॉग का आधा हिस्सा इतना मज़बूत है कि कोई भी दूसरा व्यक्ति इस पर काम कर सकता है. लॉन्ग टेल के लिए डिज़ाइन करते समय, इस बात पर ध्यान दें कि आपके डायलॉग में हर चरण में उपयोगकर्ता क्या कह सकता है. इसे आपके व्याकरण की भाषा भी कहा जाता है.
इंटेंट से यह पता चलता है कि उपयोगकर्ता क्या कह रहा है और इस वजह से आपकी कार्रवाई को क्या करना चाहिए. उदाहरण के लिए, “क्या आपको पिज़्ज़ा पसंद है?” संकेत के लिए “हां” और “नहीं” के लिए इंटेंट की ज़रूरत होती है. हर इंटेंट में उससे जुड़े कई तरह के ट्रेनिंग वाक्यांश होने चाहिए, जिनमें “हां” और “नहीं” जैसे समानार्थी शब्द शामिल हों साथ ही, “मुझे पसंद है” या “यह कुल मिलाकर है” जैसे वैरिएशन भी हों. इनका आकलन कितनी बार किया गया है. इंटेंट में एनोटेशन भी शामिल हो सकते हैं. उदाहरण के लिए, उपयोगकर्ता के जवाब में "फ़्रेज़ मोज़रेला" को पिज़्ज़ा टॉपिंग के तौर पर कैटगरी में बांटना. "सिर्फ़ तब, जब उसे ताज़ा मोज़रेला बनाया गया हो."
अगर Dialogflow का इस्तेमाल किया जा रहा है, तो इंटेंट के बारे में ज़्यादा जानने के लिए यहां जाएं.
गड़बड़ियों के होने के बाद उन्हें ठीक करने से बेहतर है कि आप गड़बड़ियों को होने से रोकें.
![](https://developers.google.cn/static/assistant/conversation-design/images/intentcoverage-do.png?authuser=0000&hl=hi)
करें.
"पूरा हो गया" या "बस हो गया" जैसे वाक्यांशों के साथ "हो गया" इंटेंट शामिल करें.
![](https://developers.google.cn/static/assistant/conversation-design/images/intentcoverage-dont.png?authuser=0000&hl=hi)
यह न करें.
अगर कार्रवाई के ज़रिए सिर्फ़ I/O के बारे में सवाल पूछे जा रहे हैं, तो उपयोगकर्ता के जवाब में 'कोई मैच नहीं' गड़बड़ी ट्रिगर होगी.
गड़बड़ी को संभालना
मज़बूत इंटेंट वाले होने के बावजूद भी गड़बड़ी की गुंजाइश होती है. उपयोगकर्ता साइलेंट मोड का इस्तेमाल किए बिना स्क्रिप्ट चला सकते हैं, यानी कि इनपुट नहीं है या गलती से कुछ भी नहीं मिला. उपयोगकर्ताओं को धीरे-धीरे सही पाथ पर ले जाने और उम्मीदों के मुताबिक उनकी उम्मीदों को रीसेट करने के लिए, गड़बड़ी के निर्देशों का इस्तेमाल करें.
अच्छी गड़बड़ी को हैंडल करने की सुविधा कॉन्टेक्स्ट के हिसाब से होती है. इसलिए, डायलॉग बॉक्स में हर मोड़ के लिए, 'कोई इनपुट नहीं' और 'कोई मैच नहीं' गड़बड़ियों से जुड़े निर्देश ही डिज़ाइन किए जाने चाहिए.