Функция автозаполнения Cloud Search помогает пользователю, предлагая слова, когда он вводит поисковый запрос. Например, предложениями могут быть слова из названий документов, операторов поиска, значений операторов поиска или имена и адреса электронной почты из организации Google Workspace.
Автозаполнение извлекает фразы из заголовков проиндексированных документов и с помощью n-граммной модели определяет предложения для показа с помощью API предложения. По умолчанию в автозаполнении отображаются фразы из названий документов. Вы также можете пометить свойства схемы текста и перечисления как is_suggestable
для автоматического заполнения имени и значений соответствующего свойства.
API предложения проверяет поисковый запрос на наличие подсказок о языке запроса, например английском или испанском, и соответствующим образом определяет приоритет результатов. Поле languageCode
запроса также используется для улучшения предложений для конкретного языка.
Пример сценария
Например, предположим, что у вас есть следующий источник данных, содержащий данные о фильмах:
- Источник данных содержит 2 документа.
- Каждый документ имеет заголовок (
ItemMetadata.title
) и два свойства:genre
иcharacters
. - Первый документ называется «Мстители: Война бесконечности», где
genre=science fiction
, аcharacters=Iron Man, Hulk
- Второй документ называется «Гарри Поттер» с
genre=Adventure, Fantasy and
персонажами = Гермиона, Гарри Поттер.
На рис. 1 показано, как предложения автозаполнения извлекаются из заголовков документов, свойств и значений свойств.
Из документа 1 извлекаем нграммы (вплоть до триграмм) «Мстители», «Бесконечность», «Война», «Мстители Бесконечность», «Война Бесконечности», «Мстители Война Бесконечности». Аналогично из документа 2 генерируем «Гарри», «Поттер», «Гарри Поттер».
Предположим, что при запросе к этому источнику данных пользователь начинает с ввода «h». Пользователю будут показаны следующие предложения:
- Гарри
- Гермиона
- Халк
- Гарри Поттер
Допустим, пользователь выбирает вариант автозаполнения «Гермиона», и следующим нажатием клавиши является символ «а». Предложения автозаполнения, отображаемые пользователю, будут следующими:
- Гермиона Приключение
- Гермиона Экшн
- Гермиона Мстители
Автозаполнение пытается завершить ввод последнего слова (или нграммы). В предыдущем примере буква «а» просто расширяется до «приключение», «действие» и «мстители», поскольку текст, начинающийся с «гермионы а», вместе отсутствует. Это внушение называется хвостовым внушением; автозаполнение только последнего набираемого слова/n-граммы.
Функция автозаполнения Cloud Search возвращает максимум 5 предложений из содержимого документа и 2 предложения людей.
По умолчанию в автозаполнении отображаются фразы из названий документов. Свойства схемы должны быть явно помечены как is_suggestable
, чтобы API-интерфейс предложения мог автоматически заполнять имя и значения соответствующего свойства.
Интеграция с API автозаполнения
Если вы используете приложение поиска по умолчанию или встроенный виджет поиска, функция автозаполнения Cloud Search поддерживается изначально без каких-либо дополнительных действий. Помните, что по умолчанию в автозаполнении отображаются фразы из заголовков документов. Свойства схемы должны быть явно помечены как is_suggestable
, чтобы API-интерфейс предложения мог автоматически заполнять имя и значения соответствующего свойства.
Если вы создаете собственное приложение поиска, автозаполнение доступно путем запроса конечных точек API /query/suggest
.
Ограничения
Автозаполнение имеет следующие ограничения:
Ограничение фраз автозаполнения Cloud Search с помощью
FilterOptions
определенных в схеме, не поддерживается, за исключением следующих встроенных фильтров:objectype
,mimetype
и type filter.Предложения на основе истории запросов (поиски, выполненные пользователем ранее в приложении поиска) не поддерживаются.
Максимум 20 свойств можно пометить как
is_suggestable
. Этот лимит можно увеличить, обратившись в службу поддержки Cloud Search.Автозаполнение оператора поиска недоступно для свойств с
exact_match_with_operator
.Функция автозаполнения Cloud Search возвращает максимум 5 предложений из содержимого документа и 2 предложения людей.
Автозаполнение Cloud Search предлагает фразы только из тех документов, к которым у пользователя есть доступ.