ภาพลวงตาของประสิทธิภาพ: ทำไม "ช่วงสุดท้าย" (Last Mile) ของ AI ถึงต้องแลกด้วยทุกอย่าง
คุณอ่านเรื่องกฎ 80/20 ของการเขียนโค้ดด้วย AI แล้วก็พยักหน้าเห็นด้วย
AI เขียนโค้ด 80% แรกให้คุณได้ภายในไม่กี่วินาที มันดูเหมือนความก้าวหน้า มันให้ความรู้สึกถึงความรวดเร็ว
แต่นี่คือกับดัก
งาน 20% สุดท้ายกลับต้องใช้เวลาถึง 80% นี่คือจุดที่โปรเจกต์มักจะล้มเหลว และเป็นจุดที่นักพัฒนาเริ่มสติแตก
AI ทำงานบนพื้นฐานของความน่าจะเป็น มันทำนายคำหรือบรรทัดโค้ดถัดไปที่มีโอกาสเกิดขึ้นมากที่สุด แต่มันไม่ได้เข้าใจตรรกะ มันไม่ได้เข้าใจสถาปัตยกรรมระบบเฉพาะของคุณ มันสร้าง "เส้นทางที่ราบรื่น" (happy path) ซึ่งจะทำงานได้ก็ต่อเมื่ออยู่ในสภาวะที่สมบูรณ์แบบเท่านั้น
เมื่อคุณก้าวพ้นเส้นทางที่ราบรื่นนั้นไป คุณจะพบกับทางตัน
ผมเรียกสิ่งนี้ว่า "หนี้จากการตรวจสอบ" (Verification Debt)
หนี้ทางเทคนิค (Technical debt) เกิดจากการแก้ปัญหาแบบลวกๆ แต่หนี้จากการตรวจสอบเกิดจากการขาดความเข้าใจ
เมื่อคุณเขียนโค้ดด้วยตัวเอง คุณจะสร้างแผนผังในความคิด คุณจะรู้ว่าทำไมแต่ละบรรทัดถึงต้องมีอยู่ แต่เมื่อ AI เป็นคนเขียน คุณกลับได้รับผลิตภัณฑ์ที่เสร็จสมบูรณ์โดยที่คุณไม่ได้เป็นคนสร้าง คุณไม่ได้เป็นเจ้าของตรรกะ คุณเป็นเพียงเจ้าของผลลัพธ์เท่านั้น
หากคุณไม่เข้าใจโค้ด คุณก็ไม่สามารถดีบั๊ก (debug) มันได้ คุณต้องเสียเวลาหลายชั่วโมงเพื่อพยายามแก้ไขความผิดพลาดที่ AI สร้างขึ้นในเวลาเพียงวินาทีเดียว
ความเร็วในการสร้างโค้ดทำให้เกิดภาพลวงตาว่างานเสร็จสิ้นแล้ว คุณคิดว่าใกล้จะเสร็จแล้ว แต่แล้วกรณีขอบเขต (edge cases) ก็ตามมา การเชื่อมต่อระบบ (integration) ล้มเหลว และช่องโหว่ด้านความปลอดภัยก็ปรากฏขึ้น
20% สุดท้ายไม่ใช่แค่ "การเก็บรายละเอียด" แต่มันคือหัวใจสำคัญของคุณภาพ มันคือการทดสอบ การดีบั๊ก และการจัดการกับกรณีขอบเขต (edge cases)
คุณจะแก้ไขเรื่องนี้ได้อย่างไร?
เลิกปฏิบัติกับผลลัพธ์จาก AI เหมือนเป็นผลิตภัณฑ์สำเร็จรูป แต่ให้มองว่ามันคือข้อมูลที่ยังไม่น่าเชื่อถือ
- เขียน Test ก่อนเสมอ อย่าสร้างตรรกะก่อนที่จะสร้าง Test กำหนดให้ชัดเจนว่าความล้มเหลวมีลักษณะอย่างไรก่อนที่ AI จะเริ่มทำงาน
- ตรวจสอบเป็นส่วนๆ อย่ารอจนกว่าจะรวมระบบทั้งหมดเพื่อหาข้อผิดพลาด ให้ทดสอบแต่ละบล็อกเล็กๆ แยกกัน (in isolation)
- ทิ้งไปเลยแทนที่จะพยายามปะผุ หากฟังก์ชันที่ AI สร้างขึ้นไม่ผ่านการทดสอบ อย่าพยายามแก้ไขมันทีละบรรทัด ให้ลบทิ้งแล้วลองใช้ Prompt แบบอื่น การพยายามปะผุข้อผิดพลาดของ AI มักจะสร้างข้อผิดพลาดเพิ่มขึ้นมากกว่าเดิม
กฎ 80/20 คือคำเตือน AI ช่วยเพิ่มความเร็วให้คุณ แต่ในขณะเดียวกันมันก็เพิ่มความรับผิดชอบในการตรวจสอบของคุณด้วยเช่นกัน
หากคุณต้องใช้เวลาทั้งหมดไปกับการตามแก้ความผิดพลาดของ AI แสดงว่าคุณไม่ได้เพิ่มประสิทธิภาพเลย คุณเพียงแค่เปลี่ยนประเภทของงานจากอย่างหนึ่งไปเป็นอีกอย่างหนึ่งเท่านั้น
"ช่วงสุดท้าย" (Last mile) คือจุดที่คุณพิสูจน์ว่าโค้ดทำงานได้จริง และเป็นจุดที่คุณพิสูจน์ว่าคุณไม่ได้ถูกหลอกด้วยคำลวงที่ดูสมบูรณ์แบบ
Source: https://dev.to/amrree/the-illusion-of-efficiency-why-ais-last-mile-costs-everything-a7g
Optional learning community: https://t.me/GyaanSetuAi
