Crea protecciones de entrada y salida

Las aplicaciones de IA generativa a menudo dependen del filtrado de datos de entrada y salida, a veces denominados safeguards, para garantizar un comportamiento responsable del modelo. Las técnicas de filtrado de entrada y salida verifican los datos que entran o salen del modelo.

Protecciones y clasificadores de seguridad listos para usar

Incluso con ajustes previos para la seguridad y una plantilla de mensaje bien diseñada, es posible que tu modelo genere contenido que cause daño no deseado. Para mejorar aún más esta situación, los clasificadores de contenido pueden agregar una capa adicional de protección. Los clasificadores de contenido se pueden aplicar tanto a las entradas como a las salidas.

Por lo general, los clasificadores de entrada se usan para filtrar contenido que no está diseñado para usarse en tu aplicación y que podría hacer que el modelo infrinja tus políticas de seguridad. Los filtros de entrada suelen atacar ataques adversarios que intentan eludir tus políticas de contenido. Los clasificadores de salida pueden filtrar aún más la salida del modelo, lo que permite capturar generaciones involuntarias que podrían infringir tus políticas de seguridad. Se recomienda tener clasificadores que abarquen todas tus políticas de contenido.

Google desarrolló clasificadores listos para usar para la seguridad del contenido que se pueden usar para filtrar entradas y salidas:

  • La API de Perspective es una API gratuita que usa modelos de aprendizaje automático para calificar el impacto percibido que un comentario podría tener en una conversación. Proporciona puntuaciones que capturan la probabilidad de que un comentario sea tóxico, amenazante, insultante, irrelevante, etcétera.
  • El servicio de moderación de texto es una API de Google Cloud que está disponible para usarse por debajo de un límite de uso determinado y utiliza el aprendizaje automático para analizar un documento con una lista de atributos de seguridad, incluidas varias categorías y temas potencialmente dañinos que pueden considerarse sensibles.

Es importante evaluar qué tan bien los clasificadores listos para usar cumplen con los objetivos de la política y evaluar cualitativamente los casos de falla. También es importante tener en cuenta que el filtrado excesivo también puede provocar un daño no deseado y reducir la utilidad de la aplicación, lo que significa que también es importante revisar los casos en los que podría ocurrir un filtrado excesivo. Para obtener más detalles sobre estos métodos de evaluación, consulta Evalúa el modelo y el sistema para la seguridad.

Crea clasificadores de seguridad personalizados

Si una API lista para usar no abarca tu política o si deseas crear tu propio clasificador, las técnicas de ajuste eficientes de parámetros, como el ajuste de mensajes y LoRA, proporcionan un framework eficaz. En estos métodos, en lugar de ajustar todo el modelo, puedes usar una cantidad limitada de datos para entrenar un pequeño conjunto de parámetros importantes del modelo. Esto permite que tu modelo aprenda comportamientos nuevos, como la clasificación para tu nuevo caso práctico de seguridad, con relativamente pocos datos de entrenamiento y potencia de procesamiento. Este enfoque te permite desarrollar herramientas de seguridad personalizadas para tus propios usuarios y tareas.

A fin de ilustrar cómo funciona, en este codelab, se muestra el código necesario para configurar un "clasificador ágil". En el codelab, se muestran los pasos para transferir datos, formatearlos para el LLM, entrenar pesos de LoRA y, luego, evaluar los resultados. Gemma permite compilar estos clasificadores potentes con solo unas pocas líneas de código. Para obtener una descripción general más detallada, nuestro artículo de investigación "Hacia los clasificadores de texto Agile para todos" muestra cómo puedes usar estas técnicas a fin de entrenar una variedad de tareas de seguridad para lograr un rendimiento de vanguardia con solo unos cientos de ejemplos de entrenamiento.

En este instructivo de ejemplo, puedes entrenar un clasificador para la incitación al odio o a la violencia con el conjunto de datos ETHOS, un conjunto de datos disponible públicamente para la detección de incitación al odio o a la violencia creado a partir de los comentarios de YouTube y Reddit. Cuando se entrena con el modelo Gemma más pequeño, con solo 200 ejemplos (un poco menos de un cuarto del conjunto de datos), alcanza una puntuación F1 de 0.80 y ROC-AUC de 0.78. Este resultado se compara favorablemente con los resultados de última generación que se informan en esta tabla de clasificación. Cuando se entrena con los ejemplos 800, como los otros clasificadores de la tabla de clasificación, el clasificador ágil basado en Gemma alcanza una puntuación F1 de 83.74 y una puntuación ROC-AUC de 88.17. Puedes usar este clasificador de inmediato o adaptarlo con el instructivo del Clasificador Agile Gemma.

Instructivos del clasificador Agile de Gemma

Iniciar codelab Iniciar Google Colab

Prácticas recomendadas para configurar protecciones

Se recomienda encarecidamente usar clasificadores de seguridad. Sin embargo, las barreras de seguridad pueden hacer que el modelo generativo no produzca nada para el usuario si se bloquea el contenido. Las aplicaciones deben diseñarse para manejar este caso. Los chatbots más populares se encargan de esto proporcionando respuestas estándar ("Lo siento, soy un modelo de lenguaje, no puedo ayudarte con esta solicitud").

Encuentra el equilibrio correcto entre inseguridad y utilidad: Cuando usas clasificadores de seguridad, es importante comprender que cometen errores, incluidos los falsos positivos (p.ej., declarar que un resultado no es seguro cuando no lo es) y los falsos negativos (no etiquetar un resultado como no seguro, cuando lo es). Mediante la evaluación de los clasificadores con métricas como F1, Precisión, Recuperación y AUC-ROC, puedes determinar cómo deseas compensar los errores falsos positivos de los falsos negativos. Si cambias el umbral de los clasificadores, ayudas a encontrar un equilibrio ideal que evite el filtrado excesivo de los resultados y, al mismo tiempo, proporcione la seguridad adecuada.

Verifica tus clasificadores en busca de sesgos no deseados: Los clasificadores de seguridad, como cualquier otro modelo de AA, pueden propagar sesgos no deseados, como estereotipos socioculturales. Las aplicaciones deben evaluarse de forma adecuada para detectar comportamientos potencialmente problemáticos. En particular, los clasificadores de seguridad del contenido pueden activarse en exceso en contenido relacionado con identidades que, con mayor frecuencia, son objetivo de lenguaje abusivo en línea. Por ejemplo, cuando se lanzó la API de Perspective por primera vez, el modelo mostró puntuaciones de toxicidad más altas en los comentarios que hacían referencia a ciertos grupos de identidad (blog). Este comportamiento desencadenante demasiado puede ocurrir porque los comentarios que mencionan términos de identidad para grupos a los que se dirige con más frecuencia (p.ej., palabras como "negro", "musulmán", "feminista", "mujer", "gay", etc.) son por naturaleza tóxicos. Cuando los conjuntos de datos que se usan en el entrenamiento de clasificadores tienen desequilibrios significativos para los comentarios que contienen ciertas palabras, los clasificadores pueden generalizar en exceso y considerar que todos los comentarios con esas palabras son poco seguros. Descubre cómo el equipo de Jigsaw mitigaron este sesgo no deseado.

Recursos para desarrolladores