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

หน่วยความจำของเอเจนต์ AI คือระบบที่เก็บ, จัดระเบียบ, และดึงข้อมูลที่เอเจนต์อาจต้องการนอกเหนือจากการตอบสนองของโมเดลในทันที มันสามารถเก็บสถานะงานที่กำลังทำอยู่, ประสบการณ์ที่ผ่านมา, ข้อเท็จจริง, ความชอบ, และขั้นตอนที่เรียนรู้, แต่ไม่ได้เป็นฐานข้อมูลเดียวและไม่ใช่สิ่งเดียวกับหน้าต่างบริบทของโมเดล
หน่วยความจำช่วยให้เอเจนต์คงความต่อเนื่องตลอดงานที่ยาวและการโต้ตอบที่ทำซ้ำได้ มันอาจทำให้เกิดข้อมูลล้าสมัย, ความเสี่ยงด้านความเป็นส่วนตัว, และการดึงข้อมูลที่ทำให้เข้าใจผิด คำถามการออกแบบที่สำคัญไม่ได้คือ “เอเจนต์จะจำทุกอย่างได้อย่างไร?” แต่คือ “เอเจนต์ควรจำอะไร, จำเป็นนานแค่ไหน, และภายใต้การอนุญาตใด?”
บริบทไม่ใช่หน่วยความจำ
หน้าต่างบริบทของโมเดล context window คือข้อมูลที่มีให้ในระหว่างการสรุปผลเฉพาะครั้งหนึ่ง: คำสั่ง, ข้อความ, ผลลัพธ์ของเครื่องมือ, เอกสารที่ดึงมา, และข้อมูลนำเข้าอื่น ๆ มันทำงานคล้ายกับพื้นที่ทำงานชั่วคราว
Memory คือกลไกที่กว้างขึ้นที่กำหนดว่าข้อมูลใดจะคงอยู่และวิธีที่บันทึกที่เลือกกลับไปยังพื้นที่ทำงานนั้น ฐานข้อมูลที่เต็มไปด้วยการสนทนาเป็นการจัดเก็บ; มันจะกลายเป็นหน่วยความจำที่มีประโยชน์เฉพาะเมื่อระบบสามารถดึงข้อมูลที่ถูกต้องในเวลาที่เหมาะสมและแสดงความน่าเชื่อถือของมัน
ความแตกต่างนี้สำคัญเพราะหน้าต่างบริบทขนาดใหญ่ไม่ได้แก้ปัญหาการจัดการหน่วยความจำ การเติมข้อความสั่งงานด้วยเหตุการณ์ทั้งหมดที่เกิดขึ้นก่อนหน้านี้ทำให้ค่าใช้จ่ายเพิ่มขึ้นและอาจทำให้โมเดลสับสนด้วยรายละเอียดที่ไม่เกี่ยวข้องหรือขัดแย้ง
ประเภทหลักของหน่วยความจำเอเจนต์
ระบบการผลิตอาจดำเนินการทั้งหมดสี่ประเภทโดยผสมผสานสถานะการสนทนา, ฐานข้อมูลโครงสร้าง, การค้นหาเวกเตอร์, บันทึกเหตุการณ์, และคำสั่งที่มีเวอร์ชัน การจัดประเภทนี้อธิบายบทบาทของข้อมูล ไม่ใช่ผลิตภัณฑ์ฐานข้อมูลที่เก็บข้อมูลนั้น ความชอบของลูกค้าเป็นหน่วยความจำเชิงความหมายไม่ว่าอยูในตารางเชิงสัมพันธ์หรือดัชนีเวกเตอร์
หน่วยความจำทำงานหรือระยะสั้น
หน่วยความจำทำงานเก็บสถานะที่กำลังทำของงานปัจจุบัน: เป้าหมาย, แผนปัจจุบัน, การสังเกตล่าสุด, คำถามที่เปิดอยู่, ผลลัพธ์ของเครื่องมือ, และขั้นตอนที่เสร็จสมบูรณ์ มักจะถูกเก็บบางส่วนในบทสนทนาและบางส่วนในอ็อบเจกต์สถานะที่มีโครงสร้าง
เนื่องจากบริบททำงานมีข้อจำกัด เอเจนต์ที่ทำงานระยะยาวอาจสรุปเหตุการณ์เก่า, เก็บตัวแปรสำคัญแยกต่างหาก, หรือโหลดเฉพาะส่วนที่เกี่ยวข้องต่อไปของงาน
หน่วยความจำแบบเหตุการณ์
หน่วยความจำแบบเหตุการณ์บันทึกประสบการณ์เป็นเหตุการณ์: สิ่งที่เกิดขึ้น, เวลา, สถานการณ์, การกระทำที่ทำ, และผลลัพธ์ เอเจนต์อาจจำได้ว่าการปรับใช้หนึ่งล้มเหลวหลังจากการเปลี่ยนแปลงการกำหนดค่า หรือผู้ใช้ปฏิเสธคำแนะนำด้วยเหตุผลที่ระบุไว้
บันทึกแบบเหตุการณ์สามารถสนับสนุนการให้เหตุผลแบบกรณีศึกษา—การค้นหาสถานการณ์ในอดีตที่คล้ายกับปัจจุบัน จำเป็นต้องมีการอ้างอิงอย่างระมัดระวังเนื่องจากผลลัพธ์ก่อนหน้าอาจขึ้นอยู่กับเงื่อนไขที่ไม่เป็นไปอีกต่อไป
หน่วยความจำเชิงความหมาย
หน่วยความจำเชิงความหมายแสดงข้อเท็จจริงและแนวคิดโดยไม่อิงกับเหตุการณ์เดียว ตัวอย่างได้แก่ ภาษาที่ลูกค้าชื่นชอบ, คำจำกัดความของเมตริกภายใน, หรือความสัมพันธ์ระหว่างผลิตภัณฑ์
หน่วยความจำเชิงความหมายอาจอยู่ในเอกสาร, ดัชนีเวกเตอร์, ฐานข้อมูลเชิงสัมพันธ์, หรือกราฟความรู้ ข้อเท็จจริงสำคัญควรมีที่มาของข้อมูล, เวลา, และความเป็นเจ้าของเพื่อให้เอเจนต์แยกแยะบันทึกที่มีอำนาจจากสรุปที่สร้างโดยโมเดล
หน่วยความจำเชิงกระบวนการ
หน่วยความจำเชิงกระบวนการจับวิธีการทำงาน: กระบวนการทำงาน, กฎการเลือกเครื่องมือ, รายการตรวจสอบ, แผนที่ประสบความสำเร็จ, หรือทักษะที่นำกลับมาใช้ได้ ในระบบปัจจุบัน สิ่งนี้มักปรากฏเป็นคำสั่งที่มีเวอร์ชัน, โค้ด, หรือเทมเพลตที่ทดสอบแล้ว แทนที่โมเดลจะเปลี่ยนแปลงตัวเองโดยเงียบ
การแยกการอัปเดตเชิงกระบวนการออกจากการสนทนาปกติเป็นคุณสมบัติด้านความปลอดภัย การโต้ตอบที่แปลกประหลาดเพียงครั้งเดียวไม่ควรเขียนทับกฎการทำงานของเอเจนต์โดยอัตโนมัติ
วิธีที่เอเจนต์จำสิ่งใดสิ่งหนึ่ง
| หน่วยความจำทำงาน | บริบทชั่วคราวที่ใช้ระหว่างงานปัจจุบัน |
|---|---|
| หน่วยความจำเหตุการณ์ | บันทึกเหตุการณ์ที่เลือกและการโต้ตอบก่อนหน้า |
| หน่วยความจำเชิงความหมาย | ข้อเท็จจริงหรือแนวคิดทั่วไปที่สรุปจากประสบการณ์ |
| การลืม | การลบหรือการสลายที่จำกัดสถานะที่ล้าสมัย, มีความอ่อนไหว, หรือมีคุณค่าน้อย |
กระบวนการหน่วยความจำเชิงปฏิบัติมีสี่ขั้นตอน
- จับข้อมูล: สังเกตข้อความ, การกระทำ, ผลลัพธ์ หรือการเปลี่ยนแปลงของสภาพแวดล้อม
- คัดเลือกและเข้ารหัส: ตัดสินใจว่าข้อมูลควรเก็บหรือไม่และแปลงเป็นบันทึกพร้อมเมตาดาต้า
- จัดเก็บ: ใส่บันทึกลงในระบบที่เหมาะสมพร้อมการควบคุมการเข้าถึงและนโยบายการเก็บรักษา
- เรียกคืน: เมื่อมีงานใหม่เข้ามา ค้นหาบันทึกที่เกี่ยวข้อง จัดอันดับ และใส่ส่วนที่สำคัญลงในบริบท
บางระบบเพิ่มขั้นตอนการรวมข้อมูล: รวมการสังเกตซ้ำ, แก้ไขข้อมูลซ้ำซ้อน, หรือแปลงเหตุการณ์เป็นข้อเท็จจริงที่คงทน กระบวนการนี้ไม่ควรลบแหล่งที่มาหรือความไม่แน่นอน
วิธีการเรียกคืนทำงานอย่างไร
การค้นหาความคล้ายกันแบบเวกเตอร์เป็นที่นิยมเพราะสามารถค้นหาบันทึกที่เกี่ยวข้องเชิงความหมายได้แม้คำพูดจะแตกต่างกัน อย่างไรก็ตามความคล้ายกันอย่างเดียวไม่พอ ความชอบที่อายุหกเดือนอาจเกี่ยวข้องกับหัวข้อแต่ไม่เป็นที่ใช้ได้แล้ว
การเรียกคืนที่แข็งแกร่งสามารถรวมสัญญาณหลายอย่างได้:
- ความเกี่ยวข้องเชิงความหมาย: ความใกล้เคียงของบันทึกกับงานปัจจุบัน;
- ความใหม่: ว่าข้อมูลใหม่ควรให้ความสำคัญมากกว่า;
- ความสำคัญ: บันทึกมีผลต่อการตัดสินใจหรือข้อจำกัดสำคัญหรือไม่;
- อำนาจ: มาจากระบบที่เชื่อถือได้, ผู้ใช้, หรือการสรุปของโมเดลหรือไม่;
- ขอบเขต: ตัวแทนและผู้ใช้ปัจจุบันได้รับอนุญาตให้เข้าถึงหรือไม่;
- ความหลากหลาย: ความทรงจำที่เลือกเพิ่มข้อมูลที่แตกต่างแทนการทำซ้ำจุดเดียว
สถาปัตยกรรมหน่วยความจำที่มีอิทธิพล
งานวิจัย Generative Agents ได้นำเสนอสถาปัตยกรรมที่ตัวแทนเก็บการสังเกต, เรียกคืนความทรงจำตามความเกี่ยวข้อง, ความใหม่, และความสำคัญ, และสร้างการสะท้อนระดับสูงเพื่อกำหนดการวางแผน ซึ่งแสดงให้เห็นว่าหน่วยความจำสามารถสร้างความต่อเนื่องในพฤติกรรมจำลองได้
MemGPT ใช้วิธีการจัดการบริบทที่จำกัดโดยอ้างอิงแนวคิดระบบปฏิบัติการ, ใช้ชั้นของหน่วยความจำและการเคลื่อนย้ายอย่างชัดเจนระหว่างบริบททำงานขนาดเล็กและที่เก็บข้อมูลภายนอกขนาดใหญ่ บทเรียนที่กว้างขึ้นคือบริบทควรได้รับการจัดการเป็นทรัพยากรที่มีจำกัด
แนวคิดเหล่านี้มีอิทธิพลต่อตัวแทนสมัยใหม่, แต่หน่วยความจำในระบบผลิตมักใช้ส่วนประกอบที่ง่ายกว่า: สถานะงานที่มีโครงสร้าง, บันทึกเหตุการณ์, ที่เก็บเวกเตอร์, และการตั้งค่าความชอบของผู้ใช้ ความซับซ้อนควรตามมาจากความต้องการที่พิสูจน์ได้
หน่วยความจำ vs. การสร้างด้วยการเรียกคืนเสริม (RAG)
การสร้างด้วยการเรียกคืนเสริม (RAG) นำข้อมูลภายนอกเข้าสู่บริบทของโมเดล หน่วยความจำของตัวแทนสามารถใช้เทคนิคการเรียกคืนเดียวกันได้, แต่แหล่งที่มาและวงจรชีวิตจะแตกต่างกัน
ระบบ RAG อาจเรียกคืนจากฐานความรู้ที่คัดสรรซึ่งอยู่แยกจากตัวแทน ส่วนระบบหน่วยความจำมักรวมบันทึกที่สร้างจากการโต้ตอบของตัวแทนเองและต้องตัดสินใจว่าจะเขียนอะไรบ้างเช่นเดียวกับการอ่าน ขอบเขตอาจเบลอ, แต่หน่วยความจำเพิ่มการปรับให้เป็นส่วนบุคคล, การเก็บรักษา, และความเสี่ยงจากข้อมูลที่สร้างโดยตัวเองซึ่งการเรียกคืนเอกสารทั่วไปอาจไม่มี
ความล้มเหลวทั่วไปของหน่วยความจำ
ความขัดแย้งเป็นสิ่งที่หลีกเลี่ยงไม่ได้ ผู้ใช้อาจเปลี่ยนการตั้งค่า ระบบสองระบบอาจไม่ตรงกันเกี่ยวกับบัญชีหนึ่ง หรือสรุปอาจละเว้นข้อยกเว้นสำคัญ การจัดเก็บหน่วยความจำที่เชื่อถือได้จะบันทึกเวลาที่บันทึกและแหล่งที่มา กำหนดว่าระบบใดเป็นผู้มีอำนาจสูงสุด และแสดงความขัดแย้งที่ยังไม่ได้แก้ไขแทนการเลือกบันทึกที่อยู่บนสุดโดยอัตโนมัติ
- หน่วยความจำล้าสมัย: ข้อเท็จจริงเก่ากลับมาลำดับเหนือค่าที่บันทึกในระบบล่าสุด
- หน่วยความจำเท็จ: การสรุปที่สร้างโดยโมเดลถูกบันทึกไว้เหมือนเป็นข้อมูลที่ได้รับการยืนยัน
- สัญญาณรบกวนในการดึงข้อมูล: บันทึกที่คล้ายกันแต่ไม่มีความเกี่ยวข้องทำให้โมเดลเสียสมาธิ
- การปรับให้เป็นส่วนตัวเกินไป: ระบบนำการตั้งค่าไปใช้ในบริบทที่ไม่ได้รับการกำหนดไว้
- การรั่วไหลระหว่างผู้ใช้: บันทึกจากบุคคลหรือผู้เช่ารายหนึ่งปรากฏในบริบทของอีกคนหนึ่ง
- การปนเปื้อน: เนื้อหาที่เป็นอันตรายถูกบันทึกเพื่อให้สามารถควบคุมพฤติกรรมของเอเจนต์ในภายหลังได้
- การเก็บรักษาโดยไม่มีขอบเขต: ข้อมูลที่ละเอียดอ่อนคงอยู่โดยไม่มีวัตถุประสงค์หรือเส้นทางการลบที่ชัดเจน
การออกแบบหน่วยความจำอย่างรับผิดชอบ
เริ่มต้นด้วยการกำหนดประเภทอย่างชัดเจน แยกแยะข้อเท็จจริงที่เป็นอำนาจสูงสุด การตั้งค่าที่ผู้ใช้ให้ไว้ สรุปของโมเดล และบันทึกการโต้ตอบดิบ เก็บข้อมูลแหล่งที่มาและเวลาที่บันทึก ให้ข้อเท็จจริงที่มีผลกระทบสูงมีกฎการหมดอายุหรือกำหนดให้ต้องยืนยันเมื่อหลักฐานขัดแย้งกัน
ผู้ใช้ควรสามารถดู แก้ไข และลบหน่วยความจำส่วนบุคคลที่คงทนได้เมื่อเหมาะสม การควบคุมการเข้าถึงต้องใช้ทั้งในขั้นตอนการจัดเก็บและการดึงข้อมูล บันทึกที่อยู่ในฐานข้อมูลไม่ได้หมายความว่าจะสามารถใช้ได้โดยอัตโนมัติสำหรับทุกเอเจนต์ งาน หรือผู้ใช้
ประเมินหน่วยความจำในฐานะระบบ ทดสอบว่าเอเจนต์ดึงบันทึกที่เป็นประโยชน์หรือไม่ เพิกเฉยต่อบันทึกที่ไม่เกี่ยวข้อง เคารพข้อเท็จจริงที่อัปเดต ทนต่อการปนเปื้อน และทำงานอย่างถูกต้องเมื่อไม่มีหน่วยความจำใด ๆ วัดการปรับปรุงเทียบกับความล่าช้า ค่าใช้จ่าย และการเปิดเผยข้อมูลส่วนบุคคลที่เพิ่มขึ้น
หน่วยความจำหมายถึงว่าเอเจนต์เรียนรู้หรือไม่?
โดยทั่วไปแล้วไม่มีการเปลี่ยนแปลงน้ำหนักของโมเดล หน่วยความจำของเอเจนต์ส่วนใหญ่เป็นข้อมูลภายนอกที่ดึงเข้ามาในบริบทของโมเดลขณะทำงาน ซึ่งอาจเปลี่ยนแปลงพฤติกรรมอย่างมาก แต่ต่างจากการฝึกหรือการปรับจูนโมเดลพื้นฐาน การแยกแยะให้ชัดเจนช่วยให้ทีมเข้าใจเรื่องการย้อนกลับได้ง่ายขึ้น: บันทึกภายนอกสามารถแก้ไขหรือลบได้โดยไม่ต้องฝึกโมเดลใหม่
ไม่จำเป็นต้องเป็นเช่นนั้นเสมอไป หน่วยความจำของเอเจนต์ส่วนใหญ่เปลี่ยนแปลงข้อมูลที่ส่งให้โมเดลคงที่; มันไม่ได้อัปเดตพารามิเตอร์ของโมเดล ระบบอาจทำงานแตกต่างกันเพราะบริบทเปลี่ยนแปลง ซึ่งอาจดูคล้ายการเรียนรู้โดยไม่แก้ไขเครือข่ายประสาทเทียมพื้นฐาน
การแยกแยะนี้มีประโยชน์ หน่วยความจำภายนอกสามารถตรวจสอบ แก้ไข ปกครอง และลบได้ง่ายกว่าความรู้ที่ฝังอยู่ผ่านการฝึก
สิ่งที่ควรจำเกี่ยวกับหน่วยความจำของเอเจนต์ AI
หน่วยความจำของเอเจนต์ AI คือสถาปัตยกรรมการดึงข้อมูลและการกำกับดูแลรอบโมเดล หน่วยความจำทำงาน (working memory) รักษางานปัจจุบัน; หน่วยความจำเหตุการณ์ (episodic memory) บันทึกประสบการณ์; หน่วยความจำเชิงความหมาย (semantic memory) เก็บข้อเท็จจริง; และหน่วยความจำเชิงกระบวนการ (procedural memory) เข้ารหัสวิธีการทำงานที่นำกลับมาใช้ได้
ระบบหน่วยความจำที่ดีที่สุดคือระบบที่คัดเลือกได้ มีที่มาชัดเจน ตระหนักถึงสิทธิ์การเข้าถึง และแก้ไขได้ง่าย การจำมากขึ้นไม่ใช่วัตถุประสงค์ แต่การช่วยเอเจนต์นำหลักฐานที่ถูกต้องมาสู่การตัดสินใจที่ถูกต้อง—โดยไม่ละเมิดความไว้วางใจ—คือเป้าหมาย












