Développement d’applications et de fonctionnalités d’IA générative responsable sur Windows
Ce document fournit une vue d’ensemble des pratiques de développement responsable recommandées à utiliser lorsque vous créez des applications et des fonctionnalités sur Windows avec l’intelligence artificielle générative.
Recommandations en matière de développement responsable d’applications et de fonctionnalités d’IA génératives sur Windows
Chaque équipe chez Microsoft suit les principes et pratiques fondamentaux pour créer et expédier l’IA de manière responsable, y compris Windows. Vous pouvez en savoir plus sur l’approche de Microsoft en matière de développement responsable dans le rapport de transparence de l’IA responsable Microsoft. Windows suit les piliers fondamentaux du développement RAI (gouverner, mapper, mesurer et gérer) qui sont alignés sur le NIST AI Risk Management Framework (Infrastructure de gestion des risques de l’IA du National Institute for Standards and Technology).
Les normes constituent la base des processus de gouvernance et de conformité. Microsoft a développé sa propre norme d’IA responsable, y compris six principes que vous pouvez utiliser comme point de départ pour développer vos recommandations pour l’IA responsable. Nous vous recommandons de créer des principes d’IA dans votre cycle de vie de développement de bout en bout, ainsi que dans vos processus et flux de travail pour la conformité aux lois et réglementations sur la confidentialité, la sécurité et l’IA responsable. Cela va de l’évaluation anticipée de chaque fonctionnalité d’IA, à l’aide d’outils tels que la liste de contrôle de l’équité de l’IA et les recommandations pour l’interaction entre l’homme et l’IA - Microsoft Research, à la surveillance et à l’examen des points de référence, des tests et des processus d’IA à l’aide d’outils tels qu’une carte de performance de l’IA responsable, en passant par la documentation publique sur les capacités et les limitations de vos fonctionnalités d’IA et la divulgation et les contrôles des utilisateurs -- avis, consentement, informations sur la collecte et le traitement des données, etc. -- conformément aux lois sur la confidentialité, aux exigences réglementaires et aux stratégies applicables.
Les pratiques recommandées pour identifier les risques sont les suivantes :
Red-teaming : le terme Red Teaming a historiquement décrit les attaques contradictoires systématiques pour tester les failles de sécurité. Avec l’essor des grands modèles de langage (LLM), le terme s’est étendu au-delà de la cybersécurité classique. Il a évolué dans l’usage courant pour décrire de nombreux genres de sondages, de tests et d’attaques des systèmes IA. Avec les modèles LLM, l’utilisation bénigne et contradictoire peut produire des sorties potentiellement dangereuses, qui peuvent prendre de nombreuses formes, y compris du contenu nuisible tel qu’un discours de haine, une incitation à la violence ou une la glorification de la violence, ou du contenu sexuel.
Évaluation du modèle : outre le test de bout en bout, il est également important d’évaluer le modèle lui-même.
Carte de modèles : pour les modèles disponibles publiquement, tels que ceux sur HuggingFace, vous pouvez consulter la carte de modèle de chaque modèle comme référence pratique pour comprendre si un modèle est celui qui convient à votre cas d’utilisation. En savoir plus sur les cartes de modèles.
Tests manuels : les humains effectuant des tests pas à pas sans script sont un composant important de l’évaluation du modèle qui prend en charge…
La mesure de la progression sur un petit ensemble de problèmes prioritaires. Lors de l’atténuation de dommages spécifiques, il est souvent plus productif de continuer à vérifier manuellement la progression sur un petit jeu de données jusqu’à ce que le dommage ne soit plus constaté avant de passer à la mesure automatisée.
Définition et reporting d’indicateurs de performance jusqu’à ce que la mesure automatisée soit suffisamment fiable pour être utilisée seule.
Vérification ponctuelle périodique pour mesurer la qualité de la mesure automatique.
Test automatisé : le test exécuté automatiquement est également un composant important de l’évaluation du modèle qui prend en charge…
la mesure à grande échelle avec une couverture accrue pour fournir des résultats plus complets ;
la mesure en cours pour surveiller toute régression au fur et à mesure de l’évolution du système, de l’utilisation et des préventions.
Sélection du modèle : sélectionnez un modèle adapté à votre objectif et formez-vous en vue de comprendre ses capacités, ses limitations et ses défis potentiels en matière de sécurité. Lors du test de votre modèle, assurez-vous qu’il produit des résultats appropriés à votre utilisation. Pour commencer, les destinations pour les sources de modèle Microsoft (et non-Microsoft/open source) sont les suivantes :
Pratiques recommandées :
Affecter un Content Moderator : Content Moderator analyse le contenu du texte, des images et des vidéos pour vérifier qu’ils ne comportent pas d’éléments potentiellement choquants, dangereux ou indésirables. En savoir plus : Présentation de Content Moderator (formation Microsoft Learn).
Utiliser des filtres de sécurité de contenu : cet ensemble de modèles de classification multiclasse détecte quatre catégories de contenu nuisible (violence, haine, sexualité et automutilation), respectivement à quatre niveaux de gravité (sûr, faible, moyen et élevé). En savoir plus : Guide pratique de configuration des filtres de contenu avec Azure OpenAI Service.
Appliquer une invite de métadonnées : une invite de métadonnées est un message système inclus au début de l’invite et servant à préparer le modèle avec du contexte, des instructions ou d’autres informations pertinentes pour votre cas d’utilisation. Ces instructions servent à guider le comportement du modèle. En savoir plus : Création de garde-fous de sécurité efficaces avec l’ingénierie d’invite de métadonnées/de messages système.
Utiliser des listes de blocage : cela permet de bloquer l’utilisation de certains termes ou modèles dans une invite. En savoir plus : Utiliser une liste de blocage dans Azure OpenAI.
Se familiariser avec la provenance du modèle : la provenance est l’histoire de la propriété d’un modèle, ou le qui-quoi-où-quand, et est très importante à comprendre. Qui a collecté les données dans un modèle ? À qui se rapportent les données ? Quel est le type de données utilisé ? Où les données ont-elles été collectées ? Quand les données ont-elles été collectées ? Savoir d’où proviennent les données de modèle peut vous aider à évaluer leur qualité, leur fiabilité et éviter toute utilisation non éthique, injuste, biaisée ou inexacte des données.
Utiliser un pipeline standard : utilisez un pipeline de modération du contenu plutôt que de rassembler des parties fragmentaires. En savoir plus : Comprendre les pipelines d’apprentissage automatique.
Appliquer des mesures d'atténuation de l'interface utilisateur : Celles-ci apportent une clarté importante à votre utilisateur sur les capacités et les limites d'une fonctionnalité basée sur l'IA. Pour aider les utilisateurs et apporter une certaine transparence à votre fonctionnalité, vous pouvez effectuer les opérations suivantes :
Encourager les utilisateurs à modifier les sorties avant de les accepter
Mettre en évidence des inexactitudes potentielles dans les sorties IA
Révéler le rôle de l’IA dans l’interaction
Citer des références et des sources
Limiter la longueur des entrées et sorties, le cas échéant
Fournir une structure d’entrée ou de sortie : les invites doivent suivre un format standard
Préparez des réponses prédéterminées pour les invites controversées.
Les recommandations pour prévenir les risques liés à l’IA sont les suivants :
Surveillance des abus : cette méthodologie détecte et atténue des instances de contenu et/ou de comportements récurrents qui suggèrent qu’un service a été utilisé d’une manière susceptible de violer le Code de conduite ou d’autres conditions applicables du produit. En savoir plus : Surveillance des abus.
Livraison par phases : déployer lentement votre solution d’IA pour gérer les rapports entrants et les préoccupations.
Plan de réponse aux incidents : pour tous les risques à haute priorité, évaluer ce qui se passera et combien de temps il faudra pour répondre à un incident, et à quoi ressemblera le processus de réponse.
Possibilité de désactiver la fonctionnalité ou le système : proposer une possibilité de désactiver la fonctionnalité si un incident est sur le point de se produire ou s’est produit, ce qui nécessite la suspension de la fonctionnalité pour éviter d’autres dommages.
Contrôles/blocages de l’accès utilisateur : développer un moyen de bloquer les utilisateurs qui utilisent un système à mauvais escient.
Mécanisme de commentaires utilisateur : flux servant à détecter les problèmes du côté de l’utilisateur.
Déploiement responsable de données de télémétrie : identifier, collecter et surveiller les signaux qui indiquent la satisfaction des utilisateurs ou leur capacité à utiliser le système comme prévu, en s’assurant de respecter les lois, stratégies et engagements applicables en matière de confidentialité. Utiliser des données de télémétrie pour identifier les lacunes et améliorer le système.
Boîte à outils d’IA responsable : l’IA responsable est une approche du développement, de l’évaluation et du déploiement de systèmes IA de façon sûre, fiable et éthique. La boîte à outils d’IA responsable est une suite d’outils proposant une collection de bibliothèques et d’interfaces utilisateur d’exploration et d’évaluation de modèles et de données qui permettent une meilleure compréhension des systèmes IA. Ces interfaces et bibliothèques permettent aux développeurs et aux parties prenantes des systèmes IA de développer et de surveiller l’IA de manière plus responsable et de prendre de meilleures mesures pilotées par les données.
Débogage du modèle de tableau de bord d’IA responsable : ce tableau de bord peut vous aider à identifier, diagnostiquer et atténuer les problèmes, à l’aide de données permettant de prendre des mesures éclairées. Cette expérience personnalisable peut être menée dans une multitude de directions, de l’analyse du modèle ou des données de manière holistique, à la réalisation d’une analyse approfondie ou à une comparaison sur les cohortes d’intérêt, à l’explication et à la perturbation des prédictions de modèle pour des instances individuelles, et à l’information des utilisateurs sur les décisions et actions métier. Répondre au questionnaire sur la prise de décision pour l’IA responsable.
Passer en revue le résumé Azure Machine Learning de Qu’est-ce que l’IA responsable ?
Lire l’article de Brad Smith sur la lutte contre le contenu abusif généré par l’IA : approche globale du 13 février 2024.
Lire le blog Sécurité Microsoft.
Vue d’ensemble des pratiques d’IA responsable pour les modèles Azure OpenAI - Azure AI Services
Comment utiliser les filtres de contenu (préversion) avec Azure OpenAI Service
Comment utiliser les listes de blocage avec Azure OpenAI Service
Planification de la Red Team pour les grands modèles de langage (LLM) et leurs applications
Modélisation des menaces dans les systèmes d’IA/de ML et leurs dépendances
Pivots de l’IA/du ML pour la sécurité. Barre de bogues du cycle de vie du développement
Outils pour la gestion et l’élaboration de préventions de l’IA responsable - Microsoft Research
Planification des défaillances de langage naturel avec le guide opérationnel IA
Error Analysis et Build Responsible AI using Error Analysis toolkit (youtube.com)
InterpretML et How to Explain Models with IntepretML Deep Dive (youtube.com)
Black-Box and Glass-Box Explanation in Machine Learning (youtube.com)