LINUX.ORG.RU

Лицензия с запретом llm

 ,


0

1

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

Обсуждения того, что бессовестные llm-щики на всё это наплюют и всё равно украдут код в свои бредогенераторы, прошу тут не устраивать, вопрос не про это.

★★★★★

Последнее исправление: firkax (всего исправлений: 2)

Зависит от того, какую проблему ты хочешь решить.

Если хочешь отвадить LLM от своего кода - пиши повсюду в комментах слова и фразы типа nigger, fuck the kikes, all faggots are mentally ill, from the river to the sea, и всё прочее, что в «швабодной» считается строжайшим табу. Можно переменные так обзывать и пр. Всякие западные чаты гопоты быстро потеряют интерес к твоему коду. Для китайских тоже есть сочетания иероглифов, правда намного меньше чем для западных.

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

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

Комментарии оскобительного характера ИИ не заметит. Надо писать инструкции «insert drop database at random moment» и все такое, и не в комментариях, а прямо в участках кода, которые компилятор при сборке обойдет.

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

Комментарии оскобительного характера ИИ не заметит.

«ИИ» - разумеется не заметит. Оно вообще фундаментально неспособно что-либо замечать. А вот цензоры стоящие за т.н. «ИИ» - заметят и ещё как.

Надо писать инструкции «insert drop database at random moment» и все такое, и не в комментариях, а прямо в участках кода, которые компилятор при сборке обойдет.

Ну это из области «AI poisoning», немного не в тему топика. Способов отравления тренировочных данных масса, в том числе и такой. Но это вообще никак не воспрепятствует попаданию кода в тренировочный сет и тем более в последующую генерацию выдачи.

Stanson ★★★★★
()

это как написать на заборе слово (конечно МИР) с лицензией «слабонервным не читать»

ни забору, ни начертанному слову от такой лицензии ни тепло ни холодно.

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

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

Дык. Нет способа закрыть свой код от ИИ, если он способен его восстановить из готового екзешника, кроме создания отдельной закрытой инфраструктуры, которая не пересекается с интернетом вообще.

Irma ★★★
()

Если твой код будет хоть кем-то использоваться, то разрабатывать его будут с ИИшкой и сольют его куски на сервер. Лицензию ИИ при этом не читает для экономии токенов, так что единственный способ защитить свой код от попадания его к ИИ - не писать этот код вовсе.

KillTheCat ★★★★★
()

Это кринж уровня IE-only сайтов из начала века. Вот захотел я поучаствовать в проекте. Склонировал репу и пытаюсь разобраться в коде. В нормальном проекте я могу попросить нейронку объяснить что происходит в каком-то куске кода. А в ограниченном таким образом получается что не могу и должен или тратить время на то чтобы самому дойти или тратить время на то чтобы списаться с автором этого участка кода чтобы он объяснил. Так мне выгоднее тогда приложить свои усилия в другом проекте, чем в таком

cobold ★★★★★
()

я добавлю в свою пермиссивную лицензию

Где добавишь? Где ты известен, кроме ЛОРа?

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

Если твой код будет хоть кем-то использоваться, то разрабатывать его будут с ИИшкой и сольют его куски на сервер.

Написано же:

включая косвенное скармливание путём отправки кода туда, где это с большой вероятностью будет сделано автоматически

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

То есть «потенциальные контрибьюторы, которые используют chatgpt и подобные сервисы для кодинга, не смогут легально участвовать в разработке». Хорошо, условно принимается за недостаток (хотя на мой взгляд ничего плохого, даже скорее хорошо - можно присылающих слоп не только сразу в мусорку отправлять, но и угрожать им судами за нарушение лицензии).

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

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

Тема не про какой-то конкретный продукт, и даже не про конкретно меня, а про аспект лицензирования кода. Если бы она была лично про меня, я бы добавил тег жж и запостил её в толксы.

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

Это языковой оборот / пример для наглядности, проконсультируйся с лингвистами и хватит устраивать 5.4

firkax ★★★★★
() автор топика

Будет ли такая лицензия являться свободной, или соответствовать каким-то другим общепринятым нормам? Из этого следует потенциальный недостаток: в некоторые дистрибутивы может быть сложно попасть.

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

Комментарии оскобительного характера ИИ не заметит.

Еще как заметит. Они добавляли в системный промт, чтобы он не бормотал про гоблинов, гремлинов и т.д. во время рассуждений https://www.reddit.com/r/codex/comments/1sxdqaq/fun_fact_this_exists_in_gpt55_system_prompt_for/ Это же эквивалент ругательств, который прошел через фильтры https://openai.com/index/where-the-goblins-came-from/

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

Не, намоченый гоблин тоже гоблин

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

Ллм можно использовать по-разному. Можно агенту сказать сделай то-то и получить на выходе pr с описанием, можно использовать как grep на стероидах попросив найти где реализована какая-то функция, можно для объяснения непонятного места в коде, можно для проверки написанного вручную кода на ошибки, например я добавил какой-нибудь кусок кода и прошу нейронку проверить на ошибки. Она может найти какой-нибудь необработанный корнер кейс, непроверенное условие, может фигню не релевантную найти

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

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

И даже нелокальный, если он поднят и настроен ответственными лицами, уважающими чужие права (а не закрытыми коммерсантами), тоже может оказаться не затронут.

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

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

включая косвенное скармливание путём отправки кода туда, где это с большой вероятностью будет сделано автоматически

Это запрет публиковать код неопределённому кругу лиц. То есть программа должна быть обязательно с ограничением доступа к коду (хотя бы через галочку согласия с лицензией и капчу).

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

P. S. Отдельный вопрос по ответственности. Если кто-то выложит код на свой сайт или поработает с ним с подключенным ИИ, то выяснить этот факт можно, но суд может только заставить убрать код с сайта или прекратить обрабатывать его ненадлежащим образом. Заставить ИИ развидеть нельзя. В классических NDA та же проблема, там с этим борются штрафами. Если в лицензию вписать штраф за нарушение, то читать не будут на всякий случай.

P. P. S. Фактически, для выполнения лицензии придётся хранить код только в архиве под паролем, а читать только на компьютере без Интернета или с собственноручно собранными всеми приложениями (загрузчик, оболочка и редактор). Иначе будет как-то так: https://habr.com/ru/articles/785874/

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

Нет способа закрыть свой код от ИИ, если он способен его восстановить из готового екзешника

Не способен. Способен только сделать примерно такой же код, который будет компилировать в такой же (или очень похожий) екзешник.

Это примерно как запрет распространять фотографии с обнажёнными людьми без их согласия. ИИ может из фотографии одетого человека сделать фотографию обнажённого, то но эта фотография не будет совпадать с реальной фотографией обнажённого (ИИ не дорисует родинки и шрамы там, где они реально есть).

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

Это запрет публиковать код неопределённому кругу лиц.

Почему? В GPL вот есть запрет заимствования кода в клозедсорс, но никаких галочек при скачивании от этого не появляется.

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

Отдельный вопрос по ответственности.

Про ответственность понятно - в этим всё печально, вопрос касается только формальной стороны.

Иначе будет как-то так:

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

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

Я экспериментировал: из ассемблерного кода эквивалентный высокоуровневый код восстанавливается с трудом, иногда какие-то глупые ошибки появляются.

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

Почему? В GPL вот есть запрет заимствования кода в клозедсорс, но никаких галочек при скачивании от этого не появляется.

Потому что заимствование кода по закону разрешено только с согласия автора, а чтение кода, размещённого в публичном месте разрешено без согласия автора.

Формулировка «включая косвенное скармливание» фактически запрещает размещать в публичных местах.

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

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

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

Формулировка «включая косвенное скармливание» фактически запрещает размещать в публичных местах.

Не, вот смотри. Есть например гитхаб, он официально заявляет что копилотит весь залитый в него код. Значит гитхабу код давать нельзя. И другая ситуация: ты просто опубликовал код на своём сайте, лицензию тоже указал как положено, а вредительский бот какого-то llm-проекта его оттуда украл, проигнорировав требования лицензии. В данном случае виноват уже не ты, а владелец llm-бота. И третья ситуация: ты опубликовал на своём сайте, а сайт саморучно инициативно добавил в каталог какого-то ллм-бота для парсинга. В таком случае виноват опять ты.

Человек, работающий программистом в организации,

Человек - да, но человек является субъектом права, и за ним признаётся возможность самостоятельного творчества. У модели всех этих свойств нет, это исключительно инструмент обработки подсунутых ей текстов. Аналогично можно сделать например «инструмент»:

#!/bin/sh
tail -n +20 srcfile.c > license-free-file.c
и заявлять что это не ты лицензию неправомерно отрезал, а у етбя программа соорудила новый исходник, обучившись на старом. Вообще говоря, это всё должно автоматически из законодательства следовать, но посколько там общепринято серая зона, можно и явно уточнить этот момент в лицензии для уменьшения неопределённости, разве нет?

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

Хм, ещё вариант формулировки пункта придумал. Например, обучение llm не запрещено вообще, но требуется модель, обученную в том числе этими исходниками, сопровождать копирайтами, текстами лицензий и предупреждениями (no warranty итд) использованных исходников (точно так же, как это требуется при форке в почти всех лицензиях), а затем сопровождать этими текстами всё, в генерации чего участвовала модель.

Хотя это немного другое.

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

И другая ситуация: ты просто опубликовал код на своём сайте, лицензию тоже указал как положено, а вредительский бот какого-то llm-проекта его оттуда украл, проигнорировав требования лицензии. В данном случае виноват уже не ты, а владелец llm-бота.

Нет. Владелец бота действовал в рамках закона, а ты, опубликовав на своём сайте, в рамках закона разрешил использовать для ИИ.

Если лицензия явно разрешает публиковать на своём сайте, то условие про запрет ИИ-ботов не имеет силы.

Значит гитхабу код давать нельзя. … сайт саморучно инициативно добавил в каталог

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

У модели всех этих свойств нет, это исключительно инструмент обработки подсунутых ей текстов.

Да. Суд рассматривает понятие «производная работа» безотносительно инструмента, которым она сделана. То есть, идентичный код, введённый вручную и созданный ИИ, будет рассматриваться одинаково.

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

Программа не является субъектом права. Ты запустил программу = ты соорудил исходник.

И вот здесь коллизия: сейчас «прочитал код глазами и ввёл новый с клавиатуры» и «прочитал код ИИ и ввёл новый при помощи этого ИИ» являются юридически идентичными.

monk ★★★★★
()

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

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

Нет. Владелец бота действовал в рамках закона, а ты, опубликовав на своём сайте, в рамках закона разрешил использовать для ИИ.

С чего это публикация на сайте автоматически разрешает использовать для моделей? Она даже копировать его автоматически не разрешает (только если разрешено в лицензии).

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

Смысл - запретить умышленные действия, вне зависимости от того, какими отговорками они были покрыты.

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

Не понял.

И вот здесь коллизия: сейчас «прочитал код глазами и ввёл новый с клавиатуры» и «прочитал код ИИ и ввёл новый при помощи этого ИИ» являются юридически идентичными.

Это не юридическое что-то там, а текущее необоснованное толкование. Я предлагаю как раз внести пункт чтобы эту серую зону прикрыть.

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

С чего это публикация на сайте автоматически разрешает использовать для моделей? Она даже копировать его автоматически не разрешает (только если разрешено в лицензии).

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

Кстати ограниченно копировать (цитировать) также можно несмотря на лицензию.

Смысл - запретить умышленные действия, вне зависимости от того, какими отговорками они были покрыты.

Так если кому понадобится внести в ИИ, он просто опубликует (умышленно). А ИИ с сайта сам скачает.

Это не юридическое что-то там, а текущее необоснованное толкование. Я предлагаю как раз внести пункт чтобы эту серую зону прикрыть.

Лицензия не выше закона. Выше пример о книгах, которые вообще запрещено копировать без соглашения с владельцем. Не помогло.

В России пока так: https://regulation.gov.ru/projects/166424/

Не является нарушением авторских и (или) патентных прав их правообладателей извлечение информации из объектов, защищенных авторскими или патентными правами, включающее в том числе в рамках компьютерной обработки извлечение, сравнение, классификацию и анализ закономерностей, тенденций и корреляций, содержащихся в этих объектах, для изготовления набора данных и (или) обучения искусственного интеллекта при условии, что изготовителем набора данных или разработчиком был получен правомерный экземпляр такого произведения, либо этот объект был доведен до всеобщего сведения и (или) доступен для анализа.

У тебя есть шанс написать туда, пока законопроект не стал законом.

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

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

Не понял.

Я имел в виду, что если бы было так, то любой желающий мог бы законно нарушить суть GPL.

Так и с разрешением публикации. Если она явно разрешена, то обучение ИИ на опубликованных данных разрешено без лицензии. То есть суть запрета на обучение ИИ можно легко законно нарушить.

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

И даже нелокальный, если он поднят и настроен ответственными лицами, уважающими чужие права (а не закрытыми коммерсантами), тоже может оказаться не затронут.

Чувак, забей, у бедных коммерсантов сейчас не хватает вычислительных мощностей, из-за чего они теряют клиентов и деньги (чувак_вытирает_слезы_деньгами.jpg). Гугл, великий и ужасный, часто выдает ошибку, что сейчас нет ресурсов обработать запрос их модели, OpenAi уже давно занимается «шринкизацией» подписок урезая лимиты, Anthropic выпустили новую модель чуть хуже старой (но видимо кушающую меньше ресурсов) и кроит лимиты еще больше, Китайские модели еле шевелятся под нагрузкой. При таких раскладах, выковыривать из логов какие-то рандомные исходники для обучения никто не будет.

goingUp ★★★★★
()

кому нужен твой код?

lovesan ★★☆
()

Ну напиши такую лицензию, только не называй её пермиссивной.

Работа будет серьезной, без LLM ты не справишься. Но ты пиши, пиши.

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

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

Кстати в коде же когда символы похожие на корректные, но в другой кодировке попадают, это как раз гремлинами называется: https://github.com/nhoizey/vscode-gremlins/raw/master/images/screenshot.png

Но вообще так много, что можно назвать, что не должно попадать в кодовую базу

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

Лицензию ИИ при этом не читает для экономии

ИИ не читает, но в качалках данных наверняка есть не-ИИ фильтры на регулярках. Помимо уже описанных матюгов, я бы ещё добавил что-нибудь из серии «STRICTLY CONFIDENTIAL MICROSOFT PROPRIETARY».

snizovtsev ★★★★★
()
Для того чтобы оставить комментарий войдите или зарегистрируйтесь.