El camino de un ingeniero de soluciones hacia la programabilidad

 

¡Hola! Como ingeniero de soluciones que se enfoca en colaboración y experiencia del cliente, he aprendido que no existe una solución única para todos. Para lograr los mejores resultados comerciales, es necesario ofrecer soluciones digitales personalizadas a las necesidades de cada cliente. Afortunadamente, contamos con una amplia gama de aplicaciones SaaS y plataformas poderosas que proporcionan API abiertas, disponibles para aquellos con las habilidades para aprovecharlas. Con la motivación adecuada, las herramientas están disponibles para adoptar la automatización como base para crear casos de uso personalizados. Esta es la verdadera forma en la que podemos diferenciarnos en el mercado y brindar valor a nuestros clientes.

Mi interés en utilizar la automatización para integrar aplicaciones y optimizar flujos de trabajo fue el punto de partida de mi viaje hacia la programabilidad en red. Sabía que quería conectarme con una comunidad de personas con ideas afines que pudieran orientarme en mi inicio. Fue entonces cuando descubrí Cisco Devnet.

Iniciando con el aprendizaje en DevNet

Comencé por adquirir conocimientos básicos sobre las API: cómo funcionan, sus usos, cómo probarlas e integrarlas en otras aplicaciones. Las API RESTful tienen una amplia aplicación en el desarrollo web, permitiendo que las aplicaciones interactúen entre sí y compartan datos de forma estandarizada y escalable. Constituyen una forma flexible y eficiente de comunicación e integración entre sistemas diversos.

Para familiarizarme con las API, utilicé los Learning Labs disponibles en el portal para desarrolladores de Cisco DevNet. Dada mi experiencia con soluciones de colaboración, opté por la Ruta de aprendizaje de Webex: Comience ahora. Puedes acceder a esta ruta de aprendizaje y muchas más siguiendo este enlace. Este curso me guió en la instalación de las aplicaciones necesarias en mi PC para comenzar a trabajar con API y programación. Asimismo, me proporcionó las herramientas iniciales para llevar a cabo mis primeras pruebas con codificación y API.

Una vez que adquirí bases sólidas, mi siguiente paso consistió en crear un caso de uso y dar inicio a un proyecto de programabilidad "real". Opté por integrar Webex con ChatGPT utilizando las API de OpenAI. Los pilares fundamentales para la implementación de este proyecto fueron:

  • Bot de Webex
  • API de OpenAI
  • Middleware que ejecuta la lógica del bot

Tras aprender cómo crear un bot de Webex, me adentré en el universo de las API de OpenAI. Cualquiera puede crear una cuenta gratuita en OpenAI. (En el momento de redactar esta entrada, se recibe un crédito gratuito de $5,00, lo cual es suficiente para experimentar con sus API).

Adentrándome en los fundamentos de Python

A continuación, tuve que desarrollar la lógica para mi bot. Conversando con mi mentor, Julio Gómez, compartió conmigo un proyecto que había realizado para un caso similar, lo que me permitió reutilizar su código en Python. A través de la adquisición de conceptos básicos de Python y su funcionamiento, logré adaptar el código para emplearlo con mi bot de Webex y la API de OpenAI seleccionada para el desarrollo de mi bot de preguntas y respuestas basado en la experiencia de usuario de ChatGPT.

Para facilitar la adaptación del código, lo desglosé en bloques funcionales: recibir un mensaje de texto del bot de Webex, procesar el mensaje y enviarlo a las API de OpenAI, recibir la respuesta de OpenAI y devolverla al bot de Webex.

Superando otro desafío

Una vez que había implementado la lógica del bot en mi PC, necesitaba exponerla a Internet. La plataforma en la nube de Webex requiere que el bot sea accesible desde un punto final público. A través de Webhooks, el bot de Webex envía notificaciones como eventos al punto final suscrito al webhook, cada vez que hay una interacción entre el usuario y el bot.

Para lograrlo, generé un túnel entre mi PC local e Internet para hacer accesible públicamente el puerto en el cual mi bot escuchaba. Utilicé Ngrok, una herramienta popular para crear estos túneles. Con este servicio, se obtiene una URL que posibilita el acceso a la aplicación que se ejecuta en la PC local. Posteriormente, esta URL se utilizará para crear un webhook que permita al bot de Webex enviar notificaciones ante interacciones.

Cuando logré tener una aplicación funcional, fue momento de realizar las pruebas iniciales. Modifiqué el código según lo requerido para obtener los resultados deseados. El proceso fue tan simple como ajustar algunos parámetros en la carga JSON, asociados a las API de OpenAI. Aquí puedes consultar la documentación de las API de OpenAI que utilicé:

Finalmente, pude crear un bot de preguntas y respuestas en Webex aprovechando el LLM (Large Language Model) desarrollado por OpenAI. De este modo, los usuarios pueden formular preguntas a ChatGPT desde la aplicación Webex, como si estuvieran interactuando en la interfaz nativa de ChatGPT.

El diagrama siguiente representa una visión general de la arquitectura que construí. Puedes encontrar mi proyecto en este repositorio de GitHub.

Marcio

Las API han revolucionado la manera en que adaptamos experiencias e integramos aplicaciones. Aunque no soy desarrollador de software, conseguí alcanzar mi objetivo de construir un bot de preguntas y respuestas basado en tecnologías innovadoras como ChatGPT. Para mí, trabajar con API es como jugar con bloques de Lego. ¡Es realmente divertido!

Continuando mi trayecto en la programación

Entonces, surgió una nueva idea en mi mente: ¿sería posible crear el bot con poco código, o incluso sin código alguno? Me planteé el desafío de emplear una plataforma de orquestación que hiciera uso de un marco de bajo o nulo código para crear flujos de trabajo y automatización a través de API.

Cabe mencionar que en Cisco disponemos de nuestra propia plataforma de orquestación de bajo código. Se denomina Webex Connect y es una de las plataformas de comunicaciones como servicio (CPaaS) más destacadas en el mercado.

Webex Connect ofrece la posibilidad de desarrollar interacciones inteligentes, proactivas y personalizadas mediante canales digitales como WhatsApp, Apple Messages for Business, Google Chat y más.

Los mensajes empresariales a través de plataformas como Facebook Messenger, Instagram, SMS, entre otros, permiten orquestar completamente los viajes de los clientes, automatizando los procesos comerciales. Al abrir el lienzo de dibujo en la aplicación llamada Flow Designer, empecé a construir la lógica de mi Bot. Este proceso era tan sencillo como arrastrar y soltar cuadros, conectarlos con flechas y seguir el flujo, similar a jugar con Legos. La ventaja de utilizar esta plataforma radica en su simplicidad, ya que no es necesario lidiar con lenguajes de programación o codificación para mi caso de uso. Solo era necesario dominar las aplicaciones que deseaba conectar y aprender a utilizar sus API. Después de unas horas, mi bot ya estaba funcionando. En este caso, integré WhatsApp con ChatGPT. Lo que antes me llevaba días con Python, ahora se redujo a solo unas pocas horas al tratar con API, webhooks y analizar datos JSON. Webex Connect (CPaaS) ejecutó el código en segundo plano, simplificando todo el proyecto. El flujo final se puede apreciar en la siguiente imagen: [Imagen de Marcio] Plataformas de bajo código como CPaaS pueden desbloquear un sinfín de posibilidades con sus API, creando experiencias de usuario agradables. Espero que esta información haya sido de utilidad y quizás haya despertado tu interés en comenzar tu propio viaje hacia la programabilidad. Si es así, Cisco DevNet es un excelente punto de partida. ¡Buena suerte! Recursos Relacionados [Video: Unlocking the Future of Tech with Cisco DevNet | Snack Minute Ep. 133] Matricúlate en Cisco U. | Disfruta la Red de Aprendizaje de Cisco. Siga el aprendizaje y las certificaciones de Cisco en Twitter, Facebook, LinkedIn, Instagram y YouTube. Utilice #CiscoU y #CiscoCert para participar en la conversación. Lea a continuación: Pasante para la certificación profesional DevNet: mi viaje personal.

¿Nos apoyarás hoy?

Creemos que todos merecen entender el mundo en el que viven. Este conocimiento ayuda a crear mejores ciudadanos, vecinos, amigos y custodios de nuestro planeta. Producir periodismo explicativo y profundamente investigado requiere recursos. Puedes apoyar esta misión haciendo una donación económica a Gelipsis hoy. ¿Te sumarás a nosotros?

Suscríbete para recibir nuestro boletín:

Recent Articles

Related Stories

DEJA UN COMENTARIO

Por favor ingrese su comentario!
Por favor ingrese su nombre aquí