Comments 51
Предложение интересное, но куда уходить?
На другую централизованную платформу смысла идти нет - то же самое, только хуже по фичам будет и людей меньше. Хостить самому - потеря социальной составляющей гитхаба.
Я бы ушёл на какой-нибудь децентрализованный аналог, но пока не слышал о mature проектах такого рода.
Децентрализованный аналог GitHub — интересная идея. Но у него тоже будут свои недостатки децентрализации. Например, как защитить его от распространения вредоносного или хакерского ПО?
1) Git SSB https://github.com/hackergrrl/git-ssb-intro
2) Никак не защитить. Только на уровне отдельных пользователей решать для каждого проекта - доверенный он или нет и можно ли его распространять.
А что помешает этот децентрализованный аналог тоже использовать при обучении Copilot или его аналогов, если он будет общедоступным?
Наверное нельзя защитить
Поднимайте свой гитлаб, делов-то.
В таких случаях всегда приходит в голову поднимать самопал, это либо собственный сервер Gitlab, либо легковесный Gitea, либо вообще голый Git (ssh + cgit + голые репы) для личных проектов. Кстати, разработчики проектов на Mercurial так и поступили, когда многие хостинги отказались от Mercurial вовсе (Google Code сдох, потом Bitbucket совсем отказался от Mercurial-репозиториев, потому что большинство использует именно git).
Проблема с Copilot не только в авторских правах на код, но и просто в шеринге каких-то личных данных.
Вот к примеру я указал несколько переменных для контейнера в docker compose, и тут Copilot предложил мне очередную переменную (выделена серым цветом)
![](https://habrastorage.org/getpro/habr/upload_files/7c7/ea4/63b/7c7ea463b8d91a6d85da48a2546e1773.png)
Меня заинтересовала эта ссылка. Оказалось, что это фотография пользователя GitHub https://avatars0.githubusercontent.com/u/8984?s=460&v=4
а вот его аккаунт: https://github.com/leonardgallant
Судя по небольшому id (< 10000), он один из первых пользователей GitHub, и возможно даже сотрудник этой компании, но вряд ли он ожидал, что его фотографию Copilot будет подсказывать программистам по всему миру.
Сколько еще таких секретов Copilot внутри хранит, сказать трудно.
ЕМНИП, уже писали, что он может и чьи-то приватные ключи или токены от API так выплюнуть.
>чьи-то приватные ключи или токены от API так выплюнуть
Может копилот будет умный и код дебилов, которые хардкодят токены и ключи в код, не будет цапцарапать просто потому что они дебилы?
в статье ссылаются на признание самого GitHub:
использовали весь доступный в репозиториях сервиса публичный код
ваш комментарий о том, что GitHub лукавит?
"OpenAI Codex was trained on publicly available source code and natural language,
It has been trained on natural language text and source code from publicly available sources, including code in public repositories on GitHub."
Уж определитесь "приватные ключи", "никто не увидит" или "выложил в гитхаб". Говнокодить можно что угодно, зачем это на гитхаб заливать?
Очень удобно. Пишете программу, а тут вам и облако бесплатное и СУБД... :-D
Так все это и так в открытом доступе. В чем проблема?
Мне кажется, здесь ключевое противоречие в человеке, который "личные данные" сохранил в "публичный репозиторий"...
Если инструмент «позаимствовал» код из одного проекта и предложил его автору другого проекта, то в теории можно подавать иски о нарушении авторских прав.
Как я понял проблема в том, что искусственный интеллект подсказывает код из базы github невзирая на то, под какой лицензией он опубликован. А какая наиболее часто используемая лицензия для открытого ПО? Мне кажется MIT и кажется она не запрещает заимствовать код? Хотелось бы чтобы знающие люди пояснили.
Не факт, что наиболее часто используемая и не факт, что предложенный код будет из проекта под именно этой лицензией.
Прекрасно понимаю все это. Интересовал именно вопрос можно или нельзя копировать код, и что для этого требуется. Ниже отметили, что требуется указание авторства. А по поводу распространенности чисто ради интереса вопрос, много или мало)
У каждой лицензии свои требования. Указание авторства лишь одно из них. Причём самое безобидное. Веселее, когда суд обяжет вас опубликовать код вашего коммерческого продукта под открытой лицензией или выплатить % выручки авторам библиотеки, которая была свободной только для некоммерческого использования. Но это раньше и больше в США и Европе. Как будет теперь и в России - большой вопрос.
Скорее всего, в лицензионном соглашении указано, что всю ответственность несёт пользователь инструмента. В любом случае, суд не будет разбираться как украденный код появился в твоём продукте. Твой продукт - твоя ответственность. Ну а дальше можешь попробовать её частично возместить за счёт поставщика инструментария.
MIT/Apache License как минимум требует при заимствовании кода сохранять авторство.
На GitHub есть ещё много кода под другой популярной лицензией — GPL, которая имеет куда более серьёзные последствия для заимствующего.
Ну и вообще разных лицензий, которые позволяют смотреть код, но налагают ограничения на использование, довольно много. И код под этими лицензиями опубликован на гитхабе, и уже скормлен этому Copilot.
Например, вот так можно одним неловким автодополнением лишить себя бизнеса по разработке игр.
То есть скопировал кусок кода, добавил автора, скопировал другой кусок, добавил другого автора? Скопировал со стаковерфлоу, добавил ссылку на топик) кстати так я и делал в одном своем поделии))
По сути никто не запрещает значит добавлять ИИ ссылку на тот кусок, откуда был взят предложенный кусок кода. Будет довольно забавно если он будет взят у такого же "автора" который сам скопипастил со стаковерфлоу, но неудосужился об этом упомянуть
То есть скопировал кусок кода, добавил автора, скопировал другой кусок, добавил другого автора?
Именно так, если этот кусок кода опубликован под лицензией, требующей указания авторства. И не просто комментарием в коде, а именно так, как указано в лицензии.
Скопировал со стаковерфлоу, добавил ссылку на топик
У StackOverflow весь код тоже под лицензией, с которой обязательно ознакомиться перед заимствованием: https://stackoverflow.com/help/licensing
По сути никто не запрещает значит добавлять ИИ ссылку на тот кусок, откуда был взят предложенный кусок кода.
Сама архитектура Copilot не позволяет этого сделать — он является не базой сниппетов кода с привязкой к источнику, а скорее синтезирующей сетью, которую обучили терабайтами исходников. Просто иногда она слишком хорошо вспоминает, что вот такой специализированный код она когда-то видела, и выдаёт дословно.
И вот тут начинаются сложные разговоры про "clean room", "derivative work"...
Вопрос в том является ли причиной кипеша нарушение "clean room", "derivative work" и т.д.. или дело в подрыве финансовых основ опенсорс. Успешнвый опенсорс - обычно это не бесплатный, а живущий за сложности использования и счет сервисов по поддержке. Если становится возможно значительно удешевить поддержку/доработку/создание аналога, то возможно это подорвет бизнес модель опенсорc...
А ведь эта сетка обучена на куче кода саентистов...
Может я чего-то не понимаю, но почему я должен париться о лицензировании отдельных участков кода, рекомендованных copilot и применённых мною ведь я всегда могу сказать, что я это сам написал? Кто докажет иное?
А то, что оно совпало с чем-то существующим - ну что ж, так получилось.
Смотря насколько специфичен кусок кода.
Вы думаете, что если завтра придумаете бренд эппл и логотип яблока, то т.к. Вы сами это придумали, то эппл пошел на фиг?:)
В определённой степени, конечно, это прокатит. Но смотреть по факту будут на степень сходства, а не доказывать заимствовали Вы или нет.
Причем, откроешь на хабре очередную новость о хаосе в звукозаписи вида "Компания X подала претензию за нарушение патента на звуки дождя к записям дождя на YouTube" и вроде в комментариях закономерное недоумение.
А когда подобное происходит в разработке, "не изобретавшие дождь" разработчики, желающие быть отмеченными в каждой луже, даже обзавелись некой поддержкой
Как уже сказали порой Копилот очень хорошо вспоминает чужой код и некоторые специфичные моменты кода (например предложенный массив с какими-то числами) могут спокойно выдать что этот код чужой.
Ну и да, этичность и человечность.
К вопросу куда уходить вот интересная гиковая штука https://sr.ht/
очередная мегакорпорация положила болт на приватность своих юзеров, а очередной исскуственный ителлект оказался не искуственным и не интеллектом, вот это поворот
Зачем отказываться от гитхаба, когда можно завалить его откровенным говнокодом - пущай copilot учится)
А ведь можно завалить гитхаб ещё и откровенной "отравой", что бы copilot по ней научился плохому и начал распространять её. А может, это уже кто-то сделал.
Дело в том что OpenSorce разрешает использовать сво
Дело в том что OpenSorce разрешает использовать свои программы при условии, что и другие будут делать свои программы открытыми. А деньги зарабатывать при этом никто не запрещает, а наоборот поощряют. Тот же Лунукс в России продают за деньги. Если Майкрософт выложили код Copilot на GitHub в открытый доступ, то тогда всё в порядке.
Нет никакого смысла обсуждать переход на другие платформы. Что мешает учить Copilot на коде выложенном в другом месте? Трафик с других платформ, который генерируется одноразовым скачиванием? Возможным решением могла бы стать модификация открытых лицензий путем добавления явного запрета на использование исходного кода для обучения AI. Возможно токсичных по примеру GPL.
Уже отвечал на этот вопрос выше, повторюсь.
Суть не в запрете копилоту учиться на публичных данных. Конечно это физически не запретить.
Суть в отказе от корпоративного продукта (гитхаба), чтобы ключевая инфраструктура не зависела от монополии.
Копилот в данном случае используется для пропаганды, как пример закономерного злоупотребления монополией своими возможностями.
Разработчиков open source призвали отказаться от GitHub после запуска Copilot