Como moderar e classificar textos em Python com a OpenAI Moderation

Neste post, vamos aprender como moderar e classificar textos em Python de forma prática e com poucas linhas de código.

Nos últimos anos, a moderação de conteúdo se tornou um desafio para plataformas digitais.

Vamos descobrir aqui o que é exatamente esta moderação e classificação de conteúdo, e também como é possível implementar uma ferramenta que faz isso de forma automática e simples!

Caso prefira esse conteúdo no formato de vídeo-aula, assista ao vídeo abaixo ou acesse o nosso canal do YouTube!

Para receber a planilha que usamos na aula no seu e-mail, preencha:

O que é moderação de conteúdo?

Moderação de conteúdo é o processo de analisar, filtrar e controlar materiais publicados em plataformas digitais (como comentários, imagens e vídeos) para garantir que estejam de acordo com regras e políticas.

Ela pode ser feita manualmente por humanos ou automaticamente por IA, bloqueando ofensas, discurso de ódio, spam e outros conteúdos inadequados. Seu objetivo é manter ambientes online seguros, inclusivos e dentro da lei.

Redes sociais, e-commerces, fóruns e até sistemas internos de empresas precisam lidar diariamente com comentários ofensivos, discurso de ódio, assédio e outros tipos de conteúdo inadequado.

Fazer essa moderação manualmente é ineficiente, caro e emocionalmente desgastante para os moderadores humanos.

Felizmente, a Inteligência Artificial oferece soluções poderosas para automatizar esse processo, e neste guia, você vai aprender como implementar um sistema de moderação automática usando Python e a API da OpenAI.

Por que usar IA para moderação de conteúdo?

Antes de começarmos a ver o código, é importante entender por que, para além da velocidade, a moderação baseada em IA é tão valiosa:

  1. Escalabilidade
    • Analisar milhares de comentários por segundo é impossível para humanos, mas trivial para um sistema automatizado.
  2. Consistência
    • A IA não tem viés emocional. Ela aplica as mesmas regras para todos os usuários.
  3. Redução de Custos
    • Empresas gastam milhões com equipes de moderação. Automatizar esse processo pode cortar custos drasticamente.
  4. Resposta em Tempo Real
    • Bloquear conteúdo ofensivo antes que ele seja publicado evita danos à comunidade.
  5. Flexibilidade
    • Você pode ajustar os critérios de moderação conforme as políticas da sua plataforma.

A OpenAI oferece uma API de Moderação poderosa e fácil de usar, que classifica textos (e até imagens) em categorias como ódio, assédio, violência e conteúdo sexual. Vamos ver como implementá-la!

Se você gosta deste tipo de conteúdo, onde aprendemos coisas simples utilizando Python e inteligência artificial, aprenda também a criar legendas automáticas com Python e OpenAI e a transcrever áudios com Python e o OpenAI Whisper.

Configurando o Ambiente

Pré-requisitos

  • Python 3.8+
  • Conta na OpenAI (para obter uma API Key)
  • Bibliotecas openai e python-dotenv

Instalação

Execute no seu terminal:

Codigo
pip install openai python-dotenv

Obtendo a Chave da API

  1. Acesse OpenAI API Keys.
  2. Crie uma nova chave (ela começa com sk-).
  3. Armazene-a com segurança! Nunca a compartilhe publicamente.

Configurando as Variáveis de Ambiente

Crie um arquivo .env no mesmo diretório do seu script:

Codigo
OPENAI_API_KEY=sua-chave-aqui




Isso evita que você exponha a chave no código.

Ícone PythonPython Impressionador

Você vai aprender a linguagem de Programação que mais cresce no Mundo para fazer automações incríveis, desenvolver sites, fazer análises de dados, trabalhar com Ciência de Dados, Inteligência Artificial, mesmo que você nunca tenha tido nenhum contato com Programação na vida.

Começar agoraSeta para a direita
Fundo PythonTelas Python
Luz Python

Implementando a Moderação com Python

Vamos ao código! O exemplo abaixo mostra como detectar automaticamente se um texto é ofensivo.

Código Completo

Python
from openai import OpenAI
from dotenv import load_dotenv

# Carrega a chave da API do arquivo .env
load_dotenv()

# Inicializa o cliente da OpenAI
cliente = OpenAI()

# Texto a ser moderado
texto = "O Lira é muito burro, não sabe nada de Python"

# Envia para a API de Moderação
resposta = cliente.moderations.create(
    model="omni-moderation-latest",  # Modelo que analisa texto e imagem
    input=texto
)

# Extrai o resultado da moderação
moderacao = resposta.results[0]

# Verifica se o conteúdo foi sinalizado como ofensivo
print("Foi considerado ofensivo?", moderacao.flagged)

# Mostra as categorias detectadas
print("Categorias:", moderacao.categories.to_dict())

Explicação passo a passo

  1. Carregamos a chave da API usando python-dotenv (boa prática de segurança).
  2. Criamos um cliente para interagir com a OpenAI.
  3. Enviamos o texto para a API de Moderação usando omni-moderation-latest (que também funciona para imagens).
  4. Analisamos a resposta:
    • moderacao.flagged → True se o texto for ofensivo.
    • moderacao.categories → Mostra quais tipos de violação foram detectados.

Interpretando os Resultados

Quando executamos o código com o texto “O Lira é muito burro, não sabe nada de Python”, a resposta foi:

Codigo
Foi considerado ofensivo? True
Categorias: {
    'harassment': True,
    'harassment/threatening': False,
    'hate': False,
    'hate/threatening': False,
    'self-harm': False,
    'sexual': False,
    'sexual/minors': False,
    'violence': False,
    'violence/graphic': False
}




O Que Isso Significa?

  • harassment: True → A API identificou o texto como assédio (por conter insultos).
  • As outras categorias (hate, violence, etc.) foram marcadas como False, porque o texto não se encaixa nelas.

Isso permite ações personalizadas:

  • Se for harassment, você pode ocultar o comentário.
  • Se for hate, pode banir o usuário.
  • Se for self-harm, pode alertar um moderador humano.

Aplicações Práticas

1. Moderação em Redes Sociais

Python
comentarios = ["Isso é ótimo!", "Você é um idiota!", "Vou te bater!"]

for comentario in comentarios:
    resposta = cliente.moderations.create(input=comentario)
    if resposta.results[0].flagged:
        print(f"Comentário bloqueado: {comentario}")




Saída:

Codigo
Comentário bloqueado: Você é um idiota!
Comentário bloqueado: Vou te bater!

2. Filtro de Reviews em E-commerce

Python
reviews = [
    "Produto excelente!",
    "Que produto horrível, espero que a empresa queime!"
]

for review in reviews:
    moderacao = cliente.moderations.create(input=review).results[0]
    if moderacao.flagged:
        print(f"Review removido (motivo: {moderacao.categories.to_dict()})")




Saída:

Codigo
Review removido (motivo: {'violence': True, ...})




3. Chatbots com Filtro de Conteúdo

Python
mensagem_do_usuario = "Seu sistema é uma merda!"

resposta = cliente.moderations.create(input=mensagem_do_usuario)
if resposta.results[0].flagged:
    print("Desculpe, não toleramos linguagem ofensiva.")
else:
    responder_chatbot()

Vantagens do Modelo Omni-Moderation

A OpenAI oferece dois modelos para moderação:

  1. text-moderation-latest (só texto) → Mais barato.
  2. omni-moderation-latest (texto + imagens) → Mais completo.

Qual escolher?

  • Se só precisa moderar texto, use o primeiro.
  • Se quer analisar imagens também, use o Omni.

Limitações e Boas Práticas

  • Falsos positivos: Às vezes, a API pode marcar textos inofensivos. Sempre revise as regras.
  • Contexto importa: Piadas e sarcasmo podem ser mal interpretados.
  • Combine com moderação humana: Use IA para filtrar automaticamente e humanos para casos complexos.

O que aprendemos com esta aula?

Automatizar a moderação de conteúdo com Python e OpenAI é rápido, barato e eficiente.

Com poucas linhas de código, você pode:
✅ Filtrar discurso de ódio, assédio e ameaças.
✅ Proteger sua comunidade em tempo real.
✅ Reduzir custos com moderação manual.

Próximos passos:

  • Teste com diferentes tipos de texto.
  • Integre em um bot do Discord, WordPress ou sistema interno.
  • Explore a documentação oficial para mais recursos.

E não esqueça de conferir nosso outros posts onde ensinamos muitas coisas que você pode fazer com Python, do básico ao avançado!

E se você quer aprender Python de forma completa e prática, com projetos aplicados e suporte especializado, conheça o Curso Python Impressionador. Ele vai te levar do zero até a criação de soluções avançadas que realmente geram resultado.

Hashtag Treinamentos

Para acessar outras publicações de Python, clique aqui!


Quer aprender mais sobre Python com um minicurso básico gratuito?

Posts mais recentes de Python

Posts mais recentes da Hashtag Treinamentos