Explorando aplicaciones de modelo de lenguaje LLM

  • Artículos
  • Data Science & IA

Contexto

En un mundo cada vez más digitalizado, la inteligencia artificial (IA) se ha convertido en una herramienta poderosa y necesaria. Una de estas herramientas que hoy en día está revolucionando el escenario y la adopción es la inteligencia artificial generativa. Las empresas que buscan optimizar operaciones, aumentar la eficiencia y obtener una ventaja competitiva están constantemente buscando cómo aprovechar el potencial de esta herramienta e incorporarlas en el día a día. Sin embargo, implementar proyectos de IA no es una tarea sencilla. Se requiere de un conocimiento profundo de la tecnología, una visión clara de los objetivos comerciales y la habilidad para integrarla de manera efectiva en la operación. Este blog expone un caso de uso exitoso de estas tecnologías que se implementó en la operación de uno de nuestros clientes y partners, la ACHS (Asociación Chilena de Seguridad), una institución que junto con sus filiales tiene más de 10 mil empleados. La ACHS identificó un potencial uso de IA generativa en sus operaciones diarias, con la cual podrían ayudar a acelerar procesos y liberar horas personas en rutinas diarias.

La inteligencia artificial generativa se refiere a los sistemas de IA diseñados para generar nuevas ideas, conceptos, texto, imágenes o cualquier otro contenido a partir de datos de entrada. Estos modelos aprenden de grandes conjuntos de datos textuales y luego utilizan ese aprendizaje para producir algo nuevo y único. 

El ejemplo más reconocido es ChatGPT, que es un modelo de lenguaje que aprende a generar texto a partir de grandes volúmenes de datos y luego puede generar respuestas o conversaciones completas a partir de esas entradas. Otro ejemplo son las GANs (Generative Adversarial Networks, por sus siglas en inglés), que son capaces de generar imágenes realistas a partir de ruido aleatorio y que se usan para crear obras de arte o generar rostros humanos. 

Según McKinsey, la IA generativa podría agregar hasta 4.4 billones de dólares a la economía global anualmente, pues tiene el potencial de automatizar entre el 60% al 70% de las tareas que ocupan el tiempo de los trabajadores en la actualidad. Según el reporte, alrededor de 75% del valor de la tecnología de inteligencia artificial se verá en: operaciones de clientes, marketing y ventas, ingeniería de software e investigación y desarrollo. Sus casos de uso en estas industrias van desde la creación de mensajes para los clientes y la generación de código hasta el “diseño generativo” que “acelera el proceso de desarrollo de nuevos medicamentos y materiales”. (Bhaimiya, 2023) 

Problema 

Debido a los más de 10 mil colaboradores con los que cuenta la ACHS es que se hace imprescindible contar con una gestión eficiente para resolver dudas y agilizar procesos internos dentro de la institución. Día a día llegan alrededor de 200 solicitudes a los ejecutivos sobre los distintos beneficios y procedimientos dentro de la institución. Este es un proceso altamente repetitivo, y la información necesaria para responder se encuentra en una cantidad acotada de documentos. Para alivianar esta tarea, el desafío es generar una herramienta que responda a las frecuentes consultas de manera inteligente y con entendimiento contextual, mejorando así la calidad y tasa de respuesta mediante una interacción inmediata además de mejorar la calidad, disponibilidad y comunicación de la información para la mayoría de los trabajadores.  

Actualmente se destinan alrededor de 2.5 trabajadores que están captando las dudas de los trabajadores diariamente. En un día se gestionan alrededor de 200 solicitudes, lo que podría reducirse considerablemente ya que la mayoría de las dudas que llegan pueden ser resueltas simplemente entregando la información encontrada en los documentos de beneficios y protocolos que tiene la ACHS.

Solución 

Para abordar esta oportunidad de mejora se requiere resolver 3 problemas: 

  • Entendimiento de las preguntas o respuestas,  
  • Conocimiento necesario para responder (por ejemplo, documentos), 
  • La capacidad para interactuar con personas.  

Combinando distintas piezas se logró diseñar e implementar un sistema que agrega valor al negocio sin incurrir en costos elevados.   

Para darle la capacidad de entendimiento al sistema, se empleó un LLM (Large Language Model, por sus siglas en inglés) que se encarga de tomar una pregunta y documentos con información relevantes para sintetizar una respuesta adecuada a las distintas preguntas. En este caso se utilizó el modelo llamado gpt-3.5-turbo, un LLM creado por la compañía OpenAI. 

El conocimiento del sistema almacena y se extrae desde una base de datos vectorial. Este es un tipo de base de datos que nos permite almacenar documentos en forma de vectores sobre los que se pueden realizar búsquedas de documentos semánticamente relevantes a una pregunta de manera más eficiente.  

Por último, se diseñó una aplicación web a modo de chat para permitir la interacción con los usuarios. Esta interfaz permite al usuario realizar consultas al modelo y a la base de datos que almacena los documentos con información relevante.  

Con solo unos pocos clics, los usuarios pueden acceder a todo el potencial del sistema y obtener respuestas precisas y relevantes a dudas que antes tenían que ser respondidas de forma manual. Dado el volumen de empleados de la ACHS, el sistema genera un gran impacto que reduce considerablemente las horas gastadas en responder dudas que gran parte de los casos ya han sido respondidas con anterioridad. En resumen, esta solución aprovecha los últimos desarrollos en inteligencia artificial y establece una solución escalable y replicable a cualquier dominio que se vea beneficiado por la extracción automatizada de documentos y sinterización de respuestas en forma de una experiencia conversacional. A continuación, se describen los conceptos y componentes principales utilizados en la solución.  

Figura 1: Aplicación web disponibilizada para interactuar con el sistema

Base de datos vectorial 

A diferencia de las bases de datos relacionales o no estructuradas, las bases de datos vectoriales almacenan datos de alta dimensionalidad en forma de vectores. 

Estos vectores en general son representaciones numéricas de un texto, imagen, audio, etc. que se obtienen a partir de alguna transformación o capas intermedias de modelos de Deep Learning. Debido a la explosión de estos últimos y oportunidades de negocio o mejora que generan, es que se han invertido grandes esfuerzos en construir estas bases de datos que permiten realizar búsquedas de puntos cercanos en el espacio dado un punto de referencia. En general esta búsqueda es un derivado del algoritmo KNN (K Nearest Neighbours, por sus siglas en inglés) que utiliza alguna métrica de distancia (siendo la distancia coseno la más común) para determinar qué puntos están en la vecindad. Cabe destacar que éste es un ámbito de rápido desarrollo en la actualidad y los algoritmos de búsqueda en bases vectoriales están diversificándose y mejorando rápidamente  

En particular para este proyecto se utilizó Qdrant, una de las bases de datos vectoriales open-source más maduras en cuanto a estabilidad y performance. Al igual que muchas otras, permite almacenar metadatos, o un payload asociado a cada punto que se ingresa. En nuestro caso, los puntos son la representación numérica de documentos con beneficios, la metadata es información relacionada al documento y el payload es el documento mismo. 

Figura 2: Funcionamiento de una base de datos vectorial. El contenido se guarda como un vector que puede ser entregado como un punto cercano a otro en el espacio de forma eficiente. Fuente: https://www.pinecone.io/learn/vector-database/

LLM 

Los LLMs son una forma de nombrar modelos basados en la arquitectura de transformer networks. Este es un tipo de arquitectura que elevó el estado del arte substancialmente en procesamiento de lenguaje natural el año 2017 al eliminar la recurrencia, y otras limitaciones que los modelos de redes neuronales anteriores presentaban en esta área de investigación. Luego del paper inicial (Ashish Vaswani, 2017) que propuso esta arquitectura, han surgido un sinfín de mejoras y variaciones sobre el modelo fundacional que han seguido elevando el estado del arte año tras año (Amatriain, 2023) y a su vez han generado varias oportunidades de negocio basadas en esta tecnología. Los LLMs pueden realizar varias tareas como clasificación de textos, generación de texto, traducciones o resumir texto entre otros. En este proyecto utilizamos ChatGPT, un LLM capaz de generar respuestas en base a un prompt, o texto inicial. En nuestro caso ese texto inicial son las preguntas de los usuarios junto con los documentos que contienen información relevante en la base de datos. 

Figura 3: Avance anual de los LLMs año tras año. En general mientras más parámetros tiene un LLM mejor es su performance. ​(Amatriain, 2023)

Interfaz de usuario 

La interfaz de usuario es el punto de conexión para que los usuarios puedan interactuar con los distintos componentes del sistema de manera transparente. La interfaz maneja se comunica con el motor que  conecta nuestro LLM y Base de datos de vectores utilizando Python .  

Microsoft Teams es una de las principales herramientas para la comunicación de las áreas centrales de la ACHS, por lo que esta integración nos permite acercarnos al usuario de manera natural, logrando centralizar la información en una plataforma. La implementación de esta conexión no es trivial, dado que tenemos que recurrir a distintos servicios de Azure para poder comunicarnos: 

  • Azure Functions: Generar una API que nos permita conectar el input del usuario con el LLM, y retornar la respuesta 
  • Power Automate: Generar una llamada a la API del Chat, que nos permita generar un flujo de preguntas y respuestas, para luego ser usado en otras plataformas 
  • Power Virtual Agents: Nos permite generar un aplicativo en Teams, que actúa como un chat en donde podemos interactuar directamente con nuestra Azure Function y obtener respuestas. 

Por otro lado, las aplicaciones web nos permiten una interacción más flexible y personalizada con el usuario pudiendo acercar los modelos a las personas. Esto con principal foco en áreas no centrales, en donde no existe el uso de Microsoft Teams, que es la herramienta más utilizada para comunicarse dentro de la organización. 

La aplicación web se publicó en la nube de Azure, con el servicio de App Services y Azure container apps. 

En las pruebas de esta nueva herramienta se obtuvo comentarios positivos por parte de la operación, incluso de la subgerencia: 

  • “Siendo parte de los servicios internos de ACHS veo que la tecnología AI puede apoyar a optimizar, estandarizar y hacer más eficientes nuestros procesos de gestión de personas, reduciendo los tiempos de respuesta, entregando respuestas objetivas y actualizadas, reduciendo potenciales errores de entrega de información y facilitando el trabajo de los ejecutivos quienes pueden concentrarse en responder y proponer soluciones con valor agregado más allá que sólo el informativo. Al final los chatbots no son sólo una herramienta de gran valor para colaborador final quienes reciben una respuesta concreta y oportuna, sino que también un facilitador interno para mejorar nuestros procesos” Valeria Díaz – Subgerente People Analytics, Compensaciones y Servicio de Personal 

Hasta el momento se tiene planeado extrapolar esta solución a variados casos de uso dentro de la organización, esperando diferentes grados de impacto a nivel operativo, reputacional, y económico. 

Arquitectura 

Debido a la rápida adopción de la tecnología en la ACHS se comenzó con una arquitectura monolítica muy sencilla para validar el potencial de la solución visible en el siguiente diagrama: 

Figura 4: Diagrama de arquitectura monolítica de la solución. Todos los componentes excepto los documentos consumidos y el LLM se encuentran dentro de un mismo contenedor de Docker.

Habiendo mostrado la viabilidad de la solución, se decidió avanzar generando una segunda arquitectura de implementación que permitirá mayor escalabilidad y versatilidad. Esta nueva arquitectura separa, por un lado, la ingesta y vectorización de documentos, y por otro, la interfaz e interacción con el usuario. En esta nueva arquitectura se lograría la ingesta de documentos de distintas áreas y la habilitación de esta herramienta en nuevas áreas de la empresa en un futuro cercano. La nueva arquitectura que soportará la solución es la siguiente: 

Figura 5: Arquitectura desacoplada. En esta versión de la solución se separan los componentes para entregar más flexibilidad y poder conectar distintas interfaces de usuario además de separar la base de datos de la lógica.

Conclusión 

Podemos afirmar con confianza que la IA generativa tiene el potencial de transformar radicalmente la forma en que las empresas operan y prosperan en la era digital. 

A través de este proyecto piloto en la ACHS, hemos demostrado que la IA generativa no solo es teóricamente prometedora, sino que también les permite a las organizaciones que se han tecnologizado capturar su valor para potenciar el negocio y la operación. Hemos recibido un feedback muy positivo de los usuarios, hemos logrado automatizar una serie de tareas que solían ser tediosas y costosas en términos de tiempo y recursos. Esto no solo ha mejorado la eficiencia y la productividad, sino que también ha liberado a las personas para que se concentren en tareas más creativas y estratégicas. 

Además, la incorporación de inteligencia artificial ha permitido que la ACHS adopte tecnologías modernas y mantenga una ventaja competitiva en un mercado cada vez más digital. Hemos notado mejoras en la toma de decisiones basada en datos y en la capacidad para innovar rápidamente. 

Lo más importante es que hemos visto los beneficios tangibles de la IA generativa, no solo en términos de eficiencia y productividad, sino también en la satisfacción de los empleados, que disfrutan de una mayor autonomía y de ver a la organización adoptando tecnología de punta, situándose en una posición de vanguardia. 

Por último, hemos aprendido que la inteligencia artificial no es solamente una herramienta tecnológica, sino un facilitador de cambio y crecimiento. A medida que continuamos explorando sus posibilidades, en Brain Food esperamos ver aún más formas en que la IA puede ayudar a las empresas a prosperar en el futuro digital. Si quieres saber más detalles de este tipo de proyectos, o crees que una solución así podría traer beneficios para tu organización, no dudes en contactarnos. 

 

Citas 

Amatriain, X. (12 de Febrero de 2023). Arxiv. Obtenido de https://arxiv.org/pdf/2302.07730.pdf: https://arxiv.org/abs/2302.07730 

Ashish Vaswani, N. S. (24 de Diciembre de 2017). Arxiv. Obtenido de Arxiv: https://arxiv.org/abs/1706.03762 

Bhaimiya, S. (22 de Junio de 2023). Business Insider. Obtenido de Business Insider: https://businessinsider.mx/ia-generativa-valor-generacion-dinero-esconomia-global_negocios/