ChessAI: Шахматный Анализатор

ChessAI — это инструмент для анализа шахматных партий, использующий движок Stockfish и графический интерфейс на Python. Он позволяет загружать партии в формате PGN, анализировать ходы и получать рекомендации по улучшению игры.

Основные возможности

  • Загрузка партий

    Из файлов PGN, по URL с Lichess.org, или установка любой позиции из нотации FEN.

  • Анализ в реальном времени

    Мгновенная оценка позиции, отображение нескольких лучших линий (Multi-PV) и визуализация угроз.

  • Интерактивная доска

    Полная навигация по ходам, анимированное перемещение фигур и возможность перевернуть доску.

  • Глубокий анализ

    Автоматический разбор всей партии с классификацией ходов (зевок, ошибка) и построением графика оценки.

  • Аннотации и сохранение

    Добавление комментариев и NAG-ов к ходам с последующим сохранением в PGN-файл.

  • Игра против движка

    Возможность сыграть партию против Stockfish с настраиваемым уровнем силы.

Скриншоты

Анализ партии в ChessAI
Диалоговые окна в ChessAI
Диалоговые окна в ChessAI

Установка и запуск

Шаг 1: Клонирование репозитория

git clone https://github.com/SynvexAI/ChessAI
cd ChessAI

Шаг 2: Установка зависимостей

Приложение требует наличия Python 3 и нескольких библиотек. Установите их с помощью `pip`:

pip install -r requirements.txt

Шаг 3: Структура папок

Убедитесь, что папка `assets` со всеми ресурсами (изображения, звуки) и исполняемый файл `stockfish` находятся в корне проекта:

.
├── assets/
│   ├── images/
│   └── sounds/
├── main.py
├── engine_handler.py
├── stockfish.exe (или stockfish)
└── README.md

Шаг 4: Запуск приложения

После выполнения всех шагов запустите главный файл:

python main.py

Как пользоваться

  • Загрузка партии: Используйте меню "Файл" для загрузки PGN, FEN или по URL.
  • Навигация: Используйте кнопки < и > под доской или кликайте по списку ходов справа.
  • Анализ: Нажмите "Анализировать партию" для полного разбора или просто перемещайтесь по ходам для анализа "на лету".
  • Игра с движком: Выберите "Игра" -> "Новая игра с движком", чтобы начать партию против компьютера.
  • Настройки движка: На вкладке "Анализ" можно изменить силу игры и количество анализируемых линий.

Исходный код

Ключевые файлы проекта: `main.py` управляет GUI и логикой, а `engine_handler.py` обеспечивает взаимодействие с движком Stockfish.