HumanChess Beginner — 650-750 Blitz
HumanChess 650-750 Blitz is a chess move policy model trained by imitation on 650-750 Elo Lichess blitz games. Given a board position, it scores a fixed chess move vocabulary, masks illegal moves, and returns a distribution over legal moves.
For product use, this model is presented as the Beginner tier, roughly a 300-level difficulty. That number is an informal product label based on its observed weakness against the later HumanChess models; it is not a calibrated Chess.com, Lichess, FIDE, or engine Elo rating. The precise provenance remains 650-750-rated Lichess blitz training data.
This is not a search engine and does not include a value head. It is intended to produce low-rated, human-like blitz moves rather than strongest-play chess.
Model
- Architecture: CNN policy
- Channels: 128
- Residual blocks: 6
- Input:
19 x 8 x 8board tensor - Output: fixed move-vocabulary logits, masked to legal moves at inference
- Checkpoint:
checkpoints/v3-cnn-128x6-20epoch.pt - FP32 inference model:
artifacts/v3-cnn-128x6-20epoch-fp32.ts - INT8 model:
artifacts/v3-cnn-128x6-20epoch-int8.ts - Saved epoch: 5
Files
| File | Format | Use |
|---|---|---|
checkpoints/v3-cnn-128x6-20epoch.pt | PyTorch FP32 checkpoint | Original model and training metadata |
artifacts/v3-cnn-128x6-20epoch-fp32.ts | FP32 TorchScript | Full-quality inference without optimizer state |
artifacts/v3-cnn-128x6-20epoch-int8.ts | INT8 TorchScript | Compact x86 CPU inference model |
The full training checkpoint is approximately 501 MiB, the inference-only FP32
artifact is approximately 167 MiB, and the INT8 artifact is approximately 43
MiB. The FP32 TorchScript export matched the source checkpoint with a maximum
absolute output difference of 2.86e-6 on its verification input.
Validation Metrics
Validation metrics from the saved checkpoint:
| Metric | Value |
|---|---|
| NLL | 1.9231 |
| Entropy | 1.8335 |
| Top-1 accuracy | 41.73% |
| Top-3 accuracy | 69.11% |
| Top-5 accuracy | 80.11% |
| Validation positions | 1,434,379 |
INT8 Quantization
The INT8 version uses static x86 quantization. Relative to FP32, validation NLL increased by approximately 0.047 and top-1 accuracy decreased by approximately 1.59 percentage points.
In a color-balanced 100-game match, FP32 scored 59% with 34 wins, 16 losses, and 50 draws. Its estimated advantage was 63 Elo with a 48-Elo error margin. The INT8 model is therefore measurably weaker, but retains the intended beginner-tier behavior while being much smaller and faster on x86 CPUs.
Intended Use
This model is useful for experiments with human-like chess move prediction, training tools, casual chess bots, and model-vs-model comparisons. It should not be treated as a calibrated Elo engine or a tactical oracle.
Usage
Use the inference provider repository:
git clone https://github.com/hd787/ChessModelServer.git
cd ChessModelServer
Then download this checkpoint from Hugging Face and point the server at:
checkpoints/v3-cnn-128x6-20epoch.pt
For the INT8 artifact, use the TorchScript loader:
human-chess-uci \
--checkpoint artifacts/v3-cnn-128x6-20epoch-int8.ts \
--torchscript \
--device cpu
The FP32 inference artifact uses the same TorchScript loader:
human-chess-uci \
--checkpoint artifacts/v3-cnn-128x6-20epoch-fp32.ts \
--torchscript \
--device cpu
Training Data
The checkpoint was trained from a v3 split of Lichess blitz games filtered to roughly 650-750 Elo players. The model is supervised by the human move played in each retained position.
Limitations
- Policy-only: no search and no value evaluation.
- Move quality is intentionally limited by the training distribution.
- The model can choose illegal-looking strategic plans even though individual moves are masked to legal moves.
- Tactical puzzle fine-tuning experiments degraded tournament performance in our launch-style tests, so this release uses the blitz imitation checkpoint.
- The approximate 300-level product difficulty is deliberately not a platform rating claim and may feel different across opponents and playing conditions.