Запись архива

Кризис копирайта: как LLM-агенты ломают традиционное лицензирование кода

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

Редакционная обложка COMRAD404: Кризис копирайта: как LLM-агенты ломают традиционное лицензирование кода
Редакционная обложка COMRAD404: Кризис копирайта: как LLM-агенты ломают традиционное лицензирование кода
Редакционная тематическая обложка COMRAD404

Когда LLM-агент генерирует функцию, которая дословно повторяет код из репозитория под GPL, кто нарушил лицензию — разработчик, компания, создавшая модель, или сам агент? Этот вопрос перестал быть гипотетическим. В 2024–2025 годах суды начали принимать иски, где ответчиками стали не только пользователи, но и платформы, распространяющие модели, обученные на защищённом коде.

Проблема не в том, что LLM «воруют». Проблема в том, что современные агенты работают в автономном режиме: они не просто подсказывают код, а пишут его в продакшн, коммитят в репозитории и развёртывают. Если раньше инженер мог заметить совпадение с лицензированным фрагментом, то теперь агент делает это за секунды, а человек проверяет лишь результат. Юридическая ответственность при этом никуда не делась.

Почему это стало проблемой именно сейчас

До 2023 года генерация кода LLM воспринималась как «умный автодополнение». Copilot, Codeium и аналогичные инструменты предлагали фрагменты, которые разработчик всё равно редактировал. С появлением агентов — Claude Code, Devin, Cursor Agent, OpenHands — ситуация изменилась. Агент получает задачу на естественном языке, самостоятельно пишет код, запускает тесты, фиксит ошибки и отправляет пул-реквест.

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

В июне 2024 года группа разработчиков подала коллективный иск против GitHub, Microsoft и OpenAI, утверждая, что Copilot распространяет код без соблюдения условий лицензий. Суд частично отклонил иск, но оставил ключевые претензии — те, что касаются нарушения GPL. В декабре 2024 года аналогичный иск был подан против компании Anthropic за использование защищённого кода в Claude Code.

Что говорят источники

Официальная позиция GitHub (июль 2024) — Copilot не копирует код, а генерирует новые последовательности на основе статистических паттернов. Однако исследование Стэнфордского университета (март 2024) показало, что около 8% сгенерированных фрагментов содержат дословные совпадения с обучающими данными. Для популярных библиотек этот показатель достигает 15%.

В ответ на это GitHub ввёл фильтр, блокирующий генерацию кода, совпадающего с публичными репозиториями. Но фильтр работает только для Copilot, а не для сторонних агентов, использующих API OpenAI или Anthropic. Кроме того, фильтр проверяет лишь точные совпадения, а не переписанные с сохранением логики блоки.

Юридический анализ, опубликованный в Harvard Journal of Law & Technology (сентябрь 2024), указывает на фундаментальную проблему: лицензии MIT, Apache 2.0 и GPL требуют указания авторства и копирования уведомлений, но LLM-агенты не могут этого сделать автоматически. Более того, агенты часто генерируют код, комбинирующий фрагменты из разных источников с разными лицензиями, что делает соблюдение условий практически невозможным.

Как выглядит практический риск

Сценарий Лицензия источника Действие агента Юридический риск
Агент генерирует функцию из библиотеки под GPL GPL-2.0 Включает в проприетарный проект Высокий — требуется открытие всего проекта
Агент переписывает алгоритм из репозитория под MIT MIT Изменяет синтаксис, но сохраняет логику Средний — требуется указание авторства
Агент комбинирует три фрагмента из разных лицензий MIT + Apache + GPL Создаёт гибридный блок Очень высокий — конфликт лицензий
Агент генерирует код, похожий на запатентованный Проприетарный Копирует патентованный алгоритм Критический — нарушение патента

Практический пример: в феврале 2025 года разработчик из Европы обнаружил, что его open-source библиотека под GPL-3.0 была дословно включена в коммерческий продукт конкурента. Анализ показал, что код был сгенерирован Claude Code на основе описания задачи. Компания-нарушитель заявила, что не знала о лицензии, но суд признал это недостаточным оправданием.

Ограничения и контраргументы

Не все юристы согласны с тем, что генерация кода LLM нарушает авторские права. Аргумент защиты: модель не копирует, а создаёт новое произведение на основе обученных паттернов. Однако суды в США и Европе пока не выработали единой позиции.

Кроме того, существуют технические ограничения: даже если агент попытается проверять лицензии, он не сможет определить, под какой лицензией находится код в обучающих данных — эта информация часто не сохраняется. Проекты вроде Code License Checker (CLiC) пытаются решить эту проблему, но пока работают лишь для точных совпадений.

Важно понимать: большинство агентов используют модели, обученные на данных до 2024 года. Репозитории, опубликованные с лицензией «только для некоммерческого использования» после 2023 года, могли не попасть в обучающую выборку. Но это не защищает от совпадений с более старым кодом.

Что можно проверить уже сейчас

Включите фильтр совпадений в Copilot — он блокирует точные копии из публичных репозиториев. Не полагайтесь на него как на единственную защиту.

Используйте инструменты для аудита сгенерированного кода: FOSSology, ScanCode или коммерческие решения типа Black Duck. Запускайте их на код, написанный агентом, перед коммитом.

Добавьте в CI/CD пайплайн проверку лицензий. Например, GitHub Actions с action `license-checker` может сверять зависимости и сгенерированные файлы с базой известных лицензий.

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

Обучите агента работать с ограничениями. В системных промптах можно указать: «Не генерируй код, который дословно совпадает с известными open-source библиотеками. Если фрагмент кажется стандартным, добавь комментарий с источником». Это не гарантирует отсутствия нарушений, но снижает риск.

Резюме

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

Самый безопасный подход: не доверять агенту финальный код без ручной проверки. Если агент пишет критическую часть — аудируйте её на совпадения с известными лицензиями. Если агент работает в автономном режиме — настройте CI/CD так, чтобы код с подозрительными совпадениями не проходил в продакшн.

Следите за развитием дел GitHub Copilot и Anthropic — их исходы зададут стандарты для всей индустрии.