El proyecto Dary-San Web es una aplicación desarrollada en Python utilizando el microframework Flask, cuyo propósito es crear un asistente virtual con personalidad kawai denominado Dary-San. Este asistente combina capacidades de conversación natural, conocimiento en historia mundial y mexicana, tecnología, programación, anime y temas de actualidad, con una interfaz web amigable que permite la interacción directa del usuario. El sistema utiliza la API de Google Generative AI, también conocida como Gemini, para generar respuestas contextuales e interactivas a partir del texto proporcionado por el usuario. Además, el proyecto integra la gestión de entorno mediante archivos .env, control de seguridad para las claves privadas y comunicación asincrónica entre el cliente y el servidor.
El lenguaje de programación principal es Python, y el servidor web está construido con Flask. Para el funcionamiento general del sistema se utilizan algunas librerías esenciales como flask-cors, que permite las solicitudes desde otros dominios; python-dotenv, que gestiona las variables de entorno; y google-genai, que permite comunicarse con el modelo de inteligencia artificial generativa de Google. La parte visual del proyecto está compuesta por archivos HTML, CSS y JavaScript, los cuales conforman la interfaz web del chat. El servidor se ejecuta localmente y responde a las solicitudes desde el navegador a través del puerto 5000.
El corazón del proyecto se encuentra en el archivo app.py, donde se define la lógica principal del asistente. En él se cargan las variables de entorno, se inicializa la aplicación Flask y se configura el acceso al modelo de inteligencia artificial. La comunicación con el modelo Gemini se realiza por medio de la función chat, la cual recibe los mensajes del usuario desde el navegador mediante solicitudes POST. Una vez recibido el mensaje, la aplicación llama al modelo gemini-2.5-flash, enviando también una instrucción del sistema que define la personalidad y comportamiento del asistente. Esta instrucción establece que Dary-San debe responder con un tono amable, humano y kawai, dirigiéndose siempre al interlocutor como “usuario-chan” y finalizando cada respuesta con referencias bibliográficas en formato APA.
El funcionamiento general sigue un flujo de comunicación sencillo. El usuario escribe un mensaje en la página principal y el navegador lo envía al servidor Flask mediante JavaScript. Luego el servidor procesa el mensaje con la API de Google, genera una respuesta textual y la devuelve en formato JSON al navegador, donde se muestra en pantalla. De esta forma se logra una conversación fluida entre el usuario y el asistente. Si ocurre algún error, como la falta de conexión con la API o una clave incorrecta, el programa está preparado para capturar la excepción y responder con un mensaje kawai de disculpa sin que la aplicación se cierre.
La personalidad de Dary-San está inspirada en los asistentes virtuales de estilo japonés kawai. Habla de manera amable, divertida y cercana, sin referirse a sí misma en tercera persona. Además de su tono simpático, su conocimiento abarca áreas de historia, tecnología, programación y cultura popular, ofreciendo respuestas informativas y acompañadas de citas académicas cuando es necesario. Este diseño busca hacer la interacción más entretenida sin perder el carácter educativo y formal que exige el uso de fuentes verificables.
El proyecto también presta atención a la seguridad. Las claves de acceso a la API de Google no se incluyen directamente en el código fuente, sino que se almacenan en un archivo oculto llamado .env, lo que evita que se compartan de forma pública o insegura. Asimismo, el entorno virtual venv se utiliza para mantener las dependencias aisladas del sistema principal, garantizando que el proyecto pueda ejecutarse sin conflictos con otras instalaciones de Python. La configuración de CORS también asegura que solo los dominios autorizados puedan acceder al servidor.
Para ejecutar la aplicación es necesario activar el entorno virtual, instalar las dependencias con pip, agregar la clave API en el archivo .env y luego ejecutar el archivo app.py. Una vez hecho esto, el usuario puede abrir la dirección local en su navegador y comenzar a conversar con Dary-San. El proyecto está pensado para funcionar de manera local, aunque puede ser desplegado fácilmente en un servidor remoto si se desea hacerlo accesible desde internet.
En conclusión, Dary-San Web representa un ejemplo funcional de integración entre Flask y la inteligencia artificial generativa de Google. Este proyecto demuestra cómo construir un asistente conversacional con identidad propia, manejo de entorno seguro y comunicación dinámica entre el cliente y el servidor. Además, su diseño modular permite futuras mejoras, como la incorporación de autenticación de usuarios, almacenamiento de historial de conversación o integración con bases de datos para mantener registro de las interacciones. Con Dary-San, la inteligencia artificial se presenta no solo como una herramienta de información, sino también como una experiencia interactiva y encantadora para el usuario.
Log in or sign up for Devpost to join the conversation.