En este documento del Well-Architected Framework: perspectiva de IA y AA, se proporciona una descripción general de los principios y las recomendaciones para garantizar que tus implementaciones de IA y AA cumplan con los requisitos de seguridad y cumplimiento de tu organización. Las recomendaciones de este documento se alinean con el pilar de seguridad del Google Cloud framework de Well-Architected.
La implementación segura de cargas de trabajo de IA y AA es un requisito fundamental, en especial en entornos empresariales. Para cumplir con este requisito, debes adoptar un enfoque de seguridad integral que comience con la conceptualización inicial de tus soluciones de IA y AA, y se extienda al desarrollo, la implementación y las operaciones continuas. Google Cloud ofrece herramientas y servicios sólidos diseñados para ayudarte a proteger tus cargas de trabajo de IA y AA.
Las recomendaciones de este documento se correlacionan con los siguientes principios fundamentales:
- Define objetivos y requisitos claros
- Mantener la seguridad de los datos y evitar su pérdida o manipulación
- Mantén seguras y sólidas las canalizaciones de IA contra la manipulación
- Implementa en sistemas seguros con herramientas y artefactos seguros
- Verifica y protege las entradas
- Supervisa, evalúa y prepárate para responder a los resultados
Para obtener más información sobre la seguridad de la IA, también puedes consultar los siguientes recursos:
- El Secure AI Framework (SAIF) deGoogle Cloud proporciona una guía integral para crear sistemas de IA seguros y responsables. En él, se describen los principios clave y las prácticas recomendadas para abordar las consideraciones de seguridad y cumplimiento a lo largo del ciclo de vida de la IA.
- Para obtener más información sobre el enfoque de Google Clouden relación con la confianza en la IA, consulta nuestro centro de recursos de cumplimiento.
Define objetivos y requisitos claros
La seguridad eficaz de la IA y el AA es un componente fundamental de tu estrategia comercial general. Es más fácil integrar los controles de seguridad y cumplimiento necesarios al principio del proceso de diseño y desarrollo, en lugar de agregarlos después del desarrollo.
Desde el inicio del proceso de diseño y desarrollo, toma decisiones adecuadas para tu entorno de riesgo específico y tus prioridades comerciales específicas. Por ejemplo, las medidas de seguridad demasiado restrictivas pueden proteger los datos, pero también obstaculizar la innovación y ralentizar los ciclos de desarrollo. Sin embargo, la falta de seguridad puede provocar violaciones de la seguridad de los datos, daños a la reputación y pérdidas financieras, lo que perjudica los objetivos comerciales.
Para definir objetivos y requisitos claros, ten en cuenta las siguientes recomendaciones.
Alinear la seguridad de la IA y el AA con los objetivos comerciales
Para alinear tus iniciativas de seguridad de la IA y el AA con tus objetivos comerciales, usa un enfoque estratégico que integre la seguridad en cada etapa del ciclo de vida de la IA. Para seguir este enfoque, haz lo siguiente:
Define objetivos comerciales y requisitos de seguridad claros:
- Identifica los objetivos comerciales clave: Define objetivos comerciales claros que tus iniciativas de IA y AA estén diseñadas para alcanzar. Por ejemplo, tus objetivos podrían ser mejorar la experiencia del cliente, optimizar las operaciones o desarrollar nuevos productos.
- Traduce los objetivos en requisitos de seguridad: Cuando aclares tus objetivos comerciales, define requisitos de seguridad específicos para respaldarlos. Por ejemplo, tu objetivo podría ser usar la IA para personalizar las recomendaciones a los clientes. Para respaldar ese objetivo, tus requisitos de seguridad podrían ser proteger la privacidad de los datos de los clientes y evitar el acceso no autorizado a los algoritmos de recomendación.
Equilibra la seguridad con las necesidades de la empresa:
- Realiza evaluaciones de riesgos: Identifica las posibles amenazas y vulnerabilidades de seguridad en tus sistemas de IA.
- Prioriza las medidas de seguridad: Establece la prioridad de estas medidas de seguridad en función de su posible impacto en tus objetivos comerciales.
- Analiza los costos y beneficios: Asegúrate de invertir en las soluciones más eficaces. Considera los costos y beneficios de las diferentes medidas de seguridad.
- Aumentar las medidas de seguridad: Implementa las prácticas recomendadas de seguridad en una fase temprana del diseño y adapta tus medidas de seguridad a medida que cambien las necesidades comerciales y surjan amenazas.
Identifica posibles vectores de ataque y riesgos
Considera los posibles vectores de ataque que podrían afectar tus sistemas de IA, como el envenenamiento de datos, la inversión de modelos o los ataques adversarios. Supervisa y evalúa continuamente la superficie de ataque en evolución a medida que se desarrolla tu sistema de IA, y realiza un seguimiento de las nuevas amenazas y vulnerabilidades. Recuerda que los cambios en tus sistemas de IA también pueden introducir cambios en su superficie de ataque.
Para mitigar los posibles riesgos legales y de reputación, también debes abordar los requisitos de cumplimiento relacionados con la privacidad de los datos, el sesgo algorítmico y otras reglamentaciones pertinentes.
Para anticipar posibles amenazas y vulnerabilidades con anticipación, y tomar decisiones de diseño que mitiguen los riesgos, adopta un enfoque de seguridad por diseño.
Google Cloud proporciona un conjunto integral de herramientas y servicios para ayudarte a implementar un enfoque de seguridad integral:
- Administración de la postura de seguridad en la nube: Usa Security Command Center para identificar posibles vulnerabilidades y errores de configuración en tu infraestructura de IA.
- Puntuaciones de exposición a ataques y rutas de ataque: Refina y usa las puntuaciones de exposición a ataques y las rutas de ataque que genera Security Command Center.
- Google Threat Intelligence: Mantente al tanto de las nuevas amenazas y técnicas de ataque que surgen para atacar los sistemas de IA.
- Registro y supervisión: Haz un seguimiento del rendimiento y la seguridad de tus sistemas de IA, y detecta cualquier anomalía o actividad sospechosa. Realiza auditorías de seguridad periódicas para identificar y abordar posibles vulnerabilidades en tu infraestructura y modelos de IA.
- Administración de vulnerabilidades: Implementa un proceso de administración de vulnerabilidades para hacer un seguimiento de las vulnerabilidades de seguridad en tus sistemas de IA y corregirlas.
Para obtener más información, consulta Seguridad por diseño en Google y Implementa la seguridad por diseño.
Mantener la seguridad de los datos y evitar su pérdida o manipulación
Los datos son un recurso valioso y sensible que debe mantenerse seguro. La seguridad de los datos te ayuda a mantener la confianza de los usuarios, respaldar tus objetivos comerciales y cumplir con tus requisitos de cumplimiento.
Para proteger tus datos, ten en cuenta las siguientes recomendaciones.
Sigue los principios de minimización de datos
Para garantizar la privacidad de los datos, respeta el principio de minimización de datos. Para minimizar los datos, no recopiles, conserves ni uses datos que no sean estrictamente necesarios para tus objetivos comerciales. Cuando sea posible, usa datos sintéticos o completamente anonimizados.
La recopilación de datos puede ayudar a generar estadísticas y análisis empresariales, pero es fundamental ejercer discreción en el proceso de recopilación. Si recopilas información de identificación personal (PII) sobre tus clientes, revelas información sensible o creas sesgos o controversias, es posible que compiles modelos de AA sesgados.
Puedes usar Google Cloud funciones para mejorar la minimización y la privacidad de los datos en varios casos de uso:
- Para desidentificar tus datos y, al mismo tiempo, conservar su utilidad, aplica métodos de transformación como la seudonimización, la desidentificación y la generalización, como el agrupamiento. Para implementar estos métodos, puedes usar Sensitive Data Protection.
- Para enriquecer los datos y mitigar el posible sesgo, puedes usar un trabajo de etiquetado de datos de Vertex AI. El proceso de etiquetado de datos agrega etiquetas informativas y significativas a los datos sin procesar, lo que los transforma en datos de entrenamiento estructurados para los modelos de AA. El etiquetado de datos agrega especificidad a los datos y reduce la ambigüedad.
- Para proteger los recursos del acceso o la manipulación prolongados, usa las funciones de Cloud Storage para controlar los ciclos de vida de los datos.
Para conocer las prácticas recomendadas sobre cómo implementar la encriptación de datos, consulta Encriptación de datos en reposo y en tránsito en el Framework de Well-Architected.
Supervisa la recopilación, el almacenamiento y la transformación de datos
Los datos de entrenamiento de tu aplicación de IA representan los mayores riesgos de introducción de sesgos y filtración de datos. Para mantener el cumplimiento y administrar los datos en diferentes equipos, establece una capa de administración de datos para supervisar los flujos, las transformaciones y el acceso a los datos. Mantén registros de las actividades de acceso y manipulación de datos. Los registros te ayudan a auditar el acceso a los datos, detectar intentos de acceso no autorizados y evitar el acceso no deseado.
Puedes usar las funciones de Google Cloud para implementar estrategias de administración de datos:
- Para establecer una plataforma de administración de datos a nivel de la organización o del departamento, usa Dataplex Universal Catalog.
Una plataforma de administración de datos puede ayudarte a descubrir, administrar, supervisar y controlar de forma centralizada los artefactos de IA y datos en todas tus plataformas de datos. La plataforma de administración de datos también proporciona acceso a los usuarios de confianza. Con Dataplex Universal Catalog, puedes realizar las siguientes tareas:
- Administrar el linaje de datos BigQuery también puede proporcionar linaje a nivel de la columna.
- Administrar las verificaciones de calidad de los datos y los perfiles de datos
- Administrar el descubrimiento, la exploración y el procesamiento de datos en diferentes data marts
- Administrar metadatos de funciones y artefactos de modelos
- Crea un glosario empresarial para administrar los metadatos y establecer un vocabulario estandarizado.
- Enriquece los metadatos con contexto a través de aspectos y tipos de aspectos.
- Unifica la administración de datos en BigLake y en tablas de formato abierto, como Iceberg y Delta.
- Crea una malla de datos para descentralizar la propiedad de los datos entre los propietarios de datos de diferentes equipos o dominios. Esta práctica se adhiere a los principios de seguridad de los datos y puede ayudar a mejorar la accesibilidad de los datos y la eficiencia operativa.
- Inspecciona y envía los resultados de datos sensibles de BigQuery a Dataplex Universal Catalog.
- Para crear un lakehouse unificado y abierto que esté bien gobernado, integra tus data lakes y almacenes de datos con servicios de metastore administrados, como Dataproc Metastore y BigLake Metastore. Un lakehouse abierto usa formatos de tablas abiertos que son compatibles con diferentes motores de procesamiento de datos.
- Para programar la supervisión de atributos y grupos de atributos, usa Vertex AI Feature Store.
- Para analizar tus conjuntos de datos de Vertex AI a nivel de la organización, la carpeta o el proyecto, usa el Descubrimiento de datos sensibles para Vertex AI. También puedes analizar los perfiles de datos almacenados en BigQuery.
- Para capturar registros en tiempo real y recopilar métricas relacionadas con las canalizaciones de datos, usa Cloud Logging y Cloud Monitoring. Para recopilar registros de auditoría de las llamadas a la API, usa los registros de auditoría de Cloud. No registres PII ni datos confidenciales en experimentos ni en diferentes servidores de registro.
Implementa controles de acceso basados en roles con principios de privilegio mínimo
Implementa controles de acceso basados en roles (RBAC) para asignar diferentes niveles de acceso según los roles de los usuarios. Los usuarios deben tener solo los permisos mínimos necesarios para realizar las actividades de su rol. Asigna permisos según el principio de privilegio mínimo para que los usuarios solo tengan el acceso que necesitan, como sin acceso, solo lectura o escritura.
El RBAC con privilegio mínimo es importante para la seguridad cuando tu organización usa datos sensibles que residen en lagos de datos, en almacenes de atributos o en hiperparámetros para el entrenamiento de modelos. Esta práctica te ayuda a evitar el robo de datos, preservar la integridad del modelo y limitar la superficie de ataques o accidentes.
Para ayudarte a implementar estas estrategias de acceso, puedes usar las siguientesGoogle Cloud funciones:
Para implementar la granularidad del acceso, considera las siguientes opciones:
- Asigna los roles de IAM de diferentes productos a un usuario, un grupo o una cuenta de servicio para permitir un acceso detallado. Asigna estos roles según las necesidades de tu proyecto, los patrones de acceso o las etiquetas.
- Establece políticas de IAM con condiciones para administrar el acceso detallado a tus datos, modelos y configuraciones de modelos, como el código, la configuración de recursos y los hiperparámetros.
Explora el acceso detallado a nivel de la aplicación que te ayuda a proteger los datos sensibles que auditas y compartes fuera de tu equipo.
- Cloud Storage: Configura políticas de IAM en buckets y carpetas administradas.
- BigQuery: Usa roles y permisos de IAM para conjuntos de datos y recursos dentro de conjuntos de datos. También restringe el acceso a nivel de fila y columna en BigQuery.
Para limitar el acceso a ciertos recursos, puedes usar políticas de límite de acceso de las principales (PAB). También puedes usar Privileged Access Manager para controlar la elevación de privilegios temporales justo a tiempo para principales seleccionados. Más adelante, podrás ver los registros de auditoría de esta actividad de Privileged Access Manager.
Para restringir el acceso a los recursos según la dirección IP y los atributos del dispositivo del usuario final, puedes extender las políticas de acceso de Identity-Aware Proxy (IAP).
Para crear patrones de acceso para diferentes grupos de usuarios, puedes usar el control de acceso de Vertex AI con IAM para combinar los roles predefinidos o personalizados.
Para proteger las instancias de Vertex AI Workbench con controles de acceso adaptado al contexto, usa Access Context Manager y Chrome Enterprise Premium. Con este enfoque, el acceso se evalúa cada vez que un usuario se autentica en la instancia.
Implementa medidas de seguridad para el movimiento de datos
Implementa perímetros seguros y otras medidas, como la encriptación y las restricciones sobre el movimiento de datos. Estas medidas te ayudan a evitar la filtración y la pérdida de datos, lo que puede causar pérdidas financieras, daños a la reputación, responsabilidades legales y una interrupción de las operaciones comerciales.
Para evitar la pérdida y el robo de datos en Google Cloud, puedes usar una combinación de herramientas y servicios de seguridad.
Para implementar el cifrado, ten en cuenta lo siguiente:
- Para obtener más control sobre las claves de encriptación, usa claves de encriptación administradas por el cliente (CMEK) en Cloud KMS. Cuando usas CMEK, los siguientes servicios integrados en CMEK encriptan los datos en reposo por ti:
- Para proteger tus datos en Cloud Storage, usa la encriptación del servidor para almacenar tus CMEK. Si administras las CMEK en tus propios servidores, la encriptación del servidor puede ayudar a proteger tus CMEK y los datos asociados, incluso si se vulnera tu sistema de almacenamiento de CMEK.
- Para encriptar los datos en tránsito, usa HTTPS en todas las llamadas a las APIs de los servicios de IA y AA. Para aplicar HTTPS en tus aplicaciones y APIs, usa balanceadores de cargas de HTTPS.
Para obtener más prácticas recomendadas sobre cómo encriptar datos, consulta Encripta datos en reposo y en tránsito en el pilar de seguridad del Framework de Well-Architected.
Para implementar perímetros, ten en cuenta lo siguiente:
- Para crear un límite de seguridad alrededor de tus recursos de IA y AA, y evitar el robo de datos de tu nube privada virtual (VPC), usa los Controles del servicio de VPC para definir un perímetro de servicio. Incluye tus recursos de IA y AA, y los datos sensibles en el perímetro. Para controlar el flujo de datos, configura reglas de entrada y salida para tu perímetro.
- Para restringir el tráfico entrante y saliente a tus recursos de IA y AA, configura reglas de firewall. Implementa políticas que rechacen todo el tráfico de forma predeterminada y permitan de forma explícita solo el tráfico que cumpla con tus criterios. Para ver un ejemplo de política, consulta Ejemplo: Rechaza todas las conexiones externas, excepto los puertos específicos.
Para implementar restricciones en el movimiento de datos, ten en cuenta lo siguiente:
- Para compartir datos y escalar en los límites de privacidad en un entorno seguro, usa el uso compartido de BigQuery y las salas limpias de datos de BigQuery, que proporcionan un marco de seguridad y privacidad sólido.
- Para compartir datos directamente en destinos integrados desde paneles de inteligencia empresarial, usa Looker Action Hub, que proporciona un entorno seguro en la nube.
Protección contra el envenenamiento de datos
El envenenamiento de datos es un tipo de ciberataque en el que los atacantes insertan datos maliciosos en los conjuntos de datos de entrenamiento para manipular el comportamiento del modelo o degradar su rendimiento. Este ciberataque puede ser una amenaza grave para los sistemas de entrenamiento de AA. Para proteger la validez y la calidad de los datos, mantén prácticas que los resguarden. Este enfoque es fundamental para garantizar la coherencia, la confiabilidad y la integridad de tu modelo.
Para hacer un seguimiento del comportamiento incoherente, la transformación o el acceso inesperado a tus datos, configura un sistema de supervisión y alertas integral para las canalizaciones de datos y las canalizaciones de AA.
Las funciones deGoogle Cloud pueden ayudarte a implementar más protecciones contra el envenenamiento de datos:
Para validar la integridad de los datos, considera lo siguiente:
- Implementa verificaciones de validación de datos sólidas antes de usar los datos para el entrenamiento. Verificar los formatos, los rangos y las distribuciones de los datos Puedes usar las capacidades automáticas de calidad de los datos en Dataplex Universal Catalog.
- Usa Sensitive Data Protection con Model Armor para aprovechar las capacidades integrales de prevención de pérdida de datos. Para obtener más información, consulta Conceptos clave de Model Armor. Sensitive Data Protection con Model Armor te permite descubrir, clasificar y proteger datos sensibles, como la propiedad intelectual. Estas capacidades pueden ayudarte a evitar la exposición no autorizada de datos sensibles en las interacciones con LLMs.
- Para detectar anomalías en tus datos de entrenamiento que podrían indicar un envenenamiento de datos, usa la detección de anomalías en BigQuery con métodos estadísticos o modelos de AA.
Para prepararte para un entrenamiento sólido, haz lo siguiente:
- Emplea métodos de conjunto para reducir el impacto de los datos contaminados. Entrena varios modelos en diferentes subconjuntos de los datos con el ajuste de hiperparámetros.
- Usa técnicas de magnificación de datos para equilibrar la distribución de los datos en los conjuntos de datos. Este enfoque puede reducir el impacto del envenenamiento de datos y te permite agregar ejemplos adversariales.
Para incorporar la revisión humana de los datos de entrenamiento o los resultados del modelo, haz lo siguiente:
- Analiza las métricas de evaluación del modelo para detectar posibles sesgos, anomalías o comportamientos inesperados que podrían indicar envenenamiento de datos. Para obtener más información, consulta Evaluación de modelos en Vertex AI.
- Aprovecha la experiencia en el dominio para evaluar el modelo o la aplicación, y detectar patrones o datos sospechosos que los métodos automatizados podrían no detectar. Para obtener más información, consulta la descripción general del servicio de evaluación de IA generativa.
Para conocer las prácticas recomendadas sobre cómo crear plataformas de datos que se centren en la infraestructura y la seguridad de los datos, consulta el principio Implementa la seguridad desde el diseño en el Framework de Well-Architected.
Mantén las canalizaciones de IA seguras y protegidas contra la manipulación
Tu código de IA y AA, y las canalizaciones definidas por código son recursos fundamentales. El código no protegido puede manipularse, lo que puede provocar filtraciones de datos, incumplimiento de la normativa y la interrupción de actividades comerciales críticas. Mantener seguro tu código de IA y AA ayuda a garantizar la integridad y el valor de tus modelos y sus resultados.
Para mantener seguros el código y las canalizaciones de IA, ten en cuenta las siguientes recomendaciones.
Usa prácticas de codificación seguras
Para evitar vulnerabilidades, usa prácticas de codificación seguras cuando desarrolles tus modelos. Te recomendamos que implementes la validación de entrada y salida específica para la IA, administres todas tus dependencias de software y, de forma coherente, incorpores principios de codificación segura en tu desarrollo. Integra la seguridad en cada etapa del ciclo de vida de la IA, desde el preprocesamiento de datos hasta el código final de tu aplicación.
Para implementar una validación rigurosa, ten en cuenta lo siguiente:
Para evitar la manipulación del modelo o los exploits del sistema, valida y limpia las entradas y salidas en tu código.
- Usa Model Armor o LLMs ajustados para analizar automáticamente las instrucciones y respuestas en busca de riesgos comunes.
- Implementa la validación de datos en tus secuencias de comandos de transferencia y preprocesamiento de datos para los tipos, formatos y rangos de datos. En el caso de Vertex AI Pipelines o BigQuery, puedes usar Python para implementar esta validación de datos.
- Usar agentes de LLM asistentes de programación, como CodeMender, para mejorar la seguridad del código Mantén a una persona en el circuito para validar los cambios propuestos.
Para administrar y proteger los extremos de la API de tu modelo de IA, usa Apigee, que incluye funciones configurables, como la validación de solicitudes, el control de tráfico y la autenticación.
Para ayudar a mitigar el riesgo durante todo el ciclo de vida de la IA, puedes usar AI Protection para hacer lo siguiente:
- Descubre el inventario de IA en tu entorno.
- Evalúa el inventario en busca de posibles vulnerabilidades.
- Protege los recursos de IA con controles, políticas y protecciones.
- Administrar sistemas de IA con capacidades de detección, investigación y respuesta
Para proteger las dependencias de código y artefactos en tu canalización de CI/CD, ten en cuenta lo siguiente:
- Para abordar los riesgos que las dependencias de bibliotecas de código abierto pueden introducir en tu proyecto, usa Artifact Analysis con Artifact Registry para detectar vulnerabilidades conocidas. Usar y mantener las versiones aprobadas de las bibliotecas Almacena tus paquetes de AA personalizados y las dependencias verificadas en un repositorio privado de Artifact Registry.
- Para incorporar el análisis de dependencias en tus canalizaciones de MLOps de Cloud Build, usa la Autorización binaria. Aplica políticas que permitan implementaciones solo si las imágenes de contenedor de tu código pasan las verificaciones de seguridad.
- Para obtener información de seguridad sobre tu cadena de suministro de software, usa los paneles de la consola de Google Cloud que proporcionan detalles sobre fuentes, compilaciones, artefactos, implementaciones y tiempos de ejecución. Esta información incluye vulnerabilidades en artefactos de compilación, procedencia de la compilación y listas de dependencias de la lista de materiales de software (SBOM).
- Para evaluar el nivel de madurez de la seguridad de tu cadena de suministro de software, usa el framework de Niveles de cadena de suministro para artefactos de software (SLSA).
Para incorporar de forma coherente los principios de programación segura en cada etapa del desarrollo, ten en cuenta lo siguiente:
- Para evitar la exposición de datos sensibles a partir de interacciones con el modelo, usa el registro con Sensitive Data Protection. Cuando usas estos productos juntos, puedes controlar qué datos registran tus aplicaciones de IA y los componentes de la canalización, y ocultar los datos sensibles.
- Para implementar el principio de privilegio mínimo, asegúrate de que las cuentas de servicio que usas para tus trabajos personalizados, canalizaciones y modelos implementados de Vertex AI solo tengan los permisos de IAM mínimos requeridos. Para obtener más información, consulta Implementa controles de acceso basados en roles con principios de privilegio mínimo.
- Para proteger tus canalizaciones y artefactos de compilación, comprende las configuraciones de seguridad (VPC y Controles del servicio de VPC) en el entorno en el que se ejecuta tu código.
Protege las canalizaciones y los artefactos del modelo contra el acceso no autorizado
Tus artefactos y canalizaciones de modelos son propiedad intelectual, y sus datos de entrenamiento también contienen información patentada. Para proteger los pesos del modelo, los archivos y las configuraciones de implementación contra manipulaciones y vulnerabilidades, almacena estos artefactos y accede a ellos con mayor seguridad. Implementa diferentes niveles de acceso para cada artefacto según los roles y las necesidades de los usuarios.
Para proteger los artefactos de tu modelo, ten en cuenta lo siguiente:
- Para proteger los artefactos del modelo y otros archivos sensibles, encripta los datos con Cloud KMS. Esta encriptación ayuda a proteger los datos en reposo y en tránsito, incluso si el almacenamiento subyacente se ve comprometido.
- Para proteger el acceso a tus archivos, almacénalos en Cloud Storage y configura los controles de acceso.
- Para hacer un seguimiento de las configuraciones incorrectas o inadecuadas y de cualquier desviación de los estándares definidos, usa Security Command Center para configurar posturas de seguridad.
- Para habilitar el control de acceso detallado y el cifrado en reposo, almacena los artefactos de tu modelo en Vertex AI Model Registry. Para mayor seguridad, crea una firma digital para los paquetes y contenedores que se producen durante los procesos de compilación aprobados.
- Para aprovechar la seguridad de nivel empresarial de Google Cloud, usa los modelos disponibles en Model Garden. Model Garden proporciona los modelos propios de Google y ofrece modelos de terceros de socios destacados.
Para aplicar la administración central de todos los ciclos de vida de usuarios y grupos, y para aplicar el principio de privilegio mínimo, usa IAM.
- Crea y usa cuentas de servicio dedicadas con privilegios mínimos para tus canalizaciones de MLOps. Por ejemplo, la cuenta de servicio de una canalización de entrenamiento tiene permisos para leer datos solo de un bucket específico de Cloud Storage y para escribir artefactos del modelo en Model Registry.
- Usa las condiciones de IAM para aplicar el control de acceso condicional basado en atributos. Por ejemplo, una condición permite que una cuenta de servicio active una canalización de Vertex AI solo si la solicitud se origina en un activador de Cloud Build de confianza.
Para ayudar a proteger tus canalizaciones de implementación, ten en cuenta lo siguiente:
Para administrar las etapas de MLOps en los servicios y recursos de Google Cloud , usa Vertex AI Pipelines, que se puede integrar con otros servicios y proporcionar control de acceso de bajo nivel. Cuando vuelvas a ejecutar las canalizaciones, asegúrate de realizar las verificaciones de Vertex Explainable AI y de IA responsable antes de implementar los artefactos del modelo. Estas verificaciones pueden ayudarte a detectar o prevenir los siguientes problemas de seguridad:
- Cambios no autorizados, que pueden indicar manipulación del modelo
- Secuencias de comandos entre sitios (XSS), que pueden indicar imágenes de contenedor o dependencias comprometidas
- Extremos no seguros, que pueden indicar una infraestructura de servicio mal configurada
Para ayudar a proteger las interacciones del modelo durante la inferencia, usa extremos privados basados en Private Service Connect con contenedores prediseñados o contenedores personalizados. Crea firmas de modelos con un esquema de entrada y salida predefinido.
Para automatizar el seguimiento de los cambios de código, usa Git para la administración del código fuente y, luego, integra el control de versión con canalizaciones de CI/CD sólidas.
Para obtener más información, consulta Cómo proteger la canalización de IA.
Aplica el linaje y el seguimiento
Para ayudarte a cumplir con los requisitos de cumplimiento normativo que puedas tener, aplica la trazabilidad y el seguimiento de tus recursos de IA y AA. El linaje y el seguimiento de datos proporcionan registros de cambios extensos para los datos, los modelos y el código. La procedencia del modelo proporciona transparencia y responsabilidad a lo largo del ciclo de vida de la IA y el AA.
Para aplicar el linaje y el seguimiento de manera eficaz en Google Cloud, considera las siguientes herramientas y servicios:
- Para hacer un seguimiento del linaje de los modelos, los conjuntos de datos y los artefactos que se encriptan automáticamente en reposo, usa Vertex ML Metadata. Registra metadatos sobre las fuentes de datos, las transformaciones, los parámetros del modelo y los resultados del experimento.
- Para hacer un seguimiento del linaje de los artefactos de canalización de Vertex AI Pipelines y buscar recursos de modelos y conjuntos de datos, puedes usar el catálogo universal de Dataplex. Realiza un seguimiento de los artefactos de canalización individuales cuando quieras depurar, solucionar problemas o realizar un análisis de causa raíz. Para hacer un seguimiento de toda tu canalización de MLOps, incluido el linaje de los artefactos de canalización, usa Vertex ML Metadata. Vertex ML Metadata también te permite analizar los recursos y las ejecuciones. Model Registry aplica y administra las versiones de cada modelo que almacenas.
- Para hacer un seguimiento de las llamadas a la API y las acciones administrativas, habilita los registros de auditoría de Vertex AI. Analiza los registros de auditoría con Log Analytics para comprender quién accedió a los datos y los modelos, o los modificó, y cuándo lo hizo. También puedes enrutar registros a destinos de terceros.
Implementa en sistemas seguros con herramientas y artefactos seguros
Asegúrate de que tu código y tus modelos se ejecuten en un entorno seguro. Este entorno debe tener un sistema de control de acceso sólido y brindar garantías de seguridad para las herramientas y los artefactos que implementes.
Para implementar tu código en sistemas seguros, ten en cuenta las siguientes recomendaciones.
Entrena e implementa modelos en un entorno seguro
Para mantener la integridad, la confidencialidad y la disponibilidad del sistema para tus sistemas de IA y AA, implementa controles de acceso estrictos que impidan la manipulación no autorizada de los recursos. Esta defensa te ayuda a hacer lo siguiente:
- Mitigar la manipulación del modelo que podría producir resultados inesperados o contradictorios
- Proteger tus datos de entrenamiento contra incumplimientos de la privacidad
- Mantener el tiempo de actividad del servicio
- Mantener el cumplimiento de las reglamentaciones
- Generar confianza en los usuarios
Para entrenar tus modelos de AA en un entorno con mayor seguridad, usa servicios administrados en Google Cloud como Cloud Run, GKE y Dataproc. También puedes usar el entrenamiento sin servidores de Vertex AI.
En esta sección, se proporcionan recomendaciones para ayudarte a proteger aún más tu entorno de entrenamiento y de implementación.
Para ayudar a proteger tu entorno y tus perímetros, ten en cuenta lo siguiente:
Cuando implementes medidas de seguridad, como se describió anteriormente, ten en cuenta lo siguiente:
- Para aislar los entornos de entrenamiento y limitar el acceso, usa proyectos o VPCs dedicados para el entrenamiento.
- Para proteger el código y los datos sensibles durante la ejecución, usa VMs protegidas o Confidential Computing para las cargas de trabajo de entrenamiento.
- Para proteger tu infraestructura de red y controlar el acceso a los modelos implementados, usa VPC, firewalls y perímetros de seguridad.
Cuando usas Vertex AI Training, puedes usar los siguientes métodos para proteger tu infraestructura de procesamiento:
- Para entrenar trabajos personalizados que se comuniquen de forma privada con otros servicios Google Cloud autorizados y que no estén expuestos al tráfico público, configura una interfaz de Private Service Connect.
- Para aumentar la seguridad y reducir la latencia de la red en comparación con lo que obtienes con una dirección IP pública, usa una dirección IP privada para conectarte a tus trabajos de entrenamiento. Para obtener más información, consulta Usa una IP privada para el entrenamiento personalizado.
Cuando uses GKE o Cloud Run para configurar un entorno personalizado, considera las siguientes opciones:
- Para proteger tu clúster de GKE, usa las políticas de red, las políticas de seguridad de pods y los controles de acceso adecuados. Usa imágenes de contenedor verificadas y confiables para tus cargas de trabajo de entrenamiento. Para analizar imágenes de contenedores en busca de vulnerabilidades, usa Artifact Analysis.
- Para proteger tu entorno de los escapes de contenedores y otros ataques, implementa medidas de seguridad en el tiempo de ejecución para las funciones de Cloud Run. Para proteger aún más tu entorno, usa GKE Sandbox y el aislamiento de cargas de trabajo.
- Para proteger tus cargas de trabajo de GKE, sigue las prácticas recomendadas en la descripción general de seguridad de GKE.
- Para ayudarte a cumplir con tus requisitos de seguridad en Cloud Run, consulta la descripción general del diseño de seguridad.
Cuando uses Dataproc para el entrenamiento de modelos, sigue las prácticas recomendadas de seguridad de Dataproc.
Para ayudar a proteger tu implementación, ten en cuenta lo siguiente:
- Cuando implementes modelos, usa Model Registry. Si implementas modelos en contenedores, usa GKE Sandbox y Container-Optimized OS para mejorar la seguridad y aislar las cargas de trabajo. Restringe el acceso a los modelos de Model Garden según los roles y las responsabilidades de los usuarios.
- Para proteger las APIs de tu modelo, usa Apigee o API Gateway. Para evitar abusos, implementa claves de API, autenticación, autorización y límite de frecuencia. Para controlar el acceso a las APIs de modelos, usa claves de API y mecanismos de autenticación.
- Para ayudar a proteger el acceso a los modelos durante la predicción, usa Vertex AI Inference. Para evitar el robo de datos, usa perímetros de los Controles del servicio de VPC para proteger los extremos privados y controlar el acceso a los modelos subyacentes. Usas extremos privados para habilitar el acceso a los modelos dentro de una red de VPC. IAM no se aplica directamente al extremo privado, pero el servicio de destino usa IAM para administrar el acceso a los modelos. Para la predicción en línea, te recomendamos que uses Private Service Connect.
- Para hacer un seguimiento de las llamadas a la API relacionadas con la implementación de modelos, habilita los registros de auditoría de Cloud para Vertex AI. Las llamadas a la API pertinentes incluyen actividades como la creación de extremos, la implementación de modelos y las actualizaciones de configuración.
- Para extender la infraestructura a ubicaciones perimetrales, considera las soluciones de Google Distributed Cloud. Google Cloud Para una solución completamente desconectada, puedes usar Distributed Cloud aislado, que no requiere conectividad a Google Cloud.
- Para ayudar a estandarizar las implementaciones y garantizar el cumplimiento de los requisitos reglamentarios y de seguridad, usa Assured Workloads.
Sigue los lineamientos de SLSA para los artefactos de IA
Sigue los lineamientos estándar de los niveles de cadena de suministro para artefactos de software (SLSA) para tus artefactos específicos de IA, como modelos y paquetes de software.
SLSA es un framework de seguridad diseñado para ayudarte a mejorar la integridad de los artefactos de software y evitar la manipulación. Cuando sigues los lineamientos de SLSA, puedes mejorar la seguridad de tu canalización de IA y AA, y de los artefactos que produce la canalización. El cumplimiento de SLSA puede proporcionar los siguientes beneficios:
- Mayor confianza en tus artefactos de IA y AA: SLSA ayuda a garantizar que no se produzcan manipulaciones en tus modelos y paquetes de software. Los usuarios también pueden rastrear los modelos y los paquetes de software hasta su fuente, lo que aumenta su confianza en la integridad y la confiabilidad de los artefactos.
- Menor riesgo de ataques a la cadena de suministro: SLSA ayuda a mitigar el riesgo de ataques que aprovechan vulnerabilidades en la cadena de suministro de software, como los ataques que insertan código malicioso o que comprometen los procesos de compilación.
- Mejora de la posición de seguridad: SLSA te ayuda a fortalecer la posición de seguridad general de tus sistemas de IA y AA. Esta implementación puede ayudar a reducir el riesgo de ataques y proteger tus recursos valiosos.
Para implementar SLSA en tus artefactos de AA y ML en Google Cloud, haz lo siguiente:
- Comprende los niveles de SLSA: Familiarízate con los diferentes niveles de SLSA y sus requisitos. A medida que aumentan los niveles, también aumenta la integridad que proporcionan.
- Evalúa tu nivel actual: Evalúa tus prácticas actuales en comparación con el marco de SLSA para determinar tu nivel actual y las áreas que se pueden mejorar.
- Establece tu nivel objetivo: Determina el nivel de SLSA adecuado para alcanzar tu objetivo según tu tolerancia al riesgo, tus requisitos de seguridad y la criticidad de tus sistemas de AA y AA.
Implementa los requisitos de SLSA: Para alcanzar el nivel de SLSA objetivo, implementa los controles y las prácticas necesarios, que podrían incluir lo siguiente:
- Control de código fuente: Usa un sistema de control de versión como Git para hacer un seguimiento de los cambios en tu código y configuraciones.
- Proceso de compilación: Usa un servicio que te ayude a proteger tus compilaciones, como Cloud Build, y asegúrate de que tu proceso de compilación esté automatizado o basado en secuencias de comandos.
- Generación de procedencia: Genera metadatos de procedencia que capturan detalles sobre cómo se compilaron tus artefactos, incluido el proceso de compilación, el código fuente y las dependencias. Para obtener más información, consulta Realiza un seguimiento de Vertex ML Metadata y Realiza un seguimiento de las ejecuciones y artefactos.
- Firma de artefactos: Firma tus artefactos para verificar su autenticidad e integridad.
- Administración de vulnerabilidades: Analiza tus artefactos y dependencias en busca de vulnerabilidades de forma periódica. Usa herramientas como Artifact Analysis.
- Seguridad de la implementación: Implementa prácticas de implementación que ayuden a proteger tus sistemas, como las que se describen en este documento.
Mejora continua: Supervisa y mejora tu implementación de SLSA para abordar nuevas amenazas y vulnerabilidades, y esfuérzate por alcanzar niveles más altos de SLSA.
Usa imágenes de contenedor compiladas previamente validadas
Para evitar un único punto de falla en tus etapas de MLOps, aísla las tareas que requieren una administración de dependencias diferente en contenedores distintos. Por ejemplo, usa contenedores separados para las tareas de ingeniería de atributos, entrenamiento o ajuste, y las tareas de inferencia. Este enfoque también les brinda a los ingenieros de AA la flexibilidad necesaria para controlar y personalizar su entorno.
Para promover la coherencia de MLOps en toda tu organización, usa contenedores compilados previamente. Mantén un repositorio central de imágenes de plataformas base verificadas y confiables con las siguientes prácticas recomendadas:
- Mantén un equipo de plataforma centralizado en tu organización que cree y administre contenedores base estandarizados.
- Extiende las imágenes de contenedor compiladas previamente que Vertex AI proporciona específicamente para la IA y el AA. Administra las imágenes de contenedor en un repositorio central dentro de tu organización.
Vertex AI proporciona una variedad de contenedores de aprendizaje profundo compilados previamente para el entrenamiento y la inferencia, y también te permite usar contenedores personalizados. En el caso de los modelos más pequeños, puedes reducir la latencia de la inferencia si cargas los modelos en contenedores.
Para mejorar la seguridad de la administración de contenedores, considera las siguientes recomendaciones:
- Usa Artifact Registry para crear, almacenar y administrar repositorios de imágenes de contenedor con diferentes formatos. Artifact Registry controla el acceso con IAM y tiene funciones integradas de observabilidad y evaluación de vulnerabilidades. Artifact Registry te permite habilitar funciones de seguridad de contenedores, analizar imágenes de contenedores y detectar vulnerabilidades.
- Ejecuta pasos de integración continua y compila imágenes de contenedor con Cloud Build. En esta etapa, se pueden destacar los problemas de dependencia. Si deseas implementar solo las imágenes compiladas por Cloud Build, puedes usar la autorización binaria. Para ayudar a prevenir ataques a la cadena de suministro, implementa las imágenes compiladas por Cloud Build en Artifact Registry. Integra herramientas de pruebas automatizadas, como SonarQube, PyLint o OWASP ZAP.
- Usa una plataforma de contenedores como GKE o Cloud Run, que están optimizadas para GPU o TPU para cargas de trabajo de IA y AA. Considera las opciones de análisis de vulnerabilidades para los contenedores en clústeres de GKE.
Considera el uso de Confidential Computing para las GPUs
Para proteger los datos en uso, puedes usar Confidential Computing. Las medidas de seguridad convencionales protegen los datos en reposo y en tránsito, pero Confidential Computing encripta los datos durante el procesamiento. Cuando usas Confidential Computing para GPUs, proteges los datos de entrenamiento sensibles y los parámetros del modelo del acceso no autorizado. También puedes ayudar a evitar el acceso no autorizado de usuarios privilegiados de la nube o posibles atacantes que podrían obtener acceso a la infraestructura subyacente.
Para determinar si necesitas Confidential Computing para GPUs, considera la sensibilidad de los datos, los requisitos reglamentarios y los riesgos potenciales.
Si configuras la Confidential Computing, considera las siguientes opciones:
- Para las cargas de trabajo de IA y AA de uso general, usa instancias de VM confidenciales con GPU NVIDIA T4. Estas instancias de VM ofrecen encriptación basada en hardware de los datos en uso.
- Para las cargas de trabajo en contenedores, usa Confidential GKE Nodes. Estos nodos proporcionan un entorno seguro y aislado para tus Pods.
- Para asegurarte de que tu carga de trabajo se ejecute en un enclave seguro y genuino, verifica los informes de certificación que proporciona la Confidential VM.
- Para hacer un seguimiento del rendimiento, el uso de recursos y los eventos de seguridad, supervisa tus recursos de Confidential Computing y tus nodos de Confidential GKE con Monitoring y Logging.
Verifica y protege las entradas
Trata todas las entradas de tus sistemas de IA como no confiables, independientemente de si provienen de usuarios finales o de otros sistemas automatizados. Para ayudar a mantener seguros tus sistemas de IA y garantizar que funcionen según lo previsto, debes detectar y depurar los posibles vectores de ataque de forma anticipada.
Para verificar y proteger tus entradas, ten en cuenta las siguientes recomendaciones.
Implementa prácticas que ayuden a proteger los sistemas de IA generativa
Trata las instrucciones como un componente crítico de la aplicación que tiene la misma importancia para la seguridad que el código. Implementa una estrategia de defensa en profundidad que combine el diseño proactivo, la detección automatizada y la administración disciplinada del ciclo de vida.
Para proteger tus instrucciones de IA generativa, debes diseñarlas teniendo en cuenta la seguridad, revisarlas antes de usarlas y administrarlas durante todo su ciclo de vida.
Para mejorar la seguridad del diseño y la ingeniería de tus instrucciones, considera las siguientes prácticas:
- Estructura las instrucciones para que sean claras: Diseña y prueba todas tus instrucciones con las capacidades de administración de instrucciones de Vertex AI Studio. Las instrucciones deben tener una estructura clara y sin ambigüedades. Define un rol, incluye ejemplos con pocos intentos y proporciona instrucciones específicas y delimitadas. Estos métodos reducen el riesgo de que el modelo interprete erróneamente la entrada de un usuario de una manera que cree una vulnerabilidad de seguridad.
Prueba la solidez y la fundamentación de las entradas: Prueba todos tus sistemas de forma proactiva con entradas inesperadas, con formato incorrecto y maliciosas para evitar fallas o resultados no seguros. Usa pruebas de equipo rojo para simular ataques del mundo real. Automatiza tus pruebas de solidez como un paso estándar en tus canalizaciones de Vertex AI Pipelines. Puedes usar las siguientes técnicas de prueba:
- Pruebas de Fuzz
- Prueba directamente con PII, entradas sensibles y ataques de inyección de SQL.
- Analiza las entradas multimodales que pueden contener software malicioso o incumplir las políticas de instrucciones.
Implementa una defensa en capas: Usa múltiples defensas y nunca confíes en una sola medida defensiva. Por ejemplo, para una aplicación basada en la generación aumentada por recuperación (RAG), usa un LLM independiente para clasificar la intención del usuario entrante y verificar si hay patrones maliciosos. Luego, ese LLM puede pasar la solicitud al LLM principal más potente que genera la respuesta final.
Limpia y valida las entradas: Antes de incorporar entradas externas o proporcionadas por el usuario en una instrucción, filtra y valida todas las entradas en el código de tu aplicación. Esta validación es importante para ayudarte a evitar la inyección indirecta de instrucciones.
Para la detección automatizada de instrucciones y respuestas, ten en cuenta las siguientes prácticas:
- Usa servicios de seguridad integrales: Implementa un servicio de seguridad dedicado y que no dependa del modelo, como Model Armor, como una capa de protección obligatoria para tus LLM. Model Armor inspecciona las instrucciones y respuestas en busca de amenazas, como inyección de instrucciones, intentos de jailbreaking y contenido dañino. Para asegurarte de que tus modelos no filtren datos de entrenamiento sensibles ni propiedad intelectual en sus respuestas, usa la integración de Protección de datos sensibles con Model Armor. Para obtener más detalles, consulta Filtros de Model Armor.
- Supervisa y registra las interacciones: Mantén registros detallados de todas las instrucciones y respuestas de los extremos de tu modelo. Usa el registro para auditar estas interacciones, identificar patrones de uso inadecuado y detectar vectores de ataque que podrían surgir contra tus modelos implementados.
Para ayudar a proteger la administración del ciclo de vida de las instrucciones, ten en cuenta las siguientes prácticas:
- Implementa el control de versiones para las instrucciones: Trata todas tus instrucciones de producción como código de la aplicación. Usa un sistema de control de versión, como Git, para crear un historial completo de los cambios, aplicar estándares de colaboración y habilitar la reversión a versiones anteriores. Esta práctica fundamental de MLOps puede ayudarte a mantener sistemas de IA estables y seguros.
- Centraliza la administración de instrucciones: Usa un repositorio central para almacenar, administrar y, luego, implementar todas tus instrucciones versionadas. Esta estrategia exige coherencia en todos los entornos y permite actualizaciones en el tiempo de ejecución sin necesidad de volver a implementar la aplicación por completo.
- Realiza auditorías periódicas y pruebas de equipo rojo: Prueba las defensas de tu sistema de forma continua contra vulnerabilidades conocidas, como las que se enumeran en el OWASP Top 10 para aplicaciones de LLM. Como ingeniero de IA, debes ser proactivo y realizar pruebas de equipo rojo en tu propia aplicación para descubrir y corregir las debilidades antes de que un atacante pueda explotarlas.
Evita las consultas maliciosas a tus sistemas de IA
Junto con la autenticación y la autorización, que se analizaron anteriormente en este documento, puedes tomar medidas adicionales para proteger tus sistemas de IA contra entradas maliciosas. Debes preparar tus sistemas de IA para situaciones posteriores a la autenticación en las que los atacantes eluden los protocolos de autenticación y autorización, y luego intentan atacar el sistema de forma interna.
Para implementar una estrategia integral que pueda ayudar a proteger tu sistema de ataques posteriores a la autenticación, aplica los siguientes requisitos:
Capas de red y aplicación seguras: Establece una defensa de varias capas para todos tus recursos de IA.
- Para crear un perímetro de seguridad que evite el robo de datos de modelos del Registro de modelos o de datos sensibles de BigQuery, usa los Controles del servicio de VPC. Siempre usa el modo de ejecución de prueba para validar el impacto de un perímetro antes de aplicarlo.
- Para ayudar a proteger las herramientas basadas en la Web, como los notebooks, usa IAP.
- Para proteger todos los extremos de inferencia, usa Apigee para obtener seguridad y administración de nivel empresarial. También puedes usar API Gateway para una autenticación sencilla.
Supervisa las anomalías en los patrones de búsqueda: Por ejemplo, un atacante que sondea un sistema en busca de vulnerabilidades podría enviar miles de consultas secuenciales ligeramente diferentes. Marcar patrones de búsqueda anómalos que no reflejan el comportamiento normal de los usuarios
Supervisa el volumen de solicitudes: Un aumento repentino en el volumen de búsquedas indica claramente un ataque de denegación del servicio (DoS) o un ataque de robo de modelo, que es un intento de realizar ingeniería inversa en el modelo. Usa la limitación de frecuencia y la limitación para controlar el volumen de solicitudes de una sola dirección IP o usuario.
Supervisa y configura alertas para las anomalías geográficas y temporales: Establece un modelo de referencia para los patrones de acceso normales. Genera alertas sobre actividad repentina desde ubicaciones geográficas inusuales o en horarios extraños. Por ejemplo, un aumento masivo en los accesos desde un país nuevo a las 3 a.m.
Supervisa, evalúa y prepárate para responder a los resultados
Los sistemas de IA aportan valor porque producen resultados que aumentan, optimizan o automatizan la toma de decisiones humanas. Para mantener la integridad y la confiabilidad de tus sistemas y aplicaciones de IA, asegúrate de que los resultados sean seguros y estén dentro de los parámetros esperados. También necesitas un plan para responder ante incidentes.
Para mantener tus resultados, ten en cuenta las siguientes recomendaciones.
Evalúa el rendimiento del modelo con métricas y medidas de seguridad
Para garantizar que tus modelos de IA cumplan con los parámetros de referencia de rendimiento, los requisitos de seguridad y los estándares de equidad y cumplimiento, evalúalos de forma exhaustiva. Realiza evaluaciones antes de la implementación y, luego, sigue evaluando los modelos en producción de forma periódica. Para minimizar los riesgos y crear sistemas de IA confiables, implementa una estrategia de evaluación integral que combine métricas de rendimiento con evaluaciones de seguridad específicas de la IA.
Para evaluar la solidez y la postura de seguridad del modelo, ten en cuenta las siguientes recomendaciones:
Implementa la firma y verificación de modelos en tu canalización de MLOps.
- Para los modelos en contenedores, usa la Autorización Binaria para verificar las firmas.
- En el caso de los modelos que se implementan directamente en los extremos de Vertex AI, usa verificaciones personalizadas en tus secuencias de comandos de implementación para la verificación.
- Para cualquier modelo, usa Cloud Build para la firma de modelos.
Evalúa la capacidad de recuperación de tu modelo ante entradas inesperadas o adversarias.
- Para todos tus modelos, prueba si hay daños comunes en los datos y modificaciones potencialmente maliciosas. Para organizar estas pruebas, puedes usar el entrenamiento de Vertex AI o Vertex AI Pipelines.
- En el caso de los modelos críticos para la seguridad, realiza simulaciones de ataques adversarios para comprender las posibles vulnerabilidades.
- En el caso de los modelos implementados en contenedores, usa Artifact Analysis en Artifact Registry para analizar las imágenes base en busca de vulnerabilidades.
Usa Vertex AI Model Monitoring para detectar desvíos y sesgos en los modelos implementados. Luego, incorpora estas estadísticas a los ciclos de reevaluación o reentrenamiento.
Usa evaluaciones de modelos de Vertex AI como componente de canalización con Vertex AI Pipelines. Puedes ejecutar el componente de evaluación del modelo por sí solo o con otros componentes de canalización. Compara las versiones del modelo con las métricas y los conjuntos de datos que definiste. Registra los resultados de la evaluación en Vertex ML Metadata para el seguimiento y el linaje.
Usa el servicio de evaluación de IA generativa o crea tu propio servicio a partir de él para evaluar los modelos que elijas o implementar flujos de trabajo personalizados de evaluación humana.
Para evaluar la equidad, el sesgo, la explicabilidad y la facticidad, ten en cuenta las siguientes recomendaciones:
- Define medidas de equidad que coincidan con tus casos de uso y, luego, evalúa tus modelos para detectar posibles sesgos en diferentes segmentos de datos.
- Comprende qué atributos impulsan las predicciones del modelo para garantizar que los atributos y las predicciones resultantes se alineen con el conocimiento del dominio y los lineamientos éticos.
- Usa Vertex Explainable AI para obtener atribuciones de atributos para tus modelos.
- Usa el servicio de evaluación de IA generativa para calcular métricas. Durante la fase de verificación de la fuente de la prueba, la métrica de fundamentación del servicio verifica la facticidad en comparación con el texto fuente proporcionado.
- Habilita la fundamentación para la salida de tu modelo y, así, facilitar una segunda capa de verificación de fuentes a nivel del usuario.
- Revisa nuestros principios de la IA y adáptalos a tus aplicaciones de IA.
Supervisa los resultados de los modelos de IA y AA en producción
Supervisa continuamente tus modelos de IA y AA, y su infraestructura de asistencia en producción. Es importante identificar y diagnosticar rápidamente las degradaciones en la calidad o el rendimiento de los resultados del modelo, las vulnerabilidades de seguridad que surjan y las desviaciones de los mandatos de cumplimiento. Este monitoreo te ayuda a mantener la seguridad, la confiabilidad y la confianza del sistema.
Para supervisar los resultados del sistema de IA en busca de anomalías, amenazas y degradación de la calidad, ten en cuenta las siguientes recomendaciones:
- Usa Model Monitoring para supervisar los resultados de tu modelo y hacer un seguimiento de los cambios inesperados en las distribuciones de predicción o los aumentos repentinos en las predicciones del modelo con baja confianza. Supervisa activamente los resultados de tu modelo de IA generativa para detectar contenido generado que sea inseguro, sesgado, irrelevante o malicioso. También puedes usar Model Armor para analizar todos los resultados de tu modelo.
- Identificar patrones de error específicos, capturar indicadores de calidad o detectar resultados dañinos o que no cumplen con los requisitos a nivel de la aplicación Para encontrar estos problemas, usa la supervisión personalizada en los paneles de Monitoring y las métricas basadas en registros de Logging.
Para supervisar los resultados en busca de indicadores específicos de seguridad y cambios no autorizados, ten en cuenta las siguientes recomendaciones:
- Identifica los intentos de acceso no autorizados a los modelos de IA, los conjuntos de datos en Cloud Storage o BigQuery, o los componentes de la canalización de MLOps. En particular, identifica los cambios inesperados o no autorizados en los permisos de IAM para los recursos de IA. Para hacer un seguimiento de estas actividades y revisarlas en busca de patrones sospechosos, usa los registros de auditoría de actividad del administrador y los registros de auditoría de acceso a los datos en los registros de auditoría de Cloud. Integra los resultados de Security Command Center, que pueden marcar errores de configuración de seguridad y posibles amenazas relevantes para tus recursos de IA.
- Supervisa los resultados para detectar grandes volúmenes de solicitudes o solicitudes de fuentes sospechosas, lo que podría indicar intentos de aplicar ingeniería inversa a los modelos o de filtrar datos. También puedes usar Sensitive Data Protection para supervisar el robo de datos potencialmente sensibles.
- Integra los registros en tus operaciones de seguridad. Usa Google Security Operations para detectar, coordinar y responder a cualquier amenaza cibernética de tus sistemas de IA.
Para hacer un seguimiento del rendimiento y el estado operativo de la infraestructura que admite tus modelos de IA, ten en cuenta las siguientes recomendaciones:
- Identifica los problemas operativos que pueden afectar la prestación del servicio o el rendimiento del modelo.
- Supervisa los extremos de Vertex AI para detectar la latencia, las tasas de errores y los patrones de tráfico.
- Supervisar las canalizaciones de MLOps para detectar errores y el estado de ejecución
- Usa Monitoring, que proporciona métricas listas para usar. También puedes crear paneles personalizados para ayudarte a identificar problemas, como interrupciones de extremos o fallas en la canalización.
Implementar procedimientos de alerta y respuesta ante incidentes
Cuando identifiques posibles problemas de rendimiento, seguridad o cumplimiento, es fundamental que respondas de manera eficaz. Para garantizar que los equipos adecuados reciban notificaciones oportunas, implementa mecanismos de alerta sólidos. Establece y pon en funcionamiento procedimientos integrales de respuesta ante incidentes que tengan en cuenta la IA para administrar, contener y corregir estos problemas de manera eficiente.
Para establecer mecanismos de alerta sólidos para los problemas relacionados con la IA que identifiques, ten en cuenta las siguientes recomendaciones:
- Configura alertas prácticas para notificar a los equipos pertinentes, según las actividades de supervisión de tu plataforma. Por ejemplo, configura alertas para que se activen cuando Model Monitoring detecte anomalías significativas en el sesgo, la desviación o las predicciones. También puedes configurar alertas para que se activen cuando Model Armor o las reglas de supervisión personalizadas marquen entradas maliciosas o salidas inseguras.
- Define canales de notificación claros, que pueden incluir Slack, correo electrónico o SMS a través de integraciones de Pub/Sub. Personaliza los canales de notificación para las gravedades de tus alertas y los equipos responsables.
Desarrolla y pon en funcionamiento un plan de respuesta ante incidentes que tenga en cuenta la IA. Un plan de respuesta ante incidentes estructurado es fundamental para minimizar cualquier impacto potencial y garantizar la recuperación. Personaliza este plan para abordar los riesgos específicos de la IA, como la manipulación de modelos, las predicciones incorrectas debido a la desviación, la inyección de instrucciones o los resultados no seguros de los modelos generativos. Para crear un plan eficaz, incluye las siguientes fases clave:
Preparación: Identifica los activos y sus vulnerabilidades, desarrolla manuales y asegúrate de que tus equipos tengan los privilegios adecuados. Esta fase incluye las siguientes tareas:
- Identifica los activos de IA críticos, como los modelos, los conjuntos de datos y los recursos específicos de Vertex AI, como los extremos o las instancias de Vertex AI Feature Store.
- Identifica los posibles modos de falla o vectores de ataque de los activos.
Desarrolla guías específicas para incidentes relacionados con la IA que coincidan con el modelo de amenazas de tu organización. Por ejemplo, las guías pueden incluir lo siguiente:
- Es una reversión del modelo que usa el control de versiones en Model Registry.
- Canalización de reentrenamiento de emergencia en Vertex AI Training
- Aislamiento de una fuente de datos comprometida en BigQuery o Cloud Storage
Usa IAM para garantizar que los equipos de respuesta tengan el acceso de privilegio mínimo necesario a las herramientas que se requieren durante un incidente.
Identificación y clasificación: Usa las alertas configuradas para detectar y validar posibles incidentes. Establece criterios y umbrales claros para la forma en que tu organización investiga o declara un incidente relacionado con la IA. Para realizar investigaciones detalladas y recopilar evidencia, usa Logging para los registros de aplicaciones y servicios, y usa Registros de auditoría de Cloud para las actividades administrativas y los patrones de acceso a los datos. Los equipos de seguridad pueden usar Google SecOps para realizar análisis más detallados de la telemetría de seguridad.
Contención: Aísla los sistemas o componentes de IA afectados para evitar un mayor impacto o la robo de datos. Esta fase puede incluir las siguientes tareas:
- Inhabilita un extremo de Vertex AI problemático.
- Revoca permisos de IAM específicos.
- Actualiza las reglas de firewall o las políticas de Cloud Armor.
- Pausa una canalización de Vertex AI que no funciona correctamente.
Erradicación: Identifica y quita la causa raíz del incidente. Esta fase puede incluir las siguientes tareas:
- Aplica parches al código vulnerable en un contenedor de modelo personalizado.
- Quita las puertas traseras maliciosas identificadas de un modelo.
- Sanea los datos contaminados antes de iniciar un trabajo de reentrenamiento seguro en Vertex AI Training.
- Actualiza cualquier configuración no segura.
- Refinamos la lógica de validación de entrada para bloquear técnicas específicas de inserción de instrucciones.
Recuperación y nuevo restablecimiento seguro: Restablece los sistemas de IA afectados a un estado operativo seguro y correcto conocido. Esta fase puede incluir las siguientes tareas:
- Implementa una versión del modelo validada y confiable previamente desde Model Registry.
- Asegúrate de encontrar y aplicar todos los parches de seguridad para las vulnerabilidades que puedan estar presentes en tu código o sistema.
- Restablece los permisos de IAM según el principio de privilegio mínimo.
Actividad posterior al incidente y lecciones aprendidas: Después de resolver los incidentes significativos relacionados con la IA, realiza una revisión exhaustiva posterior al incidente. En esta revisión, participan todos los equipos pertinentes, como los de IA y AA, MLOps, seguridad y ciencia de datos. Comprende el ciclo de vida completo del incidente. Usa estas estadísticas para definir mejor el diseño del sistema de IA, actualizar los controles de seguridad, mejorar las configuraciones de supervisión y optimizar el plan de respuesta ante incidentes y los manuales de prácticas de la IA.
Integra la respuesta ante incidentes basada en IA con los marcos organizativos más amplios, como la administración de incidentes de TI y seguridad, para lograr un esfuerzo coordinado. Para alinear tu respuesta ante incidentes específicos de la IA con los marcos de trabajo de tu organización, considera lo siguiente:
- Derivación: Define rutas claras para derivar incidentes significativos relacionados con la IA al SOC central, a TI, al departamento legal o a las unidades de negocios pertinentes.
- Comunicación: Usa los canales organizacionales establecidos para todos los informes y las actualizaciones de incidentes internos y externos.
- Herramientas y procesos: Usa los sistemas existentes de administración de incidentes y de tickets empresariales para los incidentes relacionados con la IA y garantizar un seguimiento y una visibilidad coherentes.
- Colaboración: Define previamente los protocolos de colaboración entre los equipos de IA y AA, MLOps, ciencia de datos, seguridad, legal y cumplimiento para lograr respuestas eficaces ante incidentes relacionados con la IA.
Colaboradores
Autores:
- Kamilla Kurta | Ingeniera de atención al cliente especialista en IA generativa y AA
- Vidhi Jain | Ingeniera de Cloud, Analytics y AI
- Mohamed Fawzi | Líder de Seguridad y Cumplimiento para Benelux
- Filipe Gracio, PhD | Ingeniero de Atención al Cliente y especialista en IA/AA
Otros colaboradores:
- Lauren Anthony | Ingeniero de Atención al cliente y especialista en seguridad
- Daniel Lees | Arquitecto de Seguridad en la Nube
- John Bacon | Arquitecto de soluciones para socios
- Autor: Kumar Dhanagopal | Desarrollador de soluciones entre productos
- Marwan Al Shawi | Ingeniero de Atención al Cliente para Socios
- Mónica Carranza | Analista sénior de amenazas de IA generativa
- Tarun Sharma | Arquitecto principal
- Wade Holmes | Director de Soluciones Globales