ก้าวที่ 5 · ตอนที่ 16

ผมเริ่มเข้าใจ Agent และปรับโครง SBJ Buddy ให้เรียกใช้ Tools ได้เต็มตัว

พ่อมองภาพการทำงานของ Agent ขณะที่ Buddy เลือกข้อมูลที่ได้รับอนุญาตส่งให้ AI

ตอนแรกผมมองว่าสิ่งที่ทำอยู่คือเพิ่มความสามารถให้ Buddy ทีละส่วน แต่ระหว่างทำงาน ผมเริ่มเห็นภาพอีกแบบ: เรากำลังออกแบบให้ AI พิจารณาว่าควรทำอะไรต่อ แล้วเลือกเรียกความสามารถที่เหมาะกับงานผ่าน Tools

สิ่งที่ทำให้ผมหยุดคิดไม่ใช่แค่การได้รู้จักคำว่า Agent แต่คือการเห็นว่าแนวทางของ SBJ Buddy ไปในทิศเดียวกันอยู่แล้ว เพียงแต่ Buddy ต้องคุมว่าความสามารถเหล่านั้นเข้าถึงอะไรได้บ้าง และทำงานอยู่ในขอบเขตไหน

จาก AI ที่ตอบคำถาม สู่ AI ที่เลือกใช้ความสามารถ

ก่อนหน้านั้น เวลาผมคิดถึง AI ผมมักนึกถึงการส่งข้อความเข้าไปแล้วรอคำตอบ แต่แนวคิด Agent ทำให้ผมเห็นวงจรที่กว้างกว่านั้น: AI อ่านโจทย์ พิจารณาว่าต้องใช้ความสามารถอะไร ขอเรียก Tool แล้วนำผลกลับไปคิดต่อก่อนตอบผู้ใช้

ตอนที่ผมเริ่มเข้าใจแนวคิดนี้ ผมจึงเห็นว่าเราไม่ได้กำลังสร้างเพียงช่องให้ Buddy ส่งคำถามไปหา AI แล้วรับข้อความกลับมา Buddy ต้องเป็นตัวกลางที่รู้ว่ามีความสามารถอะไรให้ใช้ คอยตรวจว่าคำขอนั้นอยู่ในขอบเขตที่อนุญาต และรับผลกลับมาก่อนให้ AI ทำขั้นถัดไป

นี่เป็นจุดที่มุมมองผมเปลี่ยน: AI ช่วยเลือกวิธีไปต่อได้ แต่ไม่ได้หมายความว่าจะทำอะไรก็ได้เอง ระบบยังต้องกำหนดทางเลือก ตรวจคำขอ และควบคุมว่าผลที่กลับมาจะถูกใช้ต่ออย่างไร

ข้อมูลของใคร ก็ต้องอยู่ในขอบเขตของคนนั้น

Current Tool ที่ผมอยากให้ Buddy รองรับมีหน้าที่ดึงข้อมูลเฉพาะของผู้ใช้คนเดียวที่กำลังสนทนา และเฉพาะส่วนที่เหมาะกับคำถามหรือสถานการณ์นั้น ไม่ใช่เปิดคลังทั้งหมดให้ AI ไปค้นเอง แต่เป็นส่วนที่ Buddy เลือกและจัดขอบเขตให้แล้ว

เมื่อ AI ต้องการข้อมูลประกอบการตอบ Buddy จะตรวจว่ากำลังคุยกับใคร และคำขอนี้ควรดึงข้อมูลชนิดใดหรือช่วงไหน จากนั้นจึงส่งเฉพาะผลที่เหมาะสมให้ AI ใช้คิดต่อ ขอบเขตนี้สำคัญกับผม เพราะข้อมูลใน Buddy เป็นเรื่องเฉพาะของผู้ใช้แต่ละคน การช่วยตอบคำถามจึงไม่ควรทำให้ข้อมูลของคนหนึ่งปะปนกับอีกคน

Tools จึงไม่ใช่แค่ช่องให้ AI เรียกข้อมูล แต่เป็นความสามารถที่ต้องมีหน้าที่และขอบเขตชัด Buddy ยังคุมตัวตนและข้อมูลไว้ตลอดวงจร ตั้งแต่รับคำขอ ตรวจขอบเขต ไปจนถึงส่งผลกลับ

ปรับโครงให้เพิ่มความสามารถได้โดยไม่ขยายสิทธิ์เกินจำเป็น

เมื่อเริ่มเห็นภาพนี้ ผมรู้ว่าถ้าฝืนเพิ่ม Tool เข้าไปในโครงที่ไม่ได้เตรียมไว้ ทุกความสามารถใหม่อาจต้องแก้เส้นทางหลักซ้ำ ผมจึงปรับ SBJ Buddy ให้รองรับวงจรเรียกใช้ Tools ได้เต็มตัว และแยกบทบาทระหว่าง AI ที่เลือกใช้ความสามารถ กับ Buddy ที่จัดเตรียมและคุมความสามารถนั้น

โครงที่ชัดยังทำให้เพิ่ม Tool ที่เหมาะกับงานใหม่ได้ง่ายขึ้น แต่ละตัวพิจารณาได้ว่ามีหน้าที่อะไร ต้องแตะข้อมูลแค่ไหน และควรส่งผลแบบใดกลับมา จึงขยายความสามารถได้โดยไม่ต้องเปิดข้อมูลหรืออำนาจทั้งหมดให้ AI ไปพร้อมกัน

สิ่งที่ผมเริ่มเห็นคือแนวคิด Agent ไม่ได้ลบกติกาที่เราวางไว้ให้ Buddy แต่ทำให้ต้องออกแบบกติกาเหล่านั้นให้ชัดขึ้น เพื่อให้ AI ทำงานได้ยืดหยุ่นภายในขอบเขตข้อมูลที่เหมาะสม