วิศวกร Cloudflare ใช้ AI สร้างไลบรารี OAuth จุดประกายการถ่ายเถียงเรื่องการเขียนโค้ดด้วยความช่วยเหลือจาก LLM

BigGo Editorial Team
วิศวกร Cloudflare ใช้ AI สร้างไลบรารี OAuth จุดประกายการถ่ายเถียงเรื่องการเขียนโค้ดด้วยความช่วยเหลือจาก LLM

Cloudflare ได้เปิดตัวไลบรารี OAuth provider สำหรับแพลตฟอร์ม Workers ซึ่งส่วนใหญ่เขียนขึ้นโดยใช้ Claude AI ทำให้เกิดการถกเถียงอย่างร้อนแรงเกี่ยวกับบทบาทของปัญญาประดิษฐ์ในการพัฒนาซอฟต์แวร์ โครงการนี้นำโดย Kenton Varda วิศวกรหัวหน้าของ Cloudflare ถือเป็นหนึ่งในตัวอย่างแรกๆ ที่สำคัญของไลบรารีด้านความปลอดภัยที่พร้อมใช้งานจริงซึ่งสร้างขึ้นผ่านความช่วยเหลือจาก AI เป็นหลัก

ไลบรารีนี้ใช้มาตรฐาน OAuth 2.1 สำหรับ Cloudflare Workers แต่สิ่งที่ทำให้มันโดดเด่นไม่ใช่แค่ฟังก์ชันการทำงาน แต่เป็นวิธีการสร้างมัน Varda ซึ่งอธิบายตัวเองว่าเป็นคนที่เคยสงสัยใน AI ได้ใช้ Claude Sonnet 3.7 ในการสร้างโค้ดส่วนใหญ่ผ่านการใส่คำสั่งอย่างระมัดระวังและการปรับปรุงแบบวนซ้ำ กระบวนการพัฒนาทั้งหมดรวมถึงคำสั่งและการโต้ตอบกับ AI ได้รับการบันทึกไว้ในประวัติ commit ของโครงการเพื่อความโปร่งใส

รายละเอียดทางเทคนิคที่สำคัญ

  • แพลตฟอร์ม: Cloudflare Workers
  • มาตรฐานที่ใช้: OAuth 2.1
  • ภาษาโปรแกรมมิ่ง: TypeScript/JavaScript
  • Repository: โอเพนซอร์สพร้อมประวัติ commit ครบถ้วน
  • การตรวจสอบความปลอดภัย: การตรวจสอบข้อมูลอ้างอิง RFC อย่างครบถ้วน

การดูแลจากผู้เชี่ยวชาญยังคงมีความสำคัญ

แม้ว่า AI จะให้ผลลัพธ์ที่น่าประทับใจ แต่โครงการนี้ต้องการความเชี่ยวชาญจากมนุษย์อย่างกว้างขวางตลอดกระบวนการพัฒนา Varda และทีมงานได้ตรวจสอบโค้ดทุกบรรทัดอย่างละเอียด อ้างอิงการใช้งานกับ RFC ที่เกี่ยวข้อง และแก้ไขข้อบกพร่องหลายจุดด้วยตนเองที่ AI ไม่สามารถแก้ไขได้เอง ข้อความ commit หนึ่งระบุอย่างชัดเจนว่า: Claude มีข้อบกพร่องใน commit ก่อนหน้า ฉันได้ใส่คำสั่งหลายครั้งเพื่อแก้ไขข้อบกพร่องแต่มันยังคงทำผิดอยู่

ประสบการณ์นี้เน้นย้ำถึงข้อจำกัดสำคัญของเครื่องมือเขียนโค้ด AI ในปัจจุบัน พวกมันสามารถสร้างโค้ดที่ซับซ้อนได้ แต่มักจะมีปัญหาในการดีบักและการแก้ปัญหาที่ซับซ้อนเมื่อมีข้อผิดพลาดเกิดขึ้น ทีมพัฒนาพบว่าการเริ่มการสนทนาใหม่ตั้งแต่ต้นมักจะมีประสิทธิภาพมากกว่าการพยายามแก้ไขข้อผิดพลาดของ AI ภายในบริบทที่มีอยู่

ข้อจำกัดของ AI ที่สังเกตได้

  • การแก้ไขปัญหาที่ซับซ้อน: ต้องการการแทรกแซงด้วยตนเองจากมนุษย์
  • การรักษาบริบท: สูญเสียบริบทหลังจากการทำงานหลายรอบ
  • การแก้ปัญหาใหม่ๆ: มีประสิทธิภาพน้อยกว่าการใช้งานแบบมาตรฐาน
  • การปรับปรุงโค้ด: มีความสามารถจำกัดกับโค้ดเบสที่ซับซ้อนที่มีอยู่แล้ว

ปฏิกิริยาจากชุมชนแบ่งออกเป็นสองฝ่ายเรื่องบทบาทของ AI

การประกาศนี้ทำให้ชุมชนนักพัฒนาแบ่งออกเป็นค่ายที่แตกต่างกัน ผู้สนับสนุนมองว่านี่เป็นการยืนยันว่า AI สามารถเร่งการพัฒนาได้อย่างมีนัยสำคัญเมื่อได้รับการดูแลอย่างเหมาะสมจากวิศวกรที่มีประสบการณ์ Varda ประเมินว่าโครงการนี้ใช้เวลาเพียงไม่กี่วันด้วยความช่วยเหลือจาก AI เมื่อเทียบกับสัปดาห์หรือเดือนที่จะต้องใช้ในการเขียนด้วยมือ

อย่างไรก็ตาม ผู้ที่มีความกังวลได้ยกประเด็นเกี่ยวกับผลกระทบในวงกว้างต่ออุตสาหกรรมซอฟต์แวร์ บางคนกังวลเกี่ยวกับศักยภาพในการลดโอกาสการจ้างงาน ในขณะที่คนอื่นๆ ตั้งคำถามว่าโค้ดที่สร้างโดย AI สร้างความรู้สึกผลิตภาพที่ผิดๆ หรือไม่ นักวิจารณ์โต้แย้งว่ากระบวนการตรวจสอบที่กว้างขวางที่ต้องการอาจทำให้การพัฒนาช้าลงเมื่อเทียบกับวิธีการเขียนโค้ดแบบดั้งเดิม

ทุกบรรทัดได้รับการตรวจสอบอย่างละเอียดและอ้างอิงกับ RFC ที่เกี่ยวข้องโดยผู้เชี่ยวชาญด้านความปลอดภัยที่มีประสบการณ์ก่อนหน้ากับ RFC เหล่านั้น ฉันพยายามตรวจสอบความสงสัยของตัวเอง ในที่สุดฉันก็พิสูจน์ว่าตัวเองผิด

การเปรียบเทียบระยะเวลาการพัฒนา

  • การพัฒนาด้วยความช่วยเหลือของ AI: ไม่กี่วัน
  • การประมาณการพัฒนาแบบแมนนวล: ไม่กี่สัปดาห์ถึงหลายเดือน
  • โมเดล AI ที่ใช้: Claude Sonnet 3.7
  • ต้นทุนการพัฒนา: จำนวนเงินสองหลักในสกุลเงินดอลลาร์สหรัฐ

ข้อจำกัดของการพัฒนาด้วยความช่วยเหลือจาก AI

โครงการนี้เผยให้เห็นทั้งจุดแข็งและจุดอ่อนของความสามารถในการเขียนโค้ดของ AI ในปัจจุบัน ในขณะที่ AI เก่งในการใช้มาตรฐานที่มีการบันทึกไว้อย่างดีเช่น OAuth ซึ่งมีข้อมูลการฝึกอบรมที่กว้างขวาง แต่มันมีปัญหากับปัญหาใหม่ๆ และสถานการณ์การดีบักที่ซับซ้อน Varda สังเกตว่าความช่วยเหลือจาก AI มีประสิทธิภาพน้อยลงเมื่อทำงานกับ Workers Runtime เอง โดยเฉพาะสำหรับการปรับโครงสร้างโค้ดเบสที่ซับซ้อนที่มีอยู่

ความสำเร็จของโครงการนี้ดูเหมือนจะขึ้นอยู่กับปัจจัยหลายประการ: ข้อกำหนดที่ชัดเจน (มาตรฐาน OAuth) ความพร้อมใช้งานของข้อมูลการฝึกอบรมที่กว้างขวาง และที่สำคัญที่สุดคือการดูแลจากผู้เชี่ยวชาญมนุษย์ตลอดกระบวนการ สิ่งนี้ชี้ให้เห็นว่าการเขียนโค้ดด้วยความช่วยเหลือจาก AI อาจมีประสิทธิภาพมากที่สุดสำหรับการใช้รูปแบบที่ยอมรับแล้วมากกว่าการสร้างโซลูชันใหม่ทั้งหมด

ผลกระทบในอนาคตสำหรับการพัฒนาซอฟต์แวร์

การทดลองของ Cloudflare ให้ภาพรวมของวิธีที่ AI อาจเปลี่ยนแปลงแนวทางการพัฒนาซอฟต์แวร์ แทนที่จะแทนที่วิศวกรทั้งหมด เทคโนโลยีนี้ดูเหมือนจะพัฒนาเป็นเครื่องมือที่ซับซ้อนที่สามารถจัดการงานการใช้งานตามปกติในขณะที่มนุษย์มุ่งเน้นไปที่สถาปัตยกรรม การตัดสินใจเรื่องการออกแบบ และการประกันคุณภาพ

ความโปร่งใสของโครงการในการบันทึกทั้งความสำเร็จและความล้มเหลวให้ข้อมูลเชิงลึกที่มีค่าสำหรับทีมอื่นๆ ที่กำลังพิจารณาแนวทางที่คล้ายกัน มันแสดงให้เห็นว่าแม้ว่า AI สามารถเร่งงานพัฒนาบางประเภทได้อย่างมีนัยสำคัญ แต่ความจำเป็นสำหรับวิศวกรที่มีประสบการณ์ในการแนะนำ ตรวจสอบ และตรวจสอบผลลัพธ์ยังคงมีความสำคัญสูงสุด โดยเฉพาะสำหรับส่วนประกอบที่สำคัญด้านความปลอดภัยเช่นไลบรารีการยืนยันตัวตน

เมื่อเครื่องมือเขียนโค้ด AI ยังคงพัฒนาต่อไป ไลบรารี OAuth ของ Cloudflare อาจทำหน้าที่เป็นกรณีศึกษาที่สำคัญสำหรับการสร้างแนวทางปฏิบัติที่ดีที่สุดในการพัฒนาซอฟต์แวร์ด้วยความช่วยเหลือจาก AI โดยเฉพาะสำหรับโครงการที่ความปลอดภัยและความน่าเชื่อถือเป็นข้อกำหนดที่ไม่สามารถต่อรองได้

อ้างอิง: Commits