Entendiendo la coincidencia parcial de palabras en los resultados de búsqueda

En nuestra búsqueda estándar:
Cuando busco:
“Pen” obtengo resultados de Pensilvania.
Lo mismo ocurre con los términos de búsqueda “Penn” y “Pennsyl”.
Pero cuando busco “Pennsy”, obtengo “no se encontraron resultados” para “Pennsy”, aunque los otros términos funcionan como se espera.

En Firefox: para este ejemplo, la cadena de búsqueda errónea “Pennsy” simplemente devuelve un resultado para nuestro grupo “miembros de Pensilvania”, pero el comportamiento es igualmente extraño.

No hay errores en la consola, ni problemas claros en las cabeceras XHR… solo un objeto de respuesta mucho más pequeño (como se esperaría de este comportamiento).

Para descartar que se tratara de un problema de versión o implementación, también lo probé en metaDotDiscourse y ¡sucede allí también!

Nota: también ocurre con “Jus” (muchos resultados),
luego “Just” solo devuelve resultados de usuarios,
pero “justi” obtiene resultados del foro.
Dado estos dos ejemplos, imagino que otros resultados de búsqueda hacen lo mismo.
Curiosamente, no parece estar relacionado con la longitud del término. ¡Así que lo que está ocurriendo está muy por encima de mi comprensión!

Tiene que ver con la raíz léxica, un concepto técnico de búsqueda.

1 me gusta

Agradezco la atención, pero esto sigue siendo:

  1. un comportamiento inesperado: un conjunto de resultados (o ninguno) muy diferente para la misma raíz de palabra para la que hay contenido.
  2. las inconsistencias entre navegadores son bastante extrañas, ¿no?

Nuestros usuarios finales no saben qué es la stemming, que, como señalas, es un término técnico de investigación.

Con el cambio en el título del post, otros implementadores de Discourse que experimentan problemas similares no podrán encontrarlo al buscar en el foro, y al no ser ya un informe de error, nadie con potencial para ayudar a mejorar el comportamiento lo verá como algo que podría beneficiarse de ser abordado.

Si se trata de un elemento crítico que debe aparecer en la búsqueda, asegúrate de usar etiquetas, palabras especiales u otro marcador distintivo. También puedes interesarte por las palabras de parada en la búsqueda: