Cadenas y Agentes en LangChain

Para construir aplicaciones con IA, utilizando LangChain necesitas entender tres piezas clave:

  • Cadenas (Chains)
  • Memoria (Memory)
  • Agentes (Agents)

Este artículo explica cómo funcionan, cómo se conectan aplicándolo en nuestro entorno RAG híbrido.

Cadenas en LangChain

En LangChain, una cadena es simplemente una secuencia de llamadas donde la salida de una se convierte en la entrada del siguiente para crear un flujo de información continuo en un pipeline.

2. Ejemplo completo: sistema de recetas por ubicación

Vamos a recrear el ejemplo del video paso a paso.

🎯 Objetivo

Dado un país, queremos:

  1. Obtener un plato típico
  2. Generar la receta
  3. Calcular el tiempo de cocción

🔹 Cadena 1: obtener el plato

Entrada:

China

Prompt:

Dime un plato famoso de {location}

Salida esperada:

Pato de Pekín

🔹 Cadena 2: generar la receta

Usa la salida anterior como entrada.

Entrada:

Pato de Pekín

Prompt:

Dame una receta sencilla para {meal}

Salida:

Receta paso a paso del plato

🔹 Cadena 3: estimar tiempo de cocción

Entrada:

Receta generada

Prompt:

¿Cuánto tiempo se tarda en cocinar esta receta? {recipe}

Salida:

Tiempo estimado (ej: 90 minutos)

🔗 Resultado final (cadena completa)

China → Pato de Pekín → Receta → 90 minutos

Esto es una cadena secuencial.


🧠 Qué está pasando realmente

  • Cada paso reduce incertidumbre
  • El modelo trabaja con contexto más concreto
  • El resultado final es mucho más preciso

3. Cómo se construye esto en código (simplificado)

# Cadena 1
location_chain → output: meal

# Cadena 2
dish_chain → input: meal → output: recipe

# Cadena 3
recipe_chain → input: recipe → output: time

# Cadena completa
overall_chain = location_chain → dish_chain → recipe_chain

🔍 Tip clave

Usar verbose=True te permite ver todo el flujo:

  • Qué entra
  • Qué sale
  • Cómo se transforma

Esto es clave para depurar.


4. Memoria en LangChain: el contexto continuo

Aquí viene uno de los puntos más importantes.

Los LLM por sí solos no recuerdan nada.

LangChain introduce memoria para resolver esto.


🧠 Qué hace la memoria

  • Lee contexto previo
  • Mejora la entrada actual
  • Guarda la conversación

🔄 Flujo con memoria

Entrada usuario → Memoria → Cadena → Resultado → Memoria

📦 Ejemplo real

IA: Hola
Usuario: ¿Cuál es la capital de Francia?

La memoria guarda:

  • Mensaje IA
  • Mensaje usuario

Y las siguientes respuestas usan ese historial.


🧩 Clase clave

LangChain usa:

ChatMessageHistory

Permite:

  • Guardar mensajes humanos
  • Guardar mensajes de IA
  • Mantener contexto conversacional

🧠 Resultado

El sistema deja de ser reactivo…
y pasa a ser conversacional.


5. Agentes en LangChain: el salto a sistemas inteligentes

Aquí es donde todo cambia.

Un agente es:

Un sistema donde el modelo decide qué hacer y qué herramientas usar.


🔥 Diferencia clave

CadenasAgentes
Flujo fijoFlujo dinámico
Tú defines pasosEl modelo decide pasos
PredecibleAdaptativo

6. Cómo funciona un agente

Un agente:

  1. Recibe una pregunta
  2. Decide qué hacer
  3. Usa herramientas externas
  4. Devuelve una respuesta

🧠 Ejemplo conceptual

Pregunta:

¿Cuál es la población de Italia?

El agente:

  1. Decide buscar datos
  2. Consulta base de datos o API
  3. Procesa resultado
  4. Responde

⚠️ Importante

El modelo:

  • Decide acciones
  • Genera texto

Pero no ejecuta directamente → usa herramientas.


7. Ejemplo real: agente con DataFrame (muy potente)

Este es especialmente relevante para análisis de datos.


🎯 Objetivo

Consultar datos usando lenguaje natural.


🧩 Configuración

create_pandas_dataframe_agent(modelo, dataframe)

💬 Consulta

¿Cuántas filas hay en el dataframe?

⚙️ Qué ocurre por dentro

  1. El modelo interpreta la pregunta
  2. Genera código Python
  3. Ejecuta ese código
  4. Devuelve el resultado

📊 Resultado

Hay 139 filas en el DataFrame

🔥 Esto es clave

Estás pasando de:

❌ Preguntar
✅ Ejecutar lógica real sobre datos


8. Cómo encajan todo junto

Flujo completo de una aplicación

Usuario → Memoria → Cadena o Agente → Herramientas → Resultado → Memoria

9. Cuándo usar cada cosa

Usa Cadenas cuando:

  • El flujo es claro
  • Sabes los pasos
  • Quieres control

Usa Memoria cuando:

  • Hay conversación
  • Necesitas contexto
  • Hay múltiples interacciones

Usa Agentes cuando:

  • No sabes los pasos exactos
  • Necesitas decisiones dinámicas
  • Integras herramientas externas

10. Recapitulación

  • Las cadenas conectan pasos de procesamiento
  • La memoria mantiene contexto entre interacciones
  • Los agentes toman decisiones y usan herramientas
  • Juntos forman la base de aplicaciones reales con IA

Cierre

Aquí está el cambio clave:

👉 Con cadenas organizas el pensamiento
👉 Con memoria mantienes el contexto
👉 Con agentes automatizas decisiones

Y cuando combinas los tres…
ya no estás usando IA.

Estás construyendo sistemas inteligentes.