Infraestructura para la IA: las ventajas de los Microservicios



Infraestructura para la IA

La experiencia de un desarrollador confirma que las arquitecturas basadas en microservicios son preferibles al implementar una infraestructura de AI

Hacer una infraestructura de software para una aplicación o un servicio conectado a una inteligencia artificial no es fácil. En comparación con hace unos años, las opciones de desarrollo y los marcos son considerablemente más numerosos y el sector está mejorando constantemente. Sin embargo, hay algunas situaciones para evaluar al iniciar un proyecto similar. Hoy queremos ofrecerle la experiencia de MacRae Linton, quien ha desarrollado una infraestructura de AI para una startup, acumulando una experiencia considerable en este sentido.

Durante sus estudios, Linton leyó a menudo que una construcción apresurada trae consecuencias negativas, pero a menudo los equipos con los que trabajaba juntos presionaban por lanzamientos rápidos y un cambio rápido en la producción. Esto obviamente conduce a problemas que afectan al consumidor final, este último a menudo se convierte en un probador beta involuntario. Durante la implementación de la solicitud de infraestructura de AI, la puesta en marcha que le había dado a la administración todavía estaba haciendo una investigación de mercado para averiguar cuáles eran los usuarios objetivo.

De este modo, Linton ha creado una solución que podría ser escalable de inmediato, por el contrario, en este mercado, cada vez se presentan prototipos sin funciones y tienen como objetivo el rendimiento para cumplir con los plazos ajustados.

¿Qué es exactamente lo que necesitas para construir una infraestructura de IA eficiente? Linton ha elegido trabajar con herramientas modernas y distribuir todo con Kubernetes en Google Cloud. Esto se debe a que es un servicio extremadamente versátil que no compromete la capacidad de escalar usando el mismo software durante las fases de desarrollo. Además, estas herramientas ofrecen a los desarrolladores la capacidad de cambiar rápidamente la estructura del proyecto, de la compilación a la prueba, a la producción.

Linton señaló que la mayoría de las empresas comienzan con una estructura "monolítica", pensando en las necesidades a largo plazo, pero en la mayoría de los casos se necesita una arquitectura de microservicio. Este entorno garantiza que puede gestionar con el tiempo un flujo de trabajo cada vez más intenso.

Otro elemento señalado por Linton es que a menudo hay discrepancias entre los entornos de prueba y producción, estas diferencias causan problemas, especialmente cuando se trata de proyectos que se centran en los datos. Si los expertos en inteligencia artificial usan un conjunto de herramientas para diseñar y desarrollar algoritmos, pero los ingenieros de software usan otras herramientas para la producción, corren el riesgo de un circuito de retroalimentación y de errores debidos a una conversión deficiente.

En una arquitectura de microservicios, siempre se garantiza que si un investigador desarrolla, por ejemplo, un algoritmo en R, el ingeniero de software tendrá que convertirlo y distribuirlo en un servicio realizado en R, para que se ejecute sin problemas en la producción.

El desarrollo y la distribución de un algoritmo con las mismas herramientas ahorra tiempo y dinero. Además, cuanto más largo sea el problema y el daño, será para que los clientes resuelvan un problema más relevante. También por esta razón, Linton ha optado por utilizar Kubernetes que permite construir infraestructuras sin importar el tamaño.

Linton recomienda informar siempre a los problemas de los clientes las diversas opciones de desarrollo, sin ser arrastrado por plazos demasiado opresivos o proyectos ineficientes. Las empresas generalmente presionan para que los tiempos de desarrollo sean rápidos, porque el mercado está cambiando constantemente. Sin embargo, la construcción de una arquitectura escalable presenta mayores ventajas que el sistema clásico de madrugadores, por lo que entender esto es de vital importancia para garantizar la longevidad del proyecto y, por supuesto, para garantizar una experiencia de usuario óptima.

Comentarios

Entradas Populares

IoT y Blockchain: ¿un futuro en interoperabilidad?

IoT: factores clave para invertir en el sector