CEO ของ Anthropic คือ Dario Amodei สร้างความฮือฮาในเดือนมีนาคม 2024 ด้วยการทำนายว่า AI จะเขียนโค้ดซอฟต์แวร์ได้ 90% ภายใน 3-6 เดือน และเขียนโค้ดได้เกือบทั้งหมดภายใน 12 เดือน ขณะที่เราใกล้จะถึงจุดสิ้นสุดของกรอบเวลาดังกล่าว ชุมชนเทคโนโลยีกำลังพิจารณาอย่างจริงจังว่าคำกล่าวอ้างที่กล้าหาญเหล่านี้สอดคล้องกับความเป็นจริงมากน้อยแค่ไหน
การทำนายนี้เกิดขึ้นระหว่างงาน Council of Foreign Relations โดย Amodei แนะนำว่าแม้นักพัฒนาจะยังคงมีบทบาทในการป้อนคุณสมบัติการออกแบบและเงื่อนไขให้กับโมเดล AI แต่ในที่สุดเกาะเล็กๆ ทั้งหมดเหล่านั้นจะถูกระบบ AI เก็บกวาดไป กรอบเวลาของเขาพิสูจน์แล้วว่าเป็นไปได้ยากเกินไป ทำให้เกิดการอภิปรายเกี่ยวกับช่องว่างระหว่างความคาดหวังที่เกินจริงของ AI และการนำไปใช้งานจริง
การทำนายไทม์ไลน์ AI Coding ของ Amodei (มีนาคม 2024)
- 3-6 เดือน: AI เขียนโค้ดซอฟต์แวร์ 90%
- 12 เดือน: AI เขียนโค้ด "เกือบทั้งหมด"
- บทบาทของนักพัฒนา: ป้อนฟีเจอร์การออกแบบและเงื่อนไขให้กับโมเดล AI
- ผลกระทบในวงกว้าง: คาดว่าจะเกิดการเปลี่ยนแปลงที่คล้ายกัน "ในทุกอุตสาหกรรม"
รูปแบบของวงจรความคาดหวังเกินจริงเริ่มปรากฏ
ชุมชนนักพัฒนากำลังเปรียบเทียบกับการทำนายเทคโนโลยีในอดีตที่ไม่สามารถเกิดขึ้นได้ตามกำหนดเวลา หลายคนชี้ไปที่คำกล่าวอ้างที่กล้าหาญคล้ายกันเกี่ยวกับรถยนต์ขับขี่อัตโนมัติ ที่มีการสัญญาว่าจะมีรถยนต์ขับขี่อัตโนมัติเต็มรูปแบบภายใน 1-2 ปีตั้งแต่ปี 2018-2020 แต่ไม่เคยเกิดขึ้น รูปแบบนี้ย้อนกลับไปไกลกว่านั้นถึงเทคโนโลยีอย่าง UML ในทศวรรษ 1990 ซึ่งควรจะทำให้โปรแกรมเมอร์ล้าสมัยผ่านสถาปนิกระบบที่วาดไดอะแกรมที่จะสร้างโค้ดโดยอัตโนมัติ
บริบททางประวัติศาสตร์นี้ทำให้นักพัฒนาสงสัยเป็นพิเศษต่อการทำนายที่ขับเคลื่อนด้วยกรอบเวลาจากผู้บริหารบริษัทที่มีแรงจูงใจทางการเงินในการส่งเสริมผลิตภัณฑ์ของตน ชุมชนสังเกตว่าการทำนายดังกล่าวมักจะตามรูปแบบที่คุ้นเคยของความคาดหวังที่พองโตตามด้วยการปรับความเป็นจริง
รูปแบบการทำนายเทคโนโลยีในอดีต
- รถยนต์อัตโนมัติ (2018-2020): สัญญาว่าจะมีระบบขับขี่อัตโนมัติแบบเต็มรูปแบบ "ภายใน 1-2 ปี"
- UML (ทศวรรษ 1990): ทำนายว่าโปรแกรมเมอร์จะตกงานเพราะการสร้างโค้ดจากไดอะแกรม
- รูปแบบปัจจุบัน: การทำนายของผู้บริหาร → วงจรความคาดหวังสูง → การปรับตัวสู่ความเป็นจริง
- ธีมร่วม: การทำนายไทม์ไลน์มักจะมองในแง่ดีเกินไป การนำไปใช้จริงเกิดขึ้นอย่างค่อยเป็นค่อยไป
ความเป็นจริงปัจจุบันของ AI เขียนโค้ดเทียบกับความคาดหวัง
แม้ว่าเครื่องมือ AI จะเปลี่ยนแปลงวิธีการทำงานของนักพัฒนาหลายคนอย่างแน่นอน แต่ความเป็นจริงมีความซับซ้อนมากกว่าที่ Amodei ทำนายไว้ นักพัฒนารายงานว่า AI สามารถสร้างโค้ดได้จำนวนมากจริงๆ โดยเฉพาะสำหรับงานประจำอย่างการดำเนินการ CRUD และแอปพลิเคชันเว็บที่เน้น UI อย่างไรก็ตาม คุณภาพและความสามารถในการบำรุงรักษาของโค้ดที่ AI สร้างขึ้นยังคงเป็นความกังวลสำคัญ
นักพัฒนาที่มีประสบการณ์หลายคนอธิบายขั้นตอนการทำงานปัจจุบันของพวกเขาว่า AI เขียนส่วนสำคัญของโค้ดในขณะที่พวกเขามุ่งเน้นไปที่การอ่าน ตรวจสอบ และแก้ไขทุกบรรทัด สิ่งนี้แสดงถึงการเพิ่มผลิตภาพสำหรับงานบางประเภท แต่ยังไม่ถึงขั้นการเปลี่ยนแปลงปฏิวัติที่ถูกทำนายไว้ ความเห็นพ้องต้องกันชี้ให้เห็นว่า AI เก่งในรายละเอียดการนำไปใช้ ในขณะที่มนุษย์ยังคงจำเป็นสำหรับการออกแบบสถาปัตยกรรม การกำหนดปัญหา และการประกันคุณภาพ
ความกังวลด้านความปลอดภัยและคุณภาพยังคงมีอยู่
ปัญหาสำคัญที่ชุมชนนักพัฒนาเน้นย้ำคือปัญหาด้านความปลอดภัยและคุณภาพของโค้ดที่ AI สร้างขึ้น รายงานระบุว่าเกือบครึ่งหนึ่งของโค้ดที่ AI สร้างขึ้นทั้งหมดมีช่องโหว่ด้านความปลอดภัย ทำให้เกิดคำถามร้ายแรงเกี่ยวกับการนำไปใช้อย่างแพร่หลายโดยไม่มีการกำกับดูแลที่เหมาะสม สิ่งนี้สร้างความขัดแย้งที่ AI อาจสร้างโค้ดได้มากขึ้น แต่ความเชี่ยวชาญของมนุษย์กลับมีความสำคัญมากขึ้นเพื่อให้แน่ใจว่าโค้ดนั้นปลอดภัยและสามารถบำรุงรักษาได้
ชุมชนยังสังเกตว่าฐานโค้ดที่ AI สร้างขึ้นสามารถกลายเป็นสิ่งที่ไม่สามารถบำรุงรักษาได้อย่างรวดเร็ว โดยเฉพาะเมื่อนักพัฒนาที่มีประสบการณ์น้อยพึ่งพา AI มากเกินไปโดยไม่เข้าใจรูปแบบและแนวปฏิบัติที่ดีที่อยู่เบื้องหลัง สิ่งนี้นำไปสู่สิ่งที่บางคนอธิบายว่าเป็นสถานการณ์โค้ดสปาเก็ตตี้ 100% ที่การสร้างโค้ดอย่างรวดเร็วสร้างหนี้ทางเทคนิคเร็วกว่าที่จะจัดการได้
การตรวจสอบความเป็นจริงของการเขียนโค้ดด้วย AI ในปัจจุบัน
- ข้อกังวลด้านความปลอดภัย: โค้ดที่สร้างโดย AI ประมาณ ~50% มีช่องโหว่ด้านความปลอดภัย
- ปัญหาด้านคุณภาพ: โค้ดจาก AI มักสร้างปัญหาในการบำรุงรักษา
- เวิร์กโฟลว์ของนักพัฒนา: AI สร้างโค้ด มนุษย์ตรวจสอบและแก้ไข
- กรณีการใช้งานที่ดีที่สุด: การดำเนินการ CRUD แอปเว็บที่เน้น UI โค้ด boilerplate
- ข้อจำกัด: ระบบที่ซับซ้อนเช่น Linux kernel, PostgreSQL ยังคงเป็นความท้าทาย
ผลกระทบที่กว้างขึ้นสำหรับอุตสาหกรรม
นอกเหนือจากความกังวลทางเทคนิคในทันที นักพัฒนากำลังต่อสู้กับผลกระทบที่กว้างขึ้นของการรวม AI ในการพัฒนาซอฟต์แวร์ ในขณะที่บางคนมอง AI เป็นเครื่องมือที่ทรงพลังที่เพิ่มผลิตภาพเมื่อใช้อย่างชำนาญ คนอื่นๆ กังวลเกี่ยวกับผลกระทบระยะยาวต่อคุณภาพโค้ดและทักษะของนักพัฒนา
ผลลัพธ์ที่แปลกประหลาดของ LoC โดย LLMs อาจจะเกินสิ่งที่มนุษย์เขียนด้วยมือในปัจจุบัน ผมไม่เชื่อว่า 90% ผ่านการตรวจสอบ มีการเขียนมากขึ้นและมีการทิ้งมากขึ้น
การอภิปรายเผยให้เห็นความเป็นจริงที่ซับซ้อนมากขึ้นที่เครื่องมือ AI กำลังถูกรวมเข้าไปในขั้นตอนการพัฒนามากขึ้น แต่ในรูปแบบที่เสริมมากกว่าแทนที่ความเชี่ยวชาญของมนุษย์ จุดสนใจได้เปลี่ยนจากว่า AI จะแทนที่นักพัฒนาหรือไม่ไปสู่วิธีที่นักพัฒนาสามารถทำงานร่วมกับเครื่องมือ AI ได้อย่างมีประสิทธิภาพมากที่สุดในขณะที่รักษามาตรฐานคุณภาพและความปลอดภัยของโค้ด
ขณะที่กรอบเวลาของ Amodei หมดลง ชุมชนเทคโนโลยียังคงนำทางความเป็นจริงเชิงปฏิบัติของการรวม AI เรียนรู้ที่จะแยกความก้าวหน้าทางเทคโนโลยีที่แท้จริงออกจากการทำนายเชิงส่งเสริม ความเห็นพ้องต้องกันชี้ให้เห็นว่าแม้ AI จะยังคงเปลี่ยนแปลงการพัฒนาซอฟต์แวร์ แต่กรอบเวลาและขอบเขตของการเปลี่ยนแปลงนั้นอาจจะค่อยเป็นค่อยไปและมีความซับซ้อนมากกว่าที่ทำนายไว้ในตอนแรก