O loop que aprende|INEMA.CLUB-PRO

Aula 1 · 15 min

Hipótese com número

Um loop que aprende começa por uma frase que pode dar errado. "Melhorar a triagem" nunca dá errado, por isso não ensina nada. Nesta aula você escreve a hipótese com processo, métrica, atual, alvo, comando de medida e o que não pode piorar, e calcula quanto tempo o teste leva antes de rodá-lo.

Começar a aula
Caderno de laboratório aberto ao lado de um paquímetro e de um mostrador com uma marca amarela no alvo.

Nesta aula você vai

  1. 1Os sete campos de uma hipótese testável
  2. 2Três velocidades de métrica: dinheiro, sinal e artefato
  3. 3Amostra mínima: quantas semanas o teste leva
  4. 4Por que 3% → 5% quase nunca dá para testar direto

Objetivo: escrever uma hipótese com métrica, atual, alvo, comando de medida e sem-piorar, e calcular quanto tempo o teste leva antes de rodar.

01De uma vontade a uma hipótese testável

É a primeira pergunta do /loop-r iniciar: qual processo, e qual número quer mover de quanto para quanto. Clique em cada bloco.

A hipótese é escrita antes do experimento, num arquivo. Depois do resultado, ninguém reescreve o alvo.

Campos e conta vêm de loop-r/.claude/skills/loop-r/SKILL.md (iniciar) e loop-r/docs/05 (medição).

02Três velocidades de métrica

O LOOP-R propõe uma de cada e testa sobre a mais rápida que ainda tem ligação plausível com a de dinheiro (loop-r/docs/05 §1).

1. Dinheiro

Conversão, ticket, margem. É o que importa, mas quem responde é o cliente, semanas depois.

Enquanto não há volume, ela vira um "sem piorar" vigiado, não o alvo do teste.

03O modelo e o ensaio

A hipótese é um arquivo de texto com sete campos. O hipotese.py confere e, para teste A/B, faz a conta da amostra (teste z de duas proporções, 95% de confiança, 80% de poder).

Arquivo · kit/hipoteses/triagem.md
hipótese: incluir sinônimos de reembolso (estorno, devolução) nas regras leva o acerto de 0.70 a 0.80
métrica: acerto da triagem nos 40 casos de casos.jsonl
atual: 0.70
alvo: 0.80
direção: maximizar
medida por: python3 kit/medir.py <repo>
sem piorar: acerto nos casos escondidos (fora do repo)
Terminal · ensaio sem custo
K=~/projetos/loop-r-eng-aprende-v72/kit   # git clone https://github.com/inematds/loop-r-eng-aprende-v72 ~/projetos/loop-r-eng-aprende-v72
for h in vaga triagem; do
  echo "## $h"; python3 $K/hipotese.py $K/hipoteses/$h.md; echo "saída: $?"
done
echo "## vendas: conversão 3% → 5%, 50 propostas por semana"
python3 $K/hipotese.py $K/hipoteses/vendas-conversao.md --por-semana 50; echo "saída: $?"
echo "## vendas: resposta em 48h 20% → 30% (métrica de sinal)"
python3 $K/hipotese.py $K/hipoteses/vendas-resposta.md --por-semana 50 | tail -2
Exemplo do repositório
## vaga
HIPÓTESE: REPROVADA
  falta: atual, alvo, medida por, sem piorar
  hipótese vaga sem número
saída: 1
## triagem
HIPÓTESE: OK — acerto da triagem nos 40 casos de casos.jsonl: 0.7 → 0.8 (maximizar)
  medida por: python3 kit/medir.py <repo>
  sem piorar: acerto nos casos escondidos (fora do repo)
saída: 0
## vendas: conversão 3% → 5%, 50 propostas por semana
HIPÓTESE: OK — conversão (proposta que virou pacote pago em até 15 dias): 0.03 → 0.05 (maximizar)
  medida por: coluna resultado de dados/execucoes.csv, A contra B
  sem piorar: margem média, reclamações, opt-out
  amostra mínima: 1506 por variante (95%, poder 80%) — 3012 no total
  com 50 por semana: 61 semanas
  AVISO: mais de 12 semanas — teste uma métrica de sinal mais rápida e vigie esta
saída: 0
## vendas: resposta em 48h 20% → 30% (métrica de sinal)
  amostra mínima: 294 por variante (95%, poder 80%) — 588 no total
  com 50 por semana: 12 semanas

O loop-r/docs/05 arredonda a mesma conta para "~1.500 por variante, 60 semanas" (3% → 5%) e "~300, 12 semanas" (20% → 30%). Com 50 propostas por semana, a conversão leva mais de um ano; a resposta, três meses.

04Prática

Ensaio primeiro, depois a sua hipótese.

E1 · Reprovar e aprovar

5 min

Clone o repositório do curso e rode o ensaio acima.

Pronto quando: a vaga termina com HIPÓTESE: REPROVADA e saída: 1; a triagem com HIPÓTESE: OK e saída: 0; a conversão mostra 61 semanas e o AVISO.

E2 · A sua hipótese

20 min

Escolha um processo seu que já tem número (taxa de acerto de um agente, tempo de build, testes que passam, respostas). Escreva hipotese.md com os sete campos, com a medida como comando que você consegue rodar hoje. Se for A/B com pessoas, rode com --por-semana e o seu volume real.

Pronto quando: python3 $K/hipotese.py hipotese.md; echo "saída: $?" → HIPÓTESE: OK e saída: 0; e o comando de "medida por", rodado agora, imprime o valor de "atual".

E3 · Sinal no lugar de dinheiro

10 min

Se o seu teste passou de 12 semanas, troque a métrica-alvo por uma de sinal ou de artefato e passe a de dinheiro para "sem piorar".

Pronto quando: python3 $K/hipotese.py hipotese.md --por-semana [seu volume] → sem a linha AVISO.

05Teste da aula

Pergunta 1 de 4

"Melhorar as regras de triagem para o suporte ficar mais rápido." O que falta para ser hipótese testável?competência

06Em três frases

NúmeroHipótese tem métrica, atual, alvo, direção, comando de medida e sem-piorar; sem isso, não ensina nada.
VelocidadeTeste sobre a métrica mais rápida que ainda liga com a de dinheiro; vigie a lenta.
Conta antesA amostra mínima diz se o teste cabe no seu volume antes de você gastar semanas.

Para ir além

Próxima aula