Desenvolvendo aplicativos e recursos de IA generativa responsável no Windows
Este documento fornece uma visão geral das práticas de desenvolvimento responsável recomendadas para usar ao criar aplicativos e recursos no Windows com inteligência artificial generativa.
Diretrizes para o desenvolvimento responsável de aplicativos e recursos de IA generativa no Windows
Todas as equipas na Microsoft seguem princípios e práticas fundamentais para criar e fornecer IA de forma responsável, incluindo Windows. Você pode ler mais sobre a abordagem da Microsoft para o desenvolvimento responsável no Microsoft Responsible AI Transparency Report. O Windows segue os pilares fundamentais do desenvolvimento da RAI — governar, mapear, medir e gerenciar — que estão alinhados ao National Institute for Standards and Technology (NIST) AI Risk Management Framework.
Governar - Políticas, práticas e processos
As normas são a base dos processos de governança e conformidade. A Microsoft desenvolveu nosso próprio padrão de IA responsável , incluindo seis princípios que você pode usar como ponto de partida para desenvolver suas diretrizes para IA responsável. Recomendamos que você crie princípios de IA em seu ciclo de vida de desenvolvimento de ponta a ponta, bem como em seus processos e fluxos de trabalho para conformidade com leis e regulamentos em privacidade, segurança e IA responsável. Isso abrange desde a avaliação inicial de cada funcionalidade de IA, usando ferramentas como o
Mapa - Identificar o risco
As práticas recomendadas para a identificação de riscos incluem:
Testes de ponta a ponta
Os testes de ponta a ponta avaliam todo o sistema de IA do início ao fim para garantir que ele opere como pretendido e siga os padrões estabelecidos. Esta abordagem global pode incluir:
Equipa vermelha
O termo red teaming historicamente descreve ataques adversários sistemáticos para testar vulnerabilidades de segurança. Mais recentemente, o termo se estendeu além da cibersegurança tradicional e evoluiu no uso comum para descrever muitos tipos de sondagem, teste e ataque de sistemas de IA.
Com modelos de linguagem grandes (LLMs) e modelos de linguagem pequena (SLMs), o uso benigno e adversarial pode produzir resultados potencialmente nocivos que podem assumir muitas formas, incluindo discurso de ódio, incitação ou glorificação da violência ou conteúdo sexual. O agrupamento vermelho completo permite que você teste seu sistema e refine sua estratégia de conteúdo para diminuir a possibilidade de que seu sistema cause danos.
Todos os sistemas de IA devem passar por testes de equipe vermelha, dependendo da função e finalidade, tanto para sistemas de alto risco que empregam IA generativa quanto para sistemas de baixo risco que usam IA não generativa:
Formal red teaming: O red teaming independente deve ser concluído para todos os sistemas de alto risco que empregam IA generativa usando modelos de linguagem grande (LLMs). O red teaming formal inclui o recrutamento de profissionais fora da sua organização para participar em atividades de red teaming.
de agrupamento vermelho interno: No mínimo, planeje o agrupamento vermelho interno para todos os sistemas de IA não generativos e de menor risco. Isso pode ser feito por pessoas dentro da sua organização.
Saiba mais sobre o red teaming e como avaliar as necessidades de red teaming do seu sistema: Microsoft AI Red Team
Avaliação do modelo
Como parte dos testes de ponta a ponta, é importante avaliar o modelo em si.
Model Card: Para modelos disponíveis publicamente, como os do HuggingFace, você pode verificar o Model Card de cada modelo como uma referência útil para entender se um modelo é o certo para o seu caso de uso. Leia mais sobre Model Cards.
Teste manual: Humanos realizando testes passo-a-passo sem scripts é um componente importante da avaliação de modelos que suporta...
Medir os progressos num pequeno conjunto de questões prioritárias. Ao mitigar danos específicos, geralmente é mais produtivo continuar verificando manualmente o progresso em relação a um pequeno conjunto de dados até que o dano não seja mais observado antes de passar para a medição automatizada.
Definir e relatar métricas até que a medição automatizada seja confiável o suficiente para serem usadas sozinhas.
Verificação pontual periódica para medir a qualidade da medição automática.
Testes automatizados: O teste executado automaticamente também é um componente importante da avaliação de modelos que suporta...
Medição em larga escala com maior cobertura para fornecer resultados mais abrangentes.
Medição contínua para monitorar qualquer regressão à medida que o sistema, o uso e as mitigações evoluem.
Seleção de modelos: Selecione um modelo adequado ao seu propósito e eduque-se para compreender as suas capacidades, limitações e potenciais desafios de segurança. Ao testar o seu modelo, certifique-se de que produz resultados adequados à sua utilização. Para começar, os destinos para fontes de modelo da Microsoft (e não Microsoft/open source) incluem:
Medida - Avaliar riscos e mitigação
As práticas recomendadas incluem:
Atribuir umde Moderador de Conteúdo: o Moderador de Conteúdo verifica o conteúdo de texto, imagem e vídeo em busca de material potencialmente ofensivo, arriscado ou indesejável no conteúdo. Saiba mais: Introdução ao Content Moderator (Microsoft Learn Training).
Use filtros de segurança de conteúdo: Este conjunto de modelos de classificação multiclasse deteta quatro categorias de conteúdo nocivo (violência, ódio, sexual e automutilação) em quatro níveis de gravidade, respectivamente (seguro, baixo, médio e alto). Saiba mais: Como configurar filtros de conteúdo com o Azure OpenAI Service.
Aplicar um meta-prompt: Um meta-prompt é uma mensagem do sistema incluída no início do prompt e é usada para inicializar o modelo com contexto, instruções ou outras informações relevantes para o seu caso de utilização. Estas instruções são usadas para orientar o comportamento do modelo. Descubra mais: Criação de diretrizes de segurança eficazes com metaprompt / engenharia de mensagens sistêmicas.
Utilize listas de bloqueio: Isso bloqueia o uso de certos termos ou padrões em um prompt. Saiba mais: Usar uma lista de bloqueio no Azure OpenAI.
Familiarize-se com a proveniência do modelo: Proveniência é a história de propriedade de um modelo, ou o quem-que-onde-quando, e é muito importante entender. Quem coletou os dados em um modelo? A quem se referem os dados? Que tipo de dados são utilizados? Onde foram recolhidos os dados? Quando foram recolhidos os dados? Saber de onde vieram os dados do modelo pode ajudá-lo a avaliar sua qualidade, confiabilidade e evitar qualquer uso de dados antiético, injusto, tendencioso ou impreciso.
Utilize um processo padrão: use um processo de moderação de conteúdo em vez de reunir partes aos poucos. Saiba mais: Noções básicas sobre pipelines de aprendizado de máquina.
Aplicarinterface do usuárioatenuações: Eles fornecem clareza importante para o usuário sobre os recursos e limitações de um recurso baseado em IA. Para ajudar os usuários e fornecer transparência sobre seu recurso, você pode:
Incentive os usuários a editar as saídas antes de aceitá-las
Destaque possíveis imprecisões nas saídas de IA
Divulgar o papel da IA na interação
Citar referências e fontes
Limitar o comprimento da entrada e da saída, quando adequado
Fornecer estrutura de entrada ou saída – os prompts devem seguir um formato padrão
Prepare respostas pré-determinadas para solicitações controversas.
Implementar ciclos de feedback do cliente: Incentive seus usuários a se envolverem ativamente em ciclos de feedback:
Peça feedback diretamente no seu aplicativo/produto usando um mecanismo de feedback simples que está disponível no contexto como parte da experiência do usuário.
Aplique técnicas de social listening nos canais que seus clientes usam para conversas iniciais sobre problemas de recursos, preocupações e possíveis danos.
Gerenciar - Mitigar riscos de IA
As recomendações para mitigar os riscos de IA incluem:
Monitoramento de abuso: Esta metodologia deteta e atenua casos de conteúdo e/ou comportamentos recorrentes que sugerem que um serviço foi utilizado de uma forma que pode violar o Código de Conduta ou outros termos de produtos aplicáveis. Saiba mais: Monitoramento de Abuso.
Entrega em fases: Implemente a sua solução de inteligência artificial de forma gradual para lidar com relatórios e preocupações recebidos.
Plano de resposta a incidentes: Para cada risco de alta prioridade, avalie o que acontecerá e quanto tempo levará para responder a um incidente, e como será o processo de resposta.
Capacidade de desativar o recurso ou o sistema: Forneça funcionalidade para desativar o recurso se um incidente estiver prestes ou tiver ocorrido que exija pausar a funcionalidade para evitar mais danos.
Controles de acesso do usuário/bloqueio: Desenvolva uma maneira de bloquear usuários que estão usando indevidamente um sistema.
Feedback do usuário: Utilize mecanismos para detetar problemas do lado do usuário.
Peça feedback diretamente no seu produto, com um mecanismo de feedback simples que está disponível no contexto de um fluxo de trabalho típico.
Aplique técnicas de social listening nos canais que seus clientes usam para conversas iniciais sobre problemas de recursos, preocupações e possíveis danos.
Implantação responsável de dados de telemetria: Identificar, coletar e monitorar sinais que indicam a satisfação do usuário ou sua capacidade de usar o sistema conforme pretendido, garantindo que você siga as leis, políticas e compromissos de privacidade aplicáveis. Use dados de telemetria para identificar lacunas e melhorar o sistema.
Ferramentas e recursos
Responsible AI Toolbox: IA responsável é uma abordagem para avaliar, desenvolver e implantar sistemas de IA de forma segura, confiável e ética. A caixa de ferramentas de IA responsável é um conjunto de ferramentas que fornece uma coleção de interfaces de usuário e bibliotecas de exploração e avaliação de modelos e dados que permitem uma melhor compreensão dos sistemas de IA. Essas interfaces e bibliotecas capacitam desenvolvedores e partes interessadas de sistemas de IA a desenvolver e monitorar a IA de forma mais responsável e tomar melhores ações baseadas em dados.
Responsible AI Dashboard Model Debugging: Este painel pode ajudá-lo a identificar, diagnosticar e mitigar problemas, usando os dados para tomar ações informadas. Essa experiência personalizável pode ser tomada em uma infinidade de direções, desde a análise do modelo ou dos dados de forma holística, até a realização de um mergulho profundo ou comparação em coortes de interesse, para explicar e perturbar as previsões do modelo para instâncias individuais e para informar os usuários sobre decisões e ações de negócios. Faça o Questionário de Tomada de Decisão de IA Responsável.
Leia o resumo do Azure Machine Learning sobre O que é Inteligência Artificial Responsável?
Leia o artigo de Brad Smith sobre Combate ao conteúdo abusivo gerado por IA: uma abordagem abrangente de 13 de fevereiro de 2024.
Leia o Blog de Segurança da Microsoft.
Visão geral das práticas de IA responsável para modelos OpenAI do Azure - Serviços de IA do Azure
Como usar filtros de conteúdo (visualização) com o Azure OpenAI Service
Planeamento de red teaming para grandes modelos de linguagem (LLMs) e suas aplicações
AI/ML muda foco para a segurança. Uma barra padrão de bugs no ciclo de vida de desenvolvimento
Ferramentas para gerir e idealizar mitigações responsáveis de IA - Microsoft Research
Planejamento para falhas de linguagem natural com o AI Playbook
Análise de Erros e Construa uma IA Responsável usando o kit de ferramentas de Análise de Erros (youtube.com)
pt-PT: InterpretML e Como Explicar Modelos com InterpretML Deep Dive (youtube.com)
Black-Box e Glass-Box Explicação sobre Aprendizagem Automática no (youtube.com)