Προβλήματα πνευματικών δικαιωμάτων με την επανεγγραφή του ScanCode στο Rust με AI

Сопровождающий открытый инструментарий ScanCode Toolkit, предназначенный для сканирования кода на предмет пересечений с чужими авторскими правами, выявления используемых лицензий и обнаружения неисправленных уязвимостей, раскритиковал проект, создавший при помощи AI клон продукта ScanCode, переписанный с Python на Rust (название клона не упоминается, но, судя по всем признакам, речь про проект Provenant). Утверждается, что в переписанном проекте нарушена торговая марка ScanCode и удалены упоминания об авторских правах и лицензиях. Претензии объясняются тем, что в переписанном клоне продолжено использование ключевых алгоритмов ScanCode, сохранена архитектура проекта и структура кода.

По мнению сопровождающего ScanCode успешному созданию клона способствовало наличие у проекта исчерпывающего автоматизированного тестового набора, включающего более 90 тысяч тестов, из которых 40 тысяч посвящены обнаружению использования тех или иных лицензий в коде. Авторы переписанной версии заявили о существенном повышении производительности (в 10-100 раз), но, по словам сопровождающего ScanCode, ценой ускорения стало не полное прохождение тестового набора, а также снижение корректности работы и полноты предоставляемой информации (клон выдавал некорректные результаты и находил не всю информацию при анализе).

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

Авторам клона также вменяется нарушение авторских прав и лицензии Apache 2.0, под которой распространяется код ScanCode. Отмечается, что в процессе переписывания были нарушены 4 основных требования лицензии: оставление оригинального файла с примечанием (NOTICE), сохранение упоминаний об авторских правах, выделение совершённых изменений и смена имени в производной работе. После замечания авторы клона разместили файл NOTICE и переименовали свой проект, но два остальные нарушения пока остаются неустранёнными.

Сопровождающий ScanCode считает, что сообщество должно выработать критерии для разделения того, что при использовании AI считать производной работой, а что независимой реализацией. По его мнению, после переписывания кода на другом языке с сохранением алгоритмов и структуры результат продолжает оставаться производной работой, даже если в процессе были переименованы переменные и переделаны или удалены комментарии. Заявления авторов Rust-порта о независимой переработке, лишь вдохновлённой проектом ScanCode, в этом случае некорректно, так как работа нацелена на создание видимости оригинальной разработки, что даже хуже чем прямое копирование, так как подобные манипуляции сложнее обнаружить.

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

Πηγή: opennet.ru

Αγοράστε αξιόπιστη φιλοξενία για ιστότοπους με προστασία DDoS, διακομιστές VPS VDS 🔥 Αγοράστε αξιόπιστη φιλοξενία ιστοσελίδων με προστασία DDoS, διακομιστές VPS VDS | ProHoster