LinuxでAI支援コードが解禁。Torvalds氏が示した新ルールとは

Wait 5 sec.

AIツールを使ったコード生成が一般化する中、Linuxカーネル開発でもAI支援コードの扱いに関する明確なルールが示されました。Linus Torvalds氏のGitHubリポジトリに公開されたドキュメントでは、AIを利用したコードを受け入れるための前提条件が整理されています。このドキュメントによると、AIが生成したコードであっても、Linuxカーネルの開発フローにおける基本ルールは人間の場合と変わりません。開発者はdevelopment-process.rstやcoding-style.rst、submitting-patches.rstに沿って作業し、既存のコンプライアンス要件を満たす必要があります。特にGPL-2.0-onlyとの互換性やSPDXライセンス識別子の適切な使用など、ライセンス関連のルールは厳格に適用されます。「Signed-off-by」はAIには使えないLinuxカーネルでは、パッチの提出者が法的責任を負うことを示す「Signed-off-by」タグが必須ですが、これは人間のみが使用できると明記されています。AIは法的責任を負えないため、AI生成コードを提出する場合でも、最終的なレビューと責任は人間の開発者が負う必要があります。AI支援コードには「Assisted-by」タグで明示的な帰属をAIを利用した場合、その事実を明確に示すために Assisted-byタグを使うことが求められています。形式は次のように統一されています。AGENT_NAME:MODEL_VERSION [TOOL1] [TOOL2]AGENT_NAME は使用したAIツール名、MODEL_VERSION はモデルのバージョン、TOOL1/TOOL2 は coccinelle や clang-tidy などの解析ツールを指します。この表記により、AI支援コードの利用状況を追跡しやすくなり、開発プロセスの透明性が高まります。AI活用は歓迎されつつも「責任は人間に」Microsoftが社内でCopilotを活用し、月に数十万件のプルリクエストを生成しているなど、ソフトウェア開発にAIは欠かせないものとなっています。Linuxカーネル開発でもAI活用は前向きに受け止められており、Torvalds氏自身も一部プロジェクトでAIを取り入れています。ただし、Linuxの場合、重要性が高いソフトウェアであるため、AIが生成したコードをそのまま受け入れるのではなく、最終判断と責任は必ず人間が負うという姿勢が明確に示されました。AIの恩恵を受けつつも、品質とライセンス遵守を守るためのバランスを取る姿勢が現れています。[via Neowin]