Curso RAG Agents: Construye Aplicaciones y GPTs con APIs, MCP, LangChain y n8n

0 de 63 lecciones completas (0%)

4- Implementando RAG con LLMs de Código Abierto: AnythingLLM y Ollama

4.5- Creando un Chatbot RAG Local con AnythingLLM y Ollama

No tienes acceso a esta lección

Por favor, inscríbete o accede para acceder al contenido del curso.

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

  1. Establecer chunk size: 800
  2. Establecer overlap: 20
  3. Guardar cambios

Paso 2: Embebido de Documentos

  1. Regresar a AnythingLLM
  2. Presionar «Embed the document»
  3. 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

  1. Seleccionar documento
  2. Presionar «Move to workspace»
  3. 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:

  1. Búsqueda en documentos embebidos
  2. Función de llamada automática
  3. 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

  1. Establecer parámetros de chunk (800/20)
  2. Cargar documento PDF
  3. Mover a workspace
  4. Guardar y embebido

Uso del Sistema

  1. Crear nuevo hilo de conversación
  2. Hacer preguntas sobre el documento
  3. Ver citaciones y fragmentos utilizados
  4. 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

  1. Convertir a Markdown: Siempre que sea posible
  2. Tamaño óptimo: Balance entre contexto y velocidad
  3. 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.

Resumen de privacidad
Logo JeroCuevas.com

Esta web utiliza cookies para que podamos ofrecerte la mejor experiencia de usuario posible. La información de las cookies se almacena en tu navegador y realiza funciones tales como reconocerte cuando vuelves a nuestra web o ayudar a nuestro equipo a comprender qué secciones de la web encuentras más interesantes y útiles.

Cookies de terceros

Esta web utiliza Google Analytics para recopilar información anónima tal como el número de visitantes del sitio, o las páginas más populares.

Dejar esta cookie activa nos permite mejorar nuestra web.