Quem mantém este site?
Olá, eu sou o Saenggaknamu (“Árvore Pensante”), o dono deste site. Sou um desenvolvedor com 32 anos de experiência e venho criando vários tipos de modelos de IA em busca de uma IA com jeito humano, que pense como as pessoas pensam. Quando a IA se popularizou e passou a ser possível desenvolver sozinho, comecei a encarar todo tipo de desafio.
Foi então que vi uma IA resolvendo um sudoku. De um jeito totalmente diferente de como as pessoas pensam, ela preenchia as respostas linha por linha a partir da primeira casa, como uma criança que já sabe a resposta. Quando eu disse que aquilo era trapaça, só então ela passou a comparar as linhas, as colunas e os quadrados 3×3, seguindo as regras do sudoku. Ao ver isso, baixei modelos do Hugging Face e comecei a treiná-los eu mesmo. Desde então descobri que muitos modelos resolvem jogos de treino cerebral como se já soubessem a resposta.
Cuido de tudo no MariaGO pessoalmente: o treinamento dos modelos, os motores de jogo, as páginas web e os servidores. Os textos daqui não são um resumo de uma enciclopédia de jogos qualquer; eles se baseiam no código e nos registros de experimentos verificados durante a implementação.
O “GO” do nome do projeto se refere ao go (baduk), onde tudo começou. As perguntas que surgiram com o go se estenderam ao gomoku, ao Othello, ao janggi, ao xadrez e a quebra-cabeças de números e palavras. As regras mudam de jogo para jogo, mas todos compartilham um mesmo tema: “como a IA lê o estado atual e escolhe a próxima ação?”
Por que criar mais um site de jogos?
Já existem muitos serviços de jogos online. O problema que o MariaGO tenta resolver não é achar um adversário rápido para competir. Eu queria um espaço pessoal de jogo onde você pode fazer uma jogada quando quiser, sem marcar horário com ninguém, parar quando estiver sem tempo e voltar depois para a mesma partida.
O objetivo não é exibir a IA mais forte, mas permitir que qualquer pessoa conheça diretamente no navegador o julgamento de um modelo treinado e entenda o processo por trás dele.
Adoro o filme Blade Runner. Nele, J.F. Sebastian e o Dr. Tyrell jogam xadrez de lugares diferentes, trocando um lance de cada vez por palavras. O go do MariaGO não tem limite de tempo por jogada justamente para ter esse mesmo caráter.
Cada vez que você confirma uma jogada, o tabuleiro e a sequência de lances são salvos no servidor, e a partida em andamento é carregada de novo na sua próxima visita. Você pode navegar para frente e para trás pelo registro e voltar a jogar a partir de qualquer lance.
Atenção: as partidas são salvas com um ID criado para cada navegador. Se você jogar numa janela anônima ou em outro navegador, suas partidas anteriores não serão carregadas e um novo salvamento será criado.
Como é desenvolvido?
O modelo de go é treinado com posições e próximas jogadas extraídas de registros SGF de amadores fortes e profissionais. Não basta jogar os registros originais no modelo. As coordenadas 19×19 são convertidas numa grade alinhada que o modelo consegue ler, posições duplicadas são removidas, e verificamos se os dados de treino e o servidor de partidas reais usam a mesma representação do tabuleiro.
Só muito tempo depois de começar descobri que nem todos os modelos de IA usam as mesmas coordenadas de go. Treinei o Gemma, do Google, por um bom tempo, mas o modelo sempre jogava no quarto quadrante. Por isso acrescentei várias restrições, e essas restrições acabaram causando novos erros.
Mais tarde percebi que cada modelo usava coordenadas diferentes, e que até os registros SGF e o nosso próprio modelo não batiam. Foi também aí que descobri que, quando eu informava ao modelo a jogada do humano, ele respondia num outro sistema de coordenadas. Então, no início, passei muito tempo treinando os modelos para alinhar as coordenadas, e só depois disso a força deles no go começou a subir rapidamente.
Depois do treino, não olhamos apenas a taxa de vitórias. Registramos se o modelo encontra coordenadas nos quatro cantos com precisão parecida, se escolhe pontos já ocupados e se passa cedo demais. Nas partidas web, a jogada da IA também não é aplicada como está; o motor de jogo verifica jogadas ilegais como suicídio, violação de ko e jogar num ponto ocupado.
| Dados de treino | Posições e próximas jogadas reais extraídas de SGF de amadores fortes e profissionais |
|---|---|
| Formato da posição | Uma grade de texto 19×19 com números de linha e coluna alinhados em dois dígitos |
| Verificação em jogo | Precisão de coordenadas, taxa de jogadas legais, passes precoces e viés de direção verificados separadamente |
| Salvamento de partidas | Estado do tabuleiro e sequência completa salvos a cada jogada, usados para revisão e continuação |
Princípios de conteúdo e operação
Escrevemos o que verificamos
Os recursos são descritos exatamente como funcionam hoje. Novos recursos são adicionados sempre que surge uma ideia, e os textos são atualizados junto com eles.
Publicamos também os limites
Condições que os leitores precisam conhecer, como os erros do modelo ou os limites da contagem automática na avaliação de vida e morte, são informadas junto com os resultados.
Registramos como as coisas são feitas
Em vez de apenas reunir links de jogos, deixamos você ler as regras, a forma como foram implementadas e até o registro do que falhou e de como foi corrigido.
Buscamos uma experiência sem pressa
Se aparecer algum compromisso, é só parar. Quando tiver tempo de novo e uma jogada vier à cabeça, jogue nessa hora. Se fez uma jogada ruim, você sempre pode voltar àquele ponto e jogar de novo.
Somos claros sobre os limites atuais
Nem todos os jogos do MariaGO estão igualmente completos. O go permite salvar registros e continuar partidas, mas o conjunto de recursos dos outros jogos varia. A contagem automática do go conta as áreas vazias cercadas e as pedras capturadas, mas não consegue identificar completamente as pedras mortas. O valor dela não é o veredito final de um árbitro, e sim uma referência para os jogadores revisarem o tabuleiro.
Essas diferenças e falhas são, na verdade, o coração do registro do projeto. Quando os recursos mudarem, esta página e as notas de pesquisa também serão atualizadas.