Chess Analysis GUI is a Python-based application that aims to revolutionize game review and analysis in chess. This chess chatbot allows users to review their games, similar to the chess.com game review feature, and interact live with a powerful Language Model (LLM). It combines chess engine analysis and Python chess utility functions with user queries to assist the LLM in providing meaningful insights into chess positions.
The primary goal of this project is to create an interactive platform where chess enthusiasts can analyze their games and understand complex chess positions through an intuitive chat interface.
The application uses Google's Gemini AI models for the chatbot functionality. While large language models are powerful in various domains, their current capability in deep chess reasoning is limited. This project serves as a starting point, showcasing the basic concept of a chess-chatbot. Future developments may involve fine-tuning open-source LLMs like Llama2, specifically for chess position comprehension and analysis.
- Visual representation of chess games from URLs.
- Live interaction with a chatbot for game analysis and position explanation.
- Integration of chess engine analysis to enhance LLM responses.
- User-friendly GUI for seamless game navigation and interaction.
- Python 3.x
- Stockfish or LC0 (Leela Chess Zero)
- Google Gemini API Key
- PyQt5
- chess (Python library)
- numpy
- google-generativeai
- Clone the repository
- Create a
.envfile in the root directory - Add your Gemini API key to the
.envfile:GEMINI_API_KEY=your_api_key_here - Never commit the
.envfile to version control
Run the main Python script to start the application:
python main.py --engine_path <path_to_stockfish/lc0>