Los modelos de lenguaje tienen un problema fundamental para uso empresarial: saben mucho sobre el mundo pero no saben nada sobre tu empresa. No saben cuáles son tus tarifas actuales, no conocen tu catálogo de productos, no tienen acceso a los contratos con tus clientes ni a las políticas de tu empresa. Si le preguntas a un chatbot basado en GPT-4sobre los precios de tus servicios, o inventa algo plausible o dice que no sabe.
RAG (Retrieval Augmented Generation) resuelve ese problema. En lugar de limitarse al conocimiento de entrenamiento del modelo, el sistema busca primero la información relevante en tus propios documentos y datos, la incluye en el contexto de la conversación, y el modelo responde basándose en esa información real y actualizada.
Cómo funciona RAG técnicamente
El proceso tiene tres pasos:
Indexación: Los documentos de la empresa (PDFs de tarifas, páginas de la web, artículos de base de conocimiento, contratos tipo, fichas de producto) se procesan, se dividen en fragmentos y se convierten en vectores matemáticos que representan su significado semántico. Esos vectores se almacenan en una base de datos vectorial (Pinecone, Weaviate, Chroma o pgvector en PostgreSQL).
Recuperación: Cuando el usuario hace una pregunta, la pregunta también se convierte en vector y se buscan los fragmentos de los documentos más similares semánticamente. No es búsqueda por palabras clave exactas: si el usuario pregunta "¿cuánto cuesta el chatbot?", el sistema recupera los fragmentos de los documentos que hablan de precios de chatbots aunque no usen exactamente esas palabras.
Generación: Los fragmentos recuperados se incluyen en el prompt al modelo de lenguaje junto con la pregunta del usuario. El modelo genera la respuesta basándose en esa información específica, no en su conocimiento general.
El resultado: un chatbot que puede responder preguntas específicas sobre tu empresa con información actualizada, sin alucinaciones, y que puede citar la fuente de cada respuesta.
Casos de uso donde RAG tiene más impacto
Chatbot de atención al cliente con conocimiento propio: El chatbot puede responder sobre políticas de devolución, disponibilidad de productos, precios actuales y condiciones de los servicios. Cuando la información cambia, se actualiza el documento en la base de conocimiento y el chatbot automáticamente usa la nueva información sin reprogramar nada.
Asistente interno de empresa: Los empleados pueden hacer preguntas en lenguaje natural sobre las políticas de la empresa, los procesos de RRHH, la documentación técnica o el historial de proyectos. En lugar de buscar en carpetas o pedir a compañeros, preguntan al asistente.
Agente comercial con conocimiento de catálogo: Un agente de voz o chatbot que puede responder preguntas detalladas sobre los productos o servicios del catálogo, comparar opciones, explicar diferencias técnicas y hacer recomendaciones basadas en las necesidades del cliente.
Análisis de documentos legales y contratos: Un agente con RAG sobre todos los contratos de la empresa puede responder preguntas como "¿cuáles son los contratos que vencen en los próximos 90 días?" o "¿cuáles son las condiciones de la cláusula de penalización en el contrato con el cliente X?".
Qué RAG no resuelve
RAG resuelve el problema de acceso a información estática o semiestructurada. No resuelve el problema de acceso a datos en tiempo real que cambian constantemente (stock actual, precios en tiempo real, estado de un pedido en este momento). Para eso, el agente necesita llamadas a las APIs de los sistemas transaccionales, no RAG.
También, la calidad del RAG depende de la calidad de los documentos que se indexan. Si la documentación de la empresa está desactualizada, incompleta o es inconsistente, el agente dará respuestas desactualizadas, incompletas o inconsistentes. GIGO: garbage in, garbage out.
Nuestros Chatbots conversacionales implementan RAG sobre la documentación de cada cliente como parte del proceso de configuración estándar.