Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
Where do I start ?
- To contribute to the project, see Getting Started and follow the instructions for running self-play training games.
- To just run the engine locally, see Getting Started and follow the instructions for running the engine. See also Running Leela Chess Zero in a Chess GUI for instruction on various popular GUIs.
How does Leela Chess Zero work ?
- A nice Technical Explanation of Leela Chess Zero and glossary of technical terms is available.
- The self-play games your client creates are used by the central server to improve the neural net. See Neural Net Training for more details. You can also see a summary of the Training runs
How can I follow project status and plans?
- See our blog
- Discord chat #announcements and #dev-log have the most detailed updates.
- Our github projects page shows plans for current and future work.
What is the current strength of Lc0 ?
Elo chart seems inflated.The
- The chart is not calibrated to CCRL or any other common list. It sets 'the first net' to Elo 0, so it is not comparable, even among different training runs.
- The different points are calculated from self-play matches. Self-play tends to exaggerate gains in Elo compared to gains when playing other chess engines.
Where can I find Lc0's current Elo?
Many people are keeping their own rating lists, here are some examples:
- Aggregated list
- Elo Summary collects from many sources and graphs them all on one page.
- LCZ vs Stockfish
- LCZ CCRL Estimate
- L.e.e.l.a LcZero ELO Estimate List Approximation by Cscuile
- CCLS Rating for LCZ from these gauntlet results. The games can be watched here
- LCZ Basic Checkmates
- LCZ vs SF Time Handicap
- Reinfeld's Win at Chess
Which is the best net ?
There is no consensus on the "best" net, due to many reason:
- "Strongest net" is not uniquely defined. One net could be better at short time control and another at long time controls. One could be better at drawing against Stockfish but have too many draws against lower rated engines, while another may trash lower rated engines and be trashed by Stockfish. One could be worse against other engine, but beat every other net in head to head.
- "Self-Elo" is not a true indicator of nets strength, but just a general parameter of the "health" of the training run
- The Large amount of nets created makes difficult to test everything
- Substantial amount of testing is required to assess superiority outside of error bars (small sample size problem)
- There is no coordinate testing framework. It is considered that resources are better spent on training
Despite all this, some of the best net of each training run have been identified here
Can I watch Lc0 play somewhere?
- Several people run Lc0 on lichess:
- Some people stream test matches against other engines or itself frequently, notable streams include:
- See competition games against other engines
- See recent test match games - Click on the first row, first column, then pick a game. These games are played between recent versions of the engine to measure progress. They are blitz games played with 800 playouts (around 1 second) per move.
- See recent self-play training games - Scroll to "Active Users", pick someone, then pick a game. These games are how Lc0 trains herself. They are played with extra randomness turned on so it can discover new good (and bad) moves. This means the quality of these games is lower than the match games.
Where can I find PGNs of played games?
Provided by: Edosan LC0 network ID: 240 Opponent: Scorpio 2.8
Provided by: y_Sensei LC0 version: 0.1-current version, TF version, cuDNN version LC0 network ID: 13-current version Opponent: Stockfish 8 + 9, OpenTal 1.1, Rodent III 0.172
Download link: http://bit.ly/ys-chess
Provided by: Edosan LC0 network ID: 247 GPU v8 W/ TB Opponent: Houdini 6.03