ข่าวใหญ่สาย Dev! Linux ออกกฎเหล็กคุมการใช้ AI เขียนโค้ด (Human ต้องรับจบ) 🐧🤖

Linux Kernel AI Rules

ฮัลโหลเพื่อนๆ ชาวโปรแกรมเมอร์! ช่วงนี้ใครใช้ AI ช่วยเขียนโค้ดบ้างยกมือขึ้น? 🙋♂️ ต้องบอกว่าประเด็น 'AI Coding Assistants' นี่เป็นเรื่องทอล์กออฟเดอะทาวน์สุดๆ ทั้งเรื่องคุณภาพโค้ดไปจนถึงปัญหาลิขสิทธิ์ ล่าสุดพี่ใหญ่อย่าง Linux Kernel เลยอยู่เฉยไม่ได้ ออกอัปเดตเอกสาร Documentation ทางการเพื่อวางระเบียบเรื่องนี้เป็นที่เรียบร้อยแล้วครับ

กฎใหม่ของ Linux: มนุษย์ต้องเป็นคน "รับจบ"

ใจความสำคัญของระเบียบนี้คือ ไม่ว่าคุณจะใช้ LLM (Large Language Model) เทพแค่ไหนช่วยเจนโค้ด แต่ท้ายที่สุดแล้ว "นักพัฒนาที่เป็นมนุษย์" จะต้องเป็นคนลงนามยืนยัน (Sign-off) โค้ดเหล่านั้นครับ

นั่นหมายความว่าคุณจะต้องรับผิดชอบทุกอย่าง 100% ทั้งเรื่องคุณภาพของซอฟต์แวร์ รวมถึงปัญหาทางกฎหมายที่อาจตามมาในอนาคตด้วย กฎนี้ช่วยให้มั่นใจว่าโค้ดที่เข้ามาในโปรเจกต์ยักษ์ใหญ่ระดับโลกอย่าง Linux จะมีมาตรฐานและตรวจสอบที่มาได้จริง

วงการ Open Source อื่นๆ คิดเห็นอย่างไร?

ต้องบอกว่า Linux ไม่ใช่กลุ่มเดียวที่ตื่นตัวเรื่องนี้นะครับ เพราะทาง NetBSD ถึงขั้นประกาศแบนโค้ดที่แตะต้อง AI ไปเลย ส่วนโปรเจกต์ cURL ก็ต้องระงับโครงการ Bug Bounty เพราะรำคาญขยะโค้ด (AI slop) ที่คนส่งเข้ามามั่วๆ

นอกจากนี้ยังมีเทรนด์ที่เรียกว่า ‘vibe-coding’ ที่นักพัฒนาเริ่มกังวลกันว่าอาจจะเข้ามาทำลายจิตวิญญาณของโอเพนซอร์สในระยะยาวได้ครับ

เจาะลึกข้อกำหนดสำหรับนักพัฒนา (Guidelines)

สำหรับใครที่อยากส่งโค้ดเข้าไปใน Linux Kernel โดยมี AI ช่วยเหลือ นี่คือสเตปที่คุณต้องทำตามกฎใหม่ครับ:

  • Licensing: โค้ดที่ส่งมาต้องเข้ากันได้กับ GPL-2.0-only และต้องมี SPDX license identifiers ที่ถูกต้อง
  • No AI Sign-off: ห้ามให้ AI เป็นคนใส่แท็ก Signed-off-by โดยเด็ดขาด เฉพาะมนุษย์เท่านั้นที่มีสิทธิ์ certify ตัว Developer Certificate of Origin (DCO)
  • Attribution: ต้องให้เครดิต AI ในรูปแบบที่กำหนด เพื่อให้ระบบสามารถติดตามการใช้งานได้

วิธีใส่แท็กเครดิต AI ให้ถูกต้อง

เมื่อคุณใช้ AI ช่วยพัฒนา คุณต้องใส่แท็ก Assisted-by: ไว้ใน Commit ของคุณตามฟอร์แมตนี้ครับ:

Commit Message Format
Assisted-by: AGENT_NAME:MODEL_VERSION [TOOL1] [TOOL2]

# ตัวอย่างการใช้งานจริง:
Assisted-by: Claude:claude-3-opus coccinelle sparse
*หมายเหตุ: เครื่องมือพื้นฐานอย่าง git, gcc, make ไม่ต้องระบุลงไปนะครับ

ติดตามข่าวสารและเทคโนโลยีใหม่ๆ ก่อนใคร!

ไม่ว่าคุณจะเป็นสาย Dev หรือสาย Maker เรามีคอมมูนิตี้ที่พร้อมแชร์ความรู้ให้คุณเสมอ

ลิงก์หลัก Globalbyte เข้าร่วม Community สั่งซื้อสินค้าที่นี่
อ้างอิง: Globalbyteshop Blog
อ้างอิงต้นฉบับ: Hackaday News | Linux Kernel Docs
*คำเตือน: เนื้อหานี้เป็นการสรุปและเรียบเรียงจากบทความต้นฉบับภาษาอังกฤษ ข้อมูลฉบับภาษาไทยอาจมีความคลาดเคลื่อนบางประการจากการตีความหรือย่อเนื้อหา เพื่อความถูกต้องแม่นยำทางเทคนิค โปรดอ้างอิงเอกสารหลักจาก Linux Kernel Documentation เป็นหลัก

 

แท็ก


Blog posts

เข้าสู่ระบบ

ลืมรหัสผ่านใช่ไหม?

ยังไม่มีบัญชีใช่ไหม?
สร้างบัญชี