Tabla de contenidos
- 1. ¿Qué es el RAG? — Retrieval-Augmented Generation
- 2. Por qué hace falta el RAG — los 3 límites del LLM solo
- 3. Cómo funciona — el RAG en 3 pasos
- 4. Componentes principales del RAG
- 5. Qué es una base de datos vectorial
- 6. Usos principales — dónde se aplica el RAG
- 7. RAG vs fine-tuning — cuál elegir
- 8. Cómo implementarlo — RAG con LangChain
- 9. Retos del RAG y cómo afrontarlos
- 10. Lista de herramientas y servicios principales
- Preguntas frecuentes
«Quiero que ChatGPT lea el reglamento interno de mi empresa y responda automáticamente a las preguntas de la plantilla», «Quiero que busque en una base de datos de papers actualizada y me la resuma»: este tipo de necesidades no para de crecer. Pero los datos de entrenamiento de ChatGPT se quedan parados en algún momento del pasado y no podemos darle a la IA documentos confidenciales para que los memorice tal cual.
La tecnología que resuelve este problema es el RAG (Retrieval-Augmented Generation o generación aumentada por recuperación). Desde 2023 se ha convertido en una de las palabras clave más importantes para el uso empresarial de la IA, y funciones como «Custom GPTs» o «Projects» de ChatGPT usan RAG por dentro.
En este artículo explicamos en 3 pasos visuales cómo funciona el RAG y abordamos las bases vectoriales, la implementación con LangChain y cuándo conviene RAG o fine-tuning de forma comprensible para principiantes pero también técnicamente rigurosa.
1. ¿Qué es el RAG? — Retrieval-Augmented Generation
RAG (Retrieval-Augmented Generation) significa literalmente «generación (Generation) aumentada (Augmented) con búsqueda (Retrieval)». En español se traduce habitualmente como «generación aumentada por recuperación».
Resumido en una frase: «antes de que el LLM (gran modelo de lenguaje) genere su respuesta, busca información relevante en una base de datos externa y construye la respuesta usando esos resultados como referencia».
Una analogía culinaria
Un LLM por sí solo es como «un chef que cocina solo de memoria». Es brillante, pero no puede preparar recetas que no conoce ni sabe qué hay en la nevera.
El RAG es el sistema que «le entrega al chef un libro de recetas, le cuenta qué hay en la nevera y, después, lo pone a cocinar». Así, el chef puede consultar el recetario y crear el mejor plato posible con los ingredientes disponibles.
El papel de «Retrieval», «Augmented» y «Generation»
| Palabra | Significado | Función dentro del RAG |
|---|---|---|
| Retrieval | Búsqueda / recuperación | Extrae de la base de datos los documentos relevantes para la pregunta |
| Augmented | Aumento / refuerzo | Añade esa información al prompt antes de pasarlo al LLM |
| Generation | Generación | El LLM redacta la respuesta apoyándose en los resultados de la búsqueda |
La clave es que no se reentrena al LLM, sino que cada vez que llega una pregunta se le suministra «el conocimiento necesario» desde fuera. Esa es la diferencia decisiva con el fine-tuning, que veremos más adelante.
2. Por qué hace falta el RAG — los 3 límites del LLM solo
Hay tres problemas que un LLM como ChatGPT o Claude no puede resolver por sí solo.
Límite 1: corte de conocimiento (frescura de la información)
El LLM se entrena con «datos hasta cierta fecha», así que no conoce nada posterior a ese corte. Por ejemplo, la primera versión de GPT-4 solo tenía información hasta abril de 2023.
- «Cuéntame el producto que se anunció ayer» → no puede
- «¿Qué dice la reforma legal aprobada la semana pasada?» → no puede
- «¿Cuál es el tipo de cambio de hoy?» → no puede
Con RAG sí puedes traer información de las últimas noticias, bases de datos o APIs y construir la respuesta a partir de ellas.
Límite 2: alucinaciones (mentiras verosímiles)
Los LLM tienden a inventarse respuestas que parecen creíbles incluso cuando no saben la respuesta. A esto se le llama alucinación.
Ejemplo: si preguntas «¿cuántos días de vacaciones pagadas tiene su empresa según el reglamento interno?», el LLM, aunque no lo sepa, puede contestar «normalmente entre 10 y 20 días»; algo así no se puede usar en un entorno profesional.
Con RAG se busca el reglamento real y se le pasa al modelo, así que se obtienen respuestas fundamentadas. Además, puede acompañarlas con la cita: «en el documento X, página Y, dice...».
Límite 3: imposibilidad de acceder a datos internos o privados
Los datos de entrenamiento del LLM no incluyen los manuales, contratos ni datos de clientes de tu empresa. Y entrenar al LLM con información confidencial tampoco es viable (riesgo de fuga, coste...).
Con RAG puedes guardar los documentos internos en tu propia base vectorial, extraer solo el fragmento relevante cuando llega una pregunta y entregárselo al LLM, de forma que aprovechas los datos internos manteniendo la seguridad.
3. Cómo funciona — el RAG en 3 pasos
El funcionamiento del RAG se divide en dos fases: «preparación previa (creación del índice)» y «tiempo de ejecución (respuesta a la pregunta)».
Fase de preparación — vectorizar los documentos y guardarlos
- Recopilación de documentos: PDF, Word, HTML, Markdown..., reúnes los documentos que quieres usar
- División en chunks: trocea cada documento en fragmentos del tamaño adecuado (por ejemplo, 500-1000 caracteres)
- Embedding: pasa cada chunk por un modelo de embeddings (por ejemplo, text-embedding-3-small de OpenAI) y conviértelo en un vector de, por ejemplo, 1536 dimensiones (un array de números)
- Guardar en la base vectorial: almacena cada chunk junto a su vector en una BD especializada (Pinecone, Qdrant, etc.)
Esta tarea se ejecuta cuando se añaden o actualizan documentos.
Fase de ejecución — responder a la pregunta en 3 pasos
Cuando llega una pregunta del usuario, el flujo es el siguiente.
- Paso 1: Retrieval (búsqueda)
- Vectoriza la pregunta con el mismo modelo de embeddings
- En la base vectorial, recupera los K chunks (normalmente entre 3 y 10) «más cercanos al vector de la pregunta»
- Para medir la cercanía se suele usar la similitud del coseno
- Paso 2: Augmented (aumento)
- Inserta los chunks recuperados como «información de referencia» en el prompt
- Algo así como: «Responde a la pregunta usando la siguiente información como referencia: [resultados]. Pregunta: [pregunta del usuario]»
- Paso 3: Generation (generación)
- El LLM (GPT-4, Claude, Gemini, etc.) genera la respuesta basándose en la información proporcionada
- Si procede, añade citas de «qué documentos consultó»
Ejemplo concreto: preguntar a ChatGPT por el reglamento interno
Flujo para la pregunta «¿cuántos días de vacaciones pagadas tengo?»:
- El modelo de embeddings vectoriza la pregunta → [0.12, -0.45, 0.78, ...]
- Se recuperan de la BD vectorial 3 chunks relacionados con «vacaciones» o «descanso retribuido»
- Chunks recuperados: «Artículo 15. Vacaciones anuales pagadas. Tras 6 meses en la empresa se conceden 10 días...», «hasta un máximo de 20 días según la antigüedad...», etc.
- Se monta el prompt: «Información de referencia: artículo 15... Pregunta: ¿cuántos días de vacaciones pagadas tengo?»
- El LLM responde: «Tras 6 meses en la empresa se conceden 10 días, ampliables hasta 20 según la antigüedad (véase el artículo 15 del reglamento interno)»
4. Componentes principales del RAG
Veamos los 5 componentes que forman un RAG.
1) Modelo de embeddings (Embedding Model)
Es el modelo de IA que convierte texto en vectores numéricos. Está entrenado para que «los textos semánticamente parecidos queden cerca también en el espacio vectorial».
| Modelo | Proveedor | Características |
|---|---|---|
| text-embedding-3-small | OpenAI | Barato y eficiente, 1536 dimensiones |
| text-embedding-3-large | OpenAI | Mayor precisión, 3072 dimensiones |
| voyage-3 | Voyage AI | Recomendado por Anthropic, alta precisión |
| Cohere Embed v3 | Cohere | Multilingüe, muy bueno también con japonés y español |
| multilingual-e5-large | Microsoft (OSS) | Ejecutable en local, gratuito |
| BGE-M3 | BAAI (OSS) | Soporta más de 100 idiomas, lo mejor en open source |
2) Base de datos vectorial
BD especializada que guarda gran cantidad de vectores y permite recuperar rápidamente «los vectores más cercanos». La detallamos en el siguiente capítulo.
3) Motor de búsqueda (Retriever)
Además de la búsqueda vectorial, suele combinarse con búsqueda por palabras clave (BM25, etc.) o con búsqueda híbrida.
4) LLM (lado generador)
El gran modelo de lenguaje que produce la respuesta final: GPT-4, Claude, Gemini, Llama 3... Funciona tanto con APIs comerciales como con modelos OSS locales.
5) Plantilla de prompt
Plantilla que combina los resultados de búsqueda con la pregunta del usuario antes de pasarlos al LLM. Es un elemento crítico para la precisión del RAG.
Eres un asistente experto en el reglamento interno.
Responde únicamente con base en la información de referencia siguiente.
Si la información de referencia no contiene la respuesta, responde "no dispongo de información".
[Información de referencia]
{retrieved_chunks}
[Pregunta]
{user_question}
[Respuesta]
5. Qué es una base de datos vectorial
A diferencia de una BD relacional al uso (MySQL y compañía), una base vectorial está especializada en «recuperar rápidamente los vecinos más cercanos (los vectores más parecidos) en un espacio vectorial de alta dimensión».
Comparativa de las principales BD vectoriales
| BD | Tipo | Características | Precio |
|---|---|---|---|
| Pinecone | SaaS gestionado | Estándar del sector, configuración trivial | Capa gratuita; desde 70 $/mes |
| Weaviate | OSS + nube | API GraphQL, búsqueda híbrida | OSS gratis; SaaS desde 25 $ |
| Qdrant | OSS + nube | Escrito en Rust, muy rápido y con filtrado potente | OSS gratis; SaaS con capa gratuita |
| Chroma | OSS | Ligera, en Python funciona enseguida | Gratis (autoalojada) |
| pgvector | Extensión de PostgreSQL | Funciona sobre tu PostgreSQL existente | Gratis (extensión OSS) |
| Milvus | OSS + nube | Para gran escala, soporta miles de millones de vectores | OSS gratis; Zilliz Cloud |
| Elasticsearch | Motor de búsqueda | Soporta búsqueda vectorial e integra con tu operación actual | OSS gratis; gestionado disponible |
| Vertex AI Vector Search | Google Cloud | Integrado en el ecosistema GCP | Pago por uso |
Cuál elegir
- Para probar rápido: Chroma (con un pip install ya funciona)
- Aprovechar tu PostgreSQL: pgvector (unificas la BD)
- Producción con mínima carga operativa: Pinecone (no hay que configurar)
- OSS en serio: Qdrant o Weaviate
- Cientos de millones o miles de millones de registros: Milvus
Sobre dónde alojar todo esto, también te puede interesar la comparativa de PaaS (Vercel y similares) frente a hosting compartido, VPS y nube.
6. Usos principales — dónde se aplica el RAG
El RAG es, desde 2023, una de las tecnologías más adoptadas para el uso empresarial de la IA. Estos son los casos más representativos.
Caso 1: QA sobre documentación interna (base de conocimiento)
Se «ragifican» reglamentos, manuales, especificaciones técnicas, actas, materiales comerciales..., y se monta un entorno donde la plantilla pregunta como si fuera ChatGPT. Microsoft 365 Copilot también usa RAG sobre los documentos de SharePoint.
Caso 2: automatización de soporte al cliente
Se ragifican el FAQ y el histórico de soporte, y un chatbot atiende la primera línea automáticamente. Las personas operadoras se concentran en las consultas complejas.
Caso 3: Q&A de conocimiento experto en derecho o medicina
Bases de jurisprudencia, papers médicos, guías clínicas..., todo en un sistema RAG que abogados y médicos consultan a diario. Como se citan las fuentes, encaja muy bien con campos donde hay que justificar cada afirmación.
Caso 4: búsqueda y resumen de papers de investigación
Bases como arXiv, PubMed o Google Scholar se ragifican para responder a preguntas tipo «¿cuáles son las últimas tendencias en este tema?» o «¿qué estudios parecidos hay del método XX?». Elicit y Perplexity son ejemplos conocidos.
Caso 5: búsqueda de productos y FAQ en eCommerce
Un RAG que integra manuales, reseñas, política de devoluciones, etc. Permite búsquedas en lenguaje natural como «¿esta aspiradora va bien con pelo de mascotas?».
Caso 6: chat sobre documentación para personas desarrolladoras
Se ragifica la documentación oficial de una librería para responder a «quiero hacer X con AWS Lambda, ¿hay un código de ejemplo?». Stripe, Vercel, Supabase y otros lo usan.
Caso 7: búsqueda y explicación de la base de código interna
Se ragifica el código de GitHub para que las personas desarrolladoras pregunten «cómo se usa esta función» o «¿dónde más se hace algo parecido?». GitHub Copilot Chat o herramientas de IA para desarrollo como Cursor o Claude Code emplean técnicas de tipo RAG por dentro.
Caso 8: nuevas optimizaciones para IA como llms.txt
llms.txt, que sirve para que las IA lean correctamente la información de la web, encaja muy bien con RAG: quien gestiona el sitio puede ofrecer estructurada la información que quiere que la IA lea.
7. RAG vs fine-tuning — cuál elegir
Junto con el RAG, el otro gran candidato cuando se habla de «dotar a un LLM de conocimiento propio» es el fine-tuning. Sus enfoques son radicalmente distintos.
Diferencia de fondo
| Aspecto | RAG | Fine-tuning |
|---|---|---|
| Enfoque | Pasa información desde fuera en tiempo de ejecución | Reentrena el propio modelo de antemano |
| Actualización del conocimiento | Basta con actualizar la BD (instantáneo) | Hay que reentrenar (tiempo y coste) |
| Coste inicial | Bajo (solo montar la BD) | Alto (datos de entrenamiento y cómputo) |
| Coste operativo | Búsqueda + API del LLM | Solo inferencia (tienes el modelo propio) |
| Alucinaciones | Bajas (hay fuente de referencia) | Medias (habla de lo que aprendió) |
| Mostrar la fuente | Sí | Difícil |
| Aprender estilo o tono | Mal | Muy bien |
| Datos dinámicos | Bien (incluso info en tiempo real) | Mal (requiere reentrenar) |
| Datos confidenciales | Posible 100% on-prem | Igual (pero más pesado) |
Cuándo encaja el RAG
- El conocimiento se actualiza con frecuencia (noticias, documentos internos, catálogo)
- Hay que demostrar las fuentes (derecho, medicina, finanzas)
- Hay muchísimos documentos (entrenarlos todos no es realista)
- Quieres empezar ya (acortar el periodo de desarrollo)
Cuándo encaja el fine-tuning
- Quieres un estilo o tono concreto (marca corporativa, personalidad)
- Quieres aprender los patrones de lenguaje de un dominio (terminología médica o jurídica)
- Quieres bajar el coste de inferencia (los prompts se acortan)
- Ya tienes muchos datos supervisados
Lo más potente es combinar ambos
En realidad, el RAG y el fine-tuning no son técnicas enfrentadas: son combinables. El estilo se aprende con fine-tuning y el conocimiento más reciente se inyecta con RAG: este patrón se ve mucho en producción.
Eso sí, quien empieza, mejor con RAG. Comparado con el fine-tuning, es muchísimo más fácil de construir y operar.
8. Cómo implementarlo — RAG con LangChain
Tras presentar los principales frameworks de RAG, mostramos un ejemplo mínimo en Python.
Frameworks principales
| Framework | Lenguaje | Características |
|---|---|---|
| LangChain | Python / JS | El más extendido, abundantes integraciones |
| LlamaIndex | Python | Especializado en conexión de datos e índices |
| Haystack | Python | Enfoque enterprise, control fino |
| Semantic Kernel | C# / Python | De Microsoft, fuerte en integración .NET |
| DSPy | Python | Automatiza la optimización de prompts |
| Implementación propia | Cualquiera | Un RAG sencillo cabe en 100 líneas |
Ejemplo mínimo de RAG con LangChain
Implementamos en unas 30 líneas con LangChain un RAG que responde sobre un PDF del reglamento interno.
from langchain_community.document_loaders import PyPDFLoader
from langchain.text_splitter import RecursiveCharacterTextSplitter
from langchain_openai import OpenAIEmbeddings, ChatOpenAI
from langchain_community.vectorstores import Chroma
from langchain.chains import RetrievalQA
# 1. Cargar el documento
loader = PyPDFLoader("reglamento.pdf")
docs = loader.load()
# 2. Trocear en chunks
splitter = RecursiveCharacterTextSplitter(
chunk_size=500, chunk_overlap=50
)
chunks = splitter.split_documents(docs)
# 3. Embeddings + montar BD vectorial
embeddings = OpenAIEmbeddings(model="text-embedding-3-small")
vectorstore = Chroma.from_documents(chunks, embeddings)
# 4. Cadena RAG
llm = ChatOpenAI(model="gpt-4o-mini")
qa = RetrievalQA.from_chain_type(
llm=llm,
retriever=vectorstore.as_retriever(search_kwargs={"k": 3}),
return_source_documents=True,
)
# 5. Pregunta
result = qa.invoke({"query": "¿Cuántos días de vacaciones pagadas tengo?"})
print(result["result"])
print("Fuentes:", [d.metadata for d in result["source_documents"]])
Al ejecutar este código, busca los pasajes relevantes en el PDF del reglamento interno y GPT-4o-mini genera la respuesta. Como recuperas también los números de página de la fuente, puedes responder a la persona usuaria con cita incluida: «consulta el artículo 15».
En una implementación más cercana a producción
- Optimización del troceo (chunking semántico, chunks jerárquicos, etc.)
- Búsqueda híbrida (combinar vectorial + BM25 por palabras clave)
- Reranking (Cohere Rerank, voyage-rerank, etc., para reordenar los resultados)
- Reescritura de la consulta (HyDE, Multi-Query, etc., para mejorar la precisión)
- Pipeline de evaluación (evaluación automática con RAGAS)
9. Retos del RAG y cómo afrontarlos
El RAG es una tecnología potente, pero en producción te encuentras con estos retos.
Reto 1: la dificultad de trocear los documentos
El cómo dividir el documento cambia mucho la precisión de la búsqueda. Si los chunks son demasiado cortos pierden contexto; si son demasiado largos, baja la precisión.
Cómo afrontarlo:
- Chunking semántico (cortar por bloques con significado)
- Configurar overlap (que los chunks adyacentes se solapen)
- Chunks jerárquicos (almacenar padre-hijo y buscar en hijo, citar el padre)
Reto 2: precisión del Retrieval
Que se traigan chunks parecidos pero distintos, o que se quede fuera información clave.
Cómo afrontarlo:
- Búsqueda híbrida (vectorial + BM25 por palabras clave)
- Reordenar tras la búsqueda con un modelo de reranking
- Generar varias consultas (buscar la misma pregunta con distintas formulaciones)
Reto 3: límite de la ventana de contexto
Existe un máximo de tokens que se puede pasar al LLM, así que no caben muchísimos chunks.
Cómo afrontarlo:
- Reducir K (top 3-5)
- Resumir antes de pasar
- Usar LLM de contexto largo (Claude con 200K, Gemini con 1M, etc.)
Reto 4: la dificultad de evaluar
Medir objetivamente la calidad de las respuestas RAG es difícil. El reto está en cómo construir el dataset de referencia.
Cómo afrontarlo:
- Usar RAGAS (framework OSS para evaluación de RAG)
- Calcular automáticamente métricas como exactitud, relevancia y fidelidad
- LLM-as-a-Judge (que otro LLM puntúe la respuesta)
Reto 5: multilingüe y multimodal
Documentos donde se mezclan español, inglés y japonés, PDF con imágenes, tablas, gráficos... su procesamiento es complicado.
Cómo afrontarlo:
- Modelos de embeddings multilingües (BGE-M3, Cohere Multilingual)
- Convertir imágenes y tablas a texto antes con un LLM (OCR + VLM)
- Embeddings multimodales (CLIP, Nomic, etc.)
10. Lista de herramientas y servicios principales
Herramientas habituales para construir RAG, agrupadas por categoría.
Frameworks y librerías
- LangChain — el framework RAG más extendido
- LlamaIndex — especializado en conexión de datos
- Haystack — orientado a empresa
- DSPy — optimización automática de prompts
BD vectoriales (gestionadas)
- Pinecone — estándar del sector
- Weaviate Cloud — soporte GraphQL
- Qdrant Cloud — alto rendimiento
- Zilliz Cloud — versión gestionada de Milvus
BD vectoriales (OSS / autoalojadas)
- Chroma — ligera y operativa al instante en Python
- Qdrant — escrita en Rust, muy rápida
- Weaviate — versión OSS
- Milvus — para gran escala
- pgvector — extensión de PostgreSQL
Modelos de embeddings
- OpenAI text-embedding-3 — opción de referencia, barata
- Voyage AI — recomendado por Anthropic
- Cohere Embed v3 — multilingüe
- BGE-M3 — OSS de alto rendimiento
Servicios RAG no-code o gestionados
- ChatGPT Projects / Custom GPTs — la función RAG de OpenAI
- Claude Projects — la función RAG de Anthropic
- Notion AI — búsqueda sobre documentos de Notion
- Microsoft Copilot (Microsoft 365) — búsqueda transversal sobre SharePoint y Teams
- Dify — plataforma OSS no-code para construir IA
- Vertex AI Agent Builder — servicio RAG de Google Cloud
- Amazon Bedrock Knowledge Bases — RAG gestionado de AWS
Herramientas de evaluación
- RAGAS — framework OSS para evaluar RAG
- TruLens — evaluación de aplicaciones LLM en general
- LangSmith — trazado y evaluación oficial de LangChain
Preguntas frecuentes
P. ¿Se puede usar RAG con ChatGPT?
Sí. Si subes ficheros a «Projects» o a un «Custom GPT» de ChatGPT, internamente actúa como RAG (OpenAI lo llama «File Search»). Si quieres usar RAG vía API como desarrollador, puedes recurrir a la herramienta «File Search» de OpenAI Assistants API o construirlo tú con LangChain. En Claude pasa lo mismo con «Projects».
P. ¿Cuánto cuesta operar un RAG?
Depende mucho del tamaño. A escala personal o pequeña (menos de 10.000 documentos, unas 1.000 consultas al mes), con Chroma + OpenAI API te quedas en algunas decenas de dólares al mes. A escala media (100.000 documentos, 100.000 consultas al mes) con Pinecone + GPT-4o estás en cientos o pocos miles de dólares al mes. Para grandes empresas puede pasar de los 10.000 dólares mensuales. Los tres focos de coste son «API de embeddings», «BD vectorial» y «API del LLM».
P. ¿Qué diferencia hay entre RAG y subir un fichero a ChatGPT?
En el fondo es la misma técnica de «generación aumentada por recuperación». La función de subir ficheros en ChatGPT usa RAG por dentro. Las diferencias: (1) ChatGPT admite de unos pocos a unas decenas de ficheros (Projects sube mucho ese límite), un RAG propio puede manejar millones; (2) ChatGPT es una caja negra, en un RAG propio controlas el algoritmo de búsqueda al detalle; (3) ChatGPT corre en servidores de OpenAI, un RAG propio puede ser on-prem. Para producción seria en una empresa, lo habitual es construir el propio.
P. ¿Con RAG desaparecen las alucinaciones por completo?
No del todo. Incluso con RAG puede haber respuestas erróneas si: (1) no se recuperaron los documentos relevantes; (2) los resultados están bien pero el LLM los interpreta mal; (3) los resultados se contradicen. Las contramedidas son restricciones en el prompt («si no está en la información de referencia, di que no tienes información»), citar las fuentes y evaluación continua con RAGAS y similares. Aun así, no se llega al 100%, así que en usos críticos como medicina o derecho hay que mantener siempre la revisión humana.
P. ¿Cómo se trabaja con documentos en español?
El soporte multilingüe pasa por tres puntos: (1) usar modelos de embeddings multilingües (OpenAI text-embedding-3, Cohere Multilingual, BGE-M3...); (2) tener en cuenta puntuación y morfología del español al trocear; (3) elegir un LLM que se desenvuelva bien en español (GPT-4o, Claude, Gemini...). text-embedding-3 de OpenAI funciona bien con español, pero si quieres aún más precisión, BGE-M3 o Cohere son aún mejores opciones.
P. ¿Cuál es la diferencia entre RAG y un agente de IA?
El RAG es un mecanismo fijo de «buscar y construir la respuesta»; un agente es un mecanismo dinámico que «elige y ejecuta herramientas de forma autónoma según el objetivo». El RAG suele ser una de las herramientas que el agente puede usar. Por ejemplo, un agente puede combinar «búsqueda interna (RAG)», «búsqueda web», «cálculo» o «envío de emails» según convenga; el RAG es uno de sus componentes. También está el «Agentic RAG», donde es el propio LLM el que decide la estrategia de búsqueda.
P. ¿Y la seguridad? No quiero enseñar mis datos confidenciales a la IA
Hay varias estrategias: (1) colocar la BD vectorial y el procesamiento de embeddings on-prem o dentro de tu VPC (Qdrant, pgvector, etc., autoalojados); (2) usar también un LLM ejecutable en local, como un OSS (Llama 3, Qwen, etc.); (3) si vas por API, contratar el «no entrenamos con tus datos» de OpenAI o Azure OpenAI; (4) según el nivel de confidencialidad, añadir metadatos de permisos a los chunks y filtrar al recuperar. Un RAG totalmente on-prem es viable y se está adoptando en banca y sanidad.
P. ¿Cuánto tiempo y qué nivel se necesita para montar un RAG?
Un prototipo lo puede hacer una persona con Python básico en unas horas o un día (Chroma + OpenAI API en unas 30 líneas). Llevarlo a producción, con troceo, búsqueda híbrida, reranking, evaluación, etc., suele llevar de uno a tres meses. Las habilidades necesarias son «Python básico», «uso de APIs de LLM» y «operaciones básicas de BD»; no hace falta un saber profundo de machine learning. Es un terreno donde el perfil de software engineer suele encajar mejor que el de AI engineer.
Este artículo se basa en información disponible en abril de 2026. Las herramientas y modelos de RAG cambian rápido, así que en el momento de implementar conviene consultar la documentación más reciente de cada servicio.