Si tu agente de LangChain responde bien a la primera pregunta y luego "olvida" lo que le dijiste tres mensajes atrás, no es un bug: es que nunca le diste memoria. Y si además inventa datos sobre tu empresa que no existen, el problema es el contrario: le falta RAG. Son dos piezas distintas que suelen confundirse, y un agente serio necesita las dos trabajando juntas.
Memoria: que no te pregunte lo mismo dos veces
Un LLM no tiene memoria propia entre llamadas. Cada vez que le mandas un mensaje, solo "sabe" lo que va dentro del prompt de esa llamada. La memoria conversacional en LangChain es, en el fondo, un historial que tú gestionas y le reinyectas en cada turno — la diferencia está en cómo lo resumes para no explotar el costo de tokens.
- ▸Buffer memory — guarda la conversación completa, simple pero cara en sesiones largas
- ▸Summary memory — resume lo viejo y mantiene reciente lo último, el balance que usamos en la mayoría de proyectos
- ▸Memoria persistente — guarda el historial en una base de datos entre sesiones, para que el agente "te recuerde" aunque cierres la app y vuelvas al día siguiente
El error típico que veo en proyectos de estudiantes: usar buffer memory sin resumir en un agente que atiende soporte todo el día. A las dos horas de conversación, el prompt ya pesa tanto en tokens que cada respuesta tarda más y cuesta más, y en algún punto el modelo ni siquiera lee todo el historial porque se pasó del límite de contexto.
RAG: que no invente lo que no sabe
La memoria resuelve el "recordar la conversación". RAG resuelve un problema distinto: que el agente conteste con información real de tus documentos en vez de improvisar con lo que el modelo aprendió en su entrenamiento, que puede estar desactualizado o directamente no incluir nada sobre tu empresa.
El flujo básico es: divides tus documentos en fragmentos, los conviertes en vectores con un modelo de embeddings, los guardas en una base vectorial, y cuando llega una pregunta, buscas los fragmentos más parecidos semánticamente y se los pasas al LLM como contexto extra antes de que responda. El modelo no "sabe" tu manual de políticas de memoria — lo está leyendo en tiempo real, fragmento por fragmento, en cada respuesta.
Un agente con memoria pero sin RAG recuerda la conversación y te miente con seguridad. Un agente con RAG pero sin memoria responde bien una vez y después actúa como si te conociera por primera vez. Necesitas los dos.
Cómo se ven juntos en un agente real
En nuestro Taller de Creación de Agentes con LangChain armamos esto en orden, no todo junto desde el día uno: primero el patrón ReAct y herramientas personalizadas en la sesión 1 y 2, recién en la sesión 3 entra memoria conversacional y persistencia, y RAG con LangChain aparece como skill específica antes de llegar a la sesión 4, donde ya hablamos de agentes listos para producción con monitoreo. Son 5 sesiones (11 horas) y cuesta 89 USD.
Ese orden importa más de lo que parece: si metes RAG antes de entender bien el patrón ReAct, terminas con un agente que busca en documentos pero no sabe decidir cuándo buscar y cuándo responder directo — y eso genera llamadas innecesarias que te suben la factura de la API sin mejorar la respuesta.
Cuándo esto deja de ser un experimento
Memoria y RAG resuelven un agente que conversa bien y responde con datos reales. Pero orquestar varios agentes especializados — uno que busca, otro que decide, otro que ejecuta una acción — ya es otro nivel de arquitectura, con sus propios problemas de coordinación y costo. Si tu meta es llegar a sistemas multiagente en producción y no solo un chatbot con buena memoria, ese territorio se cubre a fondo en la ruta de AI Agentic Engineer, que retoma justo donde este taller termina.
Si vienes de cero con LangChain y quieres el recorrido completo desde el primer agente ReAct, el curso de Creación de Agentes con LangChain cubre esa base antes de este taller más enfocado en memoria y producción.
Una advertencia honesta: muchos tutoriales en YouTube muestran RAG con 10 documentos de ejemplo y todo funciona perfecto. Con 500 documentos reales de una empresa, el chunking mal hecho y una búsqueda vectorial sin reranking te dan resultados mediocres aunque el código "se vea igual" al del tutorial. La diferencia está en los detalles que casi nadie enseña gratis.
Una señal de que lo hiciste bien
Prueba esto antes de dar por terminado tu agente: pregúntale algo, cambia de tema por completo durante tres o cuatro mensajes, y después vuelve a la pregunta original con una referencia indirecta ("¿y lo que me dijiste al inicio, aplica igual para el otro caso?"). Si responde coherente sin que se lo expliques de nuevo, la memoria está bien resuelta. Después pregúntale algo que solo esté en tus documentos y que el modelo no podría saber de otra forma — si cita el dato correcto y no inventa un número parecido, el RAG también está funcionando. Esas dos pruebas valen más que cualquier métrica abstracta de evaluación.


