Implementa el autocompletado

El autocompletado de Cloud Search ayuda a los usuarios mediante la sugerencia de palabras cuando estos escriben una búsqueda. Las sugerencias pueden ser palabras de títulos de documentos, operadores de búsqueda, valores de operadores de búsqueda, nombres y correos electrónicos del dominio de G Suite y demás.

El autocompletado extrae las frases de los títulos de los documentos indexados y, mediante un modelo n-grama, determina las sugerencias que se mostrarán con la API de Suggest. Por ejemplo, supongamos que tenemos la siguiente fuente de datos que contiene datos sobre películas:

  • La fuente de datos contiene 2 documentos.
  • Cada documento tiene un título (ItemMetadata.title) y dos propiedades: genre y characters.
  • El primer documento se titula “Avengers: Infinity War” con genre=science fiction y characters=Iron Man, Hulk.
  • El segundo documento se titula “Harry Potter” con genre=Adventure, Fantasy and characters=Hermione, Harry Potter`.

En la Figura 1, se ilustra cómo se extraen las sugerencias del autocompletado de los títulos de documentos, las propiedades y los valores de las propiedades.

Dos documentos y el n-grama resultante
Figura 1. Dos documentos y el n-grama resultante que se usa para el autocompletado.

Del documento 1, se extraen n-gramas (hasta trigramas) “Avengers”, “Infinity”, “War”, “Avengers Infinity”, “Infinity War”, “Avengers: Infinity War”. Del mismo modo, a partir del documento 2, se generan “Harry”, “Potter”, “Harry Potter”.

Cuando se consulta esta fuente de datos, supongamos que el usuario comienza escribiendo “h”. Estas serían las sugerencias mostradas al usuario:

  • Harry
  • Hermione
  • Hulk
  • Harry Potter

Supongamos que el usuario selecciona la sugerencia de autocompletado “Hermione” y la siguiente combinación de teclas del usuario es el carácter “a”. Estas serían las sugerencias de autocompletado mostradas al usuario:

  • Hermione Adventure
  • Hermione Action
  • Hermione Avengers

El autocompletado de Cloud Search muestra un máximo de 5 sugerencias del contenido del documento y sugerencias de 2 personas.

De manera predeterminada, las frases de los títulos de los documentos se muestran en el autocompletado. Las propiedades del esquema deben marcarse de forma explícita como is_suggestable para que la API de Suggest autocomplete el nombre y los valores de la propiedad correspondientes.

Integra con la API de Autocomplete

Si usas la aplicación de búsqueda predeterminada o el widget de búsqueda incorporable, la característica de autocompletado de Cloud Search es compatible de forma nativa sin ningún trabajo adicional. Recuerda que, de forma predeterminada, las frases de los títulos de los documentos aparecen en el autocompletado. Las propiedades del esquema deben marcarse de manera explícita como is_suggestable para que la API de Suggest autocomplete el nombre y los valores de la propiedad correspondientes.

Si compilas una aplicación de búsqueda personalizada, la función de autocompletado está disponible mediante la consulta de los extremos de la API /query/suggest.

Limitaciones

El autocompletado tiene las siguientes limitaciones:

  • No se admite la restricción de frases del autocompletado de Cloud Search con los FilterOptions definidos en el esquema, excepto con los siguientes filtros incorporados: objectype, mimetype y filtros de tipo.

  • No se admiten sugerencias basadas en el historial de consultas (búsquedas que el usuario realizó antes en una aplicación de búsqueda).

  • Se puede marcar un máximo de 20 propiedades como is_suggestable. Para aumentar este límite, comunícate con el equipo de asistencia de Cloud Search.

  • El autocompletado del operador de búsqueda no está disponible para propiedades con exact_match_with_operator.