Combinamos tres caminos en paralelo y fusionamos los resultados con RRF (Reciprocal Rank Fusion):
- Léxica (BM25) — coincidencia exacta con stemming español
- Semántica (vectorial) — encuentra docs por significado, no por palabras
- Por artículo — índice GIN sobre artículos invocados
Sumamos prioridad por jerarquía del tribunal (SCJN > Sala > TCC) y decaimiento por antigüedad. Encima, un re-ranker LLM reordena los primeros 30. Resultado: latencia ~1-2 segundos, calidad superior a la búsqueda por palabra clave tradicional.