Búsqueda híbrida
Dos métodos imperfectos que fallan en casos distintos
Búsqueda híbrida y reordenación
Su sistema responde correctamente a las preguntas formuladas en lenguaje natural, pero falla sistemáticamente en tres categorías: las referencias exactas como MNT-2019-07, los acrónimos internos y los nombres propios poco frecuentes. Ha probado un modelo de embeddings más grande, una dimensión mayor, una fragmentación más fina. El recall se mueve dos puntos. Estas preguntas representan el 30 % del tráfico real, porque los usuarios que conocen la referencia de un documento la escriben en lugar de describir lo que buscan.
Ningún modelo de embeddings resolverá esto, por la razón vista en la lección 3: una referencia alfanumérica no tiene semántica aprendida, su vector es ruido. En cambio, un índice léxico la encuentra de inmediato, porque es exactamente su oficio: emparejar cadenas poco frecuentes. Simétricamente, el índice léxico falla donde el vectorial sobresale: la pregunta que no comparte ninguna palabra con la respuesta. Los dos métodos no compiten, se complementan, y la cuestión interesante es cómo fusionarlos.
BM25 en treinta líneas
BM25 clasifica los documentos según la frecuencia de los términos de la consulta, ponderando por su rareza en el corpus y atenuando el efecto de la longitud. Puede obtenerlo de PostgreSQL con ts_rank, o implementarlo en memoria.
Comentarios
Los comentarios funcionan con GitHub Discussions
Inicia sesión con GitHub para participar en la discusión