Contexto
Logic Solution quería mejorar la atención inicial a los clientes potenciales mediante un canal ágil, directo y automatizado. El objetivo era automatizar el primer contacto con los usuarios a través de WhatsApp, ofreciendo respuestas contextualizadas y facilitando la reserva de citas con personal de la empresa.
Objetivos
- Crear un chatbot conectado a WhatsApp capaz de entender y responder consultas de manera natural.
- Ofrecer respuestas enriquecidas con información propia de la empresa, mediante una arquitectura basada en RAG.
- Consultar la agenda para gestionar la reserva de citas automáticamente.
- Asegurar que el sistema fuera escalable, modular y desplegable en Google Cloud.
Requisitos
- Integración directa con WhatsApp Business API.
- Capacidad de respuesta mediante modelo LLM.
- Acceso a información específica propia (documentación interna).
- Sincronización con Google Calendar o un calendario similar para consultar disponibilidad y crear eventos.
- Arquitectura desplegable inicialmente en Google Cloud Platform.
- Costes razonables, mantenibilidad y facilidad de despliegue.
Implementación
El proyecto se desplegó inicialmente en Google Cloud, con los siguientes componentes bien definidos para garantizar escalabilidad, mantenimiento sencillo y una experiencia de usuario fluida.
Se desarrolló el motor del bot con Cloud Functions y Firebase, utilizando GPT-4 mini vía API para ofrecer respuestas contextuales basadas en lenguaje natural. Esta combinación proporcionaba tiempos de respuesta ágiles y flexibilidad para escalar según la demanda.
Para enriquecer las respuestas del modelo, se implementó una arquitectura RAG (Retrieval-Augmented Generation). Los documentos relevantes se almacenaban en Cloud Storage, donde eran organizados y versionados según los distintos contextos de negocio. Un sistema automático basado en Pub/Sub detectaba nuevos archivos o modificaciones en los existentes y generaba los embeddings necesarios para mantener la base de conocimiento siempre actualizada y alineada con el contenido empresarial.
Además, se integró el sistema con la agenda de un usuario predefinido, lo que añadía una capa adicional de utilidad práctica. Gracias a la API de Microsoft Azure, el bot era capaz de comunicarse directamente con los servicios de calendario del usuario, sin intermediarios manuales ni retrasos.
Esto le permitía consultar en tiempo real la disponibilidad horaria, proponer directamente al cliente franjas convenientes en función de esa agenda, gestionar la confirmación en base a las respuestas recibidas, y finalmente crear automáticamente la cita en el calendario del responsable asignado. Todo este proceso se realizaba de manera fluida, cerrando el circulo entre la consulta y la acción sin necesidad de intervención humana.
Esta funcionalidad supuso un gran avance en la automatización de procesos comerciales, eliminando la necesidad de intervención humana en las primeras fases del contacto.
Una vez validado con éxito en el entorno de Google Cloud Platform, se procedió a replicar todo el sistema en AWS. La arquitectura funcional se mantuvo equivalente, adaptando los componentes a los servicios equivalentes de AWS como Lambda, S3, EventBridge y DynamoDB, garantizando la portabilidad y adaptabilidad del sistema a diferentes entornos cloud.
Conclusiones
El sistema cumplió todos los objetivos funcionales: ofreció una experiencia fluida y ágil a los usuarios de WhatsApp, con respuestas contextualizadas y con la posibilidad de concertar citas automáticamente.
Ahora bien, a medida que el sistema se estabilizó, se observó que la complejidad y el coste asociados a la infraestructura RAG no estaban justificados por la simplicidad y el volumen de los documentos usados para responder las consultas.
Aun así, la decisión de implantar un RAG resultó muy valiosa desde el punto de vista técnico: fue una oportunidad real de implementar y operar un sistema RAG en un entorno productivo, lo que aportó conocimiento práctico sobre su dificultad, latencia, mantenimiento y coste.
Posibles mejoras
- Mecanismos de monitorización y control de calidad más refinados para identificar preguntas que podrían no estar bien resueltas.
- Posibilidad de extender el sistema a otros canales (Telegram, Teams, web) mediante una arquitectura modular multicanal.
- Integración con CRM para registrar automáticamente las interacciones y alimentar acciones comerciales posteriores.
- Corregir el estilo (negrita, enlaces…) del texto que generas.
- Dar más la sensación de que estás hablando con una persona.