Skip to content

Instantly share code, notes, and snippets.

@IoTeacher
Last active March 7, 2026 23:48
Show Gist options
  • Select an option

  • Save IoTeacher/52c9bdbea5348d4d3869725f9d69467a to your computer and use it in GitHub Desktop.

Select an option

Save IoTeacher/52c9bdbea5348d4d3869725f9d69467a to your computer and use it in GitHub Desktop.
🧠 Arquitectura RAG: Capas de un Sistema de IA
697BDBB1-9BB6-438E-B6CE-DD825549A85D

🧠 Arquitectura RAG: Capas de un Sistema de IA

RAG (Retrieval-Augmented Generation) es una arquitectura utilizada en sistemas de inteligencia artificial modernos que permite a un modelo de lenguaje generar respuestas usando información externa recuperada desde una base de conocimiento.

Este enfoque combina búsqueda semántica con modelos generativos (LLM) para producir respuestas más precisas, actualizadas y verificables.


📊 Flujo general del sistema RAG

El sistema funciona como una tubería de procesamiento de información donde cada capa cumple una función específica.

Datos → Fragmentación → Embeddings → Base Vectorial → 
Expansión de Consulta → Recuperación → Reranking → 
LLM → Evaluación → Memoria → Caché

1️⃣ Ingesta de Datos

Qué hace

Recolecta información desde múltiples fuentes.

Ejemplos de fuentes

  • Documentos PDF
  • Páginas web
  • APIs
  • Bases de datos
  • Archivos internos de la empresa

Objetivo

Crear una base de conocimiento inicial para el sistema.

Documentos
APIs
Bases de datos
        ↓
 Sistema RAG

2️⃣ Fragmentación (Chunking)

Qué hace

Divide documentos grandes en fragmentos pequeños llamados "chunks".

Por qué es necesario

Los modelos de lenguaje no pueden procesar documentos muy grandes directamente.

Dividirlos permite:

  • Mejor búsqueda semántica
  • Mejor contexto
  • Menor costo computacional

Ejemplo

Documento original:

Manual de 100 páginas

Se divide en:

Chunk 1
Chunk 2
Chunk 3
Chunk 4

3️⃣ Embeddings

Qué hace

Convierte texto en vectores matemáticos que representan significado.

Ejemplo conceptual

Texto:

"Cómo instalar Python"

Vector generado:

[0.23, -0.91, 0.44, 0.12, ...]

Para qué sirve

Permite realizar búsqueda semántica en lugar de búsqueda por palabras exactas.

Herramientas comunes:

  • OpenAI Embeddings
  • Sentence Transformers
  • HuggingFace models

4️⃣ Base de Datos Vectorial

Qué hace

Almacena los embeddings para poder buscarlos rápidamente.

Ejemplos de bases vectoriales

  • FAISS
  • Pinecone
  • Weaviate
  • ChromaDB
  • Milvus

Qué almacena

Vector → Chunk asociado

Ejemplo:

[0.23, -0.91, 0.44] → "Cómo instalar Python en Linux"

5️⃣ Expansión de Consulta

Qué hace

Reescribe o amplía la pregunta del usuario para mejorar la búsqueda.

Ejemplo

Pregunta original:

¿Cómo instalar Python?

Consultas generadas:

instalar python
instalar python linux
instalar python ubuntu

Esto mejora la recuperación de información.


6️⃣ Recuperación (Retrieval)

Qué hace

Busca en la base vectorial los fragmentos más relevantes.

Proceso

Pregunta usuario
        ↓
Convertir a embedding
        ↓
Buscar vectores similares
        ↓
Obtener chunks relevantes

Ejemplo resultado:

Chunk 12
Chunk 45
Chunk 89

7️⃣ Reordenamiento (Reranking)

Qué hace

Ordena los resultados recuperados según su relevancia real.

Por qué es importante

La búsqueda vectorial puede traer resultados aproximados.

El reranker mejora la precisión.

Ejemplo

Resultados iniciales:

Chunk 12
Chunk 45
Chunk 89

Después de reranking:

Chunk 45 (más relevante)
Chunk 12
Chunk 89

8️⃣ Generación con LLM

Qué hace

El modelo de lenguaje genera la respuesta usando:

  • La pregunta del usuario
  • Los fragmentos recuperados

Flujo

Pregunta del usuario
        +
Chunks relevantes
        ↓
Modelo LLM
        ↓
Respuesta generada

Ejemplo de modelos:

  • GPT
  • Claude
  • Llama
  • Mistral

9️⃣ Evaluación

Qué hace

Mide la calidad del sistema RAG.

Métricas comunes

  • Precisión
  • Relevancia
  • Factualidad
  • Consistencia

Herramientas utilizadas:

  • RAGAS
  • LangSmith
  • Human evaluation

🔟 Memoria

Qué hace

Mantiene contexto entre múltiples preguntas.

Ejemplo

Conversación:

Usuario: ¿Qué es Python?
IA: Lenguaje de programación...

Usuario: ¿Cómo lo instalo?

El sistema recuerda que "lo" = Python.

Tipos de memoria:

  • Memoria de conversación
  • Memoria de usuario
  • Memoria de sesión

1️⃣1️⃣ Caché

Qué hace

Guarda respuestas frecuentes para acelerar el sistema.

Ejemplo

Pregunta repetida:

¿Qué es Python?

En lugar de recalcular:

Cache → respuesta almacenada

Beneficios:

  • Menor latencia
  • Menor costo
  • Mayor velocidad

🚀 Resumen de la Arquitectura

Datos
 ↓
Chunking
 ↓
Embeddings
 ↓
Base Vectorial
 ↓
Query Expansion
 ↓
Retrieval
 ↓
Reranking
 ↓
LLM
 ↓
Respuesta

🎯 Ventajas del enfoque RAG

✔ Reduce alucinaciones del modelo
✔ Permite usar información actualizada
✔ Escala con grandes bases de conocimiento
✔ No requiere reentrenar el modelo


📚 Uso en sistemas reales

RAG se usa en:

  • Chatbots empresariales
  • Asistentes de documentación
  • Sistemas de soporte técnico
  • Búsqueda inteligente
  • Copilotos de programación
  • Sistemas de investigación científica

🧪 Ejemplo real

Pregunta del usuario:

¿Cómo instalar Python en Ubuntu?

Sistema RAG:

1. Busca en documentos técnicos
2. Recupera fragmentos relevantes
3. El LLM genera la respuesta

Resultado:

Respuesta precisa basada en documentación real.

🧠 Conclusión

RAG combina búsqueda semántica + generación con LLM para crear sistemas de IA más confiables, precisos y útiles.

Por eso es una de las arquitecturas más usadas en AI Engineering moderno.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment