Desarrollo completo de un agente conversacional con personalidad definida, construido sobre arquitectura RAG Generación Aumentada por Recuperación. El sistema separa frontend y backend, gestiona memoria conversacional persistente mediante PostgreSQL y genera respuestas contextuales entrenadas con una base de conocimiento curada en JSON.
Stack: HTML, CSS, JS, Python, LlamaIndex, FastAPI, GitHub Pages, Render, PostgreSQL.
Arquitectura del Sistema
| Componente | Tecnologías | Rol |
|---|---|---|
| Frontend | HTML, CSS, JS | Interfaz de chat interactiva que se comunica con el backend. Utiliza localStorage para persistir el historial de la sesión del usuario entre páginas. |
| Backend | Python, LlamaIndex, FastAPI | Expone una API REST que maneja la lógica de la IA, el procesamiento de lenguaje y la gestión de la memoria conversacional. |
| Hosting | GitHub Pages | Sirve el frontend como un sitio web estático, asegurando velocidad y disponibilidad global. |
| Hosting (API) | Render | Aloja el servicio backend de Python, manejando la ejecución del código y la conexión con la base de datos. |
Frontend: HTML, CSS, JS. Interfaz de chat interactiva que se comunica con el backend.
Backend: Python, LlamaIndex, FastAPI. Expone una API REST que maneja la lógica de la IA, el procesamiento de lenguaje y la gestión de la memoria conversacional.
Hosting: GitHub Pages. Sirve el frontend como un sitio web estático.
Hosting (API): Render. Aloja el servicio backend de Python.
Núcleo de la IA (LlamaIndex y RAG)
La inteligencia de soto se basa en un proceso de tres etapas para generar respuestas precisas, contextuales y alineadas con la personalidad del artista.
-
Base de Conocimiento Curada (El Cerebro)
- Datos: La información del artista (proyectos, influencias, recorrido) está curada en archivos JSON estructurados.
- Vectorización: La librería LlamaIndex procesa estos datos, transformando el texto en embeddings (vectores semánticos) almacenados en un Índice Vectorial.
-
Memoria Conversacional (El Recuerdo)
- Persistencia: Las conversaciones se guardan en una base de datos PostgreSQL externa.
- Contexto: Mediante un sistema de user_id, la API recupera el historial de un usuario específico y lo inyecta en el prompt.
-
Ingeniería de Prompts (La Personalidad)
- Control del Tono: La voz crítica, sarcástica y concisa de soto está definida por un PromptTemplate diseñado a medida.
- Reglas de Comportamiento: El prompt instruye al modelo (OpenAI) a priorizar los JSON como fuente principal, usar el historial para personalización y hablar en primera persona.