Nota ao leitor: Esta é a versão completa do artigo “Previsão eleitoral com IA: como criei um sistema sem saber estatística”. Aqui, o relato é mais técnico e acompanha, minuto a minuto, a construção do sistema de previsão eleitoral. O texto é mais longo, mas traz algo que considero especialmente interessante: boa parte dos prompts que utilizei durante o processo, mostrando como uma sequência de perguntas, ajustes e decisões, em diálogo com a inteligência artificial, deu origem a uma ferramenta funcional em poucas horas.

Eis o artigo:

Leia Também:

Um desenvolvedor, uma esposa nervosa, uma filha convicta da derrota e um segundo turno que começou depois das 19h. Esta é a história de como uma noite de apuração virou um sistema de previsão, e do que ele mostrou.


Antes

Tudo começou nas semanas antes do pleito. Minha esposa nervosa. Minha filha desesperada. Um dia antes da eleição eu falei pras duas: tá tudo certo, vai dar certo. Não adiantou.

No dia, acordei e perguntei: tudo certo pra hoje? Certo pra vitória? A resposta: "Será?? Tá apertado, tá pau a pau, não sei como vai ser." Mandei mensagem pra minha filha: Acordou convicta? Ela: "Dormi na dúvida e acordei convicta da derrota."

A rua

Fui votar umas 9h. No caminho, uma sensação boa: os apoiadores do Bolsonaro não estavam nas ruas. Via 13 em todo lugar, camisa vermelha, adorno vermelho. Passou uma baiana com aquele adorno na cabeça, todo vermelho, e senti uma energia boa.

Na sala de votação, só fiscais e mesários. E o mesário que há anos atendia na minha seção, meu amigo de muito tempo e apoiador do Bolsonaro, não estava. Perguntei: "Cadê Bebel?" "Foi almoçar." Deixei minha filha de 1 ano e 7 meses brincando e fui pra urna. Cravei o 13, olhei a foto do Lula, sorri e pensei: não me decepcione.

Na saída, mais gente de vermelho. Quando passava alguém de camisa amarela da seleção eu sentia um incômodo, porque os bolsonaristas conseguiram deturpar a camisa do Brasil na cabeça de muita gente, na minha também. Mas ficava feliz que por cima da camisa amarela via-se o adesivo do 13 ao lado do coração. (Uns pareciam ter o coração do lado direito.)

Fora da Universidade Federal do Vale do São Francisco, onde votei (universidade que saiu do papel no governo Lula), encontrei o único bolsonarista do dia, também meu amigo (acho que tenho que rever minhas amizades). Ele perguntou se eu tinha confirmado o 22. Respondi: "Eu quero continuar em um Brasil democrata e faço isso por mim e por você."

(Um parêntese de quem foi checar: a Univasf foi criada por lei de 27 de junho de 2002, ainda no governo Fernando Henrique, mas só saiu do papel em outubro de 2004, quando começaram as aulas, já no governo Lula.)

Depois saí da Univasf com a filha mais nova e fui encontrar a família da esposa. Depois de um tempo de resenha, ela chegou e fomos pra casa descansar.

O primeiro teste de coração

Acordamos perto das 17h. Chamei: "acorda pra vitória". Ela ainda tensa. Então usei minhas habilidades de desenvolvedor vibe-coder.

Pedi ao Claude um paralelo com 2022, quando o Lula ganhou do Bolsonaro pai, e que me dissesse a que horas os votos do Nordeste começaram a fazer diferença. Em 2022 o Bolsonaro assumiu a frente logo no começo da contagem e a virada veio cerca de 1h40 depois. Montei uma mensagem pra minha esposa e minha filha mais velha (27 anos):

para quem tem coração fraco ou ansiedade alta.. fiz uma análise estatística me baseando em 2022 e o resultado é:

ignore o que sair na TV ou no app de apuração até as 18h, pois ainda não representa muita coisa devido à logística de recolher as Urnas.

Comece a olhar o gráfico de tendência entre 18h30 e 19h30.

Aí você vai ter uma noção..

Eu espero que a linha do cão que sempre começa alta por causa do sudeste, nesse momento esteja em leve declínio e apontando pra baixo... E a de Lula íngreme e acentuada pra cima desenhando a virada.

E só considere definido matematicamente quando o TSE declarar.

Qualquer xingamento ou choro de derrota antes disso, pode ser energia gasta à toa.

o gráfico é simulado mas os percentuais nos horários marcados são reais.

Então não sofram antes da hora e acreditem que a vitória virá pois é mais gostoso de virada.

Pra quem quer entender. Esse palpite tinha base. Os dados minuto a minuto de 2022 (que depois eu encontrei publicados por um pesquisador, o repositório wcota/br_eleicoes_2022_2T) mostram: a contagem abriu às 17h02 e o Bolsonaro assumiu a frente às 17h09, com 0,3% das seções apuradas. Foi ficando mais à frente até 18h04, quando chegou a 754 mil votos de vantagem. Às 18h45 o Lula virou, com 67,8% das seções apuradas. Ou seja, 1h43 depois da abertura.

Só que veio o primeiro teste de coração. Algo que eu nunca tinha visto: a votação, que acaba às 17h, foi esticada até as 19h ⏰.

O Nordeste, de novo

Quem acompanha sabe que em 2022 já tinha acontecido uma tentativa de atrapalhar o voto do Nordeste. Na tarde do segundo turno, a PRF fez blitze em ônibus nas estradas, e o relatório da própria corporação mostra que 324 dos ônibus parados naquele dia estavam no Nordeste, contra 152 no Centro-Oeste, 79 no Sul, 72 no Norte e 65 no Sudeste. O ministro Alexandre de Moraes mandou parar, a Polícia Federal depois indiciou quatro ex-dirigentes da PRF por tentar impedir o deslocamento de eleitores nordestinos, e o ex-diretor negou, no STF, qualquer direcionamento político. Foi dali que nasceu a hashtag #DeixaONordesteVotar, que foi parar no topo do Twitter na hora.

Dessa vez a coisa veio por outro lado. Em Salvador, ônibus ficaram parados nas garagens no dia do segundo turno. O Procon-BA contou mais de 500 ônibus parados em cinco garagens (outra fonte fala em 944; o número varia). A prefeitura disse que foi um problema com a retirada de adesivos de candidatos dos veículos. O TRE-BA mandou restabelecer a frota inteira, com gratuidade, e a Justiça determinou que a Polícia Federal investigue a possível redução de mais de 50% da frota naquele domingo. A investigação de Salvador segue em andamento; cada um tira sua conclusão, e a minha é a de quem viu "na cara dura" e achou que tentavam fazer meu Nordeste parar. Mas num para não, macho véi. O povo foi de carro, de carona (teve até político oferecendo carona solidária), de jumento, de carroça e "a pés", como se fala no interior. Haja coração.

A decisão e a pausa

A campanha do Lula foi ao STF por causa de Salvador, Feira de Santana e Lauro de Freitas. O ministro Cristiano Zanin, mandou prorrogar a votação até as 19h em todo o país, numa decisão tomada por volta das 16h30. O TSE aplicou a orientação nas seções que ainda estavam abertas e pausou a contabilização até depois das 19h. A divulgação ficou suspensa quando só 0,25% das urnas estavam apuradas, e o Lula estava na frente: lembro de 57,66% pra 42,34%. Por mim, nem precisava de mais nada. Parava ali e decretava. Mas aí tivemos que esperar até as 19h, quando apertaram de novo o botão e a apuração voltou a contar.

Curiosidade. Em 2022 a contagem também abriu com o Lula na frente: a primeira leitura foi 57,3%. Ele perdeu a liderança sete minutos depois, porque os primeiros votos vêm de lugares específicos, não do país inteiro. Em 2026 foi parecido: às 19h25 o Lula tinha 51,30% com 3,35% apurado (uma captura do painel guardada pelo Wayback Machine). Às 19h39, nas minhas primeiras leituras, ainda liderava: 50,48% com 9,99% apurado. Às 19h47 já estava atrás: 49,96% com 14,83% apurado, uns 14 mil votos de diferença. Ou seja, o Lula perdeu a liderança entre 19h39 e 19h47 e só a retomou às 20h25, uns 40 minutos depois. É por isso que "quem abre na frente" quase não diz nada.

Andar com fé

Pra disfarçar a tensão, pedi: "Alexa, toca Gilberto Gil no Spotify." E é nessas horas que o universo fala com a gente, ou o seu Ser fala com você, e se você não estiver preparado, não entende a mensagem. A Alexa começou a tocar "Andar com Fé", versão de 1982, do álbum Um Banda Um. Depois de um tempo, a mulher disse: "Boa escolha de música." Eu respondi: "Não fui eu. Só pedi que tocasse Gilberto Gil."

Liguei a TV . Meu sogro chegou. Começamos a ver a apuração na Globo, apesar dos pesares (entendedores entenderão). Lula em primeiro, Flávio em segundo, e a diferença caindo, o que era esperado, porque eu esperava justamente um cenário igual a 2022. E meu sogro começou: "Tamos caindo, o outro tá subindo." Ai meu Deus de um lado, ai meu pai do outro. Eu olhava e dizia: vamos virar daqui a 1 hora, calma, começou agora. E olhava pra minha filha mais nova, que só brincava e sorria.

O computador

Quando a ansiedade dos dois bateu, eu disse: "Perai, amor, segura a bebê um pouco, volto já." Fui ao computador, por volta de 19h30, criei a pasta do projeto, eleicoes2026, abri a sessão remota, conectei no celular e voltei pra sala. Dessa vez com a intenção de fazer uma predição melhor e mais rápida que os canais de comunicação padrão. E, claro, de acalmar a mulher.

⌨ Os prompts taquicardíacos...

19h33. O primeiro. [prompt] "Nessa página [link do G1] logo no início de um elemento que conta em tempo real os votos para presidente no segundo turno no Brasil. São números vindo direto só tse. Faça um script que leia esse elemento e me mostre o resultado atual sempre que eu pedir." Eu esperava um número no terminal antes da TV. O Claude achou os arquivos JSON por trás da página do g1, que é a mesma fonte que alimenta o painel, e fez o script.

19h38 e 19h43. [prompt] "...vá dizendo quais estados foram apurados. Pois quero acompanhar de perto quando o nordeste começar a ser apurado." Depois: [prompt] "Agora quero que busque os demais estados." Eu queria ver o Nordeste entrando em tempo real.

19h47. [prompt] "Eu sou pesquisador e quero estatística diferente do comum.. quero entender e enxergar insights ou sinais do momento da virada do lula. Pois se você puxar agora os dados verá que Bolsonaro passou." Aqui eu estava com a pressão nas costas. A primeira resposta foi uma projeção simples.

O que estava acontecendo. O Lula liderou na retomada das 19h, e às 19h39 ainda estava na frente (50,48% com 9,99% apurado). O Flávio passou a ficar na frente entre 19h39 e 19h47 (às 19h47 eram 50,04% a 49,96%, com 14,83% apurado) e o Lula só retomou a liderança às 20h25. Meu "Bolsonaro passou" das 19h47 foi exatamente esse momento.

19h51. [prompt] "Sua análise ingênua não serve pois é natural que o sudeste seja favorável a Bolsonaro e nordeste a lula." Esse foi o prompt que virou o projeto. Eu me recusei a aceitar uma projeção que ignorava a geografia do voto.

O que mudou. Em vez de projetar "o que está contado agora", o modelo passou a comparar cada estado com ele mesmo no 1º turno. Se a Bahia deu 70% pro Lula no 1º turno e agora deu 72%, esse +2 é o sinal. A projeção parte do 1º turno de cada estado e soma a mudança média observada. Isso é parecido com o que as emissoras de TV do mundo todo fazem em noite de eleição (o nome técnico é swing, ou "deslocamento").

E aqui vai um parágrafo à parte, porque é importante dizer: eu pensei exatamente isso, sem saber o nome nem o método. Eu não sabia que existia swing, nem que esse tipo de comparação já era usado em noite de eleição. Eu só queria saber como o Lula se comportava em cada estado: ele está melhor ou pior do que estava no primeiro turno? E queria que isso virasse um indicador promissor, um sinal que me dissesse, antes da TV, para onde a eleição estava indo. O nome técnico veio depois. A ideia veio da aflição de olhar o placar geral e saber que ele não dizia nada.

19h53. [prompt] "E ainda tem o fato que muitos que não votaram no turno 1, vão votar agora." O comparecimento subiu de fato: 2,96 milhões de pessoas a mais votaram no 2º turno, e a abstenção caiu de 21,08% para 19,22%.

19h57 e 19h59. [prompt] "Analisa se algum estado indica que vai ser diferente só primeiro turno a favor de Lula não importa quantos pontos percentuais. Cada ponto é válido pra virada." E depois: [prompt] "Quero que o script mostre sempre total geral a quantidade de deltas a favor de Lula." Eu queria um placar de "em quantos estados o Lula está melhor do que no 1º turno".

⏱ 20h03. O velocímetro. [prompt] "...velocidade que o candidato em primeiro lugar se afasta só segundo, como um velocímetro. Como referência quero algo como estável, regredindo e avançando." Ali eu só sabia o que queria ver, não como medir. O Claude propôs medir a inclinação da margem conforme a apuração avança.

20h09. O tropeço. [prompt] "Outro indicador é quando tiver regressão... quero saber especialmente do primeiro lugar quando ele tiver um 'tropeço'." Um teste estatístico compara o último lote de votos com o acumulado, e só chama de tropeço se for maior que o ruído esperado.

Por volta das 20h05 e 20h11. O oráculo. Eu tinha pedido: [prompt] "...a cada atualização o oráculo sugere um vencedor após totalização e diz o percentual." E às 20h11: [prompt] "Traz tudo agora. Oráculo, velocímetro, tropeços."

O resultado do oráculo, com honestidade. Na primeira leitura dele, às 20h08, com 29,16% apurado e o Lula atrás por 336 mil votos, o oráculo já cravava: Lula vence, 51,24%, faixa de 50,6% a 51,9%, convicção alta. O resultado final foi 51,78%, dentro da faixa. Acertou o vencedor desde a primeira leitura, mas subestimou a margem: previu uns 3,05 milhões de votos de vantagem e saíram uns 4,4 milhões. Para um modelo feito em minutos, bom. Para um método científico, ainda falta teste.

Nessa hora me senti confiante e comecei a mandar para meus amigos que eu achava que eram tão otimistas quanto eu. Aí mandei para o meu guru e melhor desenvolvedor que conheço. Mandei:

Fiz um script de predição que diz que Lula ganha com 51,2

Flávio tá em queda livre

E ele: "Rapaz, cadê o código. Eu só acredito vendo."

Mandei prints dos arquivos, dos scripts, do código. E ele:

[20:19, 25/10/2026] GBC: kkkk. tu é resenha viu bixo

[20:20, 25/10/2026] GBC: já vou divulgar aqui no twitter.

[20:20, 25/10/2026] GBC: 51,2%

[20:24, 25/10/2026] GBC: Eu acredito em vc

20h25. A virada. Com 47,62% apurado, o Lula passou: +13.414 votos. Dali pra frente só abriu. Foi a virada que eu tinha prometido pra todo mundo em casa.

Foi só nessa hora, exatamente com o placar em 50% a 50%, que eu abri as cervejas : Brindamos e corri para o quarto, para me arrumar para sair, para ficar pronto.

Aí a mulher disse: "Meu amor... a TV não mostra isso. Eu sei que o seu oráculo está positivo, mas a TV não mostra isso. E o pior: eles estão falando que dessa vez foi diferente. As urnas do Nordeste estão quase acabando e ainda faltam muitas do Sudeste. Ainda não ganhamos. Não tem o que comemorar."

Nessa hora meu mundo caiu . Mas não a minha fé.

Foi aí que pensei: preciso de um indicador de pior cenário. E se o Sudeste fosse um resultado muito bom para o Bolsonaro, quanto o Nordeste aguentaria para reverter?

Como estava a apuração naquele exato minuto (20h25, 47,62% do país apurado). Nordeste: cerca de 46% dos votos já contados. Sudeste: cerca de 28%. Para comparar: Norte 80%, Sul 73%, Centro-Oeste 72%. Dentro do Sudeste, a diferença era enorme: o Espírito Santo estava com 92% apurado, Minas com 41%, São Paulo com 24% e o Rio de Janeiro com apenas 6%. No Nordeste, a Bahia estava com 24%, Pernambuco com 41% e o Ceará com 48%. (Estimativa: votos já contados em cada região naquele minuto, divididos pelos votos que a região teve no final.)

20h30 a 20h40. O medo do Sudeste. [prompt] "Dessa vez o nordeste tá sendo mais veloz que o sudeste.. tou preocupado com o resultado do sudeste." Às 20h36: [prompt] "Como precisa terminar o nordeste pra garantir a vitória se lula no caso se sudeste for muito ruim?" Eu queria saber até quanto o Sudeste podia ser ruim e, mesmo assim, o Nordeste manter a frente. Às 20h40: [prompt] "Faz o oráculo trazer um dado extra, que seria o cenário ruim do sudeste." Foi o meu momento de nervoso. O Claude fez uma simulação do pior caso: se o Sudeste vier 2 pontos pior do que no 1º turno, o que o Nordeste precisa entregar. Resposta: nenhum dos 2 pontos estava acontecendo.

20h40 — a leitura do oráculo (64,78% apurado):

ORÁCULO ▸ Lula vence com 51.2% dos válidos (+2.876.318 votos) | convicção alta
  faixa do share do Lula: 51.0% a 51.3% (deslocamento ± 2 erros-padrão)
  previsão anterior: Lula 51.1% (+0.07 p.p. desde então)
  (estimativa estatística, não resultado oficial)
Cenário ruim do Sudeste (resto = 1º turno − 2 p.p.): ainda não está acontecendo
  Sudeste hoje: +2.2 p.p. vs 1º turno; o cenário ruim só se confirma com -2.0 (faltam 4.2 p.p. de piora)
  tendência: +2.0 → +2.2 p.p. (melhorando)
  por estado: ES +3.1, MG +2.8, RJ +3.1, SP +1.5
  se o cenário ruim valer: Lula 50.22%, saldo +555.477 (Lula 41.4% no resto do Sudeste)
  Nordeste precisaria de 68.4% no resto para empatar | projetado 70.8% | contado 68.8% (+2.4 p.p. de folga)

20h44. A chance em %. [prompt] "...quero que venha junto percentual matemático de chance de vitória de lula." Quando o painel passou de 71% apurado, o modelo marcava mais de 99,9%.

20h48 e 20h57. Pro zap. [prompt] "Organiza melhor a parte que eu copio e colo. Para ficar mais bonito pra eu enviar por ZAP." E depois: [prompt] "Acho que o ZAP tem muita informação e ficou grande e cansativo. Faz uma menor."

20h59 e 21h02. [prompt] "Matematicamente o sudeste ainda pode reverter considerando o normal que acontece nas demais regiões?" A resposta foi que a chance era quase zero.

21h16 a 21h48. Quem virou a eleição? [prompt] "Faz um levantamento que mostre quais estados foram responsáveis pela virada." Depois o top 5, e [prompt] "Quantos votos lula aumentou do primeiro para o segundo só no nordeste?"

A resposta, recalculada com os dados quase finais. Do 1º para o 2º turno o Lula ganhou 2.955.848 votos no Nordeste: Bahia (+820 mil), Pernambuco (+564 mil), Ceará (+481 mil), Paraíba (+253 mil), Maranhão (+242 mil), Rio Grande do Norte (+176 mil), Alagoas (+157 mil), Sergipe (+133 mil) e Piauí (+130 mil). Em pontos percentuais, quem mais subiu foi o Rio (+4,25), São Paulo (+3,77) e Goiás (+3,65).

21h12 e 21h55. A imprensa registrou o Lula matematicamente eleito às 21h10. A apuração chegou a 99,75% às 21h12 e a 99,96% às 21h55: Lula 51,78%, uma vantagem de cerca de 4,4 milhões de votos.

Liguei para a minha filha . Ela me atendeu chorando, sorrindo, dizendo que amava o mundo todo, que amava o Lula, que amava o Nordeste... e agradecendo porque eu tinha dito a ela que ia dar tudo certo.

(Pausa. Rebobina. Eu disse, sim. Mas de que adiantou? Se esse povo todo ficava achando que ia perder?)

O plot twist

A minha hipótese da noite era que o Nordeste ia puxar a virada na apuração. Mas, quando fui somar os votos, os cinco estados que mais cresceram do 1º para o 2º turno foram São Paulo (+2,61 milhões), Minas (+1,16 milhão), Rio de Janeiro (+872 mil), Bahia e Pernambuco. Só São Paulo, Minas e Rio juntos deram +4,65 milhões de votos, bem mais do que o Nordeste inteiro (+2,96 milhões). Em votos, quem mais cresceu foi o Sudeste, porque tem mais gente.

Por isso o meu agradecimento é de coração para o povo do Nordeste, que não se deixou parar. Mas é também, e com o mesmo tamanho, para o povo de São Paulo, de Minas, do Rio, do Sul, do Centro-Oeste e do Norte: para todo mundo, de qualquer canto do Brasil e do exterior, que ainda mantém a consciência e busca um mundo melhor . A virada não foi de uma região só. Foi do povo brasileiro.

Depois da vitória

O que era só pra acalmar a mulher virou uma ferramenta que talvez dê um estudo.

Em uma frase pra quem não é da área. Em vez de olhar "quem está na frente agora", o projeto olha "como cada estado votou agora em comparação com ele mesmo na eleição anterior", e a partir daí projeta o resto. Funcionou nessa noite. Resta testar nas outras.

Se alguém quiser estudar isso. Eu fiz tudo sem entender nada dos nomes: só fui pedindo o que eu queria saber, e o Claude foi traduzindo em método. Mas o que saiu dali tem nome técnico, e quem quiser ir mais fundo pode buscar por estes termos:

  • Uniform swing e proportional swing (modelos de "deslocamento"): comparar cada lugar com ele mesmo na eleição anterior e aplicar a mudança média ao que falta apurar. É o que eu chamei, sem saber, de "delta".
  • Election night forecasting (projeção na noite da eleição, com resultados parciais). O artigo clássico é de Brown e Payne, de 1975, no Journal of the Royal Statistical Society, Series A, volume 138, páginas 463 a 498.
  • Early returns analysis (análise dos primeiros resultados): por que quem aparece na frente no começo da contagem quase não diz nada.
  • Simulação de Monte Carlo, que transforma "pode ser que sim, pode ser que não" em uma chance em %.
  • Modelos bayesianos hierárquicos, o passo seguinte de sofisticação para esse tipo de previsão.
  • Ecological inference (inferência ecológica): como tirar conclusões sobre o voto de grupos de pessoas a partir de resultados agregados, como os por seção eleitoral.
  • Scoring rules e Brier score: formas de medir se uma previsão "de 90%" acerta mesmo 90% das vezes.

O que ainda falta para isso virar método científico é o teste contra eleições passadas (o backtest). Até lá, é uma ferramenta que funcionou muito bem numa noite, não uma conclusão estabelecida.

É importante deixar uma coisa clara:

Se você deseja se tornar estatístico, pesquisador ou especialista em qualquer área do conhecimento, a formação acadêmica, o estudo aprofundado e a construção de uma carreira continuam sendo fundamentais.

A inteligência artificial não substitui esse caminho, nem transforma alguém em especialista da noite para o dia.

O que relato aqui é algo bem diferente: como utilizei meu conhecimento de mundo, minha experiência como desenvolvedor, minha capacidade de observar padrões e a inteligência artificial para resolver um problema pessoal, em uma situação concreta.

Eu não estava tentando produzir ciência, desenvolver um novo método estatístico ou substituir o trabalho de profissionais da área. Queria apenas responder a uma pergunta que me inquietava, usando os recursos que tinha à disposição.

E talvez seja justamente essa a grande transformação que a IA proporciona: permitir que pessoas de diferentes áreas apliquem conhecimentos que antes exigiriam habilidades técnicas muito específicas, sem que isso diminua a importância de quem dedicou anos a estudá-los.

E a música aqui em casa? Seguiu tocando .

Andar com fé eu vou, que a fé não costuma faiá.

FONTE/CRÉDITOS: Eugenio Marques