Hoy en día, la inteligencia artificial (IA) es un tema que está en boca de todos. Las empresas están explorando cómo aprovechar esta tecnología para mejorar sus procesos diarios, desde la automatización hasta la toma de decisiones. La IA está transformando la forma en que operan las empresas, y adaptarse a ella es una necesidad prioritaria para no quedar rezagados en un mundo que avanza y se vuelve más competitivo a un ritmo imposible de igualar. La adopción rápida de la IA es una obligación para mantenerse al nivel del mercado, así como una oportunidad para liderar.
En este blog, exploraremos cómo hemos implementado tres aplicaciones de IA, en el contexto de la experimentación: ConIA, una aplicación que se conecta a Confluence y usa un proceso de Recuperación Aumentada Generativa (RAG); IAFrame, un agente que interactúa con dataframes de pandas y usa GPT-4-mini; y QAIA, un proceso de QA manual que utiliza visión de GPT-4-mini para generar documentos Word personalizados.
Antes de explicar cómo funcionan nuestras aplicaciones en Akzio, me gustaría profundizar un poco en RAG y los agentes, que son dos técnicas clave para aprovechar las capacidades de los modelos de lenguaje.
En primer lugar, RAG (Retrieval Augmented Generation) es una técnica para mejorar la capacidad de los modelos de lenguaje al proporcionarles datos adicionales específicos. Los LLM (Large Language Models) como Gemini, LLaMA, Claude y GPT, por mencionar algunos, tienen la capacidad de “razonar” sobre varios temas, pero su conocimiento está limitado a datos públicos hasta una fecha concreta en la que fueron entrenados. Aquí es donde entra RAG, que permite agregar datos privados y actualizados para trabajar con ellos y “razonar” con estos nuevos datos.
Para entender mejor cómo funciona RAG, considera lo siguiente: en la mayoría de las empresas, existe un extenso repositorio de documentos internos que incluye manuales, informes de ventas y notas. Ahora, no puedes simplemente preguntar a tu chat de inteligencia artificial de confianza sobre estos datos privados porque, lamentablemente, no tiene información sobre ellos. Pero aquí es donde entra RAG. Aplicando esta técnica, puedes dar acceso a tu modelo de lenguaje a esos datos internos. Así, cuando le pidas algo, como elaborar un plan de proyecto utilizando los manuales disponibles, el modelo puede “razonar” sobre esos datos y ofrecerte respuestas basadas en la información precisa y actualizada de tus documentos. En esencia, RAG transforma un modelo de lenguaje general en una herramienta capaz de manejar tu conocimiento interno y ayudarte a crear lo que necesites con tus datos.
En segundo lugar, los agentes son otra técnica para aprovechar las capacidades de los LLM. La idea central de los agentes es utilizar un modelo para elegir o determinar qué acciones tomar y en qué orden. En pocas palabras, la IA “razona” cómo realizar una secuencia de acciones, en lugar de tener una secuencia de acciones predefinida y codificada.
Imagina que necesitas agregar un nuevo cliente a tu CRM favorito. Aunque el proceso completo no se puede automatizar debido a la necesidad de revisar detalles específicos manualmente, un agente puede simplificar gran parte del trabajo. Primero, le indicas al agente que quieres añadir un nuevo cliente y proporcionas los detalles necesarios, como nombre, correo electrónico, número de teléfono y dirección. El agente, utilizando la API del CRM, valida la información, crea un nuevo registro en el sistema, asigna etiquetas o categorías adecuadas y programa una tarea de seguimiento. Finalmente, el agente te confirma que el cliente ha sido añadido exitosamente y te proporciona un enlace al registro para que puedas revisarlo y hacer ajustes si es necesario. Así, el agente actúa como un asistente inteligente que maneja la integración entre tus instrucciones y el CRM, facilitando la gestión de clientes de manera eficiente.
Una vez entendidos estos conceptos de manera más clara, ahora podemos abordar con mayor profundidad el funcionamiento de nuestras tres aplicaciones en Akzio, explorando por qué fueron creadas y cómo solucionan problemas específicos que enfrentábamos.
ConIA: Esta aplicación se desarrolló para abordar la necesidad de comprender y extraer información útil de nuestra documentación interna, que incluye manuales de productos, procesos operativos y documentos de recursos humanos. Antes de ConIA, era un desafío encontrar rápidamente respuestas a preguntas específicas. Para solucionar este problema, utilizamos RAG, que permite que el modelo de lenguaje se nutra de nuestros datos internos, brindándole la capacidad de «razonar» sobre ellos.
ConIA emplea la API de OpenAI para procesar y entender preguntas en el contexto específico de nuestra empresa. Al integrar esta tecnología, podemos hacer consultas detalladas sobre cualquier aspecto de nuestra documentación. Por ejemplo, si necesitamos información sobre políticas de recursos humanos o detalles específicos sobre un producto, simplemente formulamos una pregunta, se recupera y analiza la información relevante de nuestra base de datos vectorial para proporcionar una respuesta contextualizada. Este enfoque no solo optimiza el acceso a la información, sino que también facilita la ejecución de tareas relacionadas con nuestra documentación, mejorando la eficiencia y la toma de decisiones dentro de la empresa.
IAFrame: Esta aplicación fue desarrollada para abordar la necesidad de analizar datos y obtener insights de manera más sencilla y accesible. Tradicionalmente, extraer y manipular datos requería conocimientos técnicos en herramientas como Excel o bibliotecas de Python como pandas. Por ejemplo, obtener una lista de clientes de una industria específica implicaba escribir código para filtrar y procesar los datos. IAFrame simplifica este proceso al permitir que las consultas se realicen en lenguaje natural, eliminando la barrera técnica.
El corazón de IAFrame es un agente que actúa como intermediario entre el usuario y los datos. Este agente entiende las solicitudes en lenguaje natural y traduce estas consultas a operaciones que pandas puede ejecutar. Por ejemplo, en lugar de escribir código para filtrar clientes por industria, el usuario puede simplemente preguntar: «¿Puedes mostrarme los clientes que pertenecen a la industria tecnológica?» El agente interpreta esta solicitud, ejecuta las operaciones necesarias utilizando pandas y devuelve los resultados.
Para lograr esto, IAFrame utiliza la API de OpenAI para procesar el lenguaje natural. Cuando un usuario hace una consulta, la IA analiza la solicitud, identifica las acciones necesarias y emplea la sintaxis de pandas para manipular los datos. El agente está programado para manejar una amplia gama de operaciones, desde filtrado y agregación hasta análisis más complejos, lo que permite a los usuarios obtener insights detallados sin necesidad de escribir una sola línea de código.
QAIA: Esta aplicación nació de la necesidad de uno de nuestros colegas de acelerar el proceso de pruebas QA manual y la documentación correspondiente. El proceso tradicional de pruebas QA puede ser tedioso y repetitivo, especialmente cuando se deben realizar múltiples pruebas. Imagina tener que tomar capturas de pantalla, escribir en un documento de Word, insertar las capturas y elaborar un informe detallado para cada prueba realizada. Este proceso no solo es agotador, sino que también consume mucho tiempo.
Para solucionar este problema, decidimos aplicar inteligencia artificial utilizando la potencia de GPT-4-mini, que tiene la capacidad de procesar imágenes. Nuestro enfoque consiste en permitir que los usuarios suban múltiples imágenes capturadas durante el proceso de pruebas. Con un prompt, el usuario proporciona el contexto y la descripción de la tarea. La IA analiza estas imágenes junto con la información proporcionada en el prompt y genera un JSON que contiene un resumen detallado de las imágenes y el contexto de la prueba.
Este JSON se utiliza en un segundo proceso que usa un template de Word. Este template actúa como un formato estándar para los informes de pruebas. La información resumida y las imágenes se insertan automáticamente en el template, generando un documento de prueba completo y bien organizado. Este enfoque no solo ahorra tiempo, sino que también garantiza que los informes sean consistentes.
QAIA transforma un proceso manual en una tarea mucho más manejable. Al automatizar la generación de documentos de prueba, ayudamos a nuestros colegas a reducir su carga de trabajo y a enfocarse en tareas más críticas y creativas. Con QAIA, el proceso de documentación de pruebas QA es más rápido, lo que mejora la productividad del equipo.
Con estas aplicaciones, Akzio está impulsando la innovación al implementar tecnologías de inteligencia artificial para optimizar sus operaciones y mantenerse competitivo en el mercado. Con aplicaciones como ConIA, IAFrame y QAIA, estamos transformando la forma en que gestionamos nuestra documentación, analizamos datos y llevamos a cabo pruebas de calidad. Estas soluciones no solo nos permiten automatizar tareas, sino que también mejoran la calidad de nuestros procesos, adoptando la IA para impulsar la productividad y la toma de decisiones informadas.
Por último, me gustaría dejar una reflexión: la inteligencia artificial, aunque poderosa, es solo una herramienta; nosotros somos quienes decidimos cómo utilizarla y qué esperamos de ella. Al adoptar la IA, es crucial mantener un ojo crítico y revisar el trabajo generado por la IA, asegurándonos de que cumpla con nuestros estándares y expectativas. En última instancia, la combinación de inteligencia humana y artificial es lo que nos permitirá alcanzar nuevos niveles de éxito y liderazgo en el mercado.
- Generación de Contenido Personalizado: Contenido impulsado por IA utilizando datos propios para crear material altamente personalizado.
- Chatbots Q&A: Chatbots Q&A potenciados por IA proporcionan una experiencia de usuario mejorada al interactuar con los clientes o usuarios.
- Integración de IA en Procesos QA: La integración de IA en procesos QA transforma la forma en que se gestionan y ejecutan las pruebas de software.
Nicolás Masuda, Ingeniero de Software