Abra o Opponent Prep, digite um nome de utilizador e, em breve, está a olhar através do tabuleiro para algo perturbador: um bot que abre como aquela pessoa, desliza para as mesmas estruturas instáveis de sempre e parece saber exatamente quando ela costuma cometer erros. Chamamos-lhe Ghost Bot e, por dentro, é uma verdadeira engenharia em camadas — vários sistemas independentes empilhados uns sobre os outros, cada um construído para responder a uma pergunta diferente sobre um estranho contra quem nunca jogou.
Primeiro, lê o seu histórico
No momento em que pesquisa um nome, recolhemos as partidas recentes desse jogador e passamo-las por uma única análise — percentagem de vitórias, quais aberturas realmente joga com cada cor, aproximadamente com que força joga em diferentes fases da partida e, crucialmente, exatamente onde perdeu mais pontos no passado. Nada de suposições. Tudo contado a partir dos seus próprios lances.
O livro de posições exatas: os seus lances, indexados
A partir desse histórico, construímos uma tabela de consulta: para cada posição que o jogador já alcançou de facto, o que jogou e com que frequência? Quando o Ghost Bot segue os seus passos, não está a improvisar — está a extrair diretamente dessa tabela, ponderada pela frequência real com que escolheu cada opção. Leve-o a uma posição que já visitou cinquenta vezes, e a resposta do bot vem exatamente desses mesmos cinquenta pontos de dados. É menos uma simulação e mais uma repetição, narrada pelos números.
O truque que torna isto assustadoramente preciso: o livro de hábitos
Aqui está a parte que exigiu pensamento genuíno. Uma tabela de posições exatas só ajuda quando se está de volta a uma posição já vivida — e no momento em que joga algo ligeiramente fora do comum, essa tabela fica em branco. Os adversários reais não têm memória infinita, mas têm hábitos: o jogador que faz sempre fianchetto ao bispo, roca sempre até ao oitavo lance, constrói sempre o mesmo triângulo de peões independentemente do que faz do outro lado do tabuleiro.
Por isso, construímos um segundo índice que descarta deliberadamente metade da informação: memoriza uma posição apenas pelas peças do próprio jogador, desfocando o que quer que esteja a fazer. Essa memória mais desfocada é o que permite ao Ghost Bot reconhecer "isto parece o seu Sistema Londres" numa posição que, tecnicamente, nunca ocorreu nas suas partidas reais. É reconhecimento de padrões a fazer as vezes de um cérebro xadrezístico — e cada hábito recordado é silenciosamente reverificado quanto à segurança antes de ser jogado, para que um esquema familiar nunca leve uma peça a ficar pendurada no lance nove só porque a posição parece familiar.
Sobre ambos os livros assenta a camada mais estranha de todas: uma personalidade, reduzida a um conjunto de indicadores. Construímos uma impressão de estilo comparando as escolhas de lances reais do jogador com um grupo de controlo de adversários de força aproximadamente igual. Isto transforma "joga com cautela", "adora táticas afiadas" ou "fica impaciente em posições iguais" em pequenos empurrões numéricos que inclinam discretamente as decisões do Ghost Bot na mesma direção sempre que tem de improvisar para além de ambos os livros. O resultado não se limita a memorizar a abertura — inclina-se como ele se inclina.
De onde vem a força: o Stockfish e um modelo no nosso servidor
Os livros explicam que lances o Ghost Bot conhece. Não explicam quão forte deve ser, nem como deve errar. Essa parte começa no seu próprio dispositivo: o Stockfish corre diretamente no seu navegador sobre algumas das partidas recentes do jogador e pontua cada lance legal em cada posição em que ele tinha escolha. Os resultados seguem depois para o nosso servidor, onde o nosso modelo aprende com eles: com que frequência este jogador encontra o melhor lance, quando escorrega e quão grandes são os seus erros.
Esse modelo é uma rede neuronal, um modelo matemático semelhante aos LLM por trás do Claude e do ChatGPT. Um modelo de linguagem escolhe a palavra seguinte. O Ghost Bot escolhe o lance seguinte, como o seu adversário o faria.
Então porque é tão rápido, enquanto o Report e o Blunder Puzzle o fazem esperar?
Grande parte do relatório é contagem, não cálculo. O repertório, os dois livros, a impressão de estilo e os pontos fracos são aritmética sobre partidas que já aconteceram, e um navegador despacha isso num instante. O Stockfish só tem de pontuar as partidas que pediu e, se alguém já analisou essas mesmas partidas, o resultado volta de uma cache verificada em segundos.
O Game Analysis e o Blunder Puzzle respondem a um tipo de pergunta completamente diferente, sem qualquer atalho possível: este lance específico, nesta partida específica, foi realmente bom — e quão bom? Essa pergunta não existia há cinco minutos. Ninguém a fez antes, porque a posição no seu tabuleiro agora é única para a partida que acabou de jogar. Não há tabela onde a procurar. A única forma honesta de responder é entregar a posição a um motor de xadrez real e deixá-lo procurar, lance a lance, a partida inteira — e quando verifica se um sacrifício foi realmente correto, tem de colocar uma segunda pergunta sobre a primeira: o que acontece se ele o capturar? Isso não é uma consulta a uma tabela. É pensamento sequencial real, a acontecer ao vivo no seu dispositivo, posição a posição, e não há cache no mundo capaz de saltar isso numa partida que ninguém jogou antes.
Em termos simples: o Opponent Prep aprende os hábitos de um jogador a partir de poucas partidas. O Report e o Blunder Puzzle têm de pensar em cada lance da partida que tem à sua frente.
Vá construir o seu próprio fantasma
Conheça os seus hábitos antes mesmo de o relógio começar a correr.
