Criar proteções de entrada e saída

Os aplicativos de IA generativa geralmente dependem de filtragem de dados de entrada e saída, também chamadas de salvaguardas, para ajudar a garantir que o modelo responsável do seu modelo. As técnicas de filtragem de entrada e saída verificam os dados que entram ou saída do modelo está em conformidade com as políticas que você definir para seu aplicativo.

Proteções prontas

Mesmo com ajustes prévios em relação à segurança e um modelo de comando bem elaborado, é ainda é possível que o modelo produza conteúdo que resulte em danos não intencionais. Para melhorar ainda mais isso, os classificadores de conteúdo podem adicionar uma camada extra de proteção de dados. Os classificadores de conteúdo podem ser aplicados a entradas e saídas.

Os classificadores de entrada normalmente são usados para filtrar conteúdo que não se destina a ser usada em seu aplicativo e que possa fazer com que seu modelo viole as de segurança da nuvem. Os filtros de entrada frequentemente visam ataques de adversários que tentam burlar suas políticas de conteúdo. Os classificadores de saída podem filtrar ainda mais o modelo do projeto, capturando gerações não intencionais que possam violar suas políticas de segurança. Recomendamos que você tenha classificadores que abranjam todas as suas políticas de conteúdo.

O Google fornece classificadores baseados em API para segurança do conteúdo que podem ser usados para filtrar entradas e saídas do sistema:

  • A API Perspective é sem custo financeiro e usa modelos de machine learning para avaliar o impacto percebido que um comentário pode ter em uma conversa. Ele fornece pontuações que capturam a probabilidade de um for tóxico, ameaçador, ofensivo ou sem relação com o tema;
  • O Serviço de moderação de texto é uma API do Google Cloud que está disponível para uso abaixo de um determinado limite de uso e usa o aprendizado de máquina para analisar um documento em relação a uma lista de informações atributos, incluindo várias categorias e tópicos potencialmente nocivos que podem ser considerados sensíveis.

É importante avaliar até que ponto os classificadores prontos atendem à sua política metas e avaliar qualitativamente os casos de falha. Também é importante observe que o excesso de filtragem também pode resultar em danos não intencionais, bem como reduzir a utilidade do aplicativo, o que significa que é importante também casos em que há uso excessivo de filtros. Para mais detalhes sobre essa avaliação, métodos, consulte Avaliar a segurança do modelo e do sistema.

Criar classificadores de segurança personalizados

Há vários motivos pelos quais a proteção pronta pode não ser adequada para seu caso de uso, por exemplo, ter uma política sem suporte ou querer ajustar ainda mais sua proteção com dados observados afetando seu sistema. Em neste caso, os classificadores ágeis oferecem uma experiência framework flexível para criar proteções personalizadas por meio do ajuste de modelos, como Gemma, para atender às suas necessidades. Elas também permitem que você tenha controle total sobre onde e como eles são implantados.

Tutoriais do Gemma Agile Classifier (em inglês)

Iniciar o codelab Iniciar o Google Colab

O codelab e tutorial usar LoRA para ajustar um Gemma para atuar como um classificador de moderação de conteúdo usando o KerasNLP biblioteca. Usando apenas 200 exemplos do conjunto de dados ETHOS, isso classificador atinge uma pontuação F1 de 0,80 e pontuação ROC-AUC de 0,78, o que compara favoravelmente com o estado da arte resultados do placar. Quando treinado com os 800 exemplos, como os outros classificadores no quadro de liderança, o classificador ágil baseado no Gemma atinge uma pontuação F1 de 83,74 e uma pontuação ROC-AUC de 88,17. É possível adaptar instruções do tutorial para refinar ainda mais esse classificador ou criar seu próprio classificador proteções personalizadas do classificador de segurança.

Práticas recomendadas para configurar proteções

É altamente recomendável usar classificadores de segurança como proteções. No entanto, de segurança podem fazer com que o modelo generativo não produza nada para o usuário, se o conteúdo estiver bloqueado. Os aplicativos precisam ser projetados para lidar com isso caso. Os chatbots mais conhecidos lidam com isso fornecendo respostas automáticas ("Sou Sou um modelo de linguagem e não posso ajudar com essa solicitação").

Encontre o equilíbrio certo entre utilidade e inofensiva: ao usar classificadores de segurança, é importante entender que eles vão cometer erros, incluindo falsos positivos (por exemplo, alegar que uma saída não é segura quando não) e falsos negativos (a falha em rotular uma saída como não segura, quando é). De avaliando classificadores com métricas como F1, Precisão, Recall e AUC-ROC, pode determinar como você quer comparar falsos positivos e falsos erros negativos. Mudando o limite dos classificadores, você ajuda a encontrar uma equilíbrio ideal que evita o excesso de filtragem nas saídas e ainda fornece a segurança adequada.

Verificar se os classificadores contêm vieses não intencionais:classificadores de segurança, como qualquer outros modelos de ML, podem propagar vieses não intencionais, como problemas estereótipos. Os aplicativos precisam ser avaliados adequadamente quanto à comportamentos problemáticos. Em particular, os classificadores de segurança do conteúdo podem desencadear excessivamente em conteúdo relacionado a identidades que são, com mais frequência, alvo de linguagem abusiva on-line. Por exemplo, quando a API Perspective foi lançado, ele retornou pontuações de toxicidade mais altas nos comentários fazer referência a determinados grupos de identidade (blog). Esse acionamento excessivo comportamento do usuário pode acontecer porque os comentários que mencionam termos de identidade para mais grupos segmentados com frequência (por exemplo, palavras como "negro", "muçulmano", "feminista", "mulher", "gay" etc.) são mais frequentemente de natureza tóxica. Quando os conjuntos de dados usados para classificadores de treinamento têm desequilíbrios significativos nos comentários os classificadores podem generalizar demais e considerar todos os comentários com essas palavras provavelmente não são seguros. Saiba como a equipe da Jigsaw mitigou esse viés não intencional.

Recursos para desenvolvedores