ai-agents-for-beginners

หน่วยความจำสำหรับ AI Agents

Agent Memory

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

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

บทนำ

บทเรียนนี้จะครอบคลุม:

การทำความเข้าใจหน่วยความจำของ AI Agent: หน่วยความจำคืออะไร และทำไมมันถึงสำคัญสำหรับเอเจนต์

การเพิ่มและจัดเก็บหน่วยความจำ: วิธีการปฏิบัติในการเพิ่มความสามารถด้านหน่วยความจำให้กับ AI Agents โดยเน้นที่หน่วยความจำระยะสั้นและระยะยาว

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

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

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

แยกแยะประเภทต่าง ๆ ของหน่วยความจำ AI Agent รวมถึงหน่วยความจำการทำงาน หน่วยความจำระยะสั้นและระยะยาว รวมถึงรูปแบบเฉพาะ เช่น หน่วยความจำบุคลิกภาพและหน่วยความจำแบบตอน

เพิ่มและจัดการหน่วยความจำระยะสั้นและระยะยาวสำหรับ AI Agents โดยใช้เฟรมเวิร์ก Semantic Kernel พร้อมเครื่องมืออย่าง Mem0 และ Whiteboard memory รวมถึงการผสานกับ Azure AI Search

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

การทำความเข้าใจหน่วยความจำของ AI Agent

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

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

ทำไมหน่วยความจำถึงสำคัญ?

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

สะท้อนตัวเอง: เรียนรู้จากการกระทำและผลลัพธ์ในอดีต

โต้ตอบ: รักษาบริบทในระหว่างการสนทนาอย่างต่อเนื่อง

คาดการณ์และตอบสนอง: คาดการณ์ความต้องการหรือตอบสนองอย่างเหมาะสมโดยอิงจากข้อมูลในอดีต

ทำงานอย่างอิสระ: ดำเนินการอย่างอิสระมากขึ้นโดยอาศัยความรู้ที่เก็บไว้

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

ประเภทของหน่วยความจำ

หน่วยความจำการทำงาน

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

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

ตัวอย่างหน่วยความจำการทำงาน

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

หน่วยความจำระยะสั้น

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

ตัวอย่างหน่วยความจำระยะสั้น

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

หน่วยความจำระยะยาว

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

ตัวอย่างหน่วยความจำระยะยาว

หน่วยความจำระยะยาวอาจเก็บข้อมูลว่า “เบ็นชอบเล่นสกีและกิจกรรมกลางแจ้ง ชอบกาแฟพร้อมวิวภูเขา และต้องการหลีกเลี่ยงลานสกีขั้นสูงเนื่องจากอาการบาดเจ็บในอดีต” ข้อมูลนี้ที่เรียนรู้จากการโต้ตอบก่อนหน้า จะมีผลต่อคำแนะนำในเซสชันการวางแผนการเดินทางในอนาคต ทำให้คำแนะนำมีความเฉพาะตัวสูง

หน่วยความจำบุคลิกภาพ

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

ตัวอย่างหน่วยความจำบุคลิกภาพ

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

หน่วยความจำแบบตอน/ลำดับงาน

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

ตัวอย่างหน่วยความจำแบบตอน

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

หน่วยความจำเอนทิตี

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

ตัวอย่างหน่วยความจำเอนทิตี

จากการสนทนาเกี่ยวกับทริปที่ผ่านมา เอเจนต์อาจดึงข้อมูล “ปารีส” “หอไอเฟล” และ “อาหารค่ำที่ร้าน Le Chat Noir” เป็นเอนทิตี ในการโต้ตอบในอนาคต เอเจนต์สามารถจดจำ “Le Chat Noir” และเสนอให้จองโต๊ะใหม่ที่นั่น

RAG แบบมีโครงสร้าง (Retrieval Augmented Generation)

แม้ว่า RAG จะเป็นเทคนิคที่กว้าง แต่ “RAG แบบมีโครงสร้าง” ถูกเน้นว่าเป็นเทคโนโลยีหน่วยความจำที่ทรงพลัง มันดึงข้อมูลที่มีโครงสร้างหนาแน่นจากแหล่งต่าง ๆ (การสนทนา อีเมล รูปภาพ) และใช้เพื่อเพิ่มความแม่นยำ การเรียกคืน และความเร็วในการตอบสนอง แตกต่างจาก RAG แบบคลาสสิกที่อาศัยความคล้ายคลึงทางความหมายเพียงอย่างเดียว RAG แบบมีโครงสร้างทำงานกับโครงสร้างโดยธรรมชาติของข้อมูล

ตัวอย่าง RAG แบบมีโครงสร้าง

แทนที่จะจับคู่คำสำคัญเพียงอย่างเดียว RAG แบบมีโครงสร้างสามารถวิเคราะห์รายละเอียดเที่ยวบิน (ปลายทาง วันที่ เวลา สายการบิน) จากอีเมลและจัดเก็บในรูปแบบที่มีโครงสร้าง สิ่งนี้ช่วยให้สามารถสอบถามที่แม่นยำ เช่น “เที่ยวบินที่ฉันจองไปปารีสในวันอังคารคืออะไร?”

การเพิ่มและจัดเก็บหน่วยความจำ

การเพิ่มหน่วยความจำสำหรับ AI Agents เกี่ยวข้องกับกระบวนการ การจัดการหน่วยความจำ อย่างเป็นระบบ ซึ่งรวมถึงการสร้าง การจัดเก็บ การเรียกคืน การผสาน การอัปเดต และแม้กระทั่ง “การลืม” (หรือการลบ) ข้อมูล การเรียกคืนเป็นแง่มุมที่สำคัญโดยเฉพาะ

เครื่องมือหน่วยความจำเฉพาะทาง

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

มันทำงานผ่าน กระบวนการหน่วยความจำสองขั้นตอน: การดึงข้อมูลและการอัปเดต ขั้นแรก ข้อความที่เพิ่มไปยังเธรดของเอเจนต์จะถูกส่งไปยังบริการ Mem0 ซึ่งใช้ Large Language Model (LLM) เพื่อสรุปประวัติการสนทนาและดึงหน่วยความจำใหม่ จากนั้น ขั้นตอนการอัปเดตที่ขับเคลื่อนด้วย LLM จะกำหนดว่าจะเพิ่ม แก้ไข หรือลบหน่วยความจำเหล่านี้ โดยจัดเก็บไว้ในฐานข้อมูลแบบไฮบริดที่สามารถรวมฐานข้อมูลแบบเวกเตอร์ กราฟ และคีย์-ค่า ระบบนี้ยังรองรับหน่วยความจำประเภทต่าง ๆ และสามารถรวมหน่วยความจำแบบกราฟเพื่อจัดการความสัมพันธ์ระหว่างเอนทิตี

การจัดเก็บหน่วยความจำด้วย RAG

นอกเหนือจากเครื่องมือหน่วยความจำเฉพาะทางอย่าง Mem0 คุณสามารถใช้บริการค้นหาที่แข็งแกร่ง เช่น Azure AI Search เป็นแบ็กเอนด์สำหรับการจัดเก็บและเรียกคืนหน่วยความจำ โดยเฉพาะสำหรับ RAG แบบมีโครงสร้าง

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

Azure AI Search รองรับความสามารถอย่าง RAG แบบมีโครงสร้าง ซึ่งโดดเด่นในการดึงและเรียกคืนข้อมูลที่มีโครงสร้างหนาแน่นจากชุดข้อมูลขนาดใหญ่ เช่น ประวัติการสนทนา อีเมล หรือแม้แต่รูปภาพ สิ่งนี้ให้ “ความแม่นยำและการเรียกคืนระดับเหนือมนุษย์” เมื่อเทียบกับวิธีการแบ่งข้อความและฝังตัวแบบดั้งเดิม

การทำให้ AI Agents พัฒนาตัวเองได้

รูปแบบทั่วไปสำหรับเอเจนต์ที่พัฒนาตัวเองได้คือการแนะนำ “เอเจนต์ความรู้” เอเจนต์แยกนี้จะสังเกตการสนทนาหลักระหว่างผู้ใช้และเอเจนต์หลัก บทบาทของมันคือ:

  1. ระบุข้อมูลที่มีค่า: กำหนดว่ามีส่วนใดของการสนทนาที่ควรบันทึกเป็นความรู้ทั่วไปหรือความชอบเฉพาะผู้ใช้หรือไม่

  2. ดึงและสรุป: สกัดการเรียนรู้หรือความชอบที่สำคัญจากการสนทนา

  3. จัดเก็บในฐานความรู้: บันทึกข้อมูลที่ดึงมาไว้ในฐานข้อมูลเวกเตอร์ เพื่อให้สามารถเรียกคืนได้ในภายหลัง

  4. เพิ่มบริบทให้กับคำถามในอนาคต: เมื่อผู้ใช้เริ่มต้นคำถามใหม่ เอเจนต์ความรู้จะเรียกคืนข้อมูลที่บันทึกไว้ที่เกี่ยวข้องและเพิ่มเข้าไปในคำถามของผู้ใช้ เพื่อให้บริบทสำคัญแก่เอเจนต์หลัก (คล้ายกับ RAG)

การปรับปรุงสำหรับหน่วยความจำ

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

การบำรุงรักษาฐานความรู้: สำหรับฐานความรู้ที่เติบโตขึ้น ข้อมูลที่ใช้น้อยสามารถย้ายไปยัง “พื้นที่จัดเก็บเย็น” เพื่อจัดการต้นทุน

มีคำถามเพิ่มเติมเกี่ยวกับหน่วยความจำของเอเจนต์หรือไม่?

เข้าร่วม Azure AI Foundry Discord เพื่อพบปะกับผู้เรียนคนอื่น ๆ เข้าร่วมชั่วโมงสำนักงาน และรับคำตอบสำหรับคำถามเกี่ยวกับ AI Agents ของคุณ


ข้อจำกัดความรับผิดชอบ:
เอกสารนี้ได้รับการแปลโดยใช้บริการแปลภาษา AI Co-op Translator แม้ว่าเราจะพยายามให้การแปลมีความถูกต้อง แต่โปรดทราบว่าการแปลอัตโนมัติอาจมีข้อผิดพลาดหรือความไม่ถูกต้อง เอกสารต้นฉบับในภาษาต้นทางควรถือเป็นแหล่งข้อมูลที่เชื่อถือได้ สำหรับข้อมูลที่สำคัญ แนะนำให้ใช้บริการแปลภาษามนุษย์ที่เป็นมืออาชีพ เราจะไม่รับผิดชอบต่อความเข้าใจผิดหรือการตีความผิดพลาดที่เกิดจากการใช้การแปลนี้