Portal TransformaΓ§Γ£o Digital
MODULO 2.9

❌ Filosofia de Falha

Definindo o que constitui falha do sistema e como garantir outputs reais e validados.

6
Topicos
~25
Minutos
Interm.
Nivel
Principio
Tipo
1

❌ Simulacao = Falha do sistema

Se a IA simula fazer algo ao inves de realmente fazer, o sistema falhou.

Exemplos de simulacao

❌ Falha: "Aqui esta o codigo que faria a consulta ao banco..."

IA descreve o que faria ao inves de executar

❌ Falha: "Vou criar um arquivo chamado relatorio.pdf..."

IA anuncia acao sem produzir artefato real

βœ“ Sucesso: Sistema executa query e retorna dados reais

Acao concreta com resultado verificavel

2

❌ Placeholders = Falha do sistema

Qualquer output com placeholders ou conteudo incompleto e uma falha.

Detectando placeholders

# Padroes que indicam placeholder
placeholder_patterns = [
    "[INSERIR_AQUI]",
    "{{NOME_DO_USUARIO}}",
    "...",
    "[TODO]",
    "Lorem ipsum",
    "[exemplo]",
    "XXX",
    "[preencher]"
]

def validate_output(content: str) -> bool:
    for pattern in placeholder_patterns:
        if pattern.lower() in content.lower():
            raise ValidationError(f"Placeholder detectado: {pattern}")
    return True

πŸ’‘ Regra de Ouro

Se o output precisa de edicao humana para ser utilizavel, o sistema nao cumpriu sua funcao.

3

❌ Dados ficticios = Falha do sistema

IA que inventa dados em vez de usar dados reais e uma falha critica.

Dados ficticios

  • βœ—Estatisticas inventadas
  • βœ—Citacoes falsas
  • βœ—Nomes de pessoas/empresas inventados
  • βœ—Datas aproximadas
  • βœ—Valores "tipicos" em vez de reais

Dados validos

  • βœ“Dados do banco de dados
  • βœ“Informacoes do contexto injetado
  • βœ“Dados de APIs externas
  • βœ“Informacoes do request
  • βœ“"Nao sei" quando nao sabe
4

βœ… Criterios de sucesso

Um output e bem-sucedido quando:

  • βœ“Completo: Nao requer edicao humana para uso
  • βœ“Real: Todos os dados sao verificaveis
  • βœ“Executado: Acoes foram realmente realizadas
  • βœ“Rastreavel: Origem de cada dado e clara
  • βœ“Conforme: Segue as restricoes da persona
5

πŸ” Validacao de outputs

class OutputValidator:
    def validate(self, output: dict) -> ValidationResult:
        errors = []

        # 1. Verificar completude
        if self.has_placeholders(output):
            errors.append("Output contem placeholders")

        # 2. Verificar dados reais
        if self.has_fictional_data(output):
            errors.append("Output contem dados ficticios")

        # 3. Verificar schema
        if not self.matches_schema(output):
            errors.append("Output nao segue schema esperado")

        # 4. Verificar restricoes da persona
        if not self.respects_constraints(output):
            errors.append("Output viola restricoes da persona")

        return ValidationResult(
            success=len(errors) == 0,
            errors=errors
        )
6

πŸ› οΈ Tratamento de erros

Quando uma falha e detectada, o sistema deve tratar adequadamente.

Estrategias de tratamento

1. Retry com contexto adicional

Fornecer mais informacoes e tentar novamente

2. Fallback para modelo diferente

Usar modelo mais capaz se o atual falhar

3. Falhar explicito

Retornar erro claro ao usuario se nao for possivel completar

⚠️ Nunca faca isso

Nunca retorne um output parcial ou com problemas fingindo que esta correto. E melhor falhar explicitamente do que entregar lixo silenciosamente.

πŸ“ Resumo do Modulo

βœ—Simulacao - IA descrevendo ao inves de fazer
βœ—Placeholders - Conteudo incompleto
βœ—Dados ficticios - Informacoes inventadas
βœ“Sucesso - Output completo, real, executado