Perspectiva de la IA y el AA: confiabilidad

Last reviewed 2024-10-11 UTC

En este documento del framework de arquitectura: perspectiva de IA y AA, se proporciona una descripción general de los principios y las recomendaciones para diseñar y operar sistemas de IA y AA confiables en Google Cloud. En él, se explora cómo integrar la observabilidad y las prácticas de confiabilidad avanzadas en tus esquemas de arquitectura. Las recomendaciones de este documento se alinean con el pilar de confiabilidad del framework de arquitectura.

En el panorama de IA y AA en rápida evolución, los sistemas confiables son esenciales para asegurar la satisfacción del cliente y alcanzar los objetivos comerciales. Necesitas sistemas de IA y AA que sean sólidos, confiables y adaptables para satisfacer las demandas únicas del AA predictivo y la IA generativa. Para controlar las complejidades de las MLOps, desde el desarrollo hasta la implementación y la mejora continua, debes usar un enfoque en el que se priorice la confiabilidad. Google Cloud ofrece una infraestructura de IA específica que está alineada con los principios de la ingeniería de confiabilidad de sitios (SRE) y proporciona una base sólida para sistemas de IA y AA confiables.

Asegúrate de que la infraestructura sea escalable y tenga alta disponibilidad

Si diseñas una arquitectura para la escalabilidad y la disponibilidad, permites que tus aplicaciones manejen diferentes niveles de demanda sin interrupciones del servicio ni degradación del rendimiento. Esto significa que tus servicios de IA seguirán disponibles para los usuarios durante las interrupciones de la infraestructura y cuando el tráfico sea muy alto.

Ten en cuenta las siguientes recomendaciones:

  • Diseña tus sistemas de IA con capacidades de escalamiento automático y dinámico para controlar las fluctuaciones en la demanda. Esto ayuda a garantizar un rendimiento óptimo, incluso durante los aumentos repentinos de tráfico.
  • Administra los recursos de forma proactiva y anticipa las necesidades futuras mediante pruebas de carga y supervisión del rendimiento. Usa datos históricos y análisis predictivo para tomar decisiones fundamentadas sobre la asignación de recursos.
  • Diseña para la alta disponibilidad y la tolerancia a fallas adoptando los arquetipos de implementación multizona y multirregional en Google Cloud y, además, implementando la redundancia y la replicación.
  • Distribuye el tráfico entrante en varias instancias de tus servicios y extremos de IA y ML. El balanceo de cargas ayuda a evitar que se sobrecargue una instancia única y a garantizar un rendimiento y una disponibilidad coherentes.

Usa una arquitectura modular y con acoplamiento bajo

Para que tus sistemas de IA sean resilientes a fallas en componentes individuales, usa una arquitectura modular. Por ejemplo, diseña los componentes de procesamiento y validación de datos como módulos independientes. Cuando falla un componente en particular, la arquitectura modular ayuda a minimizar el tiempo de inactividad y permite que tus equipos desarrollen e implementen correcciones más rápido.

Ten en cuenta las siguientes recomendaciones:

  • Separa tu sistema de IA y AA en pequeños módulos o componentes independientes. Este enfoque promueve la reutilización del código, simplifica las pruebas y el mantenimiento, y te permite desarrollar e implementar componentes individuales de forma independiente.
  • Diseña los módulos con acoplamiento bajo con interfaces bien definidas. Este enfoque minimiza las dependencias y te permite realizar actualizaciones y cambios independientes sin afectar a todo el sistema.
  • Planifica la degradación elegante. Cuando falla un componente, las otras partes del sistema deben seguir proporcionando un nivel adecuado de funcionalidad.
  • Usa APIs para crear límites claros entre los módulos y ocultar los detalles de implementación a nivel del módulo. Este enfoque te permite actualizar o reemplazar componentes individuales sin afectar las interacciones con otras partes del sistema.

Crea una plataforma de MLOps automatizadas

Con una plataforma de MLOps automatizadas, las etapas y los resultados del ciclo de vida de tu modelo son más confiables. Cuando promueves la coherencia, la vinculación suelta y la modularidad, y expresas las operaciones y la infraestructura como código, quitas los pasos manuales frágiles y mantienes sistemas de IA y AA que son más sólidos y confiables.

Ten en cuenta las siguientes recomendaciones:

  • Automatiza el ciclo de vida del desarrollo de modelos, desde la preparación y validación de datos hasta el entrenamiento, la evaluación, la implementación y la supervisión de modelos.
  • Administra tu infraestructura como código (IaC). Este enfoque permite un control de versión eficiente, reversiones rápidas cuando sea necesario y implementaciones repetibles.
  • Valida que tus modelos se comporten como se espera con datos relevantes. Automatiza la supervisión del rendimiento de tus modelos y crea alertas apropiadas para resultados inesperados.
  • Valida las entradas y salidas de tus canalizaciones de IA y AA. Por ejemplo, valida los datos, las configuraciones, los argumentos de comandos, los archivos y las predicciones. Configura alertas para valores inesperados o no permitidos.
  • Adopta una estrategia de control de versiones administrada para los extremos de tu modelo. Este tipo de estrategia permite lanzamientos incrementales y una recuperación rápida en caso de problemas.

Mantén la confianza y el control mediante la administración de datos y modelos

La confiabilidad de los sistemas de IA y AA depende de las capacidades de confianza y gobernanza de tus datos y modelos. Los resultados de la IA pueden no cumplir con las expectativas de forma silenciosa. Por ejemplo, los resultados pueden ser coherentes de forma formal, pero ser incorrectos o no deseados. Si implementas la trazabilidad y una administración sólida, puedes asegurarte de que los resultados sean confiables.

Ten en cuenta las siguientes recomendaciones:

  • Usa un catálogo de datos y modelos para hacer un seguimiento de tus recursos y administrarlos de manera eficaz. Para facilitar el seguimiento y las auditorías, mantén un registro completo de los datos y las versiones de los modelos durante todo el ciclo de vida.
  • Implementa controles de acceso y registros de auditoría estrictos para proteger los datos y los modelos sensibles.
  • Aborda el problema fundamental del sesgo en la IA, en particular en las aplicaciones de IA generativa. Para generar confianza, busca la transparencia y la explicabilidad en los resultados del modelo.
  • Automatiza la generación de estadísticas de atributos e implementa la detección de anomalías para identificar de forma proactiva los problemas de datos. Para garantizar la confiabilidad del modelo, establece mecanismos para detectar y mitigar el impacto de los cambios en las distribuciones de datos.

Implementa prácticas holísticas de confiabilidad y observabilidad de IA y AA

Para mejorar continuamente tus operaciones de IA, debes definir objetivos de confiabilidad significativos y medir el progreso. La observabilidad es un elemento fundamental de los sistemas confiables. La observabilidad te permite administrar las operaciones en curso y los eventos críticos. Una observabilidad bien implementada te ayuda a compilar y mantener un servicio confiable para tus usuarios.

Ten en cuenta las siguientes recomendaciones:

  • Realiza un seguimiento de las métricas de infraestructura para los procesadores (CPU, GPU y TPU) y para otros recursos, como el uso de memoria, la latencia de red y el uso de disco. Realiza pruebas de carga y supervisión del rendimiento. Usa los resultados de las pruebas y las métricas de la supervisión para administrar el escalamiento y la capacidad de tus sistemas de IA y AA.
  • Establece objetivos de confiabilidad y realiza un seguimiento de las métricas de la aplicación. Mide métricas como la capacidad de procesamiento y latencia de las aplicaciones de IA que compilas. Supervisa los patrones de uso de tus aplicaciones y los extremos expuestos.
  • Establece métricas específicas del modelo, como indicadores de precisión o seguridad, para evaluar su confiabilidad. Haz un seguimiento de estas métricas a lo largo del tiempo para identificar cualquier desviación o degradación. Para obtener control de versión y una automatización eficientes, define las configuraciones de supervisión como código.
  • Define y realiza un seguimiento de las métricas a nivel de la empresa para comprender el impacto de tus modelos y la confiabilidad en los resultados comerciales. Para medir la confiabilidad de tu IA y tus servicios de aprendizaje automático, considera adoptar el enfoque de SRE y definir objetivos de nivel de servicio (SLO).

Colaboradores

Autores:

Otros colaboradores: