Лицензирование
В LibreYOLO есть три вещи с раздельными лицензиями: собственный код, upstream-код, встроенный в семейство моделей, и предобученные чекпойнты. Лицензия у них часто не одна и та же.
Собственный код LibreYOLO
Библиотека распространяется под MIT. Это покрывает Python API, CLI, код
обучения, валидации и экспорта, загрузчики датасетов и скрипты конвертации в
weights/. Используйте её в коммерческом продукте или продукте с закрытым
исходным кодом, сохраняйте строку копирайта и текст лицензии в любой копии,
которую распространяете, — на этом обязательства заканчиваются.
Действие лицензии заканчивается на коде. Файл
LICENSE
говорит об этом прямо:
Эти лицензии различаются, и не все они разрешительные: некоторые опубликованные веса некоммерческие или ограничены другими условиями, и настоящая лицензия MIT на них не распространяется. Выбирая модель, вы выбираете её лицензию.
Upstream-код, по семействам
Большинство семейств — это порты опубликованных исследований, и некоторые из них включают исходный код upstream напрямую. Включённый файл сохраняет исходный заголовок с копирайтом и исходную лицензию. MIT её не перекрывает, и LibreYOLO не перелицензирует чужую работу. Чаще всего встречаются Apache-2.0 и BSD-3-Clause.
Apache-2.0 покрывает линейку DETR и большую часть работ по трансформерам: DETR от Meta AI (FAIR), Deformable DETR от SenseTime, LW-DETR от Baidu, OV-DEIM от Leilei Wang и соавторов, реализацию SegFormer, которую LibreYOLO портирует из Hugging Face Transformers, PP-OCRv5 от PaddlePaddle Authors, SwinIR из Computer Vision Lab в ETH Zurich и Depth Anything 3 от ByteDance Seed. Она же покрывает классификаторы, производные от timm за авторством Ross Wightman и контрибьюторов timm, среди них ResNet, DeiT, EfficientNetV2, MobileNetV4 и Swin, имена модулей в которых повторяют timm, чтобы тензоры ImageNet из него загружались без изменений.
BSD-3-Clause покрывает всё, что производно от torchvision: Faster R-CNN, Mask R-CNN, FCOS, RetinaNet, SSD300, AlexNet, VGG, FCN и DeepLabv3.
MIT покрывает группу поменьше, в том числе NAFNet от Megvii, CenterNet от Xingyi Zhou и YOLOv7 в том виде, в котором его переопубликовали сами авторы, Kin-Yiu Wong и Hao-Tang Tsui, в MultimediaTechLab. Семейства с YOLOv1 по YOLOv4 воспроизводят архитектуры из проекта Darknet, автор Joseph Redmon, а для YOLOv4 — Alexey Bochkovskiy. Darknet находится в общественном достоянии, поэтому на них не лежит вообще никаких обязательств.
Одно из включённых поддеревьев идёт не под лицензией открытого исходного кода. Семейство DEIMv2 поставляется с кодом бэкбона DINOv3 от Meta Platforms под DINOv3 License Agreement — собственной лицензией, не одобренной OSI. Распространять этот код можно только вместе с копией соглашения, а само соглашение запрещает использование для деятельности, подпадающей под ITAR, в военных целях, в ядерной отрасли, для шпионажа и для разработки оружия. Эти условия распространяются только на это поддерево.
Полную картину дают два файла в репозитории.
NOTICE
перечисляет каждое включённое стороннее поддерево с его путём, файлом лицензии
и upstream-источником.
THIRD_PARTY_NOTICES.txt
перечисляет upstream-проекты, от которых производен LibreYOLO, и полностью
воспроизводит текст каждой лицензии.
Веса, по чекпойнтам
Внутри пакета не поставляется ни одного файла предобученных весов.
Опубликованные чекпойнты лежат на Hugging Face в организации
LibreYOLO, и в каждом репозитории есть свой
LICENSE и указание авторства того проекта, из которого пришли веса.
Именно этот репозиторий — авторитетный источник условий. Не эта страница, не страница модели и не сводка в дереве исходников. О том, как называются файлы и откуда они скачиваются, читайте в разделе чекпойнты и веса.
Лицензии различаются между семействами и различаются между файлами внутри одного семейства. Два примера второго:
- Чекпойнты YOLO9 для COCO — под MIT.
LibreYOLO9P2s-visdrone.pt, обученный на VisDrone2019-DET, идёт под CC BY-NC-SA 3.0, то есть некоммерческий. - Детекционные чекпойнты RF-DETR — под Apache-2.0. Чекпойнты для повёрнутых рамок — под CC BY 4.0, потому что их дообучали на датасете Roboflow Universe, опубликованном под CC BY 4.0, и веса переносят дальше требование этого датасета об указании авторства.
Между семействами разброс шире, и несколько опубликованных чекпойнтов нельзя использовать в коммерческом продукте:
- SegFormer — самое наглядное расхождение между двумя слоями. Реализация — это порт кода Hugging Face Transformers под Apache-2.0. Опубликованные чекпойнты для ADE20K сконвертированы из релиза NVIDIA под NVIDIA Source Code License, которая разрешает распространение, но ограничивает использование некоммерческими исследованиями или оценкой и переносит это ограничение дальше, в производные работы. На эти чекпойнты разрешительные условия LibreYOLO не распространяются.
- Чекпойнты OV-DEIM идут под CC BY-NC 4.0, это подтвердил автор upstream. Каждое предсказание дополнительно загружает текстовую башню Apple MobileCLIP-B(LT), лицензия которой ограничивает использование исследованиями — условие строже, чем у самого чекпойнта.
- Код SenseNova-Vision — под Apache-2.0, а его веса — под CC BY-NC 4.0. Загрузчик печатает уведомление о некоммерческом использовании перед каждым автоматическим скачиванием.
У части семейств вообще нет чекпойнтов, размещённых LibreYOLO, и на их страницах об этом сказано в строке «Веса». SAM 3 на Hugging Face доступен только по запросу, под собственной лицензией Meta SAM License, и скачивается напрямую у Meta. Файлы релизов MiDaS забираются по официальным URL и проверяются по хешу, а не перевыкладываются. Для Dome-DETR стоит ссылка на upstream, потому что в метаданных его карточки модели лицензия не указана, а текст одновременно заявляет Apache-2.0 и ограничивает использование академическими исследованиями, и одно с другим не сходится. Архитектуры TEED и DexiNed — под MIT, но выпущенные авторами чекпойнты обучались на BIPED, условия которого некоммерческие, поэтому LibreYOLO их не включает в поставку и не скачивает автоматически.
У нескольких чекпойнтов torchvision нет собственного файла лицензии. LibreYOLO выкладывает их зеркалом под той лицензией, которую использует выпускающий проект, на каждой карточке модели указывает, что основание подразумевается, а не выдано отдельно для каждого чекпойнта, и повторяет собственное предупреждение torchvision о том, что условия для предобученных моделей могут вытекать из обучающих данных.
Поиск условий для конкретной модели
На странице модели в шапке есть строка Лицензии в виде Code X, weights Y,
которая ведёт вниз, в раздел лицензирования той же страницы. В этом разделе
перечислены исходная работа и её авторы, upstream-лицензия, upstream-источник,
лицензия кода LibreYOLO, веса и толкование того, что условия разрешают. В
таблице чекпойнтов на той же странице есть колонка Лицензия весов, по строке
на каждый опубликованный файл, так что семейство со смешанными условиями
показывает их файл за файлом.
Всё это отрисовывается из тех же данных, по которым проверяется библиотека, поэтому эта страница не дублирует их таблицей. Написанная руками матрица лицензий оказывается неверной уже в пределах одного релиза, а ошибка здесь дорого обходится.
В дереве исходников тому же соответствуют NOTICE для включённого кода,
THIRD_PARTY_NOTICES.txt для upstream-проектов и текстов их лицензий и
weights/LICENSE_NOTICE.txt
для сводки по опубликованным чекпойнтам в разрезе семейств.
После этого проверьте на Hugging Face репозиторий того самого файла, который собираетесь скачать. Он авторитетен, и он может измениться, а страница документации — нет.
Коммерческое использование
Код редко бывает проблемой. MIT, Apache-2.0 и BSD-3-Clause разрешают коммерческое использование и использование в продуктах с закрытым исходным кодом. Каждая из них обязывает сохранять текст своей лицензии и уведомления об авторстве в тех копиях, которые вы распространяете, Apache-2.0 дополнительно даёт патентную лицензию, и ни одна из них не накладывает условий на код вашего собственного приложения.
Продукты застревают на чекпойнтах. Некоммерческий чекпойнт остаётся
некоммерческим, каким бы разрешительным ни был код вокруг, а конвертация
файла не меняет применимых к нему условий — об этом прямо сказано в
weights/LICENSE_NOTICE.txt. ONNX- или TensorRT-артефакт, собранный из
ограниченного чекпойнта, наследует ограничение.
Там, где лицензия переносит своё ограничение в производные работы, как это делает NVIDIA Source Code License, дообучение от него тоже не спасает. А обучение той же архитектуры с нуля на данных, права на которые у вас есть, — спасает: код разрешительный, поэтому модель, обученная вами, принадлежит вам, и условия предобученного чекпойнта в неё не попадают. На странице SegFormer это расписано для его собственных весов; прочитайте строку «Толкование» на странице того семейства, которое собираетесь поставлять.
Решайте вопрос с лицензией в момент выбора модели, а не в момент выпуска, и читайте условия того файла, который вы действительно скачали, потому что у семейства с одним разрешительным чекпойнтом рядом может лежать ограниченный.
Не юридическая консультация
Эта страница описывает задействованные лицензии. Это описание, а не юридическая консультация, и оно не создаёт никаких гарантий. Если от ответа зависит коммерческая сторона дела, прочитайте лицензии сами и обратитесь к своему юристу.