Introducción
En esta lección aprenderemos a construir una aplicación RAG (Retrieval-Augmented Generation) completa utilizando AnythingLLM y Ollama. Usaremos un documento PDF como ejemplo para demostrar todo el proceso paso a paso.
Preparación del Documento
Conversión de PDF a Markdown
- Recomendación: Aunque es posible procesar PDFs directamente, es mejor convertirlos primero a formato Markdown manualmente
- Razón: Los resultados son más precisos y confiables
- Para este tutorial: Utilizaremos el PDF directamente para mantener la simplicidad
Configuración de Parámetros
Tamaño de Chunk (Fragmentos)
Para este PDF de tamaño medio que contiene tanto números como oraciones completas:
- Tamaño recomendado: 800 tokens
- Justificación: Balance perfecto entre contexto y eficiencia
Overlap (Solapamiento)
- Valor recomendado: 20 tokens
- Propósito: Mantener continuidad entre fragmentos
Consideraciones Importantes
- Límite en AnythingLLM: Máximo 1000 tokens
- Impacto en rendimiento: Tamaños mayores ralentizan la aplicación
- Costos: En APIs pagas, más tokens = mayor costo
Proceso de Embeddings
Paso 1: Configurar Parámetros
- Establecer chunk size: 800
- Establecer overlap: 20
- Guardar cambios
Paso 2: Embebido de Documentos
- Regresar a AnythingLLM
- Presionar «Embed the document»
- Seleccionar el documento PDF
Opciones de Carga de Documentos
AnythingLLM soporta múltiples formatos:
- Archivos: PDFs, CSVs, hojas de cálculo, archivos de audio
- Sitios web: Scraping completo de páginas web
- Repositorios: GitHub y GitLab
- Multimedia: Transcripciones automáticas de YouTube
- Empresarial: Integración con Confluence
Conectores de Datos Especializados
GitHub/GitLab
- Proporcionar URL del repositorio
- Token de acceso (opcional)
- Seleccionar rama (por defecto: main)
- Precaución: GitHub no favorece el scraping excesivo
YouTube
- Insertar URL del video
- Transcripción automática
- Tip: Mejor resultado con transcripciones manuales
Scraping Masivo
- Múltiples URLs simultáneamente
- Control de profundidad de crawling
- Límite de páginas máximas
Gestión de Workspace
Mover Documentos al Workspace
- Seleccionar documento
- Presionar «Move to workspace»
- Confirmar con «Save and embed»
Opciones de Documento
- Pin to workspace: Inyecta todo el contenido en el prompt
- Mejor para: Modelos de contexto grande o archivos pequeños
- Insert documents: Añadir a workspace específico
Funcionamiento del Sistema RAG
Búsqueda Semántica
El sistema utiliza similarity search para encontrar los fragmentos más relevantes:
Ejemplo Práctico
Pregunta: «¿Qué es COD?» Proceso:
- Búsqueda en documentos embebidos
- Función de llamada automática
- Respuesta basada en contexto específico
Visualización de Resultados
- Show citations: Ver fragmentos utilizados
- Top-k results: Típicamente 4 mejores coincidencias
- Similarity scores: Porcentajes de coincidencia
- 1er fragmento: 51% (mayor relevancia)
- 2do fragmento: 43%
- 3er fragmento: 42%
- 4to fragmento: 40%
Flujo de Trabajo Completo
Configuración Inicial
- Establecer parámetros de chunk (800/20)
- Cargar documento PDF
- Mover a workspace
- Guardar y embebido
Uso del Sistema
- Crear nuevo hilo de conversación
- Hacer preguntas sobre el documento
- Ver citaciones y fragmentos utilizados
- Analizar similarity scores
Gestión de Documentos
- Añadir: Drag & drop o conectores de datos
- Remover: Hacer clic en «Back» para quitar del contexto
- Cambiar: Seleccionar diferentes combinaciones de documentos
Mejores Prácticas
Para Mejor Rendimiento
- Convertir a Markdown: Siempre que sea posible
- Tamaño óptimo: Balance entre contexto y velocidad
- Overlap adecuado: Mantener continuidad sin redundancia excesiva
Para Diferentes Tipos de Contenido
- Documentos técnicos: Chunks más grandes (800-1000)
- Textos narrativos: Chunks medianos (400-600)
- Listas y datos: Chunks más pequeños (200-400)
Ventajas del Sistema
Facilidad de Uso
- Interfaz intuitiva: Drag & drop simple
- Múltiples formatos: Soporte extenso de tipos de archivo
- Visualización clara: Citations y similarity scores
Flexibilidad
- Múltiples workspaces: Organización por proyectos
- Combinación de documentos: Usar varios archivos simultáneamente
- Configuración personalizable: Ajustar parámetros según necesidades
Costo-Efectividad
- Completamente gratuito: Para uso local
- Sin límites de consultas: Usando modelos locales
- Control total: Sobre datos y privacidad
Conclusión
AnythingLLM con Ollama proporciona una solución completa y gratuita para construir aplicaciones RAG locales. La combinación de facilidad de uso, flexibilidad y potencia hace que sea ideal tanto para principiantes como para usuarios avanzados.
Recuerda: Aunque el sistema funciona bien con documentos raw, siempre obtendrás mejores resultados preparando tus documentos en formato Markdown antes de cargarlos.