การสร้าง Production Agent Loop

การสร้างเอเจนต์สำหรับเดโม (demo) นั้นง่าย แต่การสร้างเอเจนต์สำหรับโปรดักชัน (production) นั้นยาก

ในเดโม ลูปการทำงานจะเรียบง่าย: สังเกต, ตัดสินใจ, ลงมือทำ, ตรวจสอบ, ทำซ้ำ โมเดลจะเห็นผลลัพธ์แล้วข้ามไปยังขั้นตอนถัดไปทันที

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

กับดักที่ใหญ่ที่สุดคือการเชื่อใจผลลัพธ์จากเครื่องมือ (tool responses)

ลองจินตนาการว่าเอเจนต์จำเป็นต้องยกเลิกคำสั่งซื้อและคืนเงิน

ในเดโม วิธีนี้ใช้งานได้ แต่ในระดับโปรดักชัน นี่คือหายนะ

200 OK มักหมายถึงคำขอได้รับการตอบรับแล้ว ไม่ใช่ว่างานนั้นเสร็จสิ้นแล้ว การยกเลิกอาจจะยังค้างอยู่ในคิว (queue) หากเอเจนต์ทำการคืนเงินก่อนที่การยกเลิกจะได้รับการยืนยัน คุณกำลังเคลื่อนย้ายเงินโดยอาศัยเพียงการคาดเดา

คุณต้องปฏิบัติตามกฎเพียงข้อเดียว: ผลลัพธ์จากเครื่องมืออธิบายถึง "คำขอ" ไม่ใช่ "สถานะความเป็นจริงของโลก"

ในการสร้างลูปโปรดักชันที่ปลอดภัย คุณต้องมีองค์ประกอบเหล่านี้:

• Tool Contracts: เครื่องมือทุกชนิดต้องกำหนด input, output, รูปแบบความล้มเหลว (failure modes) และ idempotency key ให้ชัดเจน • Verification Gates: อย่าตรวจสอบแค่ว่าเครื่องมือส่งรหัสความสำเร็จกลับมาหรือไม่ แต่ต้องอ่านสถานะความเป็นจริงของโลกอีกครั้งเพื่อยืนยันว่าการเปลี่ยนแปลงนั้นเกิดขึ้นจริง • Working State: แยกข้อเท็จจริงออกจากประวัติการแชท เพื่อป้องกันไม่ให้เอเจนต์เกิดอาการหลอน (hallucinating) โดยอ้างอิงจากข้อความในบทสนทนา • Approval Gates: ใช้มนุษย์ในการอนุมัติเจตนาสำหรับการดำเนินการที่มีความเสี่ยงสูง • Stop Rules: กำหนดขีดจำกัดของจำนวนขั้นตอน, ค่าใช้จ่าย, เวลา และการหยุดนิ่ง เพื่อป้องกันลูปที่ทำงานไม่สิ้นสุด (runaway loops)

โครงสร้างของลูปไม่ได้เปลี่ยนไป แต่การนำไปใช้งานจริงจะเข้มงวดขึ้น

สำหรับการดำเนินการที่มีผลกระทบสำคัญ ขั้นตอน "ตรวจสอบ" (check) ของคุณต้องมีสองส่วน:

  1. Verify: โลกเปลี่ยนไปตามที่คาดหวังไว้จริงหรือไม่?
  2. Commit: เมื่อได้รับการยืนยันแล้ว ปลอดภัยหรือไม่ที่จะดำเนินการในขั้นตอนถัดไป?

เอเจนต์ที่ปลอดภัยที่สุดคือเอเจนต์ที่มีขอบเขตชัดเจนที่สุด ความน่าเชื่อถือเกิดจากการกำหนดขอบเขตที่ชัดเจนให้กับโมเดล ไม่ใช่การมอบอิสระให้มันมากขึ้น

Source: https://dev.to/gursharansingh/ai-agents-in-practice-part-6-building-the-production-agent-loop-2lfi

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