Новые правила для ИИ-помощников по кодированию при разработке ядра Linux: предложение Саши Левина (NVIDIA)

30.07.2025
Новые правила для ИИ-помощников по кодированию при разработке ядра Linux: предложение Саши Левина (NVIDIA)

Саша Левин, известный разработчик Linux из NVIDIA и один из сопровождающих ядра Linux LTS, недавно выдвинул важное предложение. Это предложение направлено на установление четких правил использования ИИ-помощников по написанию кода при работе над ядром Linux.

 

Почему это происходит именно сейчас?

Инструменты на основе ИИ быстро становятся привычным явлением в сфере разработки программного обеспечения. Вспомните таких помощников, как Claude, GitHub Copilot и других.

Поскольку эти инструменты становятся всё более популярными, необходимо разработать соответствующие правила их использования в таком важном проекте, как ядро Linux.

Это гарантирует высокое качество кода и позволяет всем участникам процесса вносить свой вклад.

 

Что включает в себя это предложение?

В «запросе на комментарии» (RFC) Саши Левина изложен план из двух частей по плавной интеграции ИИ-помощников по написанию кода в процесс разработки ядра:

1. Единые файлы конфигурации

Первая часть предполагает добавление специальных файлов конфигурации для различных ИИ-помощников по написанию кода. Сюда входят такие популярные инструменты, как Claude, GitHub Copilot, Cursor, Codeium, Continue, Windsurf и Aider.

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

2. Четкие правила и документация

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

 

Основные принципы использования ИИ

Для любого ИИ-инструмента, помогающего в разработке ядра Linux, в предложении изложены важные требования:

1. Соблюдайте стандарты написания кода

Код, сгенерированный искусственным интеллектом, должен соответствовать строгим стандартам качества и стиля ядра Linux.

2. Уважайте процесс разработки

Инструменты на базе ИИ должны понимать и соблюдать установленные процессы разработки.

3. Правильно распределяйте обязанности ИИ

Это важно! Все ИИ-помощники будут обязаны идентифицировать себя в коммитах кода. Для этого используются теги «Co-developed-by», обеспечивающие полную прозрачность участия ИИ.

Например, коммит может выглядеть так: Co-developed-by: Claude claude-opus-4-20250514. Важно отметить, что только разработчики-люди должны добавлять тег «Подписано», так как это официальная сертификация.

4. Ознакомьтесь с лицензионными требованиями

Вклад ИИ также должен соответствовать правилам лицензирования ядра Linux.

Саша Левин даже привёл примеры, показывающие, как Claude правильно атрибутирует свою работу в коммитах и понимает требования к документации.

 

Пример создания патча ядра с помощью ИИ-помощника Claude Code

В следующем примере показано, как Claude Code исправляет опечатку в документации и правильно добавляет тег «Разработано совместно».

Пример создания патча ядра с помощью Claude Code

 

Приведённый выше пример демонстрирует следующее:

1. Выполнение команды

Пользователь вводит команду:

$ claude -p "Fix the dont -> don't typo in @Documentation/power/opp.rst. Commit the result"

 

Эта команда просит Claude исправить опечатку «dont» на «don’t» в указанном файле и зафиксировать изменения.

2. Автоматическое создание патчей

Claude автоматически исправляет опечатку и создаёт патч. На выходе получается стандартный формат патча Git с такими заголовками, как:

  • From (хэш коммита и временная метка)
  • From: (автор)
  • Date: (временная метка)
  • Subject: (название патча)

3. Сообщение о публикации и указание авторства

В сообщении о коммите чётко указано, что опечатка «dont» была заменена на «don’t».

Также присутствует строка с указанием соавторов:

Co-developed-by: Claude claude-opus-4-20250514

 

Это свидетельствует о том, что патч был создан в соавторстве с Клодом (Claude Opus 4, конкретная версия модели).

4. Сведения о патче

Патч показывает разницу (diff) между старым файлом (a/Documentation/power/opp.rst) и новым файлом (b/Documentation/power/opp.rst):

  • Одна строка удалена (обозначена -)
  • Добавлена одна исправленная строка (обозначена +).

Ключевые рекомендации на Вынос:

  • Этот пример показывает, как можно использовать ИИ для помощи в разработке программного обеспечения, в частности для исправления мелких ошибок, таких как опечатки.
  • Строка Co-developed-by — это новый способ указания вклада ИИ в проекты с открытым исходным кодом.
  • Патч соответствует стандартной практике фиксации изменений в ядре Linux: чёткая тема, текст и сравнение.

 

Такой рабочий процесс может стать более распространённым по мере интеграции инструментов на основе ИИ, таких как Claude, GitHub Copilot и Cursor, в среды разработки.

 

Что происходит дальше?

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

Сообщество Linux с нетерпением ждёт мнения Линуса Торвальдса по этому предложению.

Что вы думаете об этом предложении? Считаете ли вы, что привлечение ИИ к разработке ядра — хорошая идея? Пожалуйста, поделитесь своими мыслями в комментариях ниже.

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Редактор: AndreyEx

Рейтинг: 5 (1 голос)
Если статья понравилась, то поделитесь ей в социальных сетях:

Оставить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Это может быть вам интересно


Загрузка...

Спасибо!

Теперь редакторы в курсе.

Прокрутить страницу до начала