𝗔𝗜 𝗪𝗿𝗶𝘁𝗲𝘀 𝗖𝗼𝗱𝗲. 𝗜𝘁 𝗖𝗮𝗻'𝘁 𝗗𝗲𝗳𝗶𝗻𝗲 "𝗗𝗼𝗻𝗲."

ผมสร้างเครื่องมือสร้างสไลด์ด้วย AI เพียงแค่คุณพิมพ์หัวข้อลงไป คุณก็จะได้งานนำเสนอออกมา

ตัวเดโม AI ทำงานได้ทันที มันเขียนโครงร่าง สร้างสไลด์ และส่งออกไฟล์ ในหน้าจอของผม มันดูเหมือนเสร็จสมบูรณ์แล้ว

แต่มันยังไม่เสร็จ

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

AI ไม่ได้เพิ่มสิ่งเหล่านี้เข้ามา เพราะผมไม่ได้สั่งมัน

เมื่อคุณสร้างสิ่งต่างๆ ด้วย AI ส่วนที่ยากไม่ใช่การอธิบายฟีเจอร์ แต่ส่วนที่ยากคือการนิยามว่าคำว่า "เสร็จ" หมายถึงอะไร

ผมใช้ Velobase Harness เป็นรากฐาน ซึ่งช่วยจัดการเรื่อง auth, การชำระเงิน, credits และฐานข้อมูล สิ่งนี้ทำให้ผมสามารถโฟกัสให้ AI ไปที่การสร้าง PPT โดยเฉพาะ

นั่นคือจุดที่คำว่า "ดูเหมือนเสร็จ" กับ "เสร็จจริงๆ" แยกออกจากกัน ผมพบช่องว่างหลักๆ 4 ประการ:

  • Concurrency: AI คิดว่าการทำงานสำเร็จหนึ่งครั้งเท่ากับฟีเจอร์ที่เสร็จสมบูรณ์ แต่ระบบจริงจำเป็นต้องแบ่งงานออกเป็นคิว (queues) คุณต้องสร้างสไลด์แต่ละแผ่นให้เป็นงาน (job) ของตัวเอง เพื่อให้ worker สามารถขยายขนาด (scale) ได้

  • Billing: AI จะหัก credits เพียงครั้งเดียวแล้วหยุด แต่ผลิตภัณฑ์จริงต้องมี state machine คุณต้องมีการสำรอง credits, สรุปยอดตามการใช้งานจริง และคืนเงินเมื่อเกิดความล้มเหลว

  • Self-review: หาก backend พยายามทำซ้ำงานเงียบๆ ผู้ใช้จะเห็นเพียงไอคอนหมุนๆ คุณต้องแสดงสถานะให้ชัดเจน ผู้ใช้ควรเห็นคำว่า "กำลังตรวจสอบ" หรือ "กำลังวาดใหม่" เพื่อให้พวกเขารู้ว่าระบบกำลังทำงานอยู่

  • Export: สไลด์อาจดูดีมากในเบราว์เซอร์ แต่กลับพังเมื่ออยู่ในไฟล์ PPTX ข้อกำหนดไม่ใช่แค่การสร้างไฟล์ขึ้นมา แต่ข้อกำหนดคือไฟล์นั้นต้องตรงกับตัวอย่างบนเว็บ (web preview)

ผมเปลี่ยนวิธีการสั่งงาน ผมเลิกให้รายการฟีเจอร์แก่ AI แต่เริ่มให้เกณฑ์การยอมรับ (acceptance criteria) แทน

กฎใหม่ของผมสำหรับ AI:

  • สร้าง SaaS ที่พร้อมใช้งานจริง (production-ready) ไม่ใช่แค่เดโม
  • รองรับผู้ใช้ 100 คนพร้อมกัน
  • ใช้คิวที่เป็นอิสระต่อกันสำหรับการวางแผนและการสร้างสไลด์
  • เชื่อมต่อการเรียกใช้ model ทุกครั้งเข้ากับระบบ billing
  • หยุดและเริ่มงานใหม่ตามยอดคงเหลือของ credits
  • ตรวจสอบเลย์เอาต์หลังจากสร้างสไลด์แต่ละแผ่น
  • ตรวจสอบให้แน่ใจว่าการส่งออก PPTX ตรงกับตัวอย่างภาพที่เห็น
  • เขียนการทดสอบสำหรับ concurrency และความล้มเหลว ไม่ใช่แค่กรณีที่สำเร็จเท่านั้น

AI เขียนโค้ดได้เร็ว แต่มันแค่ไม่รู้ว่าอะไรคือสิ่งที่ทำให้โค้ดนั้นพร้อมส่งมอบ (shippable) มันปฏิบัติกับเดโมในเครื่องเสมือนว่าเป็นระบบที่สมบูรณ์แบบ

บทบาทของมนุษย์คือการกำหนดขอบเขตทางวิศวกรรม กรณีที่เกิดความผิดพลาด และกฎทางธุรกิจ

Harness มอบรากฐานแบบ SaaS ส่วน AI จะเติมเต็มในส่วนของตรรกะ คุณเพียงแค่ต้องป้อน input ที่เฉียบคมที่สุด

หากคุณส่งมอบผลิตภัณฑ์ที่สร้างโดย AI อะไรคือช่องว่างที่ยากที่สุดระหว่าง "มันใช้งานได้" กับ "มันพร้อมสำหรับลูกค้าแล้ว"?

ที่มา: https://dev.to/velobasex/ai-can-write-the-code-it-cant-tell-you-when-the-product-is-done-4oh6