Identificar possíveis danos
A primeira fase em um processo de IA generativa responsável é identificar os possíveis danos que podem afetar a solução planejada. Essa fase tem quatro etapas, conforme mostrado aqui:
- Identificar possíveis danos
- Priorizar os danos identificados
- Testar e verificar os danos priorizados
- Documentar e compartilhar os danos verificados
1: Identificar possíveis danos
Os possíveis danos que são relevantes para a solução de IA generativa dependem de vários fatores, incluindo os serviços e modelos específicos usados para gerar saída, bem como dos ajustes finos ou dados de contexto usados para personalizar as saídas. Alguns tipos comuns de possíveis danos em uma solução de IA generativa incluem:
- Gerar conteúdo ofensivo, pejorativo ou discriminatório.
- Gerar conteúdo que tem imprecisões factuais.
- Gerar conteúdo que incentiva ou dá suporte a comportamentos ou práticas ilegais ou antiéticas.
Para entender completamente as limitações conhecidas e o comportamento dos serviços e dos modelos na solução, consulte a documentação disponível. Por exemplo, o Serviço OpenAI do Azure inclui uma nota de transparência que você pode usar para entender considerações específicas relacionadas ao serviço e aos modelos que ele inclui. Além disso, desenvolvedores de modelos individuais podem fornecer documentação, como o cartão do sistema OpenAI para o modelo GPT-4.
Examine as diretrizes no Guia de Avaliação do Impacto da IA Responsável da Microsoft e use o modelo de Avaliação do Impacto da IA Responsável associado para documentar possíveis danos.
Examine as informações e diretrizes para os recursos usados para ajudar a identificar possíveis danos.
2: Priorizar os danos
Para cada possível dano identificado, avalie a probabilidade de sua ocorrência e o nível do impacto resultante se isso acontecer. Em seguida, use essas informações para priorizar os danos, com aqueles mais prováveis e impactantes primeiro. Essa priorização permitirá que você se concentre em localizar e mitigar os riscos mais prejudiciais na solução.
A priorização precisa levar em conta o uso pretendido da solução, bem como o potencial de uso indevido, o que pode ser subjetivo. Por exemplo, digamos que você esteja desenvolvendo um copiloto de cozinha inteligente que fornece assistência com receitas para chefs e cozinheiros amadores. Possíveis danos podem incluir:
- A solução fornece tempos de cozimento imprecisos, resultando em alimentos mal cozidos que podem causar doenças.
- Quando solicitada, a solução fornece a receita de um veneno letal que pode ser fabricado usando ingredientes cotidianos.
Embora nenhum desses resultados seja desejável, você pode decidir que o potencial de a solução auxiliar na criação de um veneno letal tem maior impacto do que o potencial de obter alimentos mal cozidos. No entanto, dado o cenário de uso principal da solução, você também pode supor que a frequência com a qual tempos de cozimento imprecisos são sugeridos provavelmente será muito maior do que o número de usuários que pedem explicitamente uma receita de veneno. A determinação da prioridade final é um assunto a ser discutido pela equipe de desenvolvimento, o que pode envolver consultas a políticas ou a especialistas jurídicos para priorizar corretamente.
3: Testar e verificar a presença de danos
Agora que você tem uma lista priorizada, pode testar a solução para verificar se os danos ocorrem e, em caso afirmativo, sob quais condições. Os testes também podem revelar a presença de danos não identificados anteriormente que você pode adicionar à lista.
Uma abordagem comum para testar possíveis danos ou vulnerabilidades em uma solução de software é usar testes de "equipe vermelha", em que uma equipe de testadores investiga deliberadamente a solução para detectar pontos fracos e tentativas de produzir resultados prejudiciais. Exemplos de testes para a solução de copiloto de cozinha inteligente mencionada anteriormente podem incluir a solicitação de receitas de veneno ou receitas rápidas que incluem ingredientes que devem ser cozidos completamente. Os sucessos da equipe vermelha devem ser documentados e revisados para ajudar a determinar a probabilidade realista de uma saída prejudicial ocorrer quando a solução é usada.
Observação
O uso de equipes vermelhas é uma estratégia que costuma ser usada para encontrar vulnerabilidades de segurança ou outras fraquezas que podem comprometer a integridade de uma solução de software. Ao estender essa abordagem para encontrar conteúdo prejudicial na IA generativa, você pode implementar um processo de IA responsável que se baseia nas práticas de segurança cibernética existentes e as complementa.
Para saber mais sobre o uso de equipes vermelhas para soluções de IA generativa, consulte Introdução a equipes vermelhas em LLMs (modelos de linguagem grandes) na documentação do Serviço OpenAI do Azure.
4: Documentar e compartilhar detalhes de danos
Após reunir evidências para dar suporte à presença de possíveis danos na solução, documente os detalhes e compartilhe-os com os stakeholders. A lista priorizada de danos deverá ser mantida e complementada se novos danos forem identificados.