แก้ปัญหา Prompt กระจัดกระจายด้วย AI Agent Skill Registry จัดการเวิร์กโฟลว์ให้เป็นระเบียบ
เมื่อโปรเจกต์เติบโตขึ้น ปัญหา Prompt สั่งงาน AI ที่กระจัดกระจายและซ้ำซ้อนจะสร้างความปวดหัวให้กับทีม การสร้างระบบ Skill Registry จึงเข้ามาช่วยจัดการให้เวิร์กโฟลว์ของเอเจนต์เป็นระเบียบและปลอดภัยมากขึ้น

ภาพประกอบจากคลังภาพสต็อก ไม่ใช่ภาพจากเหตุการณ์จริง
- ปัญหา Prompt Sprawl เกิดขึ้นเมื่อระบบ AI เติบโตจนมี Prompt และเครื่องมือถูกคัดลอกกระจัดกระจาย
- AI Agent Skill Registry ทำหน้าที่เป็นแคตตาล็อกรวมแพ็กเกจเวิร์กโฟลว์ที่ตรวจสอบและทำเวอร์ชันได้
- การแยกชุดคำสั่งและเครื่องมือออกเป็นสคิลล์ขนาดเล็กช่วยเพิ่มความปลอดภัยและตรวจสอบย้อนกลับได้
- การทดสอบ (Evals) และการกำหนดสิทธิ์ (Lifecycle) เป็นหัวใจสำคัญในการนำสิลล์ไปใช้งานจริงในระบบโปรดักชัน
จุดเริ่มต้นของระบบเอเจนต์มักจะเริ่มจาก Prompt ที่เขียนขึ้นมาอย่างระมัดระวังเพียงชุดเดียว พร้อมกับเครื่องมือไม่กี่ตัวและนักพัฒนาที่เข้าใจพฤติกรรมการทำงานของมันเป็นอย่างดี แต่เมื่อผลิตภัณฑ์เริ่มเติบโตขึ้น ความต้องการจากแผนกต่างๆ ก็จะเริ่มหลั่งไหลเข้ามา ไม่ว่าจะเป็นฝ่ายซัพพอร์ตที่ต้องการเวิร์กโฟลว์จัดการเรื่องการคืนเงิน ฝ่ายขายที่ต้องการระบบอัปเดต CRM หรือฝ่ายปฏิบัติการที่ต้องการสร้างรายงาน ขณะที่ทีมวิศวกรก็เพิ่มเครื่องมือ MCP การกระทำบนเบราว์เซอร์ ระบบลองใหม่ และการขออนุมัติเข้ามาเรื่อยๆ
ในเวลาไม่นาน ตัว "เอเจนต์" ก็ไม่ใช่ระบบเดี่ยวอีกต่อไป แต่กลายเป็นกองรวมของ Prompt ที่ถูกคัดลอกต่อกันมา กฎที่ซ่อนอยู่ คำอธิบายเครื่องมือแบบใช้ครั้งเดียวทิ้ง คู่มือการทำงานเก่าๆ และการตัดสินใจผ่านเธรดใน Slack ที่ไม่มีใครสามารถนำกลับมาใช้ใหม่อย่างปลอดภัยได้อีก ซึ่งนี่คือปัญหาที่เรียกว่า Prompt Sprawl
ปัญหา Prompt Sprawl มักเกิดขึ้นโดยไม่รู้ตัวเมื่อทีมพัฒนาขยายขนาดระบบ AI อย่างรวดเร็ว การปล่อยให้ทุกทีมสร้าง Prompt ของตัวเองโดยไม่มีส่วนกลางควบคุม เปรียบเสมือนการปล่อยให้เขียนโค้ดแบบไร้สถาปัตยกรรม การนำแนวคิดเรื่อง Registry หรือระบบทะเบียนกลางมาใช้จัดการจึงช่วยเปลี่ยนเวิร์กโฟលв์จากข้อความเวทมนตร์ให้กลายเป็นซอฟต์แวร์ที่มีโครงสร้างชัดเจน
ปัญหาความกระจัดกระจายนี้ไม่ได้ส่งผลแค่ความสะอาดของโค้ดเท่านั้น แต่ยังส่งผลกระทบโดยตรงต่อความน่าเชื่อถือของระบบด้วย หากเวิร์กโฟลว์ AI มีการเปลี่ยนแปลงข้อมูลลูกค้า ส่งข้อความ สร้างบันทึก หรือแนะนำการดำเนินการทางธุรกิจ ทีมงานจำเป็นต้องรู้แน่ชัดว่าสิลล์ตัวไหนถูกเรียกใช้งานและเพราะเหตุใดจึงได้รับอนุญาตให้รันได้ โดยแพ็กเกจสิลล์ที่ดีควรมีขนาดเล็กพอที่จะตรวจสอบได้ง่ายและครบถ้วนพอที่จะรันได้อย่างปลอดภัย

ตัวอย่างโครงสร้างข้อมูลของสิลล์สำหรับการตรวจสอบการคืนเงิน (Refund Review Assistant) ในเวอร์ชัน 1.4.0 แสดงให้เห็นถึงการกำหนดขอบเขตที่ชัดเจน:
- ชื่อและสถานะ: ระบุสถานะเป็น staging พร้อมกำหนดผู้อยู่เบื้องหลังคือ billing-platform
- ข้อมูลขาเข้า (Inputs): กำหนดค่าที่จำเป็นต้องใช้ เช่น tenant_id, user_id และ refund_request_id
- บริบทและข้อห้าม (Context & Forbidden): ระบุสิ่งที่ต้องมีเช่น นโยบายการคืนเงินปัจจุบัน และข้อห้ามเด็ดขาดเช่น ห้ามเข้าถึงข้อมูลบัตรชำระเงินเต็มรูปแบบ
- เครื่องมือ (Tools): ระบุเครื่องมือที่อนุญาตให้ใช้ เช่น การเรียกดูใบแจ้งหนี้ และเครื่องมือที่ห้ามใช้เด็ดขาดเช่น การอนุมัติคืนเงิน
- ขีดจำกัด (Limits): จำกัดจำนวนครั้งที่โมเดลและเครื่องมือจะเรียกใช้งาน รวมถึงกำหนดเวลาทำงานสูงสุด 45วินาที
รูปแบบการจัดระเบียบนี้ช่วยบังคับให้ทีมต้องตัดสินใจในส่วนที่ปกติแล้วมักจะถูกซ่อนไว้ใน Prompt ทั่วไป ทำให้การจัดการข้อกำหนดทางธุรกิจ นโยบายความปลอดภัย และสิทธิ์การใช้งานไม่พันกันยุ่งเหยิง
นอกจากนี้ การจัดการสถานะของสิลล์ (Skill Lifecycle) ก็เป็นอีกหนึ่งเรื่องสำคัญ โดยควรหลีกเลี่ยงการชี้ระบบโปรดักชันไปที่เวอร์ชันล่าสุด (latest) โดยตรง แต่ควรแบ่งสถานะออกเป็นสเตจต่างๆ เช่น draft, review, staging, canary, production, deprecated หรือ blocked เพื่อป้องกันไม่ให้การแก้ไขเล็กๆ น้อยๆ ไปกระทบกับการทำงานจริงในช่วงเวลาที่มีผู้ใช้งานหนาแน่น
ที่มา: Dev.to
พบข้อมูลผิดพลาดในบทความนี้? แจ้งปัญหาบทความนี้
ความคิดเห็น
แสดงความคิดเห็น