"Skillify" ของ Garry Tan — วิธีเปลี่ยนความล้มเหลวของ AI เอเจนต์ให้กลายเป็นการแก้โครงสร้างแบบถาวร
(x.com/garrytan)บทความนี้ว่าด้วยแนวทางการจัดการคุณภาพเอเจนต์ชื่อ "Skillify" ที่ Garry Tan ประธาน Y Combinator เสนอจากประสบการณ์ตรงในการใช้งาน AI เอเจนต์ของตนเอง โดยเริ่มจากข้อสังเกตว่าเฟรมเวิร์กอย่าง LangChain ที่ระดมทุนได้ 160 ล้านดอลลาร์นั้นมีเครื่องมือทดสอบให้ก็จริง แต่ยังขาดเวิร์กโฟลว์สำหรับคำถามว่า "ควรทดสอบอะไร และทดสอบตามลำดับอย่างไร" Tan จึงเสนอเช็กลิสต์ 10 ขั้นตอนที่เปลี่ยนความผิดพลาดของเอเจนต์จากการแก้พรอมป์ต์แบบครั้งเดียว ให้กลายเป็นโครงสร้างถาวรที่ประกอบด้วยไฟล์สกิลแบบ Markdown, สคริปต์ deterministic และการทดสอบอัตโนมัติ
แนวคิดหลัก
- Skillify คืออะไร: เมื่อเอเจนต์ล้มเหลว ให้เปลี่ยนความล้มเหลวนั้นเป็น "สกิล" (คู่มือขั้นตอนแบบ Markdown + สคริปต์ deterministic + การทดสอบ) ที่ทำให้ข้อผิดพลาดนั้นไม่สามารถเกิดซ้ำได้อีก ระหว่างสนทนา หากพูดว่า "skillify it" เอเจนต์จะรันกระบวนการ 10 ขั้นตอนโดยอัตโนมัติ
- การแยก Latent vs. Deterministic: แยกงานที่ต้องใช้การตัดสินใจ (latent, พื้นที่การให้เหตุผลของ LLM) ออกจากงานที่ต้องการความแม่นยำ (deterministic, พื้นที่การรันโค้ด) อย่างชัดเจน โดยมองว่าบั๊กสำคัญคือกรณีที่ LLM พยายามทำสิ่งที่โค้ดตอบได้ทันทีอยู่แล้ว เช่น การคำนวณไทม์โซนหรือการค้นหาปฏิทิน "ในหัว" แล้วตอบผิด
- เช็กลิสต์ 10 ขั้นตอน: ต้องผ่านทั้งหมดจึงจะนับเป็น "สกิล" ได้แก่ การเขียน
SKILL.md, การเขียนสคริปต์ deterministic, ยูนิตเทสต์ (vitest), อินทิเกรชันเทสต์, การประเมินด้วย LLM (LLM-as-judge), การลงทะเบียน resolver trigger, การประเมิน resolver, การตรวจสอบการเข้าถึงได้/ความซ้ำซ้อน, E2E smoke test และกฎการจัดเก็บใน brain file
กรณีตัวอย่างจริง
- เมื่อถามกำหนดการเดินทางไปสิงคโปร์เมื่อ 10 ปีก่อน เอเจนต์กลับเรียก live API อยู่นาน 5 นาที ก่อนจะมาพบภายหลังว่าข้อมูลนั้นหาได้ทันทีจากไฟล์ปฏิทิน 3,146 ไฟล์ที่ถูกทำดัชนีไว้ในเครื่องอยู่แล้ว
- กรณีที่ตอบว่า "การประชุมครั้งถัดไปจะเริ่มในอีก 28 นาที" แต่ความจริงคืออีก 88 นาที — LLM คำนวณแปลงเขตเวลาจาก UTC เป็น PT เองแล้วพลาดไปเต็ม ๆ 1 ชั่วโมง
- ทั้งสองกรณีนี้ สคริปต์เดิมที่มีอยู่แล้ว (รันได้ภายใน 100ms) มีคำตอบที่ถูกต้องอยู่ แต่เอเจนต์เลือกใช้การให้เหตุผลแทนการรันสคริปต์ จึงกลายเป็นต้นเหตุของปัญหา
จุดที่แตกต่าง
- หาก LangChain ให้เพียง "ชุดเครื่องมือทดสอบ" Skillify จะเสนอเวิร์กโฟลว์ที่มีจุดยืนชัดเจนคือ "ความล้มเหลว → สกิล → การทดสอบ → การแก้ถาวร" เปรียบได้กับว่าเฟรมเวิร์กให้แค่สมาชิกฟิตเนส แต่ Skillify ให้ตารางฝึกออกกำลังกาย
- Tan ชี้ว่า Hermes Agent ของ Nous Research สร้างสกิลอัตโนมัติได้ดี แต่เมื่อไม่มีการทดสอบ สกิลก็จะเสื่อมสภาพไปตามเวลา พร้อมย้ำว่าต้องมีทั้ง "การสร้าง" และ "การตรวจสอบ" ควบคู่กัน
นัยสำคัญ
- ในวิศวกรรมซอฟต์แวร์ หลักการที่ว่า "ทุกบั๊กต้องมี regression test" ถูกวางรากฐานไว้ตั้งแต่ปี 2005 แล้ว แต่โลกของ AI เอเจนต์ยังไปไม่ถึงระดับนั้น มุมมองที่ว่าสกิลของเอเจนต์ก็เหมือนโค้ดเบส คือจะเสื่อมสภาพหากไม่มีการทดสอบ จึงเป็นคำเตือนที่ใช้ได้กับทั้งอุตสาหกรรม
- กรณีที่ดูแลสกิลมากกว่า 40 รายการแล้วพบว่า 15% ไม่ได้ลงทะเบียนกับ resolver จนกลายเป็น "ฟังก์ชันที่อยู่ในความมืด" แสดงให้เห็นว่าเมื่อระบบเอเจนต์มีขนาดใหญ่ขึ้น การจัดการ discoverability จะกลายเป็นงานสำคัญที่หลีกเลี่ยงไม่ได้
2 ความคิดเห็น
ตรงนั้นสิ
แล้วสกิลที่รันสิ่งนี้ให้ได้ไปรับมาจากไหนครับ?
ฟีเจอร์
skillify skillเป็นความสามารถที่รวมอยู่ใน gbrainhttps://github.com/garrytan/gbrain/…