Wdrażanie autouzupełniania

Autouzupełnianie w Google Cloud Search pomaga użytkownikom, sugerując słowa podczas wpisywania zapytania. Sugestie mogą na przykład zawierać słowa z tytułów dokumentów, operatory wyszukiwania lub nazwy z organizacji Google Workspace.

Funkcja autouzupełniania wyodrębnia frazy z tytułów indeksowanych dokumentów i używa modelu n-gramów do określania sugestii za pomocą interfejsu Suggest API. Domyślnie autouzupełnianie wyświetla frazy z tytułów dokumentów. Możesz też oznaczyć właściwości schematu tekstowego i wyliczeniowego jako is_suggestable, aby automatycznie uzupełniać nazwy i wartości właściwości.

Interfejs Suggest API analizuje zapytania pod kątem wskazówek dotyczących języka, np. angielskiego lub hiszpańskiego, i ustala priorytety wyników. Pole languageCode w żądaniu również ulepsza sugestie dotyczące konkretnego języka.

Przykład

Rozważmy źródło danych zawierające dane o filmach:

  • Źródło danych zawiera 2 dokumenty.
  • Każdy dokument ma tytuł (ItemMetadata.title) i 2 właściwości: genrecharacters.
  • Tytuł dokumentu 1: „Avengers Infinity War”; genre=science fiction; characters=Iron Man, Hulk.
  • Tytuł dokumentu 2: „Harry Potter”; genre=Adventure, Fantasy; characters=Hermione, Harry Potter.

Ilustracja 1 pokazuje, jak autouzupełnianie wyodrębnia sugestie.

Dwa dokumenty i wynikowy n-gram
Rysunek 1. Dwa dokumenty i wynikowy n-gram używane do autouzupełniania

Z dokumentu 1 model wyodrębnia n-gramy (do trigramów), takie jak „Avengers”, „Infinity”, „War”, „Avengers Infinity”, „Infinity War” i „Avengers Infinity War”. Z dokumentu 2 generuje słowa „Harry”, „Potter” i „Harry Potter”.

Jeśli użytkownik wpisze „h” podczas wysyłania zapytania do tego źródła danych, może zobaczyć te sugestie:

  • Panda
  • Hermiona
  • Hulk
  • Harry Potter

Jeśli użytkownik wybierze „Hermiona”, a potem wpisze „a”, funkcja autouzupełniania może wyświetlić:

  • Hermione Adventure
  • Działanie Hermione
  • Hermione Avengers

Autouzupełnianie próbuje dokończyć ostatnie wpisane słowo lub n-gram. W tym przykładzie rozszerza on „a” na „adventure”, „action” i „avengers”, ponieważ żaden indeksowany tekst nie zaczyna się od „hermione a”. To jest sugestia końcowa.

Funkcja autouzupełniania w Cloud Search zwraca maksymalnie 5 sugestii z treści dokumentu i 2 sugestie dotyczące osób.

Domyślnie autouzupełnianie wyświetla frazy z tytułów dokumentów. Musisz wyraźnie oznaczyć właściwości schematu jako is_suggestable, aby interfejs Suggest API mógł automatycznie uzupełniać nazwy i wartości właściwości.

Integracja z interfejsem Suggest API

Jeśli używasz domyślnej wyszukiwarki lub widżetu wyszukiwania do umieszczenia w innej aplikacji, Cloud Search natywnie obsługuje autouzupełnianie. Pamiętaj, aby oznaczyć właściwości schematu jako is_suggestable, jeśli chcesz, aby były automatycznie uzupełniane.

Jeśli tworzysz niestandardową aplikację do wyszukiwania, autouzupełnianie jest dostępne za pomocą punktów końcowych interfejsu /query/suggest API.

Ograniczenia

Autouzupełnianie ma te ograniczenia:

  • Ograniczanie fraz autouzupełniania za pomocą symbolu FilterOptions nie jest obsługiwane, z wyjątkiem wbudowanych filtrów, takich jak objecttypemimetype.
  • Sugestie na podstawie historii zapytań użytkownika nie są obsługiwane.
  • Możesz oznaczyć jako is_suggestable maksymalnie 20 usług. Aby zwiększyć ten limit, skontaktuj się z zespołem pomocy Cloud Search.
  • Autouzupełnianie operatorów wyszukiwania jest niedostępne w przypadku usług z exact_match_with_operator.
  • Autouzupełnianie zwraca maksymalnie 5 sugestii dotyczących treści dokumentu i 2 sugestie dotyczące osób.
  • Autouzupełnianie podpowiada tylko frazy z dokumentów, do których użytkownik ma dostęp.