Contenido del curso
Estructura tus datos
Construye agentes
Despliega en producción
Conversaciones multi-turn
Resumen
Para que Claude recuerde una conversación, necesitas entender que la API de Claude es stateless: no guarda nada entre una llamada y otra. Si quieres construir un chatbot con memoria, el historial completo tiene que viajar en cada request. Esto es clave para desarrolladores que empiezan a trabajar con la Cloud API.
Una llamada suelta no es una conversación. Cada request llega en blanco, sin memoria de lo anterior. Entonces, la lista de mensajes que reenvías es la conversación, y dentro de ella los roles de user y assistant cumplen un papel central.
Por qué la API de Claude no recuerda nada por sí sola
Acá está el concepto que tienes que tener claro desde el principio: la Cloud API es stateless. No conserva contexto entre requests. Cada llamada llega limpia, sin saber qué le dijiste antes [00:12].
Esto significa que la memoria no vive en el modelo. Vive en ti, en el array de mensajes que decides enviar cada vez. Si quieres que tu chatbot recuerde el historial completo, ese historial tiene que ir dentro de la llamada [00:26].
¿Qué significa que una API sea stateless? Significa que no guarda información entre solicitudes. Cada request es independiente y no recuerda las anteriores, así que tú debes enviar todo el contexto en cada llamada.
Cómo se arma una conversación con los roles user y assistant
En la clase anterior, dentro del llamado a la API teníamos un array de messages con un solo objeto: un mensaje con rol de usuario. Para simular una conversación, cambiamos eso por tres mensajes: dos de user y uno con un rol nuevo, el de assistant [01:20].
Así queda la conversación simulada:
- El usuario escribe: "Mi proyecto será un chatbot para recetas".
- El asistente responde: "Perfecto, puedo ayudarte con ingredientes y pasos".
- El usuario cierra con: "Recuérdame cuál era mi proyecto y sugiere el primer feature".
Ese último mensaje sirve para validar que Claude está recordando el contexto de la conversación [01:52]. La idea es simple: si el historial viaja completo, el modelo puede seguir la línea de lo que ya se dijo.
Qué respuesta devuelve Claude al recibir el historial completo
Al ejecutar el archivo main.py desde la rama y carpeta de la clase dos, Claude hace el llamado con esos tres mensajes [02:20]. La respuesta confirma que el contexto se mantiene: identifica que el chatbot de recetas es tu proyecto y sugiere como primer feature una búsqueda por ingredientes disponibles, donde el usuario ingresa lo que tiene en casa y el chatbot propone recetas posibles [02:33].
Y no se queda ahí. También devuelve un ejemplo en Python de cómo sería la estructura de código de ese buscador, y al final pregunta si quieres que desarrollemos el feature [02:52].
Acá se nota que el historial no está roto: Claude no se quedó solo con el primer mensaje, sino que siguió la conversación entera [03:04].
¿Cómo hago que Claude recuerde mensajes anteriores? Reenvía la lista completa de mensajes en cada llamada, incluyendo los roles user y assistant. La memoria no la pone el modelo, la pones tú al mandar todo el historial.
Qué otros parámetros ofrece el endpoint de messages
En esta clase apareció el rol del assistant, que hasta ahora no habíamos usado. Pero el endpoint de messages de la Cloud API ofrece muchos más parámetros [03:20].
La recomendación es explorar la documentación oficial para revisar cada parámetro y detectar cuáles sirven para tus proyectos. El link está en la sección de recursos de la clase [03:40]. Y si quieres profundizar en el concepto de stateless o cualquier otro, puedes usar Platzi Answers, el botón de preguntar ubicado arriba a la derecha [00:44].
Cuál es el costo real de reenviar todo el historial
Ya sabes hacer que Claude recuerde, y aquí viene lo interesante: no es magia del modelo, es esa lista que reenvías completa en cada llamada. Funciona perfecto al principio, pero esa lista no para de crecer [03:56].
Piénsalo así:
- Diez turnos de conversación.
- Cincuenta turnos.
- Doscientos turnos.
Cada mensaje se suma y vuelve a viajar entero una y otra vez [04:10]. Vas a llegar a un punto en que eso te empieza a costar en dinero y en velocidad. La pregunta que queda abierta es: ¿qué decides conservar y qué decides dejar ir?
¿Por qué se vuelve caro un chatbot con historial largo? Porque envías todos los mensajes anteriores en cada llamada. Mientras más crece la conversación, más datos viajan, lo que aumenta el costo y reduce la velocidad de respuesta.
Te reto a crear una conversación más larga con Claude y a dejar tus resultados en los comentarios. ¿Hasta qué punto sigue recordando sin que el costo se dispare?