अपने-आप पूरा होने की सुविधा लागू करना

Cloud Search की ऑटोकंप्लीट सुविधा, खोज क्वेरी टाइप करते समय उपयोगकर्ता को शब्द सुझाकर उसकी मदद करती है. उदाहरण के लिए, सुझाव के तौर पर दस्तावेज़ के टाइटल, खोज ऑपरेटर, खोज ऑपरेटर की वैल्यू या Google Workspace संगठन के नाम और ईमेल पते के शब्द दिख सकते हैं.

ऑटोकंप्लीट, इंडेक्स किए गए दस्तावेज़ों के टाइटल से वाक्यांशों को निकालता है. इसके बाद, n-ग्राम मॉडल का इस्तेमाल करके, Suggest API के ज़रिए सुझाव देने के लिए वाक्यांशों का पता लगाता है. डिफ़ॉल्ट रूप से, दस्तावेज़ के टाइटल में मौजूद वाक्यांश, ऑटोकंप्लीट में दिखते हैं. टेक्स्ट और enum स्कीमा प्रॉपर्टी को is_suggestable के तौर पर भी मार्क किया जा सकता है, ताकि प्रॉपर्टी का नाम और वैल्यू अपने-आप पूरी हो जाए.

Suggest API, खोज क्वेरी की भाषा के बारे में जानकारी पाने के लिए, क्वेरी की जांच करता है. जैसे, अंग्रेज़ी या स्पैनिश. इसके बाद, वह नतीजों को प्राथमिकता देता है. अनुरोध के languageCode फ़ील्ड का इस्तेमाल, भाषा के हिसाब से सुझावों को बेहतर बनाने के लिए भी किया जाता है.

उदाहरण के तौर पर

उदाहरण के लिए, मान लें कि आपके पास यह डेटा सोर्स है, जिसमें फिल्मों के बारे में डेटा मौजूद है:

  • डेटा सोर्स में दो दस्तावेज़ हैं.
  • हर दस्तावेज़ में एक टाइटल (ItemMetadata.title) और दो प्रॉपर्टी होती हैं: genre और characters.
  • पहले दस्तावेज़ का टाइटल "Avengers Infinity War” है. इसमें genre=science fiction और characters=Iron Man, Hulk
  • दूसरे दस्तावेज़ का टाइटल "हैरी पॉटर" है. इसमें genre=Adventure, Fantasy andcharacters=Hermione, Harry Potter`

पहली इमेज में दिखाया गया है कि दस्तावेज़ के टाइटल, प्रॉपर्टी, और प्रॉपर्टी की वैल्यू से, अपने-आप पूरा होने वाले सुझाव कैसे निकाले जाते हैं.

दो दस्तावेज़ और उनसे मिला एनग्राम
पहली इमेज. अपने-आप पूरा होने की सुविधा के लिए इस्तेमाल किए गए दो दस्तावेज़ और उनसे मिला एन-ग्राम

पहले दस्तावेज़ से, हम ngrams (ट्रायग्राम तक) निकालते हैं: “Avengers”, “Infinity”, “War”, “Avengers Infinity”, “Infinity War”, “Avengers Infinity War.” इसी तरह, दूसरे दस्तावेज़ से हम “Harry”, “Potter”, “Harry Potter” जनरेट करते हैं.

इस डेटा सोर्स से क्वेरी करते समय, मान लें कि उपयोगकर्ता "h" टाइप करता है. उपयोगकर्ता को ये सुझाव दिखाए जाएंगे:

  • पन
  • हर्माइनी
  • हल्क
  • हैरी पॉटर

मान लें कि उपयोगकर्ता ने अपने-आप पूरा होने वाले सुझाव “Hermione” को चुना है और इसके बाद, उसने "a" वर्ण टाइप किया है. उपयोगकर्ता को अपने-आप पूरे होने वाले ये सुझाव दिखेंगे:

  • Hermione Adventure
  • Hermione Action
  • Hermione Avengers

ऑटोमैटिक भरने की सुविधा, टाइप किए जा रहे आखिरी शब्द (या nग्राम) को पूरा करने की कोशिश करती है. पिछले उदाहरण में, "a" को "adventure", "action", और "avengers" में बदल दिया गया है, क्योंकि "hermione a" से शुरू होने वाला कोई टेक्स्ट नहीं है. इस सुझाव को टेल सुझाव कहा जाता है. इसमें सिर्फ़ टाइप किए जा रहे आखिरी शब्द/n-ग्राम को अपने-आप पूरा किया जाता है.

Cloud Search की ऑटोकंप्लीट सुविधा, दस्तावेज़ के कॉन्टेंट से ज़्यादा से ज़्यादा पांच सुझाव और दो लोगों के नाम के सुझाव दिखाती है.

डिफ़ॉल्ट रूप से, दस्तावेज़ के टाइटल में मौजूद वाक्यांश, ऑटोकंप्लीट सुविधा में दिखते हैं. स्कील प्रॉपर्टी को साफ़ तौर पर is_suggestable के तौर पर मार्क किया जाना चाहिए, ताकि suggest API, प्रॉपर्टी के नाम और वैल्यू को अपने-आप पूरा कर सके.

Autocomplete API के साथ इंटिग्रेट करना

अगर डिफ़ॉल्ट खोज ऐप्लिकेशन या एम्बेड किया जा सकने वाला खोज विजेट इस्तेमाल किया जा रहा है, तो Cloud Search की अपने-आप पूरा होने वाली सुविधा बिना किसी अतिरिक्त काम के काम करती है. ध्यान दें कि डिफ़ॉल्ट रूप से, दस्तावेज़ के टाइटल में मौजूद वाक्यांश, अपने-आप पूरा होने वाले सुझावों में दिखते हैं. स्कील प्रॉपर्टी को साफ़ तौर पर is_suggestable के तौर पर मार्क किया जाना चाहिए, ताकि सुझाव देने वाले एपीआई से प्रॉपर्टी का नाम और वैल्यू अपने-आप पूरी हो सके.

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

सीमाएं

ऑटोकंप्लीट की सुविधा से जुड़ी ये सीमाएं हैं:

  • स्कीमा में तय किए गए FilterOptions का इस्तेमाल करके, Cloud Search में अपने-आप पूरे होने वाले वाक्यांशों को सीमित करने की सुविधा काम नहीं करती. हालांकि, ये बिल्ट-इन फ़िल्टर काम करते हैं: objectype, mimetype, और टाइप फ़िल्टर.

  • क्वेरी के इतिहास के आधार पर सुझाव देने की सुविधा काम नहीं करती. यह सुविधा, खोज से जुड़े किसी ऐप्लिकेशन में उपयोगकर्ता की पिछली खोजों के आधार पर काम करती है

  • ज़्यादा से ज़्यादा 20 प्रॉपर्टी को is_suggestable के तौर पर मार्क किया जा सकता है. Cloud Search की सहायता टीम से संपर्क करके, इस सीमा को बढ़ाया जा सकता है.

  • exact_match_with_operator वाली प्रॉपर्टी के लिए, सर्च ऑपरेटर के अपने-आप पूरे होने की सुविधा उपलब्ध नहीं है.

  • Cloud Search की ऑटोकंप्लीट सुविधा, दस्तावेज़ के कॉन्टेंट से ज़्यादा से ज़्यादा पांच सुझाव और दो लोगों के नाम के सुझाव दिखाती है.

  • Cloud Search की अपने-आप पूरा होने वाली सुविधा, सिर्फ़ उन दस्तावेज़ों के वाक्यांशों का सुझाव देती है जिन्हें ऐक्सेस करने की अनुमति उपयोगकर्ता के पास है.