Leela Chess Zero: скачать, установить и настроить Lc0

Просмотры: 14342

Leela Chess Zero, или Lc0, — бесплатный шахматный движок с открытым исходным кодом, который оценивает позиции с помощью большой нейронной сети. Проект был вдохновлён AlphaZero, но в отличие от исследовательской системы DeepMind доступен любому пользователю.

Lc0 особенно интересна как альтернатива Stockfish: она иначе распределяет вычисления, предпочитает мощную видеокарту и нередко предлагает необычные долгосрочные идеи, связанные с пространством, инициативой и компенсацией за материал.

Что такое Leela Chess Zero?

Leela Chess Zero — шахматный движок на основе нейронной сети с открытым исходным кодом. Его также называют Lc0, LCZero или просто Leela.

Проект появился в 2018 году после публикации первых результатов AlphaZero. Одним из его основателей стал Гэри Линскотт, известный также участием в развитии Stockfish и созданием распределённой системы тестирования Fishtest.

Логотип шахматного движка Leela Chess Zero

Логотип Leela Chess Zero

Lc0 является UCI-движком. Это означает, что её можно подключать к совместимым графическим оболочкам:

  • ChessBase и Fritz;
  • Arena;
  • BanksiaGUI;
  • En Croissant;
  • Cute Chess;
  • Scid vs. PC;
  • другим программам с поддержкой UCI.

Сам движок не является полноценной шахматной программой с доской и меню. Для удобной игры и анализа ему требуется отдельный интерфейс.

Чем Lc0 отличается от AlphaZero?

Lc0 часто называют открытым аналогом AlphaZero, но это разные проекты.

AlphaZero Leela Chess Zero
Закрытая исследовательская система DeepMind Открытый общественный проект
Не выпускалась для пользователей Можно бесплатно скачать и установить
Обучалась на инфраструктуре DeepMind Использует распределённое обучение при участии добровольцев
Не поддерживает пользовательский UCI-интерфейс Подключается к обычным шахматным оболочкам
Опубликованы только результаты исследований Исходный код, сети и партии доступны сообществу

Lc0 развивает общую идею нейросетевой оценки и направляемого поиска, но использует собственный код, обучение, форматы сетей и алгоритмические решения.

Как работает Leela Chess Zero?

Работа Lc0 основана на взаимодействии нейронной сети и поиска.

Нейронная сеть

Нейросеть получает шахматную позицию и формирует несколько типов информации:

  • оценку вероятностей победы, ничьей и поражения;
  • распределение вероятностей по возможным ходам;
  • дополнительные оценки, используемые современными архитектурами сети.

Сеть помогает движку понять, какие продолжения заслуживают более глубокого изучения.

Поиск

Классический поиск Lc0 основан на построении дерева и многократном выборе перспективных ветвей. В отличие от альфа-бета-движков она обычно рассматривает значительно меньше позиций в секунду, но тратит больше вычислений на оценку каждого узла.

Начиная с версии 0.32 в Lc0 появилась новая поисковая архитектура, позволяющая использовать несколько алгоритмов. По умолчанию сохраняется классический поиск, а экспериментальные варианты могут по-другому хранить и обходить дерево или граф позиций.

Обучение через самостоятельную игру

Нейронные сети Lc0 обучаются на партиях, которые программа играет сама с собой. Добровольцы могут установить тренировочный клиент и предоставить проекту вычислительные ресурсы.

Во время обучения система постепенно улучшает оценку позиций и выбор ходов. Пользователю, который хочет только анализировать партии, запускать тренировочный клиент не нужно.

Что нового в современных версиях Lc0?

Актуальная стабильная версия — Lc0 0.32.1. В линейке 0.32 появилась новая поисковая API-архитектура, благодаря которой в одном движке могут сосуществовать разные алгоритмы поиска.

Современное развитие проекта идёт сразу в нескольких направлениях:

  • новые трансформерные нейронные сети;
  • экспериментальные алгоритмы поиска и DAG-представление позиций;
  • улучшение CUDA, ONNX, DirectML, Metal и других вычислительных модулей;
  • поддержка больших сетей и современных видеокарт;
  • инструменты для анализа внутренней работы нейросетей;
  • развитие распределённого обучения.

Трансформерная архитектура BT4, используемая современными сетями Leela, стала основой исследования Chessformer. Проект продолжает активно развиваться и в 2026 году — прежние предположения о закрытии Lc0 в пользу Ceres не подтвердились.

Достижения Leela Chess Zero

Lc0 прошла путь от экспериментального проекта до чемпиона крупнейших соревнований шахматных программ всего за несколько лет.

К важнейшим результатам относятся:

  • выход в суперфинал TCEC 14-го сезона;
  • победа в TCEC Cup 2 над Houdini;
  • победа в следующем кубке TCEC после матча со Stockfish;
  • чемпионство в 15-м сезоне TCEC;
  • чемпионство в 17-м сезоне TCEC;
  • победы и призовые места в компьютерных чемпионатах Chess.com;
  • многочисленные суперфиналы против Stockfish.
Соперничество Leela Chess Zero и Stockfish

Соперничество Lc0 и Stockfish стало центральным сюжетом компьютерных шахмат конца 2010-х годов

Турнирные результаты зависят от версии движка, сети, видеокарт, настроек и контроля времени. Поэтому исторические победы не означают постоянного превосходства одной программы при любых условиях.

Какое оборудование нужно для Lc0?

Lc0 может работать на центральном процессоре, но её архитектура раскрывается прежде всего на видеокарте.

Видеокарты NVIDIA

Для современных NVIDIA RTX рекомендуется сборка CUDA 12. Для старых моделей от GTX 650 до GTX 16xx официальный сайт предлагает пакет CUDNN.

Чем мощнее видеокарта и больше объём её памяти, тем более крупную сеть можно использовать и тем быстрее движок будет анализировать позицию.

AMD и Intel GPU

Для видеокарт AMD и Intel в Windows рекомендуется сборка ONNX-DML, использующая DirectML.

Старые инструкции, советующие выбирать OpenCL для любой AMD или встроенной графики, уже не являются универсальными. Точный выбор зависит от операционной системы и оборудования.

Работа только на CPU

Без дискретной видеокарты можно использовать DNNL BLAS для современных процессоров или OpenBLAS для старых систем.

CPU-сборка пригодна для знакомства с движком и неторопливого анализа, но обычно значительно медленнее подходящей GPU-версии.

Сколько видеопамяти требуется?

Размер сети Примерный расход видеопамяти Кому подходит
Средняя Около 1,8 ГБ Недорогие GPU и некоторые CPU-конфигурации
Большая Примерно 2,4–2,6 ГБ Большинство современных игровых видеокарт
Очень большая BT4 Около 4 ГБ Производительные видеокарты и турнирный анализ

Помимо памяти важна вычислительная производительность. Две видеокарты с одинаковым объёмом VRAM могут показывать совершенно разную скорость.

Где скачать Leela Chess Zero?

Lc0 следует скачивать с официального сайта проекта. Там размещены стабильные сборки для Windows, macOS, Linux и Android.

Текущая стабильная версия: Lc0 0.32.1.

Официальные пакеты для Windows включают:

  • lc0.exe — сам движок;
  • базовую нейронную сеть;
  • необходимые библиотеки;
  • lc0-training-client.exe — клиент для участия в обучении.

Для обычной игры и анализа тренировочный клиент не требуется.

Какую сборку выбрать?

Оборудование Рекомендуемый пакет
NVIDIA RTX 20xx, 30xx или 40xx CUDA 12
NVIDIA GTX 650–GTX 16xx CUDNN
AMD или Intel GPU в Windows ONNX-DML
Современный CPU без подходящей видеокарты DNNL BLAS
Старый CPU OpenBLAS
Apple Silicon или Intel Mac Официальная сборка macOS или Homebrew
Android Официальный APK движка и отдельная GUI-оболочка

Неподходящая сборка может не запуститься или работать медленно. При сомнениях ориентируйтесь на рекомендации официальной страницы скачивания.

Как установить Lc0 в Windows?

  1. Определите модель видеокарты или процессора.
  2. Скачайте подходящий архив с официального сайта.
  3. Распакуйте архив в постоянную папку.
  4. Не переносите отдельный файл lc0.exe без библиотек и сети.
  5. Установите графическую шахматную оболочку.
  6. Добавьте lc0.exe как новый UCI-движок.
  7. Откройте настройки движка и проверьте выбранный backend.
  8. Запустите анализ тестовой позиции.

Современный официальный пакет уже содержит базовую сеть, поэтому вручную искать и копировать файл сети для первого запуска не требуется.

Установка в Arena

  1. Откройте меню Engines.
  2. Выберите Install New Engine.
  3. Укажите файл lc0.exe.
  4. Подтвердите использование протокола UCI.
  5. Выберите Lc0 в списке движков.

Установка в ChessBase или Fritz

В меню создания UCI-движка укажите путь к lc0.exe, задайте название и сохраните конфигурацию. Современные версии ChessBase и Fritz не требуют старых исправлений, которые упоминались в инструкциях начала 2020-х годов.

Установка в En Croissant

В Windows Lc0 можно загрузить непосредственно через каталог движков En Croissant. На macOS движок сначала устанавливают отдельно, после чего указывают путь к исполняемому файлу.

Как выбрать нейронную сеть?

Нейронная сеть — отдельная часть Lc0. Один и тот же исполняемый файл может работать с разными сетями, отличающимися размером, архитектурой и силой.

Официальный пакет уже содержит разумную базовую сеть. Для начала лучше использовать её и менять сеть только после проверки стабильной работы движка.

На официальной странице лучших сетей публикуются рекомендуемые варианты для разных видеокарт:

Последняя обученная сеть не обязательно является самой сильной. Экспериментальная сеть может быть новой, но уступать проверенным моделям в матчах.

При выборе учитывайте:

  • объём видеопамяти;
  • скорость видеокарты;
  • контроль времени;
  • совместимость сети с backend;
  • цель — быстрый анализ или максимальная сила.

Основные настройки Lc0

Backend

Backend определяет, каким способом нейросеть выполняется на вашем оборудовании. Неправильно выбранный backend может снизить скорость или вызвать ошибку запуска.

MinibatchSize

Параметр задаёт количество позиций, одновременно отправляемых на обработку нейросетью. Большое значение способно лучше загрузить мощную видеокарту, но увеличивает задержку.

Для начала разумно использовать параметры пакета по умолчанию. Турнирные настройки не всегда подходят для домашнего анализа.

Threads

В Lc0 этот параметр имеет другое значение, чем в Stockfish. Основную работу выполняет GPU, а потоки CPU обслуживают поиск и передачу данных.

Максимальное количество процессорных потоков не обязательно даёт лучший результат. Следует контролировать загрузку GPU и скорость анализа.

MultiPV

MultiPV позволяет выводить несколько вариантов. Как и у других движков, большое количество линий уменьшает ресурсы, доступные для основной ветви.

Syzygy

Lc0 поддерживает эндшпильные таблицы Syzygy. Путь к ним можно указать через параметры UCI, если оболочка предоставляет соответствующее поле.

Lc0 или Stockfish: что выбрать?

Stockfish и Lc0 используют разные подходы и хорошо дополняют друг друга.

Stockfish Leela Chess Zero
Оптимизирован прежде всего для CPU Лучше раскрывается на GPU
Альфа-бета-поиск и NNUE Большая нейросеть и направляемый поиск
Очень высокая скорость просмотра узлов Меньше узлов, но более дорогая оценка каждого
Обычно проще установить Требует правильной сборки и подходящей сети
Универсальный основной анализатор Полезен как альтернативный взгляд на позицию

Для большинства пользователей Stockfish проще и быстрее на обычном компьютере. Lc0 особенно полезна владельцам мощной видеокарты и шахматистам, которые хотят сравнивать оценки двух разных архитектур.

Нельзя утверждать, что один движок всегда лучше другого. Итог зависит от версии, сети, оборудования, настроек, дебютной позиции и контроля времени.

Партии Leela Chess Zero

Партии Lc0 известны долгосрочными жертвами, ограничением фигур и необычной оценкой компенсации. Однако не следует считать её игру «магической» или полностью человекоподобной: все решения являются результатом нейросетевой оценки и поиска.

Творческий стиль игры Leela Chess Zero

Lc0 часто находит идеи, отличающиеся от первой линии традиционного движка

Использование пространства и проходной пешки

В первой партии Lc0 получает долговременное позиционное преимущество, ограничивает фигуры соперника и постепенно усиливает проходную пешку.

 

Атака в остром гамбите

Во втором примере Lc0 начинает сложную атаку и жертвует фигуру на 16-м ходу ради инициативы и безопасности короля соперника.

 

Что произошло с проектом Ceres?

Ceres — отдельный нейросетевой шахматный движок, способный использовать сети семейства Leela. В начале 2020-х годов существовали предположения, что он может заменить Lc0.

Этого не произошло. Lc0 продолжила развиваться, получила новые сети, поисковую архитектуру и вычислительные backends. Ceres остался отдельным проектом и одним из направлений экспериментов с нейросетевыми движками.

Поэтому утверждение из старой версии статьи о возможном скором закрытии Leela Chess Zero больше не актуально.

Частые вопросы

Lc0 бесплатна?

Да. Движок и его исходный код доступны бесплатно.

Нужна ли мощная видеокарта?

Не обязательно, поскольку существуют CPU-сборки. Но для высокой скорости и больших сетей желательно использовать современную видеокарту.

Какая версия Lc0 актуальна?

Текущая стабильная версия — Lc0 0.32.1. На GitHub также могут находиться экспериментальные сборки и версии для разработчиков.

Нужно ли отдельно скачивать сеть?

Для первого запуска — нет. Современные официальные пакеты содержат базовую сеть. Отдельная сеть требуется только для замены стандартной.

Почему Lc0 показывает мало узлов в секунду?

Это нормально. Её NPS нельзя напрямую сравнивать со Stockfish: нейросетевая оценка одного узла намного сложнее и требует больше вычислений.

Можно ли запустить Lc0 на Android?

Да. Официально доступен APK движка, но в нём нет графической доски. Понадобится совместимая Android-оболочка.

Поддерживает ли Lc0 Chess960?

Да, движок способен играть в Chess960 при использовании совместимой оболочки и правильной настройки варианта.

Какую сеть выбрать?

Для начала используйте сеть из официального пакета. Затем можно выбрать рекомендуемую сеть на странице Best Networks с учётом объёма памяти и производительности видеокарты.

Lc0 сильнее AlphaZero?

Корректного прямого сравнения нет. AlphaZero не выпускалась публично и не участвовала в независимых современных тестах. Lc0 развивает похожие идеи, но является отдельным проектом.

Итоги

Leela Chess Zero превратила идеи AlphaZero в доступный открытый проект. Пользователь может бесплатно скачать движок, подключить его к UCI-оболочке и анализировать позиции с помощью современной нейронной сети.

Актуальная стабильная версия Lc0 0.32.1 поддерживает Windows, macOS, Linux и Android. Для современных NVIDIA рекомендуется CUDA 12, для AMD и Intel GPU в Windows — ONNX-DML, а для работы без видеокарты доступны CPU-сборки.

Современный официальный пакет уже включает базовую сеть. Поэтому установка стала заметно проще, чем в ранних версиях: достаточно выбрать правильную сборку, распаковать архив и добавить lc0.exe в шахматную оболочку.

Lc0 не заменила Stockfish, а стала альтернативной сильной системой с другой архитектурой. Наиболее полезный подход для серьёзного анализа — сравнивать выводы обоих движков и самостоятельно разбираться в причинах расхождения оценок.

Практический совет Сначала установите Lc0 с сетью и настройками из официального пакета. Менять backend, сеть и MinibatchSize стоит только после того, как базовая конфигурация стабильно работает.

Для системной работы над тактикой, позиционной игрой, атакой и эндшпилем можно воспользоваться программой обучения «Шахматы. Перезагрузка за 21 день».

НЕТ ПРОГРЕССА В ШАХМАТАХ?

Вам поможет 21-дневный интенсив по шахматам. Гарантия!

Полезные статьи


© Copyright 2011- Шахматный клуб XChess.ru. Все права защищены!