Construí un sistema RAG para el lore de Destiny — ¿es RAG el enfoque correcto para documentos narrativos de timeline?
Soy estudiante de programación y construí un asistente de lore para el universo de Destiny como proyecto de portfolio. El backend usa un pipeline RAG híbrido (.NET 9, pgvector, embeddings de Voyage AI, búsqueda híbrida BM25 + semántica fusionada con RRF, reescritura de queries con Claude Haiku, generación de respuestas con Claude Sonnet).
La fuente de datos es un documento de timeline narrativo de 500+ páginas — no una wiki ni una base de datos estructurada, sino texto denso organizado por era histórica. Terminé con ~3.300 chunks después de parsear por estructura de títulos y sub-temas en itálica.
Funciona bien para:
- Preguntas sobre personajes específicos ("¿Quién es Rhulk?")
- Preguntas conceptuales/filosóficas ("¿Qué es la Sword Logic?")
- Preguntas comparativas ("¿Cuál es la diferencia entre el Gardener y el Winnower?")
Tiene dificultades con:
- Eventos que abarcan múltiples eras y aparecen en muchos chunks ("¿Qué causó el Colapso?") — los chunks semánticamente más similares no siempre son los más relevantes
- Nombres propios que aparecen frecuentemente en distintos contextos — BM25 ayuda pero no lo resuelve del todo
Mi pregunta: ¿Es RAG realmente la herramienta correcta para este tipo de documento? La fuente es una timeline cronológica, no una base de conocimiento organizada por tema. Me pregunto si:
- Un enfoque de knowledge graph funcionaría mejor (entidades + relaciones en vez de chunks)
- Fine-tuning de un modelo más pequeño sobre el lore específico superaría a RAG para este dominio
- Mejores estrategias de chunking (chunking semántico vs mi enfoque actual estructurado) cerrarían la brecha
- RAG está bien y simplemente necesito mejor comprensión de queries (HyDE, descomposición, etc.)
Comparto el repo con gusto o puedo profundizar en cualquier decisión técnica. Genuinamente curioso qué enfoque usarían otros para este tipo de contenido.