“Esta herramienta te da superpoderes”: Cómo la IA ayuda a tres desarrolladores en América Latina a construir software más eficiente
Cuando estaba en sexto de primaria, Juan Mármol recibió un regalo que le cambió la vida. Su papá le regaló una serie de libros, entre ellos uno sobre inteligencia artificial (IA) y a partir de ese momento, comenzó su interés por la computación. Gracias a ese libro y a su recién adquirido gusto por las computadoras, decidió que estudiaría para convertirse en ingeniero en computación.
Su primer acercamiento a la IA fue con GW Basic, un dialecto de lenguaje de programación BASIC desarrollado por Microsoft. Después de licenciarse en el Instituto Tecnológico Autónomo de México (ITAM), Mármol realizó su tesis sobre IA y redes neuronales. Sus estudios de posgrado han estado relacionados también con la IA, neuro-computación, neuro-informática, estadística y ciencia de datos.
Hoy, Mármol tiene más de 25 años dentro de la industria de la tecnología y es científico de datos en jefe, desde hace siete años, en Business Data Evolution, partner de Microsoft, que se enfoca en ciencia de datos, análisis de información y creación de modelos estadísticos de IA con aprendizaje de máquina, para resolver las necesidades de sus clientes, que abarcan desde industrias financieras, aseguradoras, minoristas, educación, entre otras.
Para Mármol, la ciencia de los datos es una intersección de varias disciplinas: “Necesitas saber algo de matemáticas, de estadística, sobre desarrollo de software y sin duda, saber cómo manejar datos”. El desarrollo de software es esencial, dice Mármol, porque para poder resolver problemas y necesidades del negocio, es necesario que los experimentos sean reproducibles y para lograr esto, se necesita la automatización.
Con ese objetivo, en Business Data Evolution usan Azure Machine Learning para crear distintos modelos.
Esto les permite realizar cientos de pruebas y obtener resultados sobre cuál será el mejor algoritmo para utilizar, todo esto en poco tiempo. “Para desarrollar un modelo no hay una bala de plata, no sabes qué algoritmo generará los mejores resultados, depende de los datos y del problema a solucionar”, comenta Mármol, que también es profesor en su alma mater, el ITAM, donde da clases de aprendizaje de máquina, minería de datos, teoría del cerebro y neuro-informática.
En 2022 comenzaron a tener contacto con Azure OpenAI Service, se anotaron en junio y en septiembre obtuvieron el acceso para utilizarlo en diferentes proyectos. Mármol señala que una ventaja de usar las herramientas de Azure es que la información está protegida y los datos son confidenciales, lo que les permite sacar el máximo beneficio a estas herramientas.
Uno de los proyectos tiene que ver con la extracción de información de documentos de tipo jurídico, que se relaciona con la extracción automática de información de documentos de gran complejidad y con datos no estructurados. Son textos que hacen notarios, que no tienen una plantilla, y en los que cada notario aplica su estilo de escritura, por lo que es difícil generalizar; pero con Azure Open AI Service, Business Data Evolution menciona que fueron capaces de levantar el desempeño y aumentar la exactitud en la extracción de un 72% a un 93%, con posibilidad de incrementarla aún más.
El reto de desarrollar software
“Desarrollar software es un torbellino de emociones. Puedes amarlo con pasión, pero también puede despertar momentos de frustración. Sin embargo, cuando logras superar esos obstáculos y tus creaciones cobran vida, el amor por este campo se renueva y la recompensa es muy gratificante”, comenta Sergio Vargas, quien trabaja desde hace cinco años en la creación de productos y soluciones para analítica de texto (característica de servicios cognitivos para lenguaje que extrae, clasifica y reconoce texto en documentos), desde análisis de audio, reconocimiento de voz, transcripciones y análisis de sentimientos. En su empresa, Bigview, localizada en Bogotá, Colombia, y partner de Microsoft, han desarrollado herramientas para clientes de diversas industrias, enfocados en esas tecnologías, con el fin de optimizar operaciones, procesos y producción.
Cuando tenía 14 años, Vargas comenzó a programar con lenguaje C y, desde entonces, le surgió la inquietud por el código. “Mi formación fue empírica los primeros 15 años, y hasta hace poco terminé mi ingeniería en software en la academia” dice. Siempre estuvo presente en él la curiosidad de saber cómo interactúan las máquinas y cómo pueden automatizar procesos.
Cuando vio cómo funcionaba Encarta, una enciclopedia en CD, quiso hacer la biblioteca de su escuela más interactiva, un proyecto con el que comenzó a programar en lenguaje C, orientado a la implementación de sistemas operativos y muy popular para crear software y aplicaciones. Más adelante empezó a crear un entorno gráfico en Visual Basic y ahí le nació la idea de dedicarse a desarrollar software.
Después de completar la secundaria, en 2002 terminó una carrera técnica en sistemas, lo que le brindó las bases para su desarrollo académico y profesional. A lo largo de su trayectoria, ha estado involucrado en la programación de software, trabajando con tecnologías como .NET, Visual Basic y C++. También, ha tenido la oportunidad de utilizar estas herramientas principalmente en el entorno de desarrollo de Visual Studio. En una época desarrolló aplicaciones móviles para Windows Phone e incluso experimentó un poco con Cortana, a través del SDK, un kit de desarrollo de software, para que le respondiera a ciertas preguntas y hacer que la computadora reaccionara a interacciones de voz. En 2018 finalizó sus estudios profesionales, para consolidar su formación en el campo de la programación.
En la empresa donde trabaja Vargas, se apoyan en Azure Data Bricks y, de manera más reciente en Azure OpenAI Service. A principios de 2023 se enrolaron en la versión previa para conocer la tecnología, probarla y usarla para poder comenzar la migración de sus modelos. Desde que empezaron a usar Azure OpenAI Service, han podido ver mejoras en la eficacia después de automatizar tareas repetitivas, lo que a su vez aumenta la eficiencia a nivel de desarrollo de producto.
Además, utilizan otras capacidades dentro de la familia de Azure Cognitive Services, incluidas las transcripciones de reconocimiento de voz y para reconocimiento de texto o imagen.
En uno de sus proyectos, utilizaron Cognitive Services de Azure para generar una transcripción en tiempo real, durante el proceso de entrevistas que realiza una institución dedicada a las adopciones en Colombia, para que sea analizada por los psicólogos. Los modelos pre-entrenados les ayudaron a construir el proyecto, que después enriquecieron con sus propios modelos y, además, utilizaron lingüistas para que los apoyaran en el entrenamiento del modelo final.
“Hemos hecho muchos proyectos sociales en Bigview y es muy gratificante ver que el software que diseñas se usa para ayudar a que no haya tanta violencia o a ayudar a los niños”, menciona. A Vargas, que además ha sido Microsoft Certified Trainer por 13 años y tiene un gusto especial por la enseñanza, lo que más le apasiona es la construcción de software con fines de impacto social.
William Colen es un ingeniero en computación graduado de la Universidad de Sao Paulo a quien siempre atrajeron las computadoras. “Cuando era niño, pensaba que las computadoras eran algo mágico; cuando tuve mi primera computadora, quise conocer todo sobre ella”, comenta. Después de graduarse de la universidad en 2006, comenzó a trabajar en desarrollo de software, aunque en aquel momento no había muchas oportunidades en el área de la IA.
En 2010 el panorama cambió y Colen decidió que era buena idea regresar a la escuela y aprender a fondo sobre IA: decidió estudiar una maestría sobre procesamiento de lenguaje natural, rama de la IA que permite a las computadoras entender, interpretar y manipular el lenguaje humano.
Cuando comenzó a trabajar con procesamiento de lenguaje natural y con IA, entendió rápidamente que esto sería el futuro y que esta tecnología sería utilizada de manera más amplia en diferentes industrias.
De acuerdo con cifras de BBVA, la IA podría agregar hasta un punto porcentual a los índices de crecimiento anuales en toda América Latina para el año 2035 y en Take Blip, socio de Microsoft y empresa donde trabaja Colen, son conscientes de esto. “Invertimos en IA porque queremos que los clientes tengan una comunicación más natural con sus consumidores, tenemos proyectos con un enfoque de IA incluido desde el día uno”, menciona Colen.
En la empresa cuentan con 30 desarrolladores que trabajan en procesamiento de lenguaje natural, aprendizaje de máquina, ingeniería y ciencia de los datos, enfocados en productos innovadores como Blip Desk, una plataforma de comunicación que ayuda a automatizar la relación con los clientes y crear conversaciones personalizadas a través de IA. Para Colen, el propósito de la IA es hacer cosas que son difíciles de programar, cosas que los programadores no pueden resolver por sí mismos.
Alcanzar mayor eficiencia a través de la IA
En Take Blip, Azure OpenAI Service les cambió la forma en que trabajan, cuenta Colen. “Un proyecto podía tomar entre dos meses a un año en ser entregado, pero con Azure Open AI Service hemos podido desarrollar una función en nuestro producto en dos semanas. Una vez lista, hemos podido hacer que nuestros clientes usen esa función en uno o dos días”.
Han podido reducir de manera significativa el esfuerzo para construir funciones de procesamiento de lenguaje natural o de IA. En el equipo de Colen pueden codificar en poco tiempo. Y gracias a esa reducción de tiempos de codificación se pueden enfocar en cosas más estratégicas, en cosas que les interesan o que pueden tener un significado mayor para la empresa, como el desarrollo de prompts, el conjunto de instrucciones que permiten al modelo de IA ofrecer un resultado de salida y que influyen en su tono, estilo y calidad.
Uno de los proyectos que el equipo de Colen ha realizado con una institución financiera grande en Brasil, utilizó una solución basada en Azure OpenAI Service para apoyar al representante de servicio al cliente en ofrecer préstamos de nómina, pagada a través de un servicio de mensajes de texto. Al ver que el representante hablaba con varias personas sobre diferentes temas simultáneamente, los desarrolladores advirtieron que las respuestas no siempre eran claras o suficientes.
Analizaron las conversaciones y los datos del negocio y ofrecieron esta solución, con el objetivo de brindarles algunas respuestas que podrían utilizar para responder a sus clientes. Realizaron pruebas con dos grupos, uno de control que no usaba el copiloto y otro que sí lo utilizaba. El grupo que utilizó el copiloto tuvo un incremento del 117% en la tasa de conversión al ofrecer los préstamos de nómina.
Aprovechar los servicios de IA disponibles para mejorar el desarrollo
Para Juan Mármol, las soluciones de Microsoft AI ofrecen varios beneficios, como la optimización de tiempos, mejoras en el desempeño, la obtención de resultados más precisos y mayor facilidad en la implementación. “Microsoft nos permite hacer todo de punta a punta, desde el análisis inicial hasta la implementación, todo esto sin fricciones”, comenta.
“Tenemos que combinar distintos elementos para resolver un problema y Microsoft nos da el bati-cinturón para poder desarrollar la solución adecuada en el momento adecuado”, destaca Mármol al describir cómo aprovechan los diversos servicios cognitivos de Microsoft, como los de visión para el conteo de elementos donde utilizan la detección de objetos dentro de imágenes, además de transcripciones para pasar de audio a texto, traducciones del inglés al español o los servicios de geolocalización, que les permiten determinar el nivel socioeconómico de cada región del país.
En el caso de Vargas, que además es Instructor de teleinformática en Análisis y Diseño de Sistemas de Información (ADSI) en el SENA, los servicios de Microsoft pueden ser utilizados al instante y se pueden aprovechar los modelos pre-entrenados: “No hay que reinventar la rueda, ¿Para qué crear un modelo que te permita reconocer voz si ya hay servicios que lo hacen?”
A nivel de eficiencia y productividad, la IA de Microsoft les ayuda a automatizar muchas tareas repetitivas. El procesamiento de grandes conjuntos de datos es más sencillo al apoyarse en componentes que estén automatizados, además les permite un aumento en la eficiencia en el desarrollo de producción.
Para Colen, la IA de Microsoft está ahí, disponible para los desarrolladores, y es más fácil desarrollar con ella porque es un lenguaje natural. “La curva de aprendizaje es más baja, los desarrolladores en mi equipo codifican en poco tiempo, en dos semanas se desarrolla un software”, comenta.
Actualizarse o quedar obsoletos: La IA impulsa a los desarrolladores
En Latinoamérica existe más de 1 millón de desarrolladores de software, la mayoría de ellos reside en Brasil, México, Colombia y Argentina, según cifras de Statista. Para Colen, esta industria ha mantenido un crecimiento constante en Brasil pues muchas empresas necesitan desarrolladores pero, un problema que ha visto, es que las escuelas no brindan la educación necesaria.
“El entrenamiento se da en las empresas, en mi equipo hay una persona que no formaba parte de la industria y cuando entró a Take Blip, y después de recibir entrenamiento, se convirtió en una de las principales desarrolladoras”, comenta Colen, que también destaca que hay muchas oportunidades en el desarrollo de software, pues la IA está en boca de todas las empresas y todas quieren tener la oportunidad de utilizarla y aprovecharla.
Para Vargas, los desarrolladores en Colombia tienen el desafío de mantenerse actualizados de manera constante, dado que la tecnología cambia muy rápido y más la IA. “La profesión como programador de software ha tenido un crecimiento gigante, casi todo lo que queremos hacer lo puedes resolver con software”, comenta.
Dentro de Bigview han dado oportunidades a personas que son de otra rama, como un asesor bancario, que no tiene que ver con la programación y terminó programando para la empresa, y reflexiona que, “para convertirse en un buen programador la clave está en practicar y no dejar de escribir código”.
Juan Mármol comenta que esta tecnología va a cambiar todo, no solo para los desarrolladores, sino en muchos empleos y en especial, en el panorama laboral en México.
Cada vez hay más empleos disponibles en el campo de la IA y la cifra puede ir en aumento. Año con año ha aumentado la contratación en empleos relacionados con IA en América Latina, según cifras de la Organización para la Cooperación y el Desarrollo Económicos (OCDE).
Por esta razón, es importante mantenerse al día de las nuevas tecnologías que surgen en este campo, “En la actualidad, es como tener un asistente que le pasas el trabajo y te lo genera, pero hay muchas cosas en las que nos va a ayudar, y hay que aprovechar la oportunidad de los empleos que se abrirán en inteligencia artificial”, comentó Mármol.
¿Hacia dónde va la IA?
En un futuro próximo, la IA va a tener un impacto significativo en todas las industrias y en todas las áreas de la vida, según Vargas, que menciona que, en específico, en su trabajo, espera les ayude a construir software más rápido.
“La inteligencia artificial tiene muchas ventajas y posibilidades, Microsoft ha conseguido democratizarla y eso ha permitido que mucha gente la use y en el futuro más personas van a tener acceso a sus beneficios”, finaliza Mármol.