Zona de aterrizaje ligera de IA generativa de Azure

Aterrizaje ligero de IA generativa en Azure

La IA está en auge ahora, y algunos productos abusan mucho del tema de la IA; sin embargo, muchas empresas y productos están automatizando sus procesos utilizando esta tecnología. En el artículo, descubriremos productos de IA y construiremos una zona de aterrizaje de IA. Veamos las 3 principales empresas que se benefician de utilizar IA.

Github Copilot

El objetivo principal de Github Copilot es ayudar a los programadores proporcionando sugerencias de código y autocompletando líneas o bloques de código mientras escriben. Analizando inteligentemente el contexto y el código existente, acelera el proceso de codificación y mejora la productividad del desarrollador. Se convierte en un compañero invaluable para los desarrolladores a lo largo de su trayectoria de codificación, capaz de admitir varios lenguajes de programación y comprender patrones de código.

Neuraltext

Neuraltext se esfuerza por abarcar todo el flujo de trabajo de contenido, desde generar ideas hasta ejecutarlas, todo impulsado por IA. Es un redactor de textos basado en IA, herramienta de contenido SEO e investigación de palabras clave. Al aprovechar las capacidades de redacción de IA, puedes producir fácilmente textos convincentes para tus campañas, generando numerosas variaciones. Con una amplia colección de más de 50 plantillas pre-diseñadas para diversos propósitos, como anuncios de Facebook, ideas de eslóganes, secciones de blog y más, Neuraltext simplifica el proceso de creación de contenido.

Motum

Motum es el sistema operativo inteligente para la gestión operativa de flotas. Tiene reconocimiento de daños que utiliza visión por computadora y algoritmos de aprendizaje automático para detectar y evaluar daños a los vehículos de manera automática. Al analizar imágenes de los vehículos, el sistema de IA puede identificar con precisión abolladuras, rasguños, grietas y otros tipos de daños. Esta tecnología agiliza el proceso de inspección para reclamaciones de seguros, talleres de carrocería y evaluaciones de vehículos, ahorrando tiempo y mejorando la precisión en la evaluación del alcance de los daños.

¿Qué es una zona de aterrizaje en la nube?

Una zona de aterrizaje en la nube de IA es un marco que incluye servicios en la nube fundamentales, herramientas e infraestructura que forman la base para desarrollar e implementar soluciones de inteligencia artificial (IA).

¿Qué servicios de IA se incluyen en la zona de aterrizaje?

Azure AI Landing zone incluye los siguientes servicios de IA:

  • Azure Open AI: proporciona modelos y APIs de IA pre-construidos para tareas como reconocimiento de imágenes, procesamiento de lenguaje natural y análisis de sentimientos, lo que facilita que los desarrolladores incorporen funcionalidades de IA. Los servicios de IA de Azure también incluyen herramientas de aprendizaje automático y marcos para crear modelos personalizados y realizar análisis de datos.
  • Azure AI Services: un servicio que permite a las organizaciones crear experiencias más inmersivas, personalizadas e inteligentes para sus usuarios, impulsando la innovación y la eficiencia en diversas industrias. Los desarrolladores pueden aprovechar estas APIs pre-construidas para agregar características inteligentes a sus aplicaciones, como reconocimiento facial, comprensión del lenguaje y análisis de sentimientos, sin necesidad de tener un amplio conocimiento de IA.
  • Azure Bot Services: esta es una plataforma que Microsoft Azure proporciona y forma parte de los servicios de IA. Permite a los desarrolladores crear chatbots y agentes conversacionales para interactuar con los usuarios en varios canales, como chat web, Microsoft Teams, Skype, Telegram y otras plataformas.

Arquitectura

Comenzamos a integrar e implementar la zona de aterrizaje de IA de Azure en nuestro entorno. Tres cajas lógicas separan la zona de aterrizaje de IA:

  • Azure DevOps Pipelines
  • Módulos y entornos de Terraform
  • Recursos implementados en suscripciones de Azure

Podemos verlo en el siguiente diagrama.

Figura 1: Arquitectura de la Zona de Aterrizaje de IA (Autor: Boris Zaikin)

La arquitectura contiene canalizaciones YAML de CI/CD y módulos de Terraform para cada suscripción de Azure.

Contiene dos archivos YAML:

  • tf-provision-ci.yaml es la canalización principal que se basa en etapas. Reutiliza la canalización tf-provision-ci.jobs.yaml para cada entorno.
  • tf-provision-ci.jobs.yaml contiene el flujo de trabajo para implementar los módulos de Terraform.

tf-provision-ci.yaml – Contiene la configuración principal, variables y etapas: Desarrollo, Prueba y Producción; La canalización reutiliza tf-provision-ci.jobs.yaml en cada etapa proporcionando diferentes parámetros.

Después de haber agregado y ejecutado la canalización en AzureDevOps, podemos ver la siguiente estructura de etapas.

Figura 2: Interfaz de Etapas de Azure DevOps

Azure DevOps reconoce automáticamente las etapas en la canalización YAML principal y proporciona una interfaz adecuada.

Veamos el archivo tf-provision-ci.jobs.yaml.

tf-provision-ci.jobs.yaml — Contiene tareas de Terraform, incluyendo init, show, validate, plan y apply. A continuación, podemos ver el proceso de ejecución.

Figura 3: Interfaz de implementación de Azure DevOps Landing Zone

Como podemos ver, la ejecución de todos los pipelines se realiza correctamente, y cada tarea proporciona información detallada sobre el estado, la configuración y los errores de validación.

También, no debemos olvidar completar el Formulario de Solicitud de Acceso. Se tarda un par de días en recibir una respuesta. De lo contrario, el pipeline fallará con un mensaje de error de cuota.

Scripts y Módulos de Terraform

Al utilizar Terraform, podemos encapsular el código dentro de un módulo de Terraform, lo que permite su reutilización en varias secciones de nuestro código base. Esto elimina la necesidad de duplicar y replicar el mismo código en múltiples entornos, como el de puesta en escena y producción. En cambio, ambos entornos pueden aprovechar el código de un módulo compartido, promoviendo la reutilización de código y reduciendo la redundancia.

Un módulo de Terraform se puede definir como una colección de archivos de configuración de Terraform organizados dentro de una carpeta. Técnicamente, todas las configuraciones que has escrito hasta ahora se pueden considerar módulos, aunque pueden no ser complejos o reutilizables. Cuando implementas directamente un módulo ejecutando “apply” en él, se le llama un módulo raíz. Sin embargo, para explorar verdaderamente las capacidades de los módulos, debes crear módulos reutilizables destinados a ser utilizados dentro de otros módulos. Estos módulos reutilizables ofrecen una mayor flexibilidad y pueden mejorar significativamente tus implementaciones de infraestructura de Terraform. Veamos la estructura del proyecto a continuación.

Figura 4: Estructura del Proyecto Terraform con Módulos

La imagen de arriba muestra que todos los recursos se colocan en un directorio de Módulo. Cada Entorno tiene su propio directorio, archivo terraform index y variables donde todos los recursos se reutilizan en un archivo index.tf con diferentes parámetros que se encuentran dentro de archivos de variables.

Colocaremos todos los recursos en un archivo separado en el módulo, y todos los valores se colocarán en variables de Terraform. Esto permite gestionar el código rápidamente y reduce los valores codificados en el código. Además, la granularidad de los recursos permite un trabajo en equipo organizado con un control de versiones GIT u otro (menos conflictos de fusión).

Veamos el módulo open-ai tf.

Los parámetros esenciales de Open AI son:

  • prefix: Establece un prefijo para todos los recursos de Azure
  • domain: Especifica la parte del dominio del nombre de host utilizado para exponer el chatbot a través del Controlador de Ingreso
  • subdomain: Define la parte del subdominio del nombre de host utilizado para exponer el chatbot a través del Controlador de Ingreso
  • namespace: Especifica el espacio de nombres de la aplicación de carga de trabajo que accede al servicio Azure OpenAI
  • service_account_name: Especifica el nombre de la cuenta de servicio utilizada por la aplicación de carga de trabajo para acceder al servicio Azure OpenAI
  • vm_enabled: Un valor booleano que determina si se implementa una máquina virtual en la misma red virtual que el clúster AKS
  • location: Especifica la región (por ejemplo, oeste de Europa) para implementar los recursos de Azure
  • admin_group_object_ids: El parámetro de matriz contiene la lista de identificadores de objeto de grupo de Azure AD con acceso de rol de administrador al clúster.

Debemos prestar atención a los parámetros de subdominio. Los Servicios Cognitivos de Azure utilizan nombres de subdominio personalizados para cada recurso creado a través de herramientas de Azure como el portal de Azure, Azure Cloud Shell, Azure CLI, Bicep, Azure Resource Manager (ARM) o Terraform. Estos nombres de subdominio personalizados son únicos para cada recurso y difieren de los puntos de conexión regionales compartidos previamente entre los clientes en una región específica de Azure. Los nombres de subdominio personalizados son necesarios para habilitar características de autenticación como Azure Active Directory (Azure AD). Es esencial especificar un subdominio personalizado para nuestro servicio Azure OpenAI en algunos casos. Otros parámetros se pueden encontrar en “Crear un recurso e implementar un modelo utilizando Azure OpenAI”.

En el próximo artículo

  • Agregar un punto final privado de Az a la configuración: Un aspecto importante de Azure Open AI es su utilización de un punto final privado, que permite un control preciso sobre el acceso a los servicios de Azure Open AI. Con un punto final privado, puedes limitar el acceso a tus servicios solo a los recursos necesarios dentro de tu red virtual. Esto garantiza la seguridad de tus servicios y permite que los recursos autorizados los accedan según sea necesario.
  • Integrar OpenAI con Azure Kubernetes Services: La integración de los servicios de OpenAI con un clúster de Kubernetes permite una gestión eficiente, escalabilidad y alta disponibilidad de las aplicaciones de inteligencia artificial, lo que lo convierte en una opción ideal para ejecutar cargas de trabajo de IA en un entorno de producción.
  • Describir y comparar nuestra zona de aterrizaje liviana y la zona de aterrizaje de OpenAI de Microsoft.

Repositorio del Proyecto

  • GitHub – Boriszn/Azure-AI-LandingZone

Conclusión

Este artículo explora los productos de IA y la creación de una zona de aterrizaje de IA. Destacamos tres actores clave que se benefician de la IA: Reply.io para la participación en ventas, Github Copilot para ayuda en programación y Neuraltext para contenido impulsado por IA. Al pasar a las zonas de aterrizaje de IA, nos centramos en los servicios de IA de Azure, como Open AI, con modelos y APIs preconstruidos. Profundizamos en la arquitectura utilizando Terraform y tuberías de CI/CD. El enfoque modular de Terraform es vital, haciendo hincapié en la reutilización. Nos adentramos en los parámetros del módulo Open AI, especialmente en los subdominios personalizados para los Servicios Cognitivos de Azure. En esta era impulsada por la IA, la automatización y las decisiones inteligentes están revolucionando la tecnología.

We will continue to update Zepes; if you have any questions or suggestions, please contact us!

Share:

Was this article helpful?

93 out of 132 found this helpful

Discover more

Inteligencia Artificial

Conoce GlotLID Un modelo de Identificación de Lenguaje (LID) de código abierto que admite 1665 idiomas.

En tiempos recientes, cuando la comunicación a través de las fronteras nacionales está en constante crecimiento, la i...

Inteligencia Artificial

Computación de siguiente nivel NVIDIA y AMD ofrecen potentes estaciones de trabajo para acelerar la IA, el renderizado y la simulación.

Para permitir a profesionales de todo el mundo construir y ejecutar aplicaciones de inteligencia artificial desde sus...

Inteligencia Artificial

Intuitivo logra un mayor rendimiento mientras ahorra en costos de IA/ML utilizando AWS Inferentia y PyTorch

Este es un post de invitado escrito por José Benítez, fundador y director de AI y Mattias Ponchon, jefe de infraestru...

Inteligencia Artificial

Los camareros robots chinos alimentan la ansiedad coreana sobre la escasez de mano de obra

Los surcoreanos están ansiosos por la llegada de una oleada de camareros robots chinos baratos debido a la escasez de...

Inteligencia Artificial

Apoyando la sostenibilidad, la salud digital y el futuro del trabajo

La Iniciativa de Convergencia MIT y Accenture para la Industria y la Tecnología selecciona tres nuevos proyectos de i...