Développement d’applications et fonctionnalités d’INTELLIGENCE artificielle responsable sur Windows

Ce document fournit une vue d’ensemble des pratiques de développement responsables recommandées à utiliser lorsque vous créez des applications et des fonctionnalités sur Windows avec l’intelligence artificielle générative.

Microsoft Foundry sur Windows les modèles IA génératifs sur appareil peuvent vous aider à appliquer des fonctionnalités de sécurité de contenu locales, telles que des moteurs de classification sur appareil pour le contenu dangereux et une liste de blocage par défaut. Microsoft hiérarchise la prise en charge des développeurs pour créer des expériences d’IA fiables et fiables avec des modèles locaux sur Windows.

Recommandations en matière de développement responsable des applications et fonctionnalités d’IA génératives sur Windows

Chaque équipe de Microsoft suit les principes et pratiques core pour construire et expédier de manière responsable l’IA, y compris Windows. Vous pouvez en savoir plus sur l'approche de Microsoft pour le développement responsable dans le Microsoft rapport de transparence de l'IA responsable. Windows suit les piliers fondamentaux du développement IA (gouverner, cartographier, mesurer et gérer) qui sont alignés sur l'AI Risk Management Framework du National Institute for Standards and Technology (NIST).

Gouverner : stratégies, pratiques et processus

Les normes constituent la base des processus de gouvernance et de conformité. Microsoft a développé notre propre Responsible AI Standard, y compris les principes six que vous pouvez utiliser comme point de départ pour développer vos instructions 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 s’étend de l’évaluation anticipée de chaque fonctionnalité IA, à l’aide d’outils tels que AI Fairness Checklist et Guidelines for Human-AI Interaction - Microsoft Research, pour surveiller et examiner les benchmarks d’IA, les tests et les processus à l’aide d’outils tels qu’une carte de performance Responsible AI scorecard, pour la documentation publique sur les fonctionnalités et limitations de vos fonctionnalités d'IA, ainsi que sur la divulgation et les contrôles de l'utilisateur - avis, consentement, collecte et traitement des informations, etc. - conformément aux lois applicables en matière de confidentialité, aux exigences réglementaires et aux stratégies.

Cartographier : identifier le risque

Les pratiques recommandées pour identifier les risques sont les suivantes :

Tests de bout en bout

Les tests de bout en bout évaluent l’ensemble du système d’intelligence artificielle du début à la fin pour s’assurer qu’il fonctionne comme prévu et respecte les normes établies. Cette approche complète peut inclure :

Red Teaming

Le terme Red Teaming a historiquement décrit les attaques contradictoires systématiques pour tester les failles de sécurité. Plus récemment, le terme s’est étendu au-delà de la cybersécurité traditionnelle et a évolué dans l’utilisation courante pour décrire de nombreux types de détection, de test et d’attaque de systèmes IA.

Avec les grands modèles de langage (LLMs) et les petits modèles de langage (SLMs), l'utilisation bénigne et adversaire peut produire des résultats potentiellement dangereux qui peuvent prendre de nombreuses formes, par exemple notamment le discours haineux, l'incitation à la violence, la glorification de celle-ci, ou le contenu sexuel. Un red teaming approfondi vous permet de tester votre système et d’affiner votre stratégie de contenu pour réduire la possibilité que votre système provoque des dommages.

Tous les systèmes IA doivent subir des tests de red teaming, en fonction de la fonction et de l’objectif, à la fois pour les systèmes à haut risque qui utilisent l’IA générative et les systèmes à risque inférieur qui utilisent l’IA non générative :

  • Red teaming formel : Un red teaming indépendant doit être réalisé pour tous les systèmes à haut risque qui utilisent l'IA générative à l'aide de grands modèles de langage (GML). L'équipe rouge formelle implique le recrutement de professionnels extérieurs à votre organisation pour participer à des activités d'équipe rouge.

  • Red teaming interne : Prévoir au minimum un red team interne pour tous les systèmes d'IA à faible risque et non génératifs. Cela peut être effectué par des personnes au sein de votre organisation.

En savoir plus sur le red teaming et comment évaluer les besoins en matière de red teaming de votre système : Microsoft AI Red Team

Évaluation du modèle

Dans le cadre des tests de bout en bout, il est important d’évaluer le modèle lui-même.

  • Model Card : Pour les modèles disponibles publiquement, tels que ceux sur Hugging Face, vous pouvez consulter la Model Card de chaque modèle comme référence pratique pour déterminer si un modèle est adapté à votre cas d'usage. En savoir plus sur les fiches 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 ;

    • Mesurage continu pour surveiller toute régression au fur et à mesure de l’évolution du système, de l’utilisation et des mitigations.

  • 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 :

Mesure – Évaluer les risques et prévention

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 : Introduction à Content Moderator (Microsoft Learn Training).

    • Utiliser des filtres de sécurité de contenu: cet ensemble de modèles de classification multiclasse détecte quatre catégories de contenu dangereux (violence, haine, sexualité et auto-préjudice) à différents niveaux de gravité (faible, moyen et élevé). En savoir plus : How to configure content filters with 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 sont utilisées pour 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 : Utilisez une liste de blocs 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 : Quelles sont les pipelines Azure Machine Learning ?.

  • 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

    • Divulguer 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 pour l'entrée ou la sortie – les instructions doivent suivre un format standard

    • Préparez des réponses préétablies pour les sollicitations controversées.

  • Implémenter des boucles de commentaires client : Encourager vos utilisateurs à participer activement à des boucles de commentaires :

    • Demandez des commentaires directement dans votre application/produit à l’aide d’un mécanisme de commentaires simple disponible dans le contexte dans le cadre de l’expérience utilisateur.

    • Appliquez des techniques d’écoute sociale sur les canaux que vos clients utilisent pour des échanges anticipés sur les problèmes de fonctionnalités, les préoccupations et les dommages possibles.

Gérer - Prévenir les risques liés à l’IA

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.

  • Commentaires des utilisateurs : utilisez des mécanismes pour détecter les problèmes du côté de l’utilisateur.

    • Demandez des commentaires directement dans votre produit, avec un mécanisme de commentaires simple disponible dans le contexte d’un flux de travail classique.

    • Appliquez des techniques d’écoute sociale sur les canaux que vos clients utilisent pour des échanges anticipés sur les problèmes de fonctionnalités, les préoccupations et les dommages possibles.

  • 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.

Outils et ressources