ขีดความสามารถ (Capabilities), การอนุญาต (Permissions) และด่านอนุมัติ (Approval Gates) ในทีมพัฒนา AI

เครื่องมือ AI หลายอย่างเสนอทางลัด

คุณเชื่อมต่อเครื่องมือหรือการรวมระบบ (integration) อินเทอร์เฟซจะระบุว่าเอเจนต์ (agent) สามารถทำงานกับไฟล์ งาน หรือคำสั่งได้แล้ว

สำหรับทีมที่ทำงานอย่างจริงจัง แค่นี้ยังไม่พอ

ความสามารถทางเทคนิคไม่เหมือนกับการได้รับอนุญาต การดำเนินการบางอย่างอาจทำได้ในทางเทคนิค แต่ยังคงต้องมีการตัดสินใจจากมนุษย์

NexFlow แยกสามเลเยอร์นี้ออกจากกัน:

• Capability: ในทางเทคนิคแล้ว ผู้กระทำ (actor) สามารถทำอะไรได้บ้าง? • Permission: หัวข้อหรือบุคคลที่ระบุได้รับอนุญาตให้ใช้ความสามารถนั้นหรือไม่? • Approval Gate: การดำเนินการนั้นจำเป็นต้องให้มนุษย์ตอบตกลงก่อนหรือไม่?

การสับสนในคำศัพท์เหล่านี้จะนำไปสู่ความเสี่ยงด้านความปลอดภัย

Skill (ทักษะ) อธิบายถึงบทบาท เช่น การเขียนเอกสาร Capability (ขีดความสามารถ) อธิบายถึงการกระทำ เช่น create_pull_request Permission (การอนุญาต) คือนโยบาย เช่น allow หรือ deny Approval Gate (ด่านอนุมัติ) คือบุคคลหรือระบบที่ต้องอนุมัติการดำเนินการที่มีการควบคุมไว้

เอเจนต์อาจมีทักษะในการรีวิวโค้ด การรวมระบบอาจมอบขีดความสามารถในการสร้าง pull request แต่การอนุญาตยังคงต้องเป็นตัวตัดสินว่าเอเจนต์เฉพาะเจาะจงนั้นสามารถใช้เครื่องมือนั้นได้หรือไม่ จากนั้นด่านอนุมัติจะเป็นตัวตัดสินว่าต้องให้มนุษย์ตรวจสอบหรือไม่

การแยกแยะนี้ช่วยปกป้องโปรเจกต์ของคุณ ช่วยหยุดปัญหา "connected tool" ที่เอเจนต์ได้รับอำนาจมากกว่าที่คุณตั้งใจไว้

NexFlow ใช้โมเดลความปลอดภัยแบบระมัดระวัง (conservative security model):

  • ตรวจสอบว่าผู้กระทำมีขีดความสามารถที่ประกาศไว้หรือไม่
  • ค้นหากฎการอนุญาต (permission rules)
  • การปฏิเสธอย่างชัดเจน (explicit deny) คือกฎที่เข้มงวดที่สุด
  • สถานะ approval_required จะระงับการดำเนินการจนกว่ามนุษย์จะอนุมัติ
  • การอนุญาต (allow) จะทำงานภายใต้ขอบเขตที่กำหนดไว้เท่านั้น
  • หากไม่มีการอนุญาต ให้ปฏิเสธการดำเนินการ

นี่ไม่ใช่ระบบราชการ แต่มันทำให้ความเสี่ยงมองเห็นได้ชัดเจน คุณสามารถตรวจสอบนโยบายของคุณได้ก่อนที่จะเริ่มรันเอเจนต์แม้แต่ตัวเดียว

คุณสามารถเห็นได้ว่า:

  • มีขีดความสามารถที่มีความเสี่ยงใดอยู่บ้าง
  • ใครสามารถอ่าน repository ของคุณได้
  • ใครสามารถเขียนไฟล์ได้
  • จุดไหนที่มนุษย์ต้องหยุดการดำเนินการ

สิ่งที่เอเจนต์ทำได้นั้นยังไม่พอ สิ่งที่สำคัญคือโปรเจกต์ของคุณอนุญาตให้พวกเขาทำอะไรได้บ้างต่างหาก

Source: https://dev.to/alexander_iwizard/capabilities-permissions-and-approval-gates-in-ai-developer-teams-2cc4

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