This is a public, browser-native tournament candidate trained on complete chess
board snapshots. It is Model 2 in the paired 0002/0003 laptop experiment and
adds deterministic opening, middlegame, and endgame experts to the shared encoder.
Use in the ChessGPT arena
Load the independently verified immutable package as:
The unqualified repository name also works. The tournament runner reads
browser/manifest.json, which declares a self-contained JavaScript entrypoint, an
ONNX policy, and a stable promotion-move vocabulary. ONNX Runtime Web 1.27.0 is
supplied by the runner and is not part of the submitted byte count.
The network produces 4,272 move logits. The adapter reconstructs the current
position from SAN history, deterministically classifies its phase, indexes only the
runner-supplied legal SAN moves, and returns the largest legal logit as exact SAN.
Softmax probabilities are unnecessary for deterministic argmax play.
Three post-encoder feed-forward experts and 12,397,296 trainable parameters.
Opening: fewer than 20 plies and at least 40 non-pawn material points.
Endgame: at most 18 non-pawn material points, or no queens and at most 24.
Middlegame: every other position.
All three expert branches are evaluated and charged by the agreed FLOP profiler;
a visible-board one-hot selector chooses the phase output.
January training positions were 29.61% opening, 50.28% middlegame, and 20.11%
endgame. April validation positions were 29.67%, 50.51%, and 19.81%, respectively.
Training and validation
January 2026 frozen Lichess standard-rated data: first 100,000 games,
6,619,804 available positions.
Trained for 26,276 AdamW updates / 3,358,828 positions on Apple M4 MPS, stopping
at the three-hour training limit.
Seed 20260729, batch size 128, float32.
Ratified dense-operation accounting: 11,074,728,541,459,968 lineage FLOPs,
1.11% of the 10^18 tournament limit.
Training cost: $0; the run used the local laptop.
April 2026 was held out from optimization. On its first 2,000 games / 131,491
positions, validation loss was 2.85425, raw next-move top-1 accuracy was 26.749%,
legal-masked next-move top-1 accuracy was 29.253%, and the legal-move rate was
100%.
Model 1 had slightly better imitation metrics (2.83490 loss and 29.387% legal
top-1). In the separate tournament-shaped local match—50 frozen April openings,
colors reversed, 100 games—the models tied exactly: six wins each, 88 draws, and
50/100 points each. This does not support the learner's predicted 70% Model 2 win
rate for these published candidates. The runs were capped by equal wall-clock time,
not matched processed positions and FLOPs, so the match is not the prediction's
specified causal architecture test.
Integrity and limits
The canonical browser package is 49,841,108 bytes, below the 100,000,000-byte cap.
browser/manifest.json pins every submitted artifact by byte count and SHA-256.
The checkpoint SHA-256 is
54ea6c3991798ff6c0d51f07203bf0a70257e8ec13afd411abed0068834889ab.
The immutable Hub package was downloaded into a clean directory, compared
byte-for-byte with the local export, loaded with ONNX Runtime Web 1.27.0, and made
40 consecutive legal SAN moves. The model has no search or engine evaluation and
can make strategically weak choices despite always returning a legal move. It
contains no pretrained weights, engine labels, outside games, or synthetic
training data.
Measured metrics, the full per-update loss log, exact experiment specification, and
paired-match artifact are published alongside the browser package.