~/VibeHandbook
PDF ฟรี

บท 19 · 07

ค่าใช้จ่ายและวงจรที่วิ่งไม่หยุด

เอเจนต์อัตโนมัติทำงานด้วยการวนซ้ำ (loop): ลอง เช็ก ลองอีกครั้ง วงจรนั้นคือแก่นของมัน — และมันก็เป็นสิ่งที่อาจทำให้บิลพุ่งหรือวิ่งไม่หยุดโดยที่คุณไม่รู้ตัวเช่นกัน

เรื่องนี้เชื่อมโยงกับแนวคิดความปลอดภัยด้านค่าใช้จ่ายจากก่อนหน้านี้: เครื่องมือแบบสมัครสมาชิกราคาคงที่ (flat-rate subscription) ล้มเหลวด้วยการหยุดทำงาน ส่วนเอเจนต์ที่ใช้ paid แบบวัดปริมาณ (metered) ล้มเหลวด้วยการเรียกเก็บเงิน เมื่อผู้ช่วยเขียนโค้ดแบบสมัครสมาชิกถึงขีดจำกัด มันก็แค่หยุดทำงานเพิ่มจนกว่าช่วงเวลาจะรีเซ็ต แต่เมื่อสคริปต์ที่คุณเขียนขึ้นเรียกใช้ paid API ติดอยู่ในวงจรการลองใหม่ (retry loop) มันจะเรียกต่อไป — และทุกการเรียกมีค่าใช้จ่าย — จนกว่าคุณจะสังเกตเห็นหรือบัตรของคุณเต็มวงเงิน

ดังนั้นกฎจึงตรงไปตรงมา:

  • อย่าปล่อยให้วงจรเอเจนต์ที่ไม่มีการควบคุมรันกับ paid API ถ้าคุณเขียนวงจรของตัวเองที่เรียกใช้ API ของ LLM (Large Language Model — โมเดลภาษาขนาดใหญ่ ซึ่งเป็นชนิดของ AI ที่อยู่เบื้องหลังเครื่องมือเขียนโค้ดเหล่านี้) มันต้องมีเพดานที่แน่นอน — จำนวนรอบสูงสุด วงเงินใช้จ่าย เวลาหมดอายุ (timeout) ไม่มีข้อยกเว้น ไม่มี "เดี๋ยวฉันจะเฝ้าดูมัน" คุณจะไม่ทำแบบนั้นหรอก
  • ให้ทุกวงจรมีทางออก "หยุดหลังจาก N ครั้ง" "หยุดถ้าชุดทดสอบยังล้มเหลวสองครั้งติดกัน" "หยุดถ้ารันมาสิบนาทีแล้ว" เอเจนต์ที่ไม่มีเงื่อนไขหยุดคือบั๊ก ไม่ใช่ฟีเจอร์
  • เฝ้าดูการรันครั้งแรกๆ ก่อนที่คุณจะไว้ใจให้เอเจนต์รันในพื้นหลัง ให้เฝ้าดูการรันในพื้นหน้า (foreground) สองสามครั้งตั้งแต่ต้นจนจบ คุณกำลังตรวจสอบว่ามัน ลู่เข้า (converges) — คือมันเข้าใกล้ความเสร็จสิ้นมากขึ้น ไม่ใช่ติดวนซ้ำแก้จุดเดิม
  • เลือกเครื่องมือที่มีรั้วกั้นความปลอดภัย ผู้ช่วยที่มีการจัดการพร้อมขีดจำกัดในตัวปลอดภัยกว่าที่จะปล่อยให้รันทิ้งไว้ เมื่อเทียบกับวงจร API ดิบๆ ที่คุณเขียนตอนเที่ยงคืน การที่ระบบสมัครสมาชิกล้มเหลวแบบปิด (fail closed) คือข้อดี ส่วน API ที่ล้มเหลวแบบเปิด (fail open) คืออันตราย

อยากได้แบบออฟไลน์?

ดาวน์โหลดหนังสือทั้งเล่มเป็น PDF หรือ EPUB — ฟรี