Pull Request ขนาดมหึมา 128,000 บรรทัดที่สร้างขึ้นทั้งหมดด้วย AI ได้จุดประกายการถกเถียงอย่างเข้มข้นเกี่ยวกับอนาคตของการพัฒนา open source การส่งที่ก่อให้เกิดการถกเถียงนี้ไปยังโปรเจกต์ OpenCut ซึ่งสร้างขึ้นโดยใช้ Claude AI ได้กลายเป็นจุดสนใจสำหรับความกังวลเกี่ยวกับสแปมที่สร้างด้วย AI ที่อาจจะท่วมท้น repository ของ open source
Pull Request นี้มีชื่อว่า Try to help but need some help ประกอบด้วยสิ่งที่ดูเหมือนจะเป็นความพยายามที่มีเจตนาดี แต่เข้าใจผิดในการมีส่วนร่วมกับโปรเจกต์ อย่างไรก็ตาม ขนาดที่ใหญ่โตและลักษณะที่สร้างด้วย AI ของโค้ดนี้ได้ทำให้เกิดคำถามร้ายแรงเกี่ยวกับความยั่งยืนของโมเดลการมีส่วนร่วมใน open source ในปัจจุบัน
โครงสร้างของสแปมโค้ด AI
การวิเคราะห์ pull request ขนาดมหึมานี้เผยให้เห็นรูปแบบที่น่าเป็นห่วง 128,000 บรรทัดแบ่งออกเป็นเอกสารที่สร้างด้วย AI จำนวน 86,000 บรรทัด (68%) การทดสอบที่สร้างด้วย AI จำนวน 9,000 บรรทัด (7%) และโค้ดจริงเพียง 32,000 บรรทัด (25%) คุณภาพของเอกสารแย่เป็นพิเศษ มีลักษณะคล้ายกับเนื้อหาที่คัดลอกมาจากเซสชันแชท AI มากกว่าเอกสารโปรเจกต์ที่มีความหมาย
โค้ดเองดูเหมือนจะมีบั๊กและลบตรรกะที่มีอยู่โดยไม่มีเหตุผลที่ชัดเจน ทำให้ไม่เพียงแต่ไร้ประโยชน์แต่ยังอาจเป็นอันตรายต่อโปรเจกต์ การ commit หลายครั้งที่มีข้อความทั่วไปเช่น Updated project files ยิ่งเน้นย้ำถึงลักษณะอัตโนมัติของการมีส่วนร่วมนี้
การแยกวิเคราะห์ Pull Request:
- จำนวนบรรทัดทั้งหมด: 128,000 บรรทัด
- เอกสารประกอบที่สร้างโดย AI: 86,000 บรรทัด (68%)
- การทดสอบที่สร้างโดย AI: 9,000 บรรทัด (7%)
- โค้ดจริง: 32,000 บรรทัด (25%)
- จำนวน commits: มากกว่า 300 ครั้ง
- ข้อความ commit แบบทั่วไป: มากกว่า 20 ครั้งของข้อความ "Updated project files"
ภัยคุกคามที่เพิ่มขึ้นต่อความยั่งยืนของ Open Source
เหตุการณ์นี้ได้จุดประกายความกังวลในวงกว้างเกี่ยวกับอนาคตของการดูแลรักษา open source สมาชิกชุมชนชี้ไปที่แบบอย่างในอดีตที่สแปมเพิ่มขึ้นอย่างมากเมื่อมีแรงจูงใจ เช่นเมื่อ Digital Ocean เสนอเสื้อยืดฟรีสำหรับการมีส่วนร่วมใน open source เมื่อโอกาสในการทำงานเชื่อมโยงกับกราฟการมีส่วนร่วมใน GitHub ศักยภาพสำหรับสแปมที่สร้างด้วย AI อาจจะรุนแรงกว่ามาก
LLM ทำให้สามารถผลิตขยะที่ดูน่าเชื่อถือในระดับใหญ่ได้อย่างง่ายดาย และผู้ดูแล open source จะต้องรับมือกับ PR ปริมาณมากแบบนี้ในอนาคต
ความท้าทายขยายไปเกินกว่าปริมาณธรรมดา โค้ดที่สร้างด้วย AI สามารถผ่านการตรวจสอบคุณภาพแบบดั้งเดิมหลายแบบในขณะที่มีความเข้าใจผิดที่ละเอียดอ่อนซึ่งต้องใช้เวลาในการลงทุนอย่างมากในการระบุ สิ่งนี้สร้างภาระที่ไม่สมดุลที่ผู้ดูแลต้องใช้ความพยายามอย่างมากในการตรวจสอบการมีส่วนร่วมที่ใช้ความพยายามเพียงเล็กน้อยในการสร้าง
ความท้าทายในการตรวจจับและป้องกัน
ต่างจากสแปมที่มนุษย์สร้าง โค้ด AI นำเสนอความท้าทายในการตรวจจับที่เป็นเอกลักษณ์ โค้ดที่สร้างขึ้นมักมีชื่อตัวแปรที่สมเหตุสมผล ฟังก์ชันที่กระชับ และโครงสร้างเอกสารที่ดี ทำให้ยากที่จะระบุว่ามีปัญหาโดยไม่ต้องตรวจสอบอย่างละเอียด ตัวกรองอัตโนมัติแบบดั้งเดิมที่อาจจับสแปมที่ชัดเจนได้นั้นมีประสิทธิภาพน้อยกว่าต่อผลลัพธ์ AI ที่ซับซ้อน
สมาชิกชุมชนบางคนแนะนำให้ใช้โซลูชันทางสังคม เช่นการกำหนดให้ผู้มีส่วนร่วมใหม่ส่งคำอธิบายปัญหาโดยละเอียดก่อนเพื่อแสดงให้เห็นถึงความเข้าใจในโค้ดเบส อย่างไรก็ตาม คนอื่นกังวลว่าแนวทางนี้อาจทำให้ผู้มีส่วนร่วมที่แท้จริงท้อใจในขณะที่ไม่สามารถหยุดสแปมเมอร์ที่มุ่งมั่นซึ่งสามารถใช้ AI ในการสร้างคำอธิบายที่น่าเชื่อถือได้
ปัญหาทางเทคนิคหลักที่พบ:
- คุณภาพเอกสารแย่คล้ายกับเซสชันการสนทนาของ LLM
- โค้ดมีบั๊กที่เห็นได้ชัดและมีการลบตรรกะออก
- ไม่มีเหตุผลที่ชัดเจนสำหรับการเปลี่ยนแปลง
- อาจเป็นอันตรายต่อโปรเจกต์หากถูกรวมเข้าด้วยกัน
- หลักฐานการใช้งาน Claude AI (มีไฟล์
.claude/settings.local.json
อยู่)
ผลกระทบในวงกว้าง
เหตุการณ์นี้แสดงให้เห็นมากกว่าแค่ pull request ที่มีปัญหาเพียงอันเดียว มันเน้นย้ำถึงการเปลี่ยนแปลงพื้นฐานในวิธีที่โค้ดสามารถถูกสร้างและส่งในระดับใหญ่ ความง่ายที่เครื่องมือ AI สามารถผลิตโค้ดที่ดูน่าเชื่อถือในปริมาณมากขู่ว่าจะท่วมท้นกระบวนการตรวจสอบที่ขับเคลื่อนโดยอาสาสมัครที่โปรเจกต์ open source ส่วนใหญ่พึ่งพา
สถานการณ์นี้ยังทำให้เกิดคำถามเกี่ยวกับความรับผิดชอบของผู้ให้บริการเครื่องมือ AI และผู้ใช้ ในขณะที่ผู้ส่งดูเหมือนจะมีเจตนาดี การขาดการกำกับดูแลของมนุษย์และความเข้าใจในโค้ดที่สร้างขึ้นได้สร้างภาระที่สำคัญสำหรับผู้ดูแลโปรเจกต์
ขณะที่ชุมชน open source ต่อสู้กับความท้าทายเหล่านี้ ความจำเป็นในการมีนโยบายใหม่ เครื่องมือ และบรรทัดฐานทางสังคมกลายเป็นเรื่องเร่งด่วนมากขึ้น การอยู่รอดของระบบนิเวศ open source ที่แข็งแรงอาจขึ้นอยู่กับการหาวิธีที่มีประสิทธิภาพในการใช้ประโยชน์จาก AI ในขณะที่ป้องกันการใช้ในทางที่ผิด
อ้างอิง: Try to help but need some help #479