Visita nuestro libro de recetas de moderación de contenido para ver un ejemplo de implementación de moderación de contenido usando Claude.
Antes de construir con Claude
Decide si usar Claude para moderación de contenido
Aquí hay algunos indicadores clave de que deberías usar un LLM como Claude en lugar de un enfoque tradicional de ML o basado en reglas para moderación de contenido:Quieres una implementación rentable y rápida
Quieres una implementación rentable y rápida
Deseas tanto comprensión semántica como decisiones rápidas
Deseas tanto comprensión semántica como decisiones rápidas
Necesitas decisiones de política consistentes
Necesitas decisiones de política consistentes
Tus políticas de moderación probablemente cambiarán o evolucionarán con el tiempo
Tus políticas de moderación probablemente cambiarán o evolucionarán con el tiempo
Requieres razonamiento interpretable para tus decisiones de moderación
Requieres razonamiento interpretable para tus decisiones de moderación
Necesitas soporte multilingüe sin mantener modelos separados
Necesitas soporte multilingüe sin mantener modelos separados
Requieres soporte multimodal
Requieres soporte multimodal
Genera ejemplos de contenido para moderar
Antes de desarrollar una solución de moderación de contenido, primero crea ejemplos de contenido que debería ser marcado y contenido que no debería ser marcado. Asegúrate de incluir casos límite y escenarios desafiantes que pueden ser difíciles para un sistema de moderación de contenido manejar efectivamente. Después, revisa tus ejemplos para crear una lista bien definida de categorías de moderación. Por ejemplo, los ejemplos generados por una plataforma de redes sociales podrían incluir lo siguiente:Esta película fue genial, realmente la disfruté. ¡El actor principal realmente la rompió!, el sistema de moderación de contenido necesita reconocer que “la rompió” es una metáfora, no una indicación de violencia real. Por el contrario, a pesar de la falta de menciones explícitas de violencia, el comentario Elimina esta publicación ahora o mejor escóndete. Voy tras ti y tu familia. debería ser marcado por el sistema de moderación de contenido.
La lista unsafe_categories puede ser personalizada para ajustarse a tus necesidades específicas. Por ejemplo, si deseas prevenir que menores creen contenido en tu sitio web, podrías agregar “Publicación de Menores” a la lista.
Cómo moderar contenido usando Claude
Selecciona el modelo Claude correcto
Al seleccionar un modelo, es importante considerar el tamaño de tus datos. Si los costos son una preocupación, un modelo más pequeño como Claude Haiku 3 es una excelente opción debido a su rentabilidad. A continuación hay una estimación del costo para moderar texto para una plataforma de redes sociales que recibe mil millones de publicaciones por mes:-
Tamaño del contenido
- Publicaciones por mes: 1 mil millones
- Caracteres por publicación: 100
- Total de caracteres: 100 mil millones
-
Tokens estimados
- Tokens de entrada: 28.6 mil millones (asumiendo 1 token por 3.5 caracteres)
- Porcentaje de mensajes marcados: 3%
- Tokens de salida por mensaje marcado: 50
- Total de tokens de salida: 1.5 mil millones
-
Costo estimado de Claude Haiku 3
- Costo de tokens de entrada: 2,860 MTok * $0.25/MTok = $715
- Costo de tokens de salida: 1,500 MTok * $1.25/MTok = $1,875
- Costo mensual: $715 + $1,875 = $2,590
-
Costo estimado de Claude Sonnet 4.5
- Costo de tokens de entrada: 2,860 MTok * $3.00/MTok = $8,580
- Costo de tokens de salida: 1,500 MTok * $15.00/MTok = $22,500
- Costo mensual: $8,580 + $22,500 = $31,080
explanation de la respuesta.Construye un prompt sólido
Para usar Claude para moderación de contenido, Claude debe entender los requisitos de moderación de tu aplicación. Comencemos escribiendo un prompt que te permita definir tus necesidades de moderación:moderate_message contiene un prompt de evaluación que incluye las categorías de contenido inseguro y el mensaje que deseamos evaluar. El prompt le pide a Claude que evalúe si el mensaje debe ser moderado, basado en las categorías inseguras que definimos.
La evaluación del modelo se analiza luego para determinar si hay una violación. Si hay una violación, Claude también devuelve una lista de categorías violadas, así como una explicación de por qué el mensaje es inseguro.
Evalúa tu prompt
La moderación de contenido es un problema de clasificación. Por lo tanto, puedes usar las mismas técnicas descritas en nuestro libro de recetas de clasificación para determinar la precisión de tu sistema de moderación de contenido. Una consideración adicional es que en lugar de tratar la moderación de contenido como un problema de clasificación binaria, puedes crear múltiples categorías para representar varios niveles de riesgo. Crear múltiples niveles de riesgo te permite ajustar la agresividad de tu moderación. Por ejemplo, podrías querer bloquear automáticamente consultas de usuario que se consideren de alto riesgo, mientras que los usuarios con muchas consultas de riesgo medio son marcados para revisión humana.assess_risk_level que usa Claude para evaluar el nivel de riesgo de un mensaje. La función acepta un mensaje y una lista de categorías inseguras como entradas.
Dentro de la función, se genera un prompt para Claude, incluyendo el mensaje a ser evaluado, las categorías inseguras y instrucciones específicas para evaluar el nivel de riesgo. El prompt instruye a Claude a responder con un objeto JSON que incluye el nivel de riesgo, las categorías violadas y una explicación opcional.
Este enfoque permite moderación de contenido flexible asignando niveles de riesgo. Puede integrarse sin problemas en un sistema más grande para automatizar el filtrado de contenido o marcar comentarios para revisión humana basado en su nivel de riesgo evaluado. Por ejemplo, al ejecutar este código, el comentario Elimina esta publicación ahora o mejor escóndete. Voy tras ti y tu familia. se identifica como de alto riesgo debido a su amenaza peligrosa. Por el contrario, el comentario ¡¡Mantente alejado de los teléfonos celulares 5G!! Están usando 5G para controlarte. se categoriza como de riesgo medio.
Despliega tu prompt
Una vez que tengas confianza en la calidad de tu solución, es hora de desplegarla a producción. Aquí hay algunas mejores prácticas a seguir cuando uses moderación de contenido en producción:-
Proporciona retroalimentación clara a los usuarios: Cuando la entrada del usuario es bloqueada o una respuesta es marcada debido a moderación de contenido, proporciona retroalimentación informativa y constructiva para ayudar a los usuarios a entender por qué su mensaje fue marcado y cómo pueden reformularlo apropiadamente. En los ejemplos de código anteriores, esto se hace a través de la etiqueta
explanationen la respuesta de Claude. - Analiza el contenido moderado: Mantén un registro de los tipos de contenido siendo marcados por tu sistema de moderación para identificar tendencias y áreas potenciales de mejora.
- Evalúa y mejora continuamente: Evalúa regularmente el rendimiento de tu sistema de moderación de contenido usando métricas como seguimiento de precisión y recuperación. Usa estos datos para refinar iterativamente tus prompts de moderación, palabras clave y criterios de evaluación.
Mejora el rendimiento
En escenarios complejos, puede ser útil considerar estrategias adicionales para mejorar el rendimiento más allá de las técnicas estándar de ingeniería de prompts. Aquí hay algunas estrategias avanzadas:Define temas y proporciona ejemplos
Además de listar las categorías inseguras en el prompt, se pueden hacer mejoras adicionales proporcionando definiciones y frases relacionadas con cada categoría.moderate_message_with_definitions expande la función anterior moderate_message permitiendo que cada categoría insegura sea emparejada con una definición detallada. Esto ocurre en el código reemplazando la lista unsafe_categories de la función original con un diccionario unsafe_category_definitions. Este diccionario mapea cada categoría insegura a su definición correspondiente. Tanto los nombres de las categorías como sus definiciones se incluyen en el prompt.
Notablemente, la definición para la categoría Asesoramiento Especializado ahora especifica los tipos de asesoramiento financiero que deberían ser prohibidos. Como resultado, el comentario ¡Es un gran momento para invertir en oro!, que previamente pasó la evaluación moderate_message, ahora desencadena una violación.
Considera el procesamiento por lotes
Para reducir costos en situaciones donde la moderación en tiempo real no es necesaria, considera moderar mensajes en lotes. Incluye múltiples mensajes dentro del contexto del prompt, y pide a Claude que evalúe qué mensajes deben ser moderados.batch_moderate_messages maneja la moderación de un lote completo de mensajes con una sola llamada a la API de Claude.
Dentro de la función, se crea un prompt que incluye la lista de mensajes a evaluar, las categorías de contenido inseguro definidas y sus descripciones. El prompt dirige a Claude a devolver un objeto JSON listando todos los mensajes que contienen violaciones. Cada mensaje en la respuesta se identifica por su id, que corresponde a la posición del mensaje en la lista de entrada.
Ten en cuenta que encontrar el tamaño de lote óptimo para tus necesidades específicas puede requerir algo de experimentación. Mientras que tamaños de lote más grandes pueden reducir costos, también podrían llevar a una ligera disminución en la calidad. Además, podrías necesitar aumentar el parámetro max_tokens en la llamada a la API de Claude para acomodar respuestas más largas. Para detalles sobre el número máximo de tokens que tu modelo elegido puede generar, consulta la página de comparación de modelos.