Stockfish vs ChessBase: можно ли расторгнуть GPL v3?

Спор по шахматному движку Stockfish поднял вопрос: можно ли из-за нарушения GPL досрочно прекратить такую лицензию?

🖊️
это перевод текста "Stockfish vs. ChessBase and What it Means for GPL v3" авторства редакционной группы FOSSA

В рамках судебного дела, которое могло бы стать интересной проверкой лицензии GPL v3, команда шахматного движка с открытым исходным кодом Stockfish недавно объявила о подаче иска против ChessBase. ChessBase – это компания, которая продаёт различные шахматные продукты, включая программное обеспечение («ПО»), базы данных, учебные пособия и журнал.

Спор возник из-за того, что ChessBase использовала лицензионный код Stockfish по условиям лицензии GPL v3 в двух продуктах: Fat Fritz 2 и Houdini 6. Существует общее мнение, что Fat Fitz 2 и Houdini 6 являются производными от кода Stockfish, лицензированного по GPL v3, но создатели Stockfish утверждают, что ChessBase не соответствовала требованиям, предъявляемым к производным произведениям.[1]

В результате этих предполагаемых многочисленных нарушений своей лицензии в Stockfish решили её аннулировать у ChessBase. Однако, хотя ChessBase больше не продаёт Houdini 6, она продолжает продавать Fat Fritz 2. Судебный процесс Stockfish, который, как сообщается, будет рассматриваться в немецком суде, направлен на то, чтобы помешать ChessBase распространять “Stockfish, в модифицированном виде или нет, как часть своей продукции”.

Чтобы помочь с контекстуализацией и анализом судебного процесса, мы обратились к Хизер Микер, одной из ведущих мировых юридических экспертов по лицензированию ПО с открытым исходным кодом и комплаенсу. В этом блоге Хизер затрагивает два конкретных вопроса, которые могут возникнуть в ходе судебного разбирательства.


  1. См.в тексте лицензии значение термина "modify" и связанные с ним положения - прим. пер. ↩︎

Вопрос 1: GPL и веса нейронных сетей

Stockfish распространяется под лицензией GPL v3, которая представляет собой строгую лицензию на ПО с открытым исходным кодом с авторским левым. Таким образом, любой желающий может свободно использовать код Stockfish, но при его распространении существуют определённые требования. В частности, любой, кто распространяет производные (от кода Stockfish) произведения в двоичной форме, должен предоставить соответствующий исходный код под лицензией GPL v3.
Но хотя ChessBase уже опубликовала исходный код для Fat Fritz 2 SE, всё ещё ведутся споры о том, полностью ли продукт соответствует GPL v3. Это связано с тем, что ChessBase не раскрывает данные о весах нейронной сети. Но требует ли GPL раскрытия информации о весах нейронных сетей, далеко не ясно.

Из DeepAI.org:

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

В связи с этим возникает вопрос: распространяются ли требования GPL v3 к раскрытию информации на веса нейронных сетей? Мы обратились к Хизер Микер за её анализом по этому вопросу.

“В GPL ничего конкретно не говорится об обработке моделей машинного обучения, созданных для кода GPL. Сложность интерпретации GPL для ML-приложений в том, что веса нейронных сетей находятся на пересечении кода и данных.
Фонд FSF[1] уже давно придерживается позиции, что весь код, связанный с ПО под лицензией GPL, является частью одного и того же авторского произведения, и, следовательно, эта комбинация является производным произведением и должна быть доступна под лицензией GPL. Эта позиция не была тщательно проверена с точки зрения права, но она широко принята в качестве отраслевой практики.
Однако предположение о том, что GPL также распространяется на веса нейронных сетей, созданных с помощью кода GPL или для использования с ним, выходит за рамки этой позиции. Модели и веса отличаются от связанного кода или библиотек. Связь между кодом GPL и созданной с его помощью моделью обычно представляет собой связь программного обеспечения с данными, а не программного обеспечения с программным обеспечением. Таким образом, утверждение о том, что код GPL требует, чтобы результирующие модели были лицензированы в соответствии с GPL, является шаткой позицией.
Даже FSF, похоже, не поддерживает эту позицию в своих часто задаваемых вопросах о GPL. FSF заявляет, что “юридически невозможно”, чтобы лицензия GPL распространялась на результаты программ GPL”. – Хизер Микер.

  1. Речь про Фонд свободного программного обеспечения - прим. пер. ↩︎

Вопрос 2: GPL v3 и прекращение действия лицензии

Stockfish vs. ChessBase также может стать интересной проверкой другого положения GPL v3: возможности аннулировать лицензию. Это относится к самой сути спора Stockfish со своим оппонентом.

Вот что Stockfish написали в своём блоге от 20 июля 2021 года, анонсируя судебный процесс:

Из-за неоднократных нарушений лицензии ChessBase ведущие разработчики Stockfish прекратили действие своей лицензии GPL для ChessBase. Однако в ChessBase игнорируют тот факт, что они больше не имеют права распространять Stockfish, в модифицированном виде или нет, как часть своей продукции. Таким образом, чтобы обеспечить соблюдение последствий прекращения действия лицензии, мы подали иск в суд.

Однако что, если суд решит, что ChessBase не обязана раскрывать весовые коэффициенты нейронной сети для Fat Fritz 2 SE и на самом деле в настоящее время соответствует GPL v3? Даёт ли Stockfish право аннулировать свою лицензию тот факт, что ChessBase раньше не соответствовала требованиям?

Мы задали этот вопрос Микер:

“В GPL v3 предусмотрен срок на устранение нарушения[1], в отличие от GPL v2”, - говорит Микер. “Для GPL v2, при нарушении лицензии, действие лицензии прекращается автоматически. Для GPL v3 лицензия может быть восстановлена. Так что этот случай может стать интересной проверкой положений GPL v3 о прекращении действия лицензии и сроке на устренение нарушения и того, как они работают на практике”. – Хизер Микер

Два дополнительных комментария:

  • Срок на устранение нарушения условий лицензии GPL v3 составляет 30 дней с момента уведомления о нарушении лицензии. Таким образом, если суд установит, что ChessBase не прекратила нарушение лицензии в течение 30 дней с момента получения уведомления, суд может признать это основанием для принудительного прекращения действия лицензии.
  • Положение о сроке на устранение нарушения действует только в том случае, если пользователь OSS впервые получает уведомление о нарушении GPL v3 от данного правообладателя. Таким образом, если суд установит, что Stockfish ранее предоставила ChessBase уведомление о нарушении GPL v3, это также может повлиять на его решение.

  1. В оригинале это названо как "cure period", см. про это пояснения, например, здесь - прим. пер. ↩︎

Stockfish vs. ChessBase: итоги

В конечном счёте, кейс Stockfish vs. ChessBase может оказаться интересной проверкой двух положений лицензии на программное обеспечение с открытым исходным кодом GPL 3, касающихся прекращения действия лицензии и раскрытия веса нейронной сети. Чтобы узнать последние новости по этому делу, следите за блогом Stockfish и этим постом.

When accuracy matters for a costume, it is worth considering how details related to cosplay props will affect the complete look. With practical wear in mind, it helps to assess details related to fabric and comfort together with fit and fabric. To shape a complete look around details related to cosplay wigs, anime cosplay costumes with detailed sizing offers a useful starting point for practical preparation. To reuse the pieces at future events, it is useful to check details related to festival costumes against the wearer's own needs.


Однако, судебных ответов (в виде судебных актов) на обозначенные выше вопросы мы не получили - в конечном счёте, спор завершился мировым соглашением. Детали об этом (вместе с текстами самого соглашения на английском и немецком языках) есть также в блоге Stockfish.

Chessbase, Stockfish Reach Settlement Over License Violation Claim
ChessBase and the team behind open-source chess engine Stockfish have reached a settlement and ended their legal dispute over the latter’s claim regarding a repeated license violation by Chessbase.
Правда, судья сообщила, что отзыв лицензии мог быть вполне подтверждён судом.