albertklorer/chess-stockfish-regret
Chess RLVR Stockfish Regret 1400/100 Snapshot This snapshot dataset stores chess positions for reinforcement learning with verifiable rewards. Each row contains: { "id": "chess_rlvr_000001", "fen": "rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR w KQkq - 0 1", "legal_moves": "{\"Nf3\": -0.015, \"e4\": 0.0}" } legal_moves is a JSON object encoded as a string. The object maps each legal SAN move to a Stockfish-derived negative regret score for the player to move. The RLVR… See the full description on the dataset page: https://huggingface.co/datasets/albertklorer/chess-stockfish-regret.
Chess RLVR Stockfish Regret 1400/100 Snapshot
This snapshot dataset stores chess positions for reinforcement learning with verifiable rewards.
Each row contains:
{
"id": "chess_rlvr_000001",
"fen": "rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR w KQkq - 0 1",
"legal_moves": "{\"Nf3\": -0.015, \"e4\": 0.0}"
}legal_moves is a JSON object encoded as a string. The object maps each legal SAN move to a Stockfish-derived negative regret score for the player to move.
The RLVR reward is negative expected-score regret:
reward = expected_score(selected_san) - max(expected_score(all legal moves))This gives 0 to the best available move and a negative value to worse moves.
Evaluation metadata
- Engine: Stockfish
- Source positions: Lichess puzzle FENs
- Stored value target: negative WDL expected-score regret
- Formula:
(wins + 0.5 * draws) / 1000 - Evaluation method: Stockfish root MultiPV over all legal moves
- Default local generation depth: 20
- Split sizes: 1,400 train positions and 100 test positions
- Prompt-facing move notation: SAN
- Backend state notation: FEN
Stockfish settings are dataset-level metadata. They are not repeated inside each move record.
Loading
import json
from datasets import load_dataset
ds = load_dataset("albertklorer/chess-stockfish-regret")
row = ds["train"][0]
legal_moves = json.loads(row["legal_moves"])Intended use
The intended training prompt is:
Position:
<fen>
Legal moves:
1. <SAN move>
2. <SAN move>
...
Return only the move number.The verifier maps the selected index back to the SAN key and computes the regret reward.
