Um dos desafios recorrentes em plataformas online é lidar com o upload de imagens que podem conter conteúdo impróprio. A moderação manual é cara, lenta e sujeita a erros. Implementar uma solução com modelos de IA, por outro lado, pode parecer complexo, envolvendo deploy de modelos, desenvolvimento de APIs e integrações.
Uma abordagem para simplificar esse processo é utilizar a combinação de um modelo de detecção de objetos como o DAMOYOLO-S com uma plataforma de baixo código como o Dify. Isso permite criar um sistema de moderação automatizado sem a necessidade de escrever código extensivo.
Por que um sistema de moderação automatizado?
Plataformas que recebem conteúdo gerado pelo usuário precisam garantir que as imagens cumpram suas diretrizes, identificando itens como armas, maetrial adulto, códigos QR promocionais ou outros objetos indesejados. O DAMOYOLO-S é um modelo leve e eficaz na detecção desses objetos dentro de uma imagem. O Dify, por sua vez, oferece uma interface visual para orquestrar modelos de IA, lógica de negócios e ações, permitindo a criação de fluxos de trabalho (workflows) completos.
Preparando o Modelo para Consumo
Antes de integrar ao Dify, o modelo DAMOYOLO-S precisa estar acessível via uma API HTTP. Esta API recebe uma imagem (ou sua URL) e retorna os objetos detectados. Um exemplo simplificado de resposta em JSON seria:
{
"resultado": "sucesso",
"deteccoes": [
{"objeto": "tabaco", "confianca": 0.96, "coordenadas": [110, 160, 210, 260]},
{"objeto": "faca", "confianca": 0.88, "coordenadas": [310, 410, 360, 460]}
]
}
Com a API operacional, o Dify pode se conectar a ela para obter os resultados da detecção.
Construindo o Fluxo de Trabalho no Dify
No editor de workflow do Dify, a lógica é montada graficamente conectando blocos (nós).
1. Definindo o Gatilho
Um nó "Gatilho de Requisição HTTP" inicia o fluxo. Ele expõe um endpoint que o sistema de negócios chama quando uma nova imagem é enviada, passando dados como a URL da imagem.
2. Entegrando o Modelo de IA
Adiciona-se um nó "Chamar API" conectado ao gatilho. Nele, configura-se a chamada à API do DAMOYOLO-S, utilizando a URL da imagem recebida no passo anterior. A resposta com as detecções é então propagada no fluxo.
3. Lógica de Classificação
Um nó "Script" é usado para processar a lista de objetos detectados. A lógica verifica se algum dos itens probiidos foi identificado com uma confiança mínima. Um exemplo em Python, com variáveis e estrutura modificada, seria:
# Obter dados brutos da detecção do nó anterior
dados_brutos = inputs['resposta_api_modelo']
# Definir termos que indicam violação
termos_proibidos = {"tabaco", "faca", "qrcode"}
violacoes_detectadas = []
# Iterar e validar cada item retornado
for deteccao in dados_brutos.get('deteccoes', []):
rotulo = deteccao.get('objeto')
nivel_confianca = deteccao.get('confianca', 0)
if rotulo in termos_proibidos and nivel_confianca > 0.85:
violacoes_detectadas.append(rotulo)
# Preparar a decisão final
if violacoes_detectadas:
decisao_final = {
'aprovacao': False,
'motivo': f"Conteúdo impróprio identificado: {', '.join(violacoes_detectadas)}"
}
else:
decisao_final = {
'aprovacao': True,
'motivo': "A imagem está em conformidade."
}
# Definir a saída para os próximos nós
outputs = {'decisao': decisao_final}
4. Ações Baseadas na Decisão
Um nó "Ramificação Condicional" avalia a saída da etapa anterior (ex: o campo 'aprovacao').
- Caminho Aprovado: Pode-se conectar a um nó que chama uma API para sinalizar a imagem como segura, ou simplesmente encerrar o fluxo.
- Caminho Rejeitado: Este caminho permite múltiplas ações paralelas, como:
- Notificar o sistema de origem sobre a rejeição, bloqueando a publicação.
- Enviar um alerta por e-mail ou webhook (Slack, Teams) com detalhes da violação para equipe de moderação.
- Gravar um registro em um banco de dados com a imagem, os objetos detectados e o horário para auditorias.
5. Publicação
Após conectar todos os nós e verificar a lógica, o workflow é publicado. O Dify fornece um endpoint único que o sistema de negócios passa a consumir.
Extensões e Possibilidades
O fluxo básico pode ser expandido com diversas funcionalidades:
- Moderação por Níveis: Criar diferentes regras. Um "tabaco" pode gerar um alerta para revisão humana, enquanto uma "faca" dispara uma rejeição imediata e automática.
- Combinação de Modelos: Adicionar um nó de OCR (Reconhecimento Óptico de Caracteres) para verificar se há texto proibido na imagem, combinando os resultados em um único script de análise.
- Painel de Métricas: Usar nós de "Banco de Dados" para armazenar todas as decisões. Posteriormente, esses dados podem ser visualizados em gráficos dentro do próprio Dify ou em ferramentas de BI, mostrando taxas de aprovação e tipos de violação mais comuns.
Essa abordagem com Dify e DAMOYOLO-S desacopla a lógica de moderação do código do aplicativo principal, permitindo que profissionais de negócio ajustem regras, adicione novos itens proibidos ou modifique limiares de confiança diretamente na interface visual, agilizando a manutenção e a evolução do sistema.