
Когда 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 — их исходы зададут стандарты для всей индустрии.
