เคยโดน AI Assistant ทำพิษบ้างไหม?

AI บอกว่างานเสร็จแล้ว คุณก็เชื่อมัน จากนั้นคุณต้องเสียเวลาหลายวันเพื่อพบว่าจริงๆ แล้วมันยังทำงานไม่เสร็จเลยด้วยซ้ำ

ผมเรียกสิ่งนี้ว่า "ช่องว่าง" (the gap) มันคือระยะห่างระหว่างสิ่งที่ AI รายงาน กับสิ่งที่เกิดขึ้นจริง

หลุมพรางนั้นซ่อนอยู่ในช่องว่างนั้น บางครั้งก็เป็นความผิดของ AI บางครั้งก็เป็นความผิดของผม และบางครั้งก็เป็นความผิดของงานวิศวกรรม

นี่คือ 3 ตัวอย่างจากเรื่องจริง:

  1. กับดักเรื่องที่มา (The Provenance Trap) ผมสั่งให้ AI กู้คืนโค้ดจาก git branch หนึ่ง มันบอกว่ามันดึงมาจากอีก branch หนึ่ง แต่มันไม่ได้ทำแบบนั้น จริงๆ แล้วมันเขียนโค้ดขึ้นมาใหม่ด้วยมือตัวเอง

การทำ cherry-pick จะมีประวัติที่คุณสามารถตรวจสอบตามได้ แต่การเขียนใหม่ด้วยมือคือ "โค้ดกำพร้า" มันดูเหมือนจะถูกต้อง แต่มันไม่มีที่มาที่ไป เมื่อผมคาดคั้นเอาความจริง AI ก็ยอมรับออกมา

บทเรียน: คำกล่าวอ้างเรื่องที่มา (provenance) ของ AI นั้นเชื่อถือไม่ได้ อย่าถามว่ามันทำอะไรไป แต่ให้ดูที่ git history เพื่อดูว่ามันทำอะไรลงไปจริงๆ

  1. กับดักการสุ่มตรวจ (The Spot-Check Trap) ผมสั่งให้ AI เปลี่ยน logic ของฟอร์ม มันบอกว่า "เสร็จแล้ว" ผมต้องเสียเวลาถึงสี่วันในการ debug ส่วน front end

การตรวจสอบ diff แบบบรรทัดต่อบรรทัดแสดงให้เห็นว่ามันเปลี่ยนไปเพียง 4 จาก 5 scope ผมเห็นโค้ดเปลี่ยนไปจำนวนมากจึงทึกทักเอาเองว่าส่วนที่เหลือคงไม่เป็นไร สมองของผมเติมเต็มส่วนที่ขาดหายไปเอง

ยิ่งการเปลี่ยนแปลงมีขนาดใหญ่เท่าไหร่ กับดักก็ยิ่งลึกเท่านั้น การเปลี่ยนแปลงจำนวนมากจะทำให้คุณมั่นใจเกินเหตุ ในขณะที่ความครอบคลุม (coverage) จริงๆ ของคุณกลับลดลง

บทเรียน: อย่าแค่กวาดสายตาดู แต่ต้องนับให้ครบ ถ้าคุณมี 5 งาน ต้องตรวจสอบทั้ง 5 งานทีละอย่าง

  1. กับดักด้านวิศวกรรม (The Engineering Trap) AI ตัวหนึ่งติดอยู่ใน loop ผมนึกว่ามันกำลังใช้ความคิดอย่างหนักก็เลยรอ แต่จริงๆ แล้วมันแค่กำลังเผาผลาญ API quota ของผมไปเรื่อยๆ

โมเดลทำหน้าที่ผลิต token แต่มันไม่ได้ทำหน้าที่จัดการงบประมาณ (budget) การควบคุม loop, การตั้งค่า timeout และการจำกัดงบประมาณ (budget caps) เป็นหน้าที่ของเลเยอร์ทางวิศวกรรม (engineering layer)

บทเรียน: Agent อัตโนมัติใดๆ ก็ตามต้องมีการจำกัดจำนวนขั้นตอน (step limits) และการจำกัดงบประมาณ (budget caps) อย่าหวังพึ่งให้โมเดลหยุดตัวเอง

บทสรุป:

คำพูดของ AI คือ "คำให้การ" ไม่ใช่ "คำตัดสิน"

คำให้การคือสิ่งที่มันพูด ส่วนคำตัดสินคือหลักฐานที่ปรากฏจริง

  • ถ้ามันบอกว่า "fixed" ให้เช็ค diff
  • ถ้ามันบอกว่า "pulled" ให้เช็ค git log
  • ถ้ามันบอกว่า "thinking" ให้เช็คการใช้ token

ความเชี่ยวชาญไม่ใช่การเรียนรู้ที่จะเชื่อใจ AI แต่คือการเรียนรู้ที่จะปฏิบัติกับคำพูดของมันในฐานะ "คำให้การ" เสมอ

Source: https://dev.to/chenghongm/ever-been-burned-by-your-ai-assistant-hold-on-who-dug-the-hole-1ipl

Optional learning community: https://t.me/GyaanSetuAi