ai-agents-for-beginners

การออกแบบหลายเอเจนต์

(คลิกที่ภาพด้านบนเพื่อดูวิดีโอของบทเรียนนี้)

รูปแบบการออกแบบหลายเอเจนต์

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

บทนำ

ในบทเรียนนี้ เราต้องการตอบคำถามต่อไปนี้:

เป้าหมายการเรียนรู้

หลังจากบทเรียนนี้ คุณควรจะสามารถ:

ภาพรวมที่ใหญ่กว่าคืออะไร?

หลายเอเจนต์เป็นรูปแบบการออกแบบที่อนุญาตให้เอเจนต์หลายตัวทำงานร่วมกันเพื่อบรรลุเป้าหมายร่วมกัน

รูปแบบนี้ถูกใช้อย่างแพร่หลายในหลายสาขา รวมถึงหุ่นยนต์ ระบบอัตโนมัติ และการประมวลผลแบบกระจาย

สถานการณ์ที่เหมาะกับการใช้หลายเอเจนต์

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

ข้อดีของการใช้หลายเอเจนต์เหนือเอเจนต์เดี่ยว

ระบบที่ใช้เอเจนต์เดียวนั้นอาจทำงานได้ดีสำหรับงานง่าย ๆ แต่สำหรับงานที่ซับซ้อนมากขึ้น การใช้เอเจนต์หลายตัวสามารถให้ข้อดีหลายอย่าง:

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

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

ส่วนประกอบพื้นฐานของการใช้งานรูปแบบการออกแบบหลายเอเจนต์

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

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

การมองเห็นการโต้ตอบแบบหลายเอเจนต์

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

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

มาดูแต่ละแง่มุมเหล่านี้อย่างละเอียดมากขึ้น

รูปแบบหลายเอเจนต์

มาดำดิ่งสู่รูปแบบที่เป็นรูปธรรมบางอย่างที่เราสามารถใช้สร้างแอปหลายเอเจนต์ นี่คือรูปแบบที่น่าสนใจที่ควรพิจารณา:

แชทกลุ่ม

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

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

รูปแบบนี้สามารถใช้งานโดยใช้สถาปัตยกรรมแบบรวมศูนย์ที่ข้อความทั้งหมดถูกส่งผ่านเซิร์ฟเวอร์กลาง หรือสถาปัตยกรรมแบบกระจายศูนย์ที่ข้อความแลกเปลี่ยนกันโดยตรง

Group chat

การส่งงาน (Hand-off)

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

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

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

Hand off

การกรองร่วมกัน (Collaborative filtering)

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

เหตุผลที่คุณต้องการให้เอเจนต์หลายตัวร่วมมือกันคือแต่ละเอเจนต์อาจมีความเชี่ยวชาญที่แตกต่างกันและสามารถมีส่วนร่วมในกระบวนการให้คำแนะนำในวิธีที่แตกต่างกัน

สมมติว่าผู้ใช้ต้องการคำแนะนำเกี่ยวกับหุ้นที่ดีที่สุดที่จะซื้อในตลาดหุ้น

Recommendation

สถานการณ์: กระบวนการคืนเงิน

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

เอเจนต์เฉพาะสำหรับกระบวนการคืนเงิน:

ต่อไปนี้คือเอเจนต์บางตัวที่อาจเกี่ยวข้องในกระบวนการคืนเงิน:

เอเจนต์ทั่วไป:

เอเจนต์เหล่านี้สามารถใช้โดยส่วนอื่น ๆ ของธุรกิจคุณ

มีเอเจนต์ค่อนข้างมากที่กล่าวถึงทั้งสำหรับกระบวนการคืนเงินเฉพาะและเอเจนต์ทั่วไปที่สามารถใช้ในส่วนอื่น ๆ ของธุรกิจของคุณ หวังว่าสิ่งนี้จะให้แนวคิดเกี่ยวกับวิธีที่คุณจะตัดสินใจว่าเอเจนต์ใดควรใช้ในระบบหลายเอเจนต์ของคุณ

การมอบหมายงาน

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

คิดสักครู่ก่อนอ่านวิธีแก้ด้านล่าง เพราะคุณอาจต้องการเอเจนต์มากกว่าที่คิด. เคล็ดลับ: คิดถึงขั้นตอนต่างๆ ของกระบวนการสนับสนุนลูกค้า และพิจารณาเอเจนต์ที่จำเป็นสำหรับระบบใดๆ ด้วย.

แนวทางแก้ปัญหา

แนวทางแกปัญหา

แบบทดสอบความรู้

คำถาม: ควรพิจารณาใช้หลายเอเจนต์เมื่อใด?

แบบทดสอบแนวทางแก้

สรุป

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

มีคำถามเพิ่มเติมเกี่ยวกับรูปแบบการออกแบบแบบหลายเอเจนต์ไหม?

เข้าร่วม the Microsoft Foundry Discord เพื่อพบกับผู้เรียนคนอื่นๆ เข้าร่วมชั่วโมงทำงาน และให้คำถามเกี่ยวกับเอเจนต์ AI ของคุณได้รับคำตอบ.

แหล่งข้อมูลเพิ่มเติม

บทก่อนหน้า

การวางแผนการออกแบบ

บทถัดไป

เมตาคอกนิชันในเอเจนต์ AI


ข้อจำกัดความรับผิด: เอกสารฉบับนี้ได้รับการแปลโดยใช้บริการแปลด้วย AI [Co-op Translator] (https://github.com/Azure/co-op-translator) แม้ว่าเราจะพยายามให้เกิดความถูกต้อง แต่โปรดทราบว่าการแปลอัตโนมัติอาจมีข้อผิดพลาดหรือความคลาดเคลื่อนได้ เอกสารต้นฉบับในภาษาต้นทางควรถูกพิจารณาเป็นแหล่งข้อมูลหลัก หากเป็นข้อมูลที่มีความสำคัญสูง ขอแนะนำให้ใช้บริการแปลโดยนักแปลมนุษย์มืออาชีพ เราจะไม่รับผิดชอบต่อความเข้าใจผิดหรือการตีความที่ผิดพลาดใดๆ ที่เกิดจากการใช้การแปลฉบับนี้