CoolFace
Datasetpublic

thomasd1/aix-lichess-database

Aix-compatible Lichess database This dataset contains the Lichess database of 7+ billion chess games, but in a format queryable using Aix, with the aixchess extension for DuckDB. Three compression levels (Low, Medium, and High) are offered for the chess game encoding, enabling a trade-off between decoding speed and size. The Parquet files themselves are all zstd-compressed at level 19. Generated using pgn-to-aix. See my blog post for more details. Example DuckDB commands:… See the full description on the dataset page: https://huggingface.co/datasets/thomasd1/aix-lichess-database.

sourceHugging Facecc0-1.0updated 4mo agoView on Hugging Face
3likes4.6kdownloads
Dataset Card

Aix-compatible Lichess database

This dataset contains the Lichess database of 7+ billion chess games, but in a format queryable using Aix, with the `aixchess` extension for DuckDB. Three compression levels (Low, Medium, and High) are offered for the chess game encoding, enabling a trade-off between decoding speed and size. The Parquet files themselves are all zstd-compressed at level 19.

Generated using pgn-to-aix.

See my blog post for more details.

Example DuckDB commands:

sql
INSTALL aixchess FROM community;
LOAD aixchess;

-- Count en passant moves played in Lichess games from January 2013

WITH lichess_2013_01 AS (
    FROM 'hf://datasets/thomasd1/aix-lichess-database/low_compression/aix_lichess_2013-01_low.parquet'
),
en_passant_move_count AS (
    SELECT
        SUM(
            move_details(movedata).filter(lambda m: m.is_en_passant).length()
        ) AS nb_ep_moves 
    FROM lichess_2013_01
)

FROM en_passant_move_count;

-- Result: 3496