ผู้ช่วย Agent และสิทธิ์
เรียนจบแล้วแยกคำตอบออกจากการลงมือทำ ระบุเครื่องมือและสิทธิ์ที่เปลี่ยนผลกระทบของข้อผิดพลาด
เผยแพร่โดย Taigaวิธีเขียนเนื้อหาของเรา
ตรวจความเข้าใจAgent แก้ไข branch และรัน test ได้ หมายความว่าควรมีสิทธิ์ deploy ด้วยหรือไม่ทำแบบฝึกหัด
สิ่งที่จะได้เรียนรู้
- อธิบายความแตกต่างระหว่างผู้ช่วยกับ agent ที่ใช้เครื่องมือ
- ระบุการดำเนินการที่ต้องมีขอบเขตสิทธิ์ชัดเจน
- กำหนดเงื่อนไขหยุดงานที่ใช้ได้จริง
ระบุวิธีที่ระบบลงมือทำ
ผู้ช่วยอธิบายโค้ด เสนอแผน หรือแนะนำวิธีพัฒนาได้ Agent ยังใช้เครื่องมือและเปลี่ยนสภาพแวดล้อมได้ด้วย ชื่อผลิตภัณฑ์ไม่ได้ให้ขอบเขตที่เชื่อถือได้ หน้าจอ chat บางแบบรันคำสั่งได้ เครื่องมือเขียนโค้ดบางตัวเพียงเสนอข้อความ
ตรวจดูเครื่องมือที่มี คำอธิบายที่มีประโยชน์ระบุว่าระบบอ่าน เปลี่ยนแปลง รัน และเผยแพร่อะไรได้บ้าง รวมถึงระบุว่าการดำเนินการแต่ละอย่างใช้ข้อมูลรับรองและสภาพแวดล้อมใด
Anthropic แยก workflow ที่กำหนดล่วงหน้าออกจาก agent ที่เลือกลำดับการใช้เครื่องมือเอง ความแตกต่างนี้ช่วยอธิบายว่างานเดินหน้าอย่างไร แต่ไม่ได้ตัดสินว่าการดำเนินการหนึ่งปลอดภัยหรือไม่ ทั้งสองแบบต้องมีขอบเขตสิทธิ์ชัดเจน
แยกเป้าหมายออกจากสิทธิ์
พิจารณาคำขอสมมติว่า “แก้ไขการ export ใบแจ้งหนี้” Agent ตรวจดู repository ทำให้ข้อบกพร่องเกิดซ้ำ แก้ไข branch และรันการตรวจสอบได้ นอกจากนี้อาจพบข้อมูลรับรองฐานข้อมูล production ในสภาพแวดล้อมของตน
เป้าหมายไม่ได้อนุญาตทุกการดำเนินการที่ทำได้ การอ่านตาราง production การเปลี่ยนระเบียนใบแจ้งหนี้ และการ deploy เวอร์ชันใหม่มีผลกระทบต่างกัน คำสั่งกว้าง ๆ เช่น “ทำงานให้เสร็จ” ไม่ได้อธิบายว่าองค์กรอนุญาตการดำเนินการใดในกลุ่มนี้
กำหนดขอบเขตก่อนเริ่มงาน ในตัวอย่างนี้ agent ใช้ข้อมูลที่แต่งขึ้นและฐานข้อมูลในเครื่องได้ สร้าง pull request ได้ แต่เข้าถึงระเบียน production หรือ deploy การเปลี่ยนแปลงไม่ได้ กระบวนการออก release ที่แยกต่างหากรับผิดชอบการดำเนินการเหล่านั้น
ใช้มาตรการทางเทคนิคควบคุมอำนาจ
คำสั่งช่วยให้ agent เข้าใจงาน ส่วนข้อมูลรับรองและการควบคุมการเข้าถึงกำหนดว่า agent ทำอะไรได้จริง ใช้ทั้งสองอย่าง
| สิ่งที่งานต้องการ | ขอบเขตที่เหมาะสมสำหรับตัวอย่างนี้ |
|---|---|
| ตรวจดูโค้ดที่เกี่ยวข้อง | สิทธิ์อ่าน repository ที่เลือก |
| เสนอการแก้ไข | สิทธิ์เขียน feature branch |
| ตรวจสอบพฤติกรรม | สภาพแวดล้อมทดสอบที่ใช้ข้อมูลแต่งขึ้น |
| ขอให้ตรวจทาน | สิทธิ์เปิด pull request |
| ออก release ซอฟต์แวร์ | Role สำหรับ deploy และ policy การออก release ที่แยกต่างหาก |
งานที่อ่านอย่างเดียวไม่ควรได้รับข้อมูลรับรองสำหรับเขียนเพียงเพราะสะดวก สภาพแวดล้อมทดสอบไม่ควรได้รับสิทธิ์ production ต่อมาโดยไม่มีใครทราบ ตรวจสอบการเชื่อมโยงระหว่างเครื่องมือ ตัวตน และทรัพยากร คำสั่งที่ดูไม่มีอันตรายอาจส่งผลมากเมื่อใช้ตัวตนที่มีอำนาจสูง
กำหนดว่าเมื่อใดต้องหยุดงาน
Agent ต้องมีเงื่อนไขหยุดเมื่อการดำเนินการถัดไปเกินอำนาจที่ได้รับ และต้องหยุดเมื่อหลักฐานไม่เพียงพอด้วย
ในตัวอย่างใบแจ้งหนี้ ให้หยุดหากข้อบกพร่องต้องแก้ข้อมูล production ให้หยุดหากพฤติกรรมที่ขอขัดกับกฎบัญชีที่บันทึกไว้ รายงานข้อขัดแย้งพร้อมหลักฐานที่เกี่ยวข้องและการตัดสินใจที่ต้องการจากผู้รับผิดชอบ
ขีดจำกัดเวลาหรือค่าใช้จ่ายมีประโยชน์สำหรับการลองซ้ำ แต่ใช้แทนขอบเขตสิทธิ์ไม่ได้ การลองที่ได้รับอนุญาตสิบครั้งกับการ deploy ที่ไม่ได้รับอนุญาตหนึ่งครั้งเป็นปัญหาต่างกัน
ประเมินผลลัพธ์และบันทึกการดำเนินการ
เมื่องานเสร็จ ให้ตรวจมากกว่าคำตอบสุดท้าย ทบทวนไฟล์ที่เปลี่ยน การตรวจสอบที่รันแล้ว และความไม่แน่นอนที่เหลืออยู่ ตรวจสอบว่าการดำเนินการอยู่ในขอบเขตที่ตกลงกันหรือไม่
Agent ที่มีความสามารถลดงานที่คนต้องทำเองได้ องค์กรยังต้องกำหนดการดำเนินการที่อนุญาต ตรวจสอบผลลัพธ์สำคัญ และรับผิดชอบการตัดสินใจออก release ยิ่งให้อิสระมาก ความรับผิดชอบเหล่านี้ยิ่งสำคัญ
ทำแบบฝึกหัด
เลือกเครื่องมือ AI หนึ่งตัวที่ทีมใช้ได้ จดว่าเครื่องมืออ่าน เปลี่ยนแปลง รัน และเผยแพร่อะไรได้บ้าง ระบุจุดที่ต้องให้คนอนุมัติการดำเนินการ ตรวจสอบขอบเขตหนึ่งข้อใน configuration จริง
ดาวน์โหลดใบงาน (Markdown)การยกเลิกตัวเลือกนี้จะลบความคืบหน้าทั้งหมดที่บันทึกใน browser นี้
ความคืบหน้าอยู่ใน browser นี้ ไม่ใช้บัญชีและไม่ติดตามการใช้งาน