Comments 29
С одной стороны способ отмыть лицензию.
С другой - я как человек могу смотреть GPL код и потом писать не GPL код и однозначно влияние просмотренного кода тоже будет. Почему мне можно использовать GPL код для обучения, а ИИ - нет? Я не запоминаю код до буквы, а ИИ - запоминает? В этом отличие?
Потому что там идет фактически копипаста вместе с комментариями, без указания автора, в некоторых случаях
Допустим мы убрали комментарии, теперь можно?
А если этот код по другому не напишешь: слишком маленький размер кода, слишком просто, код основан на анализе и улучшении другого кода и т.д.
При этом взять открытый код и закрыть его под GPL можно, а наоборот нельзя?
Вдруг где-то есть тот же код без лицензии? А если найду? Какие ваши доказательства?
Я совершенно не понимаю почему многие сторонники опенсурса так топят за лицензии. Лично я рассматриваю лицензии как компромисс, как промежуточный этап, чтобы людям было легче перейти от тотальной копирастии (которая была еще буквально лет 30 назад) к возможности всемирно переиспользовать код (или если угодно говорить в терминах копирастии
Просто укажу моменты, которые показывают насколько нелогичны и нелепы современные представления об авторстве на код и его лицензиях:
Считается что код принадлежит человеку который написал его. Почему? Знаю, для многих людей это само собой разумеющееся как то что трава зеленая и они даже физически не способны задуматься над этим вопросом, но я буду честен сам с собой и заявлю что это дырявая абстракция перенесенная из физического мира. Логики в этом утверждении не больше чем то что Марс населен людьми, ведь Земля планета и населена людьми, а марс тоже планета, значит тоже населена людьми.
А если код написал не один человек? Ну это просто, скажите вы, закон говорит что… Но я не знаю кто писал этот закон и я с ним не соглашался и вы скорее всего тоже. Законы должны отражать некую потребность (решение некой проблемы, для которой пишут законы) и я совершенно не уверен, что этот закон решает проблемы разработчиков. Чтобы не превратить этот комментарий в книгу, я не буду рассказывать как пишутся законы, что они зачастую пишутся людьми которые не разбираются в законах и что часто они пролоббированы или просто скопированы из другой юрисдикции или внесли их временно, но что-то пошло не так и так далее. Просто остановимся на том факте что закон не решает моих проблем или решает их не лучшим образом и с вашими проблемами скорее всего тоже самое. Еще я отмечу что с того момента как мы приплели закон, мы отдали бразды правления юристам. С этого момента нет никаких разработчиков, никакого инженерного подхода, только бюрократия. Мне кажется это не то к чему стремятся разработчики, поэтому мне не понятно почему я должен топить за этот закон и почему за него должны топить другие разработчики (чьи проблемы он скорее всего тоже не решает).
Но перед тем как выяснить какие же проблемы решает закон, неплохо бы определить про какой конкретный закон мы говорим. Обычно в разговорах про лицензии подразумевают законы Америки. А в России (откуда я пишу) обычно подразумевают российские законы. А авторы лицензии могли бы жить например в Швейцарии. Ничего страшного скажите вы, законы действуют там где они действуют, если живешь в России, живи по российским законам. Но это тоже протекающая абстракция. Получается у каждого свой закон и у каждого закона разное отношение к разным лицензиям (и даже к их отсутствию). Почему же при разговоре о лицензиях обычно подразумеваются американские законы? Это же не логично. Кроме того это вы сейчас живете в стране X с законом Zx, а завтра вы можете переехать в страну Y с законом Zy, и не факт что по закону Zy ваш код не нарушает закон. А что если вы хотите использовать код человека из страны Y? Кроме того вы можете использовать чужой код если вас не поймают (как говорят и делала microsoft в windows), получается мы даем преимущество преступникам. А что если вы захотите разместить свой код на хостинге в стране Y (кажется страна Y при таком раскладе имеет преимущество перед другими странами)? А что если другой человек не скопировал код, а написал случайно такой же? Что вообще значит такой же код? Где проходит граница между копипастой и модификацией? А что если код написал не человек?
Что-то очень много вопросов, а мы еще даже до лицензий не дошли, не то что код начали писать и уж тем более не затронули более тонкие моменты.
Предвижу мнение «других решений нет, все так живут». Но другое решение есть и оно было изначально. Просто откажемся от придуманных ограничений. Природа устроена таким образом, что любой человек с доступом к коду может его использовать и на самом деле все живут именно так(как бы копирастам не хотелось иного). Так давайте не будем усложнять и остановимся на этом. Это решение решает все возникшие выше вопросы, оно логично, оно предоставляет равные условия тем кто его принял, оно не требует кормить орды бюрократов и тратить нервы и силы на судебные процессы и прочие формальности. Да, бизнес корпораций зарабатывающих на праве владения и патентным троллингом накроется, оракл больше не сможет отсудить 1 млрд за использование api, но мое мнение что обществу от этого станет лучше, это поддержит компании которые действительно делают что-то полезное, это поможет энтузиастам, это сделает разработку более доступной, а закрытый софт итак все больше сдает позиции.
Извините, но вы не по адресу, мне лицензии тоже не очень нравятся.
Можете начинать революцию и свергать толпы бюрократов, мне будет интересно, что из этого выйдет)
Например, я как разработчик, хочу чтобы мой код, который я пишу для сообщества, использовался только в таких же Open-Source проектах для сообщества.
И совершенно не хочу делиться им с крупными корпорациями, которые исходники закрывают (Ведь они со мной не делятся своим кодом, а я почему-то должен)
Я выбираю GPL.
А если мне всё равно, кто и при каких обстоятельствах сможет его использовать, то я могу выбрать MIT. Текущая система лицензий, имхо это лучшее, что можно было бы придумать, покрыв интересы всех.
Лучше, на мой скромный взгляд, только когда вообще всё ПО открытое (Тогда собственно и лицензии не нужны будут и вообще наступит коммунизм)
Я совершенно не понимаю почему многие сторонники опенсурса так топят за лицензии.
1) Чтобы получить свою порцию авторского уважения, сиречь уважения к ним за их труд.
2) Чтобы сохранить свободу для своего кода, сиречь чтобы запретить закрытие их труда.
Видимо, в данном случае проблема в том, что ИИ не может знать, в какой из этих двух ситуаций он используется, поэтому сгенерированный им код всегда имеет шанс быть «заразным».
Вот программа «А» имеет функциональность… ну, например, среди прочего, проверка входных данных — проверка переданой строки на предмет того, что она содержит только цифры. Разработчик посмотрел на исходники и сделал программу «Б», где тоже проверяет что программе на вход подается число в виде текста — как можно это воспроизвести не буквально?
Как с музыкой, влияние есть а плагиат или нет решает конкретный судья.
В данном случае пока прецедентов нет, а то можеть быть весь код на выходе сочтут не лицензионно чистым, а наоборот. отягощенным кучей вирусных лицензий. Особенно если предлагаемый плагином код содержит оригинальные "wtf" комменты автора.
Так или иначе, как мне кажется, copilot выглядит интересно, поэтому стоит ждать аналогов на любой вкус, в том числе лицензионно чистых.
"Решает суд" - это очень херовая практика. Потому что если нет четкого критерия для определения нарушения закона - это мусор, а не закон.
То что ИИ утащил и комментарии - это просто недоработка, которая позволила "поймать за руку". Если бы этого бага не было - было бы гораздо сложнее понять что что-то не так.
Я не говорю что текущая ситуация нормальная. Я говорю что она не однозначная и понять как она должна решаться пока не ясно...
Я как-то пытался изучать вопрос, но по факту судебного прецедента, который бы дал ответ нет. Есть много теоретических работ, часть авторов говорит, что то, что генерирует нейросеть будет производной работой, часть авторов утверждает, что нет, не будет. Также в ряде стран есть законы, которые допускают использование данных в исследованиях, но не в коммерческой деятельности. Очень интересно, что решит суд. Может быть Microsoft даже специально идут на такую конфронтацию, чтобы понять границы допустимого использование генеративных сетей и языковых моделей.
Сценарий 1: я беру и генерирую код для своего проекта с помощью copilot, на суде выясняется что он до комментария совпадает с кодом из GPL-проекта, но я оправдываюсь тем что не знал об этом.
Сценарий 2: я беру и без всякого copilot копирую кусок кода из GPL проекта, а на суде говорю что использовал copilot и ничего не знал.
Сможет ли суд как-то отличить эти два сценария?
Немного напоминает ситуацию с музыкой, которую нельзя просто так использовать, зато можно делать каверы. Ну или литературные произведения, где нельзя копировать текст и имена героев, но можно пересказывать сюжет.
А кто вам сказал что каверы делать можно? Да пока вы делаете это у себя дома и никому не показываете вы можете, а стоит вам выложить это в тот же ютуб, то вы уже нарушили авторские права
GitHub уточнила, что Copilot обычно не воспроизводит точные фрагменты кода, а создает производные работы из ранее полученных входных данных.
Очень сильно сомневаюсь что Copilot в целом понимает, что за код он воспроизводит. Что видел то и повторил.
GitHub признался, что использовал весь публичный код для обучения Copilot без учёта типа лицензии