Partilhar via


Desenvolvendo aplicativos e recursos de IA generativa responsável no Windows

Este documento fornece uma visão geral das práticas recomendadas de desenvolvimento responsável que devem ser usadas 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 equipes da Microsoft seguem princípios e práticas fundamentais para criar e entregar IA de forma responsável, incluindo o Windows. Se desejar, leia mais sobre a abordagem da Microsoft ao desenvolvimento responsável no primeiro Relatório de Transparência de IA Responsável anual. O Windows segue pilares fundamentais do desenvolvimento de IA responsável — governar, mapear, medir e gerenciar — que estão alinhados à Estrutura de Gerenciamento de Risco de IA do National Institute for Standards and Technology (NIST).

Governar – Políticas, práticas e processos

Os padrões 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 a você integrar 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 ajudar a garantir a conformidade com leis e regulamentações em privacidade, segurança e IA responsável. Isso abrange desde a avaliação inicial de cada recurso de IA, usando ferramentas como a Lista de Verificação de Imparcialidade de IA e Diretrizes para Interação Humanos-IA – Microsoft Research, até o monitoramento e revisão de benchmarks, testes e processos de IA usando ferramentas como um Scorecard de IA responsável, até a documentação pública sobre os recursos e limitações de seus recursos de IA e divulgação e controles do usuário – aviso, consentimento, coleta de dados e processamento de informações, etc. – de acordo com as leis de privacidade, requisitos regulatórios e políticas aplicáveis.

Mapear – Identificar riscos

As práticas recomendadas para identificar riscos incluem:

Testar ponta a ponta

  • Red teaming: o termo red teaming historicamente descreve ataques sistemáticos de adversários para testar vulnerabilidades de segurança. Com o surgimento dos LLMs (grandes modelos de linguagem ), o termo se estendeu além da segurança cibernética tradicional e evoluiu no uso comum para descrever muitos tipos de investigação, teste e ataque de sistemas de IA. Com os LLMs, o uso benigno e contraditório pode produzir saídas potencialmente prejudiciais, que podem tomar muitas formas, incluindo conteúdo prejudicial, como discurso de ódio, incitação ou glorificação de violência ou conteúdo sexual.

  • Avaliação do modelo: além de testar ponta a ponta, também é importante avaliar o modelo em si.

    • Cartão de modelo: para modelos disponíveis publicamente, como os do HuggingFace, você pode verificar o Cartão de Modelo de cada modelo como uma referência útil para entender se um modelo é o certo para o seu caso de uso. Leia mais sobre Cartões de Modelos.

    • Testes manuais: fazer com que pessoas realizem testes passo a passo sem scripts é um componente importante da avaliação de modelos que permite...

      • Medir o progresso em um pequeno conjunto de questões prioritárias. Ao atenuar danos específicos, geralmente é mais produtivo continuar verificando manualmente o progresso em um pequeno conjunto de dados até que o dano não seja mais observado antes de passar para a medida automatizada.

      • Definir e relatar métricas até que a medição automatizada seja confiável o suficiente para ser usada sozinha.

      • Verificação pontual periódica para medir a qualidade das medições automáticas.

    • Teste automatizado: o teste executado automaticamente também é um componente importante da avaliação do modelo que permite...

      • Medir em grande escala com cobertura aumentada para fornecer resultados mais abrangentes.

      • Medições contínuas para monitorar qualquer regressão à medida que o sistema, o uso e as mitigações evoluem.

    • Seleção de modelo: selecione um modelo adequado ao seu propósito e eduque-se para entender suas capacidades e limitações e os possíveis desafios de segurança. Ao testar seu modelo, certifique-se de que ele produza resultados apropriados para seu uso. Para começar, os destinos para fontes de modelo da Microsoft (e não Microsoft/código aberto) incluem:

Medida – Avaliar riscos e mitigação

As práticas recomendadas incluem:

  • Atribuir um Content Moderator: o Content Moderator verifica o conteúdo de textos, imagens e vídeos a fim de detectar materiais potencialmente ofensivos, suspeitos ou indesejáveis. Saiba mais: Introdução ao Content Moderator (Treinamento do Microsoft Learn).

    • Usar filtros de segurança de conteúdo: esse conjunto de modelos de classificação de várias classes detecta quatro categorias de conteúdo prejudicial (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 Serviço OpenAI do Azure.

    • Aplicar um meta-prompt: um meta-prompt é uma mensagem do sistema incluída no início do prompt que é usada para preparar o modelo com contexto, instruções ou outras informações relevantes para seu caso de uso. Essas instruções são usadas para orientar o comportamento do modelo. Saiba mais: Criando guardrails de segurança eficazes com meta-prompts/engenharia de mensagens do sistema.

    • Use listas de bloqueio: 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 procedência do modelo: proveniência é o histórico de propriedade de um modelo, ou "quem-o-que-onde-quando", e é muito importante entendê-la. Quem coletou os dados em um modelo? A quem os dados se referem? Que tipos de dados são usados? Onde os dados foram coletados? Quando os dados foram coletados? Saber de onde vieram os dados do modelo pode ajudar você a avaliar sua qualidade e confiabilidade e evitar qualquer uso de dados antiético, injusto, tendencioso ou impreciso.

    • Use um pipeline padrão: use um pipeline de moderação de conteúdo em vez de reunir partes aos poucos. Saiba mais: Entendendo pipelines de aprendizado de máquina.

  • Aplique mitigações de UI: elas 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:

    • Incentivar os usuários a editar saídas antes de aceitá-las

    • Destacar possíveis imprecisões nas saídas de IA

    • Explicar o papel da IA na interação

    • Citar referências e fontes

    • Limitar o comprimento de entradas e saídas quando apropriado

    • Fornecer entrada ou saída de estruturas – os prompts devem seguir um formato padrão

    • Prepare respostas pré-determinadas para solicitações controversas.

Gerenciar – Mitigar riscos de IA

As recomendações para mitigar os riscos de IA incluem:

  • Monitoramento de abusos: essa metodologia detecta e mitiga instâncias de conteúdo recorrente e/ou comportamentos que sugerem que um serviço foi usado de uma maneira capaz de violar o Código de Conduta ou outros termos do produto aplicáveis. Saiba mais: Monitoramento de abusos.

  • Entrega em fases: implemente sua solução de IA lentamente para lidar com os relatórios recebidos e preocupações.

  • 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 que exija pausar a funcionalidade para evitar mais danos estiver prestes a ocorrer ou tiver ocorrido.

  • Controles/bloqueio de acesso de usuários: desenvolva uma maneira de bloquear usuários que estão usando indevidamente um sistema.

  • Mecanismo de feedback do usuário: fluxos para detectar problemas do lado do usuário.

  • Implantação responsável de dados de telemetria: identifique, colete e monitore 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