LINUX.ORG.RU

Не могу разобраться лицензией AGPL

 ,


0

1

Всем привет! Я использую продукт YOLOv5 в коммерческом проекте на python. Нарушаю ли я каким-то образом AGPL? Также непонятны тезисы о том, что я не должен закрывать код. Как это понять? Я должен сделать открытый репозиторий своего продукта?

Я прочел тред https://github.com/ultralytics/ultralytics/issues/2129 но мне не сильно это помогло с ответом

Сами они предлагаю некую «корпоративную лицензию» - https://www.ultralytics.com/ru/license Тут тоже не очень понял, что она мне даст по сравнению с обычной?


PS Извините, создал не в том разделе тред

Перемещено leave из multimedia

★★

Последнее исправление: Andreezy (всего исправлений: 2)
Ответ на: комментарий от sparks

Не очень понял. Что значит «распростроняешь глобально»?. Я делаю некий продукт и отдаю заказчику код (или сбилженный контейнер). Так как код питона не компилируется то он в любом случае передается в открытом виде. Может ли теоретически Ultralytics какие-то претезии мне выставить? Ведь они пишут

Если ты стремишься интегрировать программное обеспечение Ultralytics и модели искусственного интеллекта в коммерческие товары и услуги, не придерживаясь требований открытого исходного кода AGPL-3.0, то наша лицензия Enterprise License - это то, что ты ищешь.

Разве это не мой случай?

Что интересно, сам AGPLv3 вроде как не запрещает коммерческое исользование

https://user-images.githubusercontent.com/26833433/233319537-27109d1e-f7dd-44a1-b75a-f19f653f18b8.png

Andreezy ★★
() автор топика
Последнее исправление: Andreezy (всего исправлений: 3)
Ответ на: комментарий от Andreezy

Заказчику ты должен сообщить что там AGPL и пояснить её условия.

А именно, если он выставит этот продукт интерфейсом в интернет, то AGPL обяжет его показать всем интернет-клиентам код продукта.

Иначе говоря, AGPL запрещает делать клозед-сорс SaaS.

firkax ★★★★★
()
Ответ на: комментарий от Andreezy

Не важно бекэнд или нет. Если он часть SaaS то надо показывать клиентам исходники программы. Если он для внутреннего пользования (то есть им пользуются только сотрудники компании) - то не нужно.

firkax ★★★★★
()
Ответ на: комментарий от Andreezy

Ты нарушил если при передаче ПО не сообщил заказчику про AGPL (из твоих слов непонятно, сообщал ли).

Заказчик не нарушил - сотрудники пользуются от имени фирмы, у фирмы исходник есть. Если даст в пользование кому-то другому и не покажет исходник - нарушит.

firkax ★★★★★
()
Ответ на: комментарий от firkax

Есть еще вопрос.В описании лицензии сказано

Это лицензия свободных программ с авторским левом. Ее условия фактически состоят из условий GPLv3 с дополнительным параграфом в разделе 13, который позволяет пользователям, взаимодействующим с лицензируемой программой по сети, получать исходный текст этой программы

Я продаю ПО как набор микросервисов, в которых юзер взаимодействует с сервисом фронта (который вообще на React), а сервис, в котором компонент с AGPL вообще с юзером взаимодействовать технически не может. Должен ли я в таком случае открывать исходный код от него?

Andreezy ★★
() автор топика
Последнее исправление: Andreezy (всего исправлений: 2)
Ответ на: комментарий от Andreezy

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

firkax ★★★★★
()
Ответ на: комментарий от firkax

То есть если просто на главной странице сделаю ссылку на открытую репу с кодом, то я формально выполнил условия лицензии?

Andreezy ★★
() автор топика
Последнее исправление: Andreezy (всего исправлений: 1)
Ответ на: комментарий от firkax

Вообще тут мне кажется все несколько сложнее

Я подключаю YOLO через torch hub

torch.hub.load('ultralytics/yolov5', 'yolov5s', pretrained=True)

torch при этом сам на BSD лицензии

При это было уже некое обсуждение, в котором товарищ считает что реализация «прокладки» решает проблему поддержки AGPL в проекте

Знатокам AGPL (комментарий)

Andreezy ★★
() автор топика
Ответ на: комментарий от Andreezy

реализация «прокладки» решает проблему поддержки AGPL в проекте

Да, потому что вы обязаны открыть не весь свой код, а только ту часть, которая напрямую связана с кодом на AGPL. Проще и логичнее для этого сделать «прокладку» в виде открытой библиотеки.

vvn_black ★★★★★
()
Последнее исправление: vvn_black (всего исправлений: 3)