Ative AI-toepassingen en -functies ontwikkelen in Windows
Dit document bevat een overzicht van aanbevolen verantwoorde ontwikkelprocedures die u kunt gebruiken bij het maken van toepassingen en functies in Windows met generatieve kunstmatige intelligentie.
Richtlijnen voor verantwoordelijke ontwikkeling van generatieve AI-apps en -functies in Windows
Elk team van Microsoft volgt kernprincipes en -procedures voor het op verantwoorde wijze bouwen en verzenden van AI, waaronder Windows. Meer informatie over de aanpak van Microsoft voor verantwoorde ontwikkeling vindt u in het Microsoft Responsible AI Transparency Report. Windows volgt de basispijlers van de ontwikkeling van RAI — beheersen, in kaart brengen, meten en beheren — die zijn afgestemd op het Nationaal Instituut voor Standaarden en Technologie (NIST) AI Risk Management Framework.
Beheren - Beleid, procedures en processen
Standaarden vormen de basis van governance- en nalevingsprocessen. Microsoft heeft onze eigen Responsible AI Standard ontwikkeld, inclusief zes principes die u als uitgangspunt kunt gebruiken om uw richtlijnen voor verantwoorde AI te ontwikkelen. We raden u aan AI-principes in te bouwen in uw ontwikkelingslevenscyclus en in uw processen en werkstromen voor naleving van wetten en regelgeving in privacy, beveiliging en verantwoorde AI. Dit omvat een vroege evaluatie van elke AI-functie, met behulp van hulpmiddelen zoals de AI-Fairnesscontrolelijst en richtlijnen voor Human-AI interactie - Microsoft Research,. Vervolgens omvat het het toezicht houden op en herzien van AI-benchmarks, tests en processen met hulpmiddelen zoals een Responsible AI-scorecard. Daarnaast wordt er openbare documentatie verstrekt over de mogelijkheden en beperkingen van uw AI-functies, evenals gebruikersonthullingen en besturingselementen met betrekking tot kennisgeving, toestemming, gegevensverzameling en -verwerking, enzovoort, in overeenstemming met de toepasselijke privacywetten, wettelijke vereisten en beleidsregels.
Kaart - Risico identificeren
Aanbevolen procedures voor het identificeren van risico's zijn:
Eind-tot-eind testen
End-to-end testen evalueert het hele AI-systeem van begin tot eind om ervoor te zorgen dat het werkt zoals bedoeld en voldoet aan vastgestelde standaarden. Deze uitgebreide benadering kan het volgende omvatten:
Rode koppeling
De term red teaming heeft historisch gezien systematische aanvallende oefeningen beschreven om beveiligingskwetsbaarheden te testen. Onlangs is de term uitgebreid tot meer dan traditionele cyberbeveiliging en ontwikkeld in gemeenschappelijk gebruik om vele soorten testen, testen en aanvallen van AI-systemen te beschrijven.
Bij zowel grote taalmodellen (LLM's) als kleine taalmodellen (SLM's), kunnen zowel goedaardig als kwaadwillend gebruik potentieel schadelijke uitvoer produceren die vele vormen kan aannemen, waaronder haatspraak, aansporing of verheerlijking van geweld of seksuele inhoud. Met grondige red teaming kunt u uw systeem grondig onderwerpen aan stresstests en uw contentstrategie verfijnen om de kans te verkleinen dat uw systeem schade veroorzaakt.
Alle AI-systemen moeten, afhankelijk van functie en doel, een test door een rood team ondergaan, zowel voor systemen met een hoog risico die gebruikmaken van generatieve AI als voor systemen met een lager risico die gebruikmaken van niet-generatieve AI.
Formele rode koppeling: Onafhankelijke rode koppeling moet worden voltooid voor alle systemen met hoog risico die gebruikmaken van generatieve AI met behulp van grote taalmodellen (LLM's). Formele rode teaming omvat het werven van professionals buiten uw organisatie om deel te nemen aan rode teamactiviteiten.
Interne rode koppeling: plan minimaal interne rode koppeling voor alle minder risicovolle, niet-generatieve AI-systemen. Dit kan worden gedaan door personen binnen uw organisatie.
Meer informatie over red teaming en hoe u de red teaming-behoeften van uw systeem kunt beoordelen: Microsoft AI Red Team
Modelevaluatie
Als onderdeel van end-to-end testen is het belangrijk om het model zelf te evalueren.
modelkaart: voor openbaar beschikbare modellen, zoals modellen op HuggingFace, kunt u de modelkaart van elk model controleren als een handige verwijzing om te begrijpen of een model de juiste is voor uw use-case. Meer informatie over modelkaarten.
Handmatig testen: mensen die stapsgewijze tests uitvoeren zonder scripts is een belangrijk onderdeel van de modelevaluatie die ondersteuning biedt voor...
Het meten van de voortgang van een kleine set prioriteitsproblemen. Bij het beperken van specifieke schade is het vaak het meest productief om de voortgang handmatig te controleren op een kleine gegevensset totdat de schade niet meer wordt waargenomen voordat de automatische meting wordt uitgevoerd.
Metrische gegevens definiëren en rapporteren totdat geautomatiseerde metingen betrouwbaar genoeg zijn om alleen te gebruiken.
Spotcontrole periodiek om de kwaliteit van automatische meting te meten.
Geautomatiseerd testen: Automatisch uitgevoerde tests zijn ook een belangrijk onderdeel van de modelevaluatie die ondersteuning biedt voor...
Meten op grote schaal met een verhoogde dekking om uitgebreidere resultaten te bieden.
Doorlopende meting om te controleren op regressie naarmate het systeem, het gebruik en de risicobeperking zich ontwikkelen.
modelselectie: Selecteer een model dat geschikt is voor uw doel en informeer uzelf om inzicht te krijgen in de mogelijkheden, beperkingen en potentiële veiligheidsuitdagingen. Zorg er bij het testen van uw model voor dat het resultaten produceert die geschikt zijn voor uw gebruik. Om u op weg te helpen, zijn de bestemmingen voor Microsoft-modelbronnen (en niet-Microsoft/open source) onder andere:
Meting - Risico's en risicobeperking evalueren
Aanbevolen procedures zijn onder andere:
Een Content Moderator-toewijzen: Content Moderator controleert tekst, afbeeldingen en video-inhoud op materiaal dat mogelijk aanstootgevend, riskant of anderszins ongewenst is in inhoud. Meer informatie: Inleiding tot Content Moderator (Microsoft Learn Training).
Gebruik veiligheidsfilters voor inhoud: dit ensemble van classificatiemodellen met meerdere klassen detecteert vier categorieën schadelijke inhoud (geweld, haat, seksueel en zelfschade) op verschillende ernstniveaus (laag, gemiddeld en hoog). Meer informatie: Inhoudsfilters configureren met Azure OpenAI Service.
Een metaprompt toepassen: een metaprompt is een systeembericht dat aan het begin van de prompt is opgenomen en wordt gebruikt om het model te voorzien van context, instructies of andere informatie die relevant is voor uw use-case. Deze instructies worden gebruikt om het gedrag van het model te begeleiden. Meer informatie: Effectieve beveiligingsrichtlijnen maken met metaprompt / systemmessage-engineering.
Gebruik bloklijsten: Hiermee blokkeert u het gebruik van bepaalde termen of patronen in een prompt. Meer informatie: Een blokkeringslijst gebruiken in Azure OpenAI.
Vertrouwd raken met de herkomst van het model: Herkomst is de geschiedenis van het eigendom van een model, of de wie-wat-waar-wanneer, en is erg belangrijk om te begrijpen. Wie heeft de gegevens verzameld in een model? Met wie hebben de gegevens betrekking? Welk soort gegevens wordt gebruikt? Waar zijn de gegevens verzameld? Wanneer zijn de gegevens verzameld? Als u weet waar modelgegevens vandaan komen, kunt u de kwaliteit, betrouwbaarheid ervan beoordelen en onthisch, oneerlijk, vooroordelen of onnauwkeurig gegevensgebruik voorkomen.
Gebruik een standaardpijplijn: gebruik één pijplijn voor inhoudsbeheer in plaats van onderdelen stukmeal samen te trekken. Meer informatie: Informatie over machine learning-pijplijnen.
Pasgebruikersinterfacemitigaties toe: Deze bieden belangrijke duidelijkheid voor uw gebruiker over mogelijkheden en beperkingen van een AI-functie. Als u gebruikers wilt helpen en transparantie over uw functie wilt bieden, kunt u het volgende doen:
Gebruikers aanmoedigen om uitvoer te bewerken voordat ze worden geaccepteerd
Mogelijke onnauwkeurigheden in AI-uitvoer markeren
De rol van AI in de interactie openbaar maken
Verwijzingen en bronnen citeren
De lengte van invoer en uitvoer beperken, indien van toepassing
Zorg voor structuur in de invoer of uitvoer – prompts moeten een standaardindeling volgen
Bereid vooraf vastgestelde reacties voor omstreden prompts voor.
Feedbacklussen van klanten implementeren: uw gebruikers aanmoedigen om actief deel te nemen aan feedbacklussen:
Vraag rechtstreeks naar feedback in uw app/product met behulp van een eenvoudig feedbackmechanisme dat beschikbaar is in context als onderdeel van de gebruikerservaring.
Pas sociale luistertechnieken toe op de kanalen die uw klanten gebruiken voor vroege gesprekken over functieproblemen, problemen en mogelijke schade.
Beheren - AI-risico's beperken
Aanbevelingen voor het beperken van AI-risico's zijn onder andere:
Misbruikcontrole: Deze methodologie detecteert en beperkt exemplaren van terugkerende inhoud en/of gedragingen die suggereren dat een service is gebruikt op een manier die de gedragscode of andere toepasselijke productvoorwaarden kan schenden. Meer informatie: Misbruikcontrole.
gefaseerde levering: uw AI-oplossing langzaam implementeren om binnenkomende rapporten en problemen af te handelen.
plan voor het reageren op incidenten: evalueer voor elk risico met hoge prioriteit wat er gebeurt en hoe lang het duurt om te reageren op een incident en hoelang het antwoordproces eruitziet.
Mogelijkheid om functie of systeem uit te schakelen: functionaliteit bieden om de functie uit te schakelen als een incident op het punt staat of zich voordoet, waarvoor het onderbreken van de functionaliteit vereist is om verdere schade te voorkomen.
gebruikerstoegangsbeheer/blokkerende: Ontwikkel een manier om gebruikers te blokkeren die een systeem misbruiken.
feedback van gebruikers: gebruik mechanismen om problemen aan de kant van de gebruiker te detecteren.
Vraag rechtstreeks naar feedback in uw product, met een eenvoudig feedbackmechanisme dat beschikbaar is in de context van een typische werkstroom.
Pas sociale luistertechnieken toe op de kanalen die uw klanten gebruiken voor vroege gesprekken over functieproblemen, problemen en mogelijke schade.
Verantwoordelijke implementatie van telemetriegegevens: identificeer, verzamel en controleer signalen die wijzen op tevredenheid van gebruikers of hun vermogen om het systeem te gebruiken zoals bedoeld, om ervoor te zorgen dat u de toepasselijke privacywetten, beleidsregels en toezeggingen volgt. Gebruik telemetriegegevens om hiaten te identificeren en het systeem te verbeteren.
Hulpprogramma's en bronnen
Responsible AI Toolbox: Responsible AI is een benadering voor het beoordelen, ontwikkelen en implementeren van AI-systemen op een veilige, betrouwbare en ethische manier. De verantwoordelijke AI-werkset is een reeks hulpprogramma's die een verzameling gebruikersinterfaces en bibliotheken voor model- en gegevensverkenning en -evaluatie bieden die een beter begrip van AI-systemen mogelijk maken. Deze interfaces en bibliotheken bieden ontwikkelaars en belanghebbenden van AI-systemen de mogelijkheid om AI op verantwoorde wijze te ontwikkelen en te bewaken en betere gegevensgestuurde acties uit te voeren.
Verantwoordelijke AI-dashboard model debugging: Dit dashboard kan u helpen bij het identificeren, diagnosticeren en beperken van problemen, gebruikmakend van gegevens om weloverwogen acties te ondernemen. Deze aanpasbare ervaring kan in een groot aantal richtingen worden genomen, van het analyseren van het model of de gegevens holistisch tot het uitvoeren van een grondige duik of vergelijking van cohorten van belang, het uitleggen en verstoren van modelvoorspellingen voor afzonderlijke exemplaren, en het informeren van gebruikers over zakelijke beslissingen en acties. neem de toets voor verantwoorde AI-besluitvorming.
Bekijk de Azure Machine Learning-samenvatting van Wat is verantwoordelijke AI?
Lees de -benadering voor verantwoorde AI voor Copilot in Bing.
Lees het artikel van Brad Smith over Bestrijding van beledigende AI gegenereerde inhoud: een uitgebreide benadering van 13 februari 2024.
Lees de Microsoft Security Blog.
Overzicht van verantwoorde AI-procedures voor Azure OpenAI-modellen - Azure AI-services
Het plannen van red teaming voor grootschalige taalmodellen (LLMs) en hun toepassingen
Dreigingsmodellering van AI-/ML-systemen en -afhankelijkheden
AI/ML richt zich op de beveiliging. Een bugbalk voor de ontwikkelingslevenscyclus
Hulpprogramma's voor het beheren en bedenken van verantwoorde AI-mitigaties - Microsoft Research
Planning voor fouten in natuurlijke taal met het AI Playbook
nl-NL: Foutanalyse en Bouw verantwoorde AI met behulp van de Foutanalyse-toolkit (youtube.com)
InterpretML en Hoe modellen uit te leggen met InterpretML Deep Dive (youtube.com)
uitleg Black-Box en Glass-Box in machine learning (youtube.com)
Aanvullende informatiebronnen
- Overzicht van Windows Copilot Runtime