No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

Parent Retriever

7/17
Recursos

Aportes 3

Preguntas 0

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

# 2. Retriever Una vez que hemos logrado : * Extraer la data de manera efectiva * Limpiar de manera impecable Ahora podemos trabajar en consultarlos, ubicar los mejores documentos par responder preguntas, documentos que tengan mayor relación con su query o petición. ## 2.1 Parent retriever * En la fragmentación de documentos nos encontraremos con una dicotomía: utilizar documentos cortos o documentos largos * Documentos largos: * Ventaja: Ayudan a preservar el contexto general del texto * Desventaja: Mientras más grande, van perdiendo precisión en los embeddings * Documentos cortos: * Ventaja: Ayudan a preservar la semántica y precisión de oraciones y párrafos. Los embedding reflejan un significado más exacto y específico. * Desventaja: Pierden el contexto general de texto * Entonces, ¿cuál es la mejor estrategia: Uso de `ParentDocumentRetriever`El flujo completo: los queries ubican a los `Children Documents` por la similitud de las chunks, también se ubican a los `Parent documents`, y ambos son insertados en el LLM. Con lo cual logramos precisión semántica por los `Children` y un mayor contexto con los `Parent documents` 1. `Parent_splitter`: Los documentos originales son cortados en secciones grandes. Por ejemplo, libros se cortan en capítulos. El resultados de la primera división (secciones grandes, capítulos) se denominan `Parents` 2. `Child_splitter`: Cada Parents es nuevamente divido en secciones más pequeñas, las que denominaremos `Childrens` 3. Los `queries` apuntan directamente a los `Childrens` 4. Para responder a las queries, nos traemos al `Parent` correspondiente al `Children` 5. Los `Children` se almacenan en el vector store, mientras que los `Parent` son almacenados en `memory store` o un `doc store` en una base de datos Redis
Pero el problema del paren retriever es que pasarle todo el documento completo como contexto a la LLM es muy probable que sobre pase la ventana de contexto del LLM, por lo que pasarle diversos chunks con la información precisa para responde la query sería mejor estrategia
El ParentRetriever es una estrategia para tener la precisión de lo que se quiere buscar, sin perder el contexto. terminos relevantes: \* documents\_parents \* documents\_children