พื้นฐาน AI
หน่วยความจำขณะทำงานเทียบกับหน่วยความจำถาวรใน AI: AI จดจำ เรียกคืน และลืมได้อย่างไร

หน่วยความจำขณะทำงานคือข้อมูลที่ระบบ AI นำมาใช้ได้สำหรับงานที่กำลังทำอยู่ในขณะนั้น ส่วนหน่วยความจำถาวรคือข้อมูลที่แอปพลิเคชันเก็บรักษาไว้เพื่อนำกลับมาใช้ได้อีกในภายหลัง ความสัมพันธ์ระหว่างหน่วยความจำทั้งสองประเภทนี้เป็นตัวกำหนดว่าผู้ช่วย AI จะทำงานต่อจากโครงการเดิม นำความชอบของผู้ใช้ไปใช้ แก้ไขข้อสันนิษฐานที่ล้าสมัย หรือหยุดหยิบยกเรื่องที่ควรลืมไปแล้วขึ้นมาอีกได้หรือไม่
ลองนึกถึงผู้ช่วย AI ที่ช่วยคุณจัดทำรายงานวิจัย ระหว่างการสนทนาครั้งหนึ่ง ผู้ช่วยสามารถอ้างอิงโครงร่าง ข้อแก้ไขล่าสุดของคุณ และแหล่งข้อมูลที่คุณเพิ่งส่งให้ได้ แต่หากเปิดการสนทนาใหม่อีกครั้งในอีกหนึ่งสัปดาห์ ความต่อเนื่องนั้นจะขึ้นอยู่กับกลไกอีกแบบหนึ่ง นั่นคือแอปพลิเคชันได้บันทึกข้อมูลที่เกี่ยวข้องไว้หรือไม่ ค้นหาข้อมูลนั้นพบหรือไม่ และส่งข้อมูลดังกล่าวให้โมเดลอีกครั้งหรือไม่
นี่จึงเป็นเหตุผลที่ AI อาจดูเหมือนจดจำรายละเอียดหนึ่งได้ แต่กลับลืมอีกเรื่องจากการสนทนาเดียวกัน การจดจำเป็นกระบวนการที่ประกอบด้วยหลายขั้นตอน ความผิดพลาดอาจเกิดขึ้นได้ตั้งแต่ตอนเก็บข้อมูล จัดเก็บ ค้นหา เลือก ตีความ หรือปรับปรุงข้อมูล
คู่มือนี้จะพิจารณากระบวนการดังกล่าวอย่างละเอียด หากต้องการดูการจัดประเภทความจำในภาพรวม ทั้งความจำแบบเหตุการณ์ ความจำเชิงความหมาย และความจำเชิงกระบวนการ โปรดอ่านบทนำเกี่ยวกับประเภทของหน่วยความจำในเอเจนต์ AI ส่วนบทความนี้มุ่งเน้นเส้นแบ่งระหว่างสิ่งที่กำลังใช้งานอยู่ในขณะนี้กับสิ่งที่คงอยู่ต่อไปได้หลังจบงานปัจจุบัน
หน่วยความจำขณะทำงานและหน่วยความจำถาวรหมายถึงอะไรอย่างแท้จริง
คำเหล่านี้ใช้อธิบายความแตกต่างด้านสถาปัตยกรรมที่เป็นประโยชน์ แต่ไม่ได้เป็นคู่คำที่มีนิยามมาตรฐานเดียวกันในทุกแห่ง ส่วนติดต่อผลิตภัณฑ์และงานวิจัยใช้คำว่า “หน่วยความจำใช้งาน” “หน่วยความจำระยะสั้น” “บริบท” “สถานะ” และ “หน่วยความจำระยะยาว” ในความหมายที่ทับซ้อนกัน ดังนั้น การอธิบายให้ชัดเจนจึงต้องเริ่มจากการกำหนดความหมายของคำที่ใช้
ในบทความนี้ บริบทที่ใช้งานอยู่ หมายถึงข้อมูลที่ป้อนให้โมเดลเพื่อสร้างคำตอบในขณะนั้น ได้แก่ คำสั่ง ข้อความ ผลลัพธ์จากเครื่องมือที่เลือกไว้ เนื้อหาที่เรียกค้นมา และข้อมูลป้อนเข้าอื่น ๆ ที่โมเดลประมวลผลได้ ส่วนสถานะงานที่กำลังดำเนินอยู่มีขอบเขตกว้างกว่า โดยอาจรวมถึงแผน รายการตรวจสอบ หรือตัวแปรที่แอปพลิเคชันเก็บรักษาไว้ แต่ยังไม่ได้ใส่เข้าไปในบริบทของโมเดล เราใช้คำว่า “หน่วยความจำขณะทำงาน” เป็นคำรวมในทางปฏิบัติสำหรับชุดข้อมูลที่กำลังใช้งานนี้ และจะแยกความแตกต่างระหว่างสองสิ่งดังกล่าวเมื่อจำเป็น
หน่วยความจำถาวรหมายถึงข้อมูลที่เก็บรักษาไว้และยังคงอยู่หลังจากจบการตอบกลับหรือสิ้นสุดเซสชัน ทำให้สามารถนำกลับมาใช้ในภายหลังได้ ข้อมูลนั้นอาจเป็นความชอบที่บันทึกไว้ บันทึกโครงการ รายการเหตุการณ์ ช่องข้อมูลที่มีโครงสร้างในฐานข้อมูล หรือจุดตรวจสอบที่ช่วยให้ทำงานที่ยังไม่เสร็จต่อได้ การคงอยู่หมายถึงการเก็บรักษาข้อมูลไว้ แต่ไม่ได้รับประกันว่าข้อมูลนั้นจะถูกแชร์ไปยังการสนทนาทุกครั้ง
ดังนั้นจึงมีคำถามแยกกันอยู่สองข้อ ได้แก่ ข้อมูลนั้นยังคงมีอยู่หรือไม่? และ โมเดลจะได้รับข้อมูลนั้นเมื่อจำเป็นต้องใช้หรือไม่? การบันทึกบทถอดเสียงการสนทนาไว้ตอบคำถามข้อแรกได้ แต่ไม่ได้ช่วยแก้ปัญหาของคำถามข้อที่สอง
ข้อยกเว้นสำคัญ: สถานะระยะสั้นสามารถบันทึกไว้ได้
คำว่า “ระยะสั้น” ไม่ได้หมายความว่า “จัดเก็บไว้เฉพาะใน RAM ที่ข้อมูลจะหายไปเมื่อปิดเครื่อง” เสมอไป สถานะการทำงานระหว่างการสนทนาสามารถบันทึกเป็นจุดตรวจสอบลงในฐานข้อมูล แล้วเรียกคืนมาทำงานต่อหลังเกิดการหยุดชะงักได้ ตัวอย่างเช่น เอกสารเกี่ยวกับหน่วยความจำของ LangChain แยกสถานะที่ผูกกับเธรดและเก็บรักษาไว้ผ่านจุดตรวจสอบ ออกจากหน่วยความจำระยะยาวที่จัดเป็นเนมสเปซแยกต่างหาก
ลองนึกถึงเจ้าหน้าที่ฝ่ายสนับสนุนที่หยุดดำเนินการชั่วคราวระหว่างรอลูกค้าอัปโหลดใบเสร็จ จุดตรวจสอบที่บันทึกไว้จะผูกกับเคสฝ่ายสนับสนุนนั้น แม้จุดตรวจสอบจะคงอยู่ถาวร แต่ก็ไม่ควรถูกนำไปใช้เป็นข้อเท็จจริงทั่วไปเกี่ยวกับลูกค้าโดยอัตโนมัติ หรือปรากฏในคำขออื่นที่ไม่เกี่ยวข้อง
วิธีที่เป็นประโยชน์ในการประเมินฟีเจอร์หน่วยความจำใด ๆ คือพิจารณาสามมิติ ได้แก่ ระยะเวลาที่ข้อมูลคงอยู่ ขอบเขตการใช้งาน และ ความพร้อมให้โมเดลใช้ในการเรียกใช้งานครั้งปัจจุบัน คำเรียกอย่าง “ระยะยาว” ไม่ได้ตอบคำถามเหล่านี้ได้ครบถ้วน
เปรียบเทียบหน่วยความจำขณะทำงานกับหน่วยความจำถาวรโดยสังเขป
| คำถาม | หน่วยความจำขณะทำงาน | หน่วยความจำถาวร |
|---|---|---|
| มีหน้าที่อะไร | รักษาสถานะของงานปัจจุบันและหลักฐานประกอบ | เก็บรักษาข้อมูลที่เลือกไว้เพื่อใช้ในภายหลัง |
| อาจจัดเก็บไว้ที่ใด | บริบทของโมเดลและสถานะงานของแอปพลิเคชัน | ไฟล์ ฐานข้อมูล จุดตรวจสอบ บันทึก หรือดัชนี |
| โมเดลนำไปใช้โดยอัตโนมัติหรือไม่ | มีเพียงข้อมูลที่ป้อนให้โมเดลจริงเท่านั้นที่ส่งผลโดยตรงต่อคำตอบนั้นได้ | เฉพาะเมื่อแอปพลิเคชันโหลดข้อมูลนั้นเข้าสู่บริบท หรือเปิดให้เข้าถึงผ่านเครื่องมือ |
| มีข้อจำกัดอะไรบ้าง | ความจุของบริบท ความเกี่ยวข้อง ต้นทุนในการประมวลผล และการใส่ใจหลักฐาน | พื้นที่จัดเก็บ คุณภาพการเรียกคืนข้อมูล สิทธิ์การเข้าถึง นโยบายการเก็บรักษา และคุณภาพของการอัปเดต |
| เกิดข้อผิดพลาดอย่างไร | รายละเอียดสำคัญอาจถูกละไว้ บีบอัดอย่างไม่เหมาะสม หรือมองข้ามไป | ข้อมูลบันทึกอาจขาดหาย ล้าสมัย ระบุแหล่งที่มาผิด เข้าถึงไม่ได้ หรือถูกเรียกคืนอย่างไม่ถูกต้อง |
| การลืมหมายถึงอะไร | ข้อมูลหลุดออกจากชุดข้อมูลที่กำลังใช้งานอยู่ | ข้อมูลถูกระงับ แทนที่ หมดอายุ หรือลบตามนโยบาย |
ข้อเท็จจริงเดียวกันอาจปรากฏอยู่ในทั้งสองคอลัมน์ ค่ากำหนดของโครงการที่บันทึกไว้ถือเป็นข้อมูลถาวร ส่วนสำเนาที่ใส่ไว้ในพรอมต์ของวันนี้ถือเป็นข้อมูลที่กำลังใช้งาน การนำสำเนานั้นออกจากพรอมต์ไม่ได้หมายความว่าข้อมูลต้นฉบับที่บันทึกไว้จะถูกลบไปด้วยเสมอ
เกิดอะไรขึ้นระหว่างที่ AI สร้างคำตอบหนึ่งครั้ง
ในแอปพลิเคชันที่ใช้โมเดลภาษาโดยทั่วไป ซอฟต์แวร์ที่ทำงานร่วมกันจะรวบรวมข้อมูลนำเข้า โมเดลสร้างผลลัพธ์ แล้วซอฟต์แวร์จะตัดสินใจว่าจะดำเนินการต่ออย่างไร ข้อมูลนำเข้าอาจมีบทสนทนาที่ผู้ใช้มองเห็น แต่ยังอาจรวมถึงคำสั่งของระบบ คำอธิบายเครื่องมือ บันทึกที่เรียกคืนมา และข้อมูลที่ผู้ใช้ไม่เห็นในบันทึกการสนทนาด้วย
บริบทที่รวบรวมขึ้นนี้เป็นหลักฐานเฉพาะหน้าที่โมเดลใช้ หากไม่มีข้อความก่อนหน้าอยู่ในบริบทแล้ว โมเดลก็ไม่อาจเรียกคืนเนื้อหาที่แน่นอนของข้อความนั้นได้อย่างน่าเชื่อถือ เพียงเพราะแอปพลิเคชันเคยแสดงข้อความดังกล่าว โมเดลอาจอนุมานคำตอบที่ฟังดูสมเหตุสมผลจากเบาะแสโดยรอบได้ แต่การอนุมานไม่เหมือนกับการระลึกได้
เครื่องมือช่วยขยายสิ่งที่ระบบเข้าถึงได้ โมเดลอาจร้องขอไฟล์โครงการ รับเนื้อหาในไฟล์ แล้วนำเนื้อหานั้นไปใช้ตอบในครั้งถัดไป แอปพลิเคชันเข้าถึงไฟล์ได้ก่อนที่เนื้อหาจะกลายเป็นหลักฐานที่กำลังใช้งาน ความแตกต่างนี้อธิบายได้ว่าเหตุใดเอเจนต์จึงเข้าถึงคลังข้อมูลขนาดใหญ่ได้โดยไม่ต้องอ่านข้อมูลทั้งหมดในคลังทุกครั้งที่ทำงาน
ภายในระบบ การทำงานของทรานส์ฟอร์เมอร์ยังคงสถานะการคำนวณไว้ด้วย ซึ่งรวมถึงแคชที่ใช้หลีกเลี่ยงการทำงานซ้ำ กลไกเหล่านี้ช่วยให้การอนุมานมีประสิทธิภาพ แต่ไม่ควรสับสนกับระเบียนที่แก้ไขได้และคำนึงถึงสิทธิ์การเข้าถึง ซึ่งใช้เก็บค่ากำหนดของผู้ใช้หรือประวัติโครงการ การตอบสนองที่เร็วขึ้นไม่ได้ยืนยันว่ามีการสร้างหน่วยความจำส่วนบุคคลขึ้นแล้ว
เหตุใดหน้าต่างบริบทที่ใหญ่ขึ้นจึงไม่ได้ช่วยแก้ปัญหาความจำ
หน้าต่างบริบทที่ใหญ่ขึ้นช่วยให้แอปพลิเคชันป้อนข้อมูลได้มากขึ้นในคราวเดียว ซึ่งเป็นประโยชน์ได้เมื่อคำตอบขึ้นอยู่กับความเชื่อมโยงระหว่างส่วนต่าง ๆ ในเอกสารยาวหรือแหล่งข้อมูลที่เกี่ยวข้องกันหลายแห่ง แต่หน้าต่างบริบทไม่ได้ตัดสินว่าควรเก็บข้อมูลใดไว้ เวอร์ชันใดเป็นฉบับที่เชื่อถือได้ หรือผู้ใช้มีสิทธิ์เข้าถึงข้อมูลนั้นหรือไม่
การใส่ข้อมูลลงในหน้าต่างบริบทได้ก็ไม่ได้รับประกันว่าโมเดลจะใช้ข้อมูลนั้นอย่างถูกต้องเช่นกัน งานศึกษาเรื่อง การหลงอยู่ตรงกลาง แสดงให้เห็นว่าโมเดลที่ทดสอบอาจทำงานได้แตกต่างกัน ขึ้นอยู่กับตำแหน่งที่หลักฐานเกี่ยวข้องปรากฏในข้อมูลป้อนเข้าที่ยาว ผลการศึกษานี้เป็นข้อเตือนใจให้ประเมินประสิทธิภาพการใช้บริบทจริง แทนที่จะถือว่าความจุที่โฆษณาไว้รับประกันการระลึกข้อมูลได้ ทั้งนี้ ผลดังกล่าวไม่ใช่คำทำนายประสิทธิภาพที่ตายตัวสำหรับโมเดลรุ่นใหม่ทุกรุ่น
ลองสมมติว่าคลังข้อมูลโครงการมีบทสนทนา 40 รายการเกี่ยวกับวันเปิดตัว โดย 39 รายการระบุวันเดิม ส่วนการเปลี่ยนแปลงที่ได้รับอนุมัติครั้งล่าสุดได้เลื่อนวันดังกล่าว การป้อนบทสนทนาทั้ง 40 รายการทำให้เกิดปัญหาทั้งด้านการอ่านและการพิจารณาว่าข้อมูลใดมีผลเหนือกว่า การจัดทำบันทึกสถานะปัจจุบันอย่างรอบคอบและเชื่อมโยงกับการเปลี่ยนแปลงที่ได้รับอนุมัติ จะช่วยให้ระบุคำตอบที่เกี่ยวข้องได้ง่ายขึ้น
ดังนั้น บริบทที่ยาวและการเรียกคืนข้อมูลแบบเลือกสรรจึงช่วยเสริมกันได้ การเรียกคืนข้อมูลช่วยค้นหาหลักฐานที่เป็นประโยชน์ ส่วนบริบทที่มีขนาดใหญ่พอก็ช่วยให้โมเดลพิจารณาหลักฐานเหล่านั้นร่วมกันได้ การเลือกวิธีออกแบบขึ้นอยู่กับงาน ขนาดของแหล่งข้อมูล และผลที่จะตามมาหากพลาดเงื่อนไขสำคัญ
ข้อมูลกลายเป็นหน่วยความจำถาวรได้อย่างไร
หน่วยความจำที่คงอยู่เริ่มต้นจากการตัดสินใจว่าจะบันทึกข้อมูลหรือไม่ แอปพลิเคชันอาจบันทึกคำสั่งที่ผู้ใช้ระบุไว้อย่างชัดเจน อนุมานข้อเท็จจริงที่อาจเป็นไปได้จากบทสนทนา เก็บเหตุการณ์ไว้ หรือสร้างบทสรุป แต่ละวิธีให้หลักฐานคนละประเภท
“สำหรับโครงการ Cedar ให้ใช้หน่วยเมตริก” เป็นค่ากำหนดของโครงการที่ระบุไว้อย่างชัดเจน ส่วน “ดูเหมือนว่าผู้ใช้จะชอบใช้หน่วยเมตริก” เป็นการอนุมาน และ “รายงาน Cedar สามฉบับล่าสุดใช้หน่วยเมตริก” เป็นข้อสังเกต ระเบียนที่มีประโยชน์จะเก็บความแตกต่างเหล่านี้ไว้ แทนที่จะรวมเป็นข้อกล่าวอ้างที่ไม่ระบุเงื่อนไขว่าครอบคลุมทุกงานในอนาคต
ระเบียนที่มีประโยชน์ควรมีอะไรบ้าง
สำหรับผู้ช่วยโครงการสมมติ ระเบียนหนึ่งอาจประกอบด้วยข้อความระบุเรื่องนั้น รหัสโครงการ ผู้ใช้หรือองค์กรที่เกี่ยวข้อง แหล่งที่มาของการโต้ตอบ การประทับเวลา สถานะความถูกต้อง และข้อยกเว้นใด ๆ ข้อมูลเหล่านี้ช่วยให้ตรวจสอบได้ว่าข้อมูลมาจากไหน และยังใช้ได้อยู่หรือไม่
{
"scope": "project:cedar",
"statement": "Use metric units in project reports",
"source_type": "explicit_user_instruction",
"source_ref": "conversation_17/message_8",
"status": "current",
"exception": "Client edition may require dual units"
}นี่เป็นตัวอย่างโครงสร้างข้อมูล ไม่ใช่มาตรฐานสากล จุดประสงค์คือแสดงให้เห็นว่าเหตุใดหน่วยความจำจึงควรมีข้อมูลมากกว่าประโยคเดียว การอ้างอิงแหล่งที่มาช่วยให้ตรวจสอบได้ การกำหนดขอบเขตช่วยป้องกันการเหมารวมเกินจริง และช่องสถานะช่วยให้แก้ไขข้อมูลได้
การบันทึกทันทีเทียบกับการประมวลผลเบื้องหลัง
การบันทึกทันทีช่วยให้คำแก้ไขที่ระบุไว้อย่างชัดเจนพร้อมใช้งานได้ตั้งแต่คำขอถัดไป ส่วนการประมวลผลเบื้องหลังสามารถตรวจสอบการโต้ตอบที่เสร็จสิ้นแล้ว รวมรายการที่ซ้ำกัน หรือจัดทำสรุปที่ผ่านการพิจารณาอย่างรอบคอบยิ่งขึ้น เอกสารของ LangChain อธิบายทั้งสองแนวทางและข้อแลกเปลี่ยนของแต่ละแนวทาง ซึ่งรวมถึงภาระงานเพิ่มเติมที่เกิดขึ้นในขั้นตอนการตอบสนองแบบทันที
แนวทางที่ใช้งานได้จริงอาจบันทึกการตั้งค่าที่ได้รับการยืนยันแล้วทันที แล้วค่อยประมวลผลเซสชันค้นคว้าที่ยาวในภายหลัง แต่ระบบก็ยังต้องจัดการช่วงเวลาระหว่างสองขั้นตอนนี้ หากระบบแจ้งผู้ใช้ว่าบันทึกการตั้งค่าแล้วก่อนที่การบันทึกจะสำเร็จ บทสนทนาครั้งถัดไปอาจเผยให้เห็นว่าความต่อเนื่องของข้อมูลขาดหายไป
การบันทึกหน่วยความจำยังต้องมีนโยบายรองรับกรณีล้มเหลวด้วย หากพื้นที่จัดเก็บใช้งานไม่ได้ชั่วคราว แอปพลิเคชันอาจแจ้งว่าบันทึกไม่สำเร็จ หรือเก็บรายการที่รอดำเนินการไว้โดยระบุสถานะให้เห็นชัดเจน การถือว่าการพยายามบันทึกเท่ากับบันทึกหน่วยความจำสำเร็จแล้ว จะทำให้ผู้ใช้ได้รับประสบการณ์ที่ชวนให้เข้าใจผิด
หน่วยความจำถาวรถูกนำกลับมาใช้ในบริบทที่กำลังใช้งานได้อย่างไร
การเรียกคืนข้อมูลประกอบด้วยการตัดสินใจหลายขั้นเกี่ยวกับสิทธิ์ในการเข้าถึง ความเกี่ยวข้อง และหลักฐาน ก่อนอื่นระบบต้องระบุผู้ใช้ ผู้เช่า โครงการ หรืองานที่เกี่ยวข้องกับระเบียนที่สามารถนำมาใช้ได้ จากนั้นจึงค้นหาระเบียนที่อาจเกี่ยวข้องและเลือกข้อมูลที่จะใส่ไว้ในบริบทสำหรับการตอบกลับ
วิธีเรียกคืนข้อมูลควรเหมาะกับคำถาม คำถามว่า “กำหนดส่งงานที่อนุมัติแล้วของ Cedar คือวันไหน” อาจตอบได้ดีที่สุดด้วยการค้นหาข้อมูลในช่องข้อมูลโครงการโดยตรง ส่วนคำถามว่า “เราเคยพบข้อผิดพลาดในการนำระบบไปใช้นี้มาก่อนหรือไม่” อาจได้ประโยชน์จากการค้นหาด้วยคำสำคัญและการค้นหาความคล้ายคลึงเชิงความหมายจากเหตุขัดข้องที่ผ่านมา ฐานข้อมูลเวกเตอร์เป็นเพียงทางเลือกหนึ่งในกระบวนการนี้ ไม่ใช่สิ่งที่จำเป็นสำหรับหน่วยความจำทุกประเภท
การค้นหาเชิงความหมายมีประโยชน์เป็นพิเศษเมื่อถ้อยคำเปลี่ยนไป คำค้นเกี่ยวกับ “การทำให้รายงานกระชับ” อาจตรงกับการตั้งค่าที่บันทึกไว้ว่า “สรุปสำหรับผู้บริหารแบบสั้น” อย่างไรก็ตาม ข้อความที่เกี่ยวข้องกันอาจกล่าวถึงลูกค้าคนละราย หรือโครงการฉบับที่ถูกยกเลิกไปแล้ว ความคล้ายคลึงช่วยระบุข้อมูลที่อาจเกี่ยวข้อง แต่ไม่ได้ยืนยันว่าข้อมูลนั้นเป็นความจริงหรือได้รับอนุญาตให้ใช้
การเรียกคืนข้อมูลต้องมีผลลัพธ์กรณีไม่พบข้อมูล
ลองพิจารณาคำถามว่า “เดือนที่แล้วฉันอนุมัติวงเงินใช้จ่ายไว้เท่าไร” หากค้นหาไม่พบจำนวนเงินที่อนุมัติไว้ คำตอบที่เป็นประโยชน์ควรระบุว่าขาดหลักฐานส่วนใดและขอให้ผู้ใช้ชี้แจง การแต่งตัวเลขที่ดูเป็นไปได้ขึ้นมาเองทำให้การไม่มีข้อมูลในหน่วยความจำกลายเป็นการอนุมัติที่ถูกสร้างขึ้นมาโดยไม่มีมูล
ดังนั้น อินเทอร์เฟซหน่วยความจำควรแยกแยะระหว่างข้อมูลที่ยืนยันว่าตรงกัน ข้อมูลที่อาจตรงกันแต่ยังไม่แน่ชัด ความขัดแย้ง และกรณีที่ไม่มีบันทึกสนับสนุน ผลลัพธ์เหล่านี้อาจนำไปสู่การดำเนินการที่แตกต่างกัน ได้แก่ ตอบโดยตรง ระบุข้อสงวนในคำตอบ ขอคำชี้แจง หรือปฏิเสธที่จะดำเนินการโดยอาศัยข้อสันนิษฐานที่ไม่มีหลักฐานรองรับ
หลังจากค้นคืนข้อมูลแล้ว การตีความก็ยังมีความสำคัญ บันทึกที่ระบุว่า “เสนองบประมาณสูงสุด: 5,000 ดอลลาร์สหรัฐ รอการอนุมัติ” ต้องไม่ถูกเปลี่ยนเป็น “งบประมาณที่อนุมัติแล้ว: 5,000 ดอลลาร์สหรัฐ” การคงเงื่อนไขกำกับไว้ทั้งในการจัดเก็บข้อมูลและบริบทที่ให้มา มีความสำคัญพอ ๆ กับการค้นหาเอกสารที่ถูกต้อง
ตัวอย่างการจดจำโครงการเมื่อเวลาผ่านไป
ลองนึกภาพผู้ช่วยที่ช่วยทีมจัดทำรายงานวิจัย Cedar ตัวอย่างต่อไปนี้เป็นสถานการณ์สมมติ แต่ช่วยให้เห็นทางเลือกในการออกแบบระบบความจำที่พบได้ทั่วไปหลายประการ
เซสชันที่หนึ่ง: กำหนดโครงการ
ผู้ใช้ขอรายงาน ระบุให้ใช้หน่วยเมตริก ส่งแหล่งข้อมูลมา 3 แหล่ง และบอกว่าร่างรายงานต้องเสร็จภายในวันศุกร์ บริบทที่ใช้งานอยู่ประกอบด้วยคำสั่งเหล่านั้นและข้อความคัดมาจากแหล่งข้อมูล สถานะงานที่กำลังดำเนินการจะบันทึกว่าส่วนใดทำเสร็จแล้ว และข้อกล่าวอ้างใดยังต้องตรวจสอบ
บันทึกที่อาจเก็บไว้ในหน่วยความจำระยะยาวมีจุดประสงค์ต่างกัน ความต้องการใช้หน่วยเมตริกเป็นข้อกำหนดของโครงการ กำหนดส่งร่างเป็นของหมุดหมายปัจจุบัน แหล่งข้อมูลที่ส่งมาเป็นส่วนหนึ่งของคลังหลักฐานของโครงการ ส่วนข้อกล่าวอ้างที่ยังไม่ได้ตรวจสอบควรอยู่ในรายการงานวิจัยที่รอดำเนินการ โดยคงระดับความไม่แน่นอนไว้
เซสชันที่สอง: ทำงานต่อโดยใช้หลักฐานที่ถูกต้อง
สามวันต่อมา ผู้ใช้ขอให้เขียนส่วนวิธีการให้เสร็จ ผู้ช่วยจำเป็นต้องใช้โครงร่างฉบับล่าสุด แหล่งข้อมูลที่เกี่ยวข้อง สถานะงานปัจจุบัน และกฎการจัดรูปแบบที่ใช้บังคับ แต่ไม่จำเป็นต้องใช้ประโยคทุกประโยคที่ตัดทิ้งไปจากการระดมความคิดครั้งก่อน
แม้จุดตรวจสอบจะระบุว่าการทบทวนวรรณกรรมเสร็จแล้ว ผู้ช่วยก็ควรเปิดไฟล์งานที่บันทึกไว้ก่อนแก้ไขส่วนอื่นโดยอิงกับเนื้อหานั้น “เสร็จแล้ว” เป็นการกล่าวถึงความคืบหน้า ส่วนเอกสารจริงเป็นหลักฐานว่าส่วนใดทำเสร็จแล้ว ลิงก์ถาวรไปยังไฟล์งานอาจมีประโยชน์มากกว่าบทสรุปที่พยายามถอดเนื้อหาทั้งหมดของไฟล์เหล่านั้นมาไว้ด้วยกัน
เซสชันที่สาม: ใช้ข้อยกเว้นโดยไม่ต้องเขียนทุกอย่างใหม่
ผู้ใช้ขอฉบับสำหรับลูกค้า โดยให้แสดงทั้งหน่วยเมตริกและหน่วยอิมพีเรียล งานปัจจุบันจึงควรใช้หน่วยทั้งสองระบบ ส่วนกฎทั่วไปของโครงการจะเปลี่ยนหรือไม่ ขึ้นอยู่กับถ้อยคำและขอบเขตที่ผู้ใช้ระบุไว้: “สำหรับฉบับนี้” มีขอบเขตแคบกว่า “นับจากนี้ไป ให้ใช้ทั้งสองระบบ”
ผู้ช่วยที่รอบคอบจะบันทึกข้อยกเว้นเฉพาะฉบับ ส่วนผู้ช่วยที่เหมารวมเกินไปจะเขียนทับข้อกำหนดทั่วไป และทำให้รายงานฉบับถัด ๆ ไปมีข้อผิดพลาด นี่คือความล้มเหลวของระบบความจำ แม้ว่าการเขียนข้อมูลลงฐานข้อมูลและการเรียกค้นทุกครั้งจะสำเร็จก็ตาม
เซสชันที่สี่: ส่งงานให้เสร็จและยุติสถานะชั่วคราว
หลังส่งงานแล้ว ควรทำเครื่องหมายว่าหมุดหมายเสร็จสมบูรณ์ หากได้รับคำสั่งให้ “ทำรายงานต่อ” ผู้ช่วยควรเปิดฉบับที่ส่งมอบแล้วและถามว่าต้องการให้แก้ไขส่วนใด แทนที่จะกลับไปทำรายการตรวจสอบที่ล้าสมัยต่อ บันทึกย่อชั่วคราวอาจหมดอายุตามนโยบายของโครงการ ขณะที่รายงานฉบับสมบูรณ์และการตัดสินใจสำคัญยังคงเข้าถึงได้
ประโยชน์ของหน่วยความจำระยะยาวเห็นได้ชัดในกรณีนี้ นั่นคือไม่ต้องอธิบายซ้ำบ่อย ๆ และทำงานต่อเนื่องได้ดีขึ้น ขณะเดียวกันก็เห็นต้นทุนเช่นกัน กล่าวคือแอปพลิเคชันต้องดูแลความเชื่อมโยงระหว่างความต้องการ ข้อยกเว้น ไฟล์งาน และสถานะงานที่เปลี่ยนแปลงอยู่เสมอ
การสรุป การย่อบริบท และความเสี่ยงที่จะทำข้อยกเว้นสูญหาย
การโต้ตอบที่ยาวนานอาจมีข้อมูลสะสมมากเกินกว่าที่จำเป็นสำหรับคำตอบถัดไป การย่อบริบทจะแทนที่ประวัติบางส่วนด้วยข้อมูลสรุปที่กระชับกว่า โดยอาจเก็บวัตถุประสงค์ การตัดสินใจ คำถามที่ยังไม่มีข้อสรุป และลิงก์ไปยังงานต้นฉบับไว้
คำแนะนำของ Anthropic เกี่ยวกับการออกแบบบริบทกล่าวถึงการย่อบริบทและบันทึกที่จัดเก็บไว้นอกหน้าต่างบริบทว่าเป็นแนวทางในการรักษาความต่อเนื่องระหว่างการทำงานระยะยาว ทั้งสองวิธีเปลี่ยนข้อมูลที่คำตอบในอนาคตจะนำมาใช้ได้ ดังนั้นคุณภาพของข้อมูลจึงมีความสำคัญ
การบีบอัดข้อมูลเป็นการเลือกเก็บเฉพาะบางส่วน บทสรุปอย่าง “ใช้หน่วยเมตริก” สั้นกว่า “ใช้หน่วยเมตริก ยกเว้นฉบับสำหรับลูกค้า ซึ่งต้องใช้ทั้งสองระบบ” แต่ก็ไม่ถูกต้องสำหรับกรณีสำคัญกรณีหนึ่งของโครงการ ข้อยกเว้นที่ตกหล่นอาจถูกส่งต่อไปในบทสรุปฉบับต่อ ๆ ไปโดยไม่มีใครสังเกต และยากต่อการสืบย้อนในภายหลัง
สำหรับผู้ช่วยของ Cedar แนวทางส่งต่องานที่ดีกว่าควรเก็บกฎทั่วไป ข้อยกเว้น ส่วนที่ทำเสร็จแล้ว งานตรวจสอบที่ยังเหลืออยู่ และข้อมูลอ้างอิงไปยังไฟล์ฉบับล่าสุดไว้ รายละเอียดที่ต้องแม่นยำ เช่น จำนวนเงินที่อนุมัติหรือรหัสระบุ ควรอยู่ในบันทึกที่มีโครงสร้างหรือเอกสารต้นฉบับ เมื่อการประมาณค่าอาจก่อให้เกิดความเสียหาย
บทสรุปควรคงระดับความไม่แน่นอนไว้ด้วย “เราเคยพิจารณาใช้แบบสำรวจ B” ต้องไม่กลายเป็น “เลือกแบบสำรวจ B แล้ว” หากประวัติที่ถูกบีบอัดทำให้การตัดสินใจที่ยังไม่เป็นข้อยุติดูเหมือนเป็นข้อสรุปแล้ว ระบบก็ได้สร้างความทรงจำเท็จขึ้นมาในระหว่างพยายามประหยัดพื้นที่บริบท
AI ควรจัดการกับการแก้ไขและความขัดแย้งในหน่วยความจำอย่างไร
หน่วยความจำถาวรจะมีประโยชน์น้อยลงหากไม่สามารถเปลี่ยนแปลงได้ โครงการมีการเปลี่ยนแปลง ความชอบก็พัฒนาไป และข้อมูลก่อนหน้าอาจกลายเป็นสิ่งที่พิสูจน์แล้วว่าไม่ถูกต้อง หากเพิ่มคำแก้ไขเป็นอีกระเบียนหนึ่งโดยไม่ระบุสถานะ ระบบค้นคืนอาจต้องเลือกระหว่างข้อความสองข้อความที่ขัดแย้งกัน
การอัปเดตที่มีประโยชน์กว่าคือการระบุว่าหลักฐานใหม่เข้ามาแทนที่ข้อมูลใด หากเจ้าของโครงการเลื่อนวันเปิดตัวจาก 15 พฤศจิกายนเป็น 29 พฤศจิกายน ก็สามารถทำเครื่องหมายระเบียนเดิมว่าถูกแทนที่แล้ว และเชื่อมโยงกับการตัดสินใจใหม่ได้ เมื่อถามถึงกำหนดส่งปัจจุบัน ระบบจะใช้ข้อมูลฉบับใหม่ ส่วนคำถามเกี่ยวกับแผนเดิมก็ยังอ้างอิงข้อมูลฉบับย้อนหลังได้
ข้อมูลล่าสุดเพียงอย่างเดียวไม่สามารถคลี่คลายข้อขัดแย้งได้ทุกกรณี บันทึกร่างที่เพิ่งจัดทำอาจมีน้ำหนักน้อยกว่านโยบายเก่าที่ได้รับอนุมัติแล้ว ผู้ใช้อาจมีสิทธิ์เปลี่ยนความชอบส่วนตัว แต่ไม่มีสิทธิ์เปลี่ยนกฎที่ใช้ทั่วทั้งองค์กร นโยบายการอัปเดตจึงต้องคำนึงถึงประเภทของข้อเท็จจริงและอำนาจของแหล่งข้อมูล
ข้อขัดแย้งบางอย่างควรปล่อยไว้โดยยังไม่คลี่คลายจนกว่าจะมีคนมาชี้แจง หากเจ้าของโครงการสองคนให้วันที่ที่ไม่สอดคล้องกันโดยไม่มีการระบุอย่างชัดเจนว่าข้อมูลใดมาแทนที่ข้อมูลเดิม ผู้ช่วยสามารถแสดงแหล่งข้อมูลทั้งสองและถามว่าควรยึดข้อมูลใด การเลือกข้อมูลที่คล้ายกันที่สุดหรือใหม่ที่สุดโดยไม่แจ้งให้ทราบ อาจซ่อนการตัดสินใจที่ระบบไม่มีสิทธิ์ตัดสินใจแทน
AI ลืมได้อย่างไร
การลืมไม่ได้มีเพียงสวิตช์เดียว ผลิตภัณฑ์อาจหยุดใส่ข้อเท็จจริงลงในพรอมป์ต์ ไม่นำข้อมูลนั้นไปใช้ในการค้นหาตามปกติ ทำเครื่องหมายว่าล้าสมัย ลบระเบียนหน่วยความจำ หรือลบสำเนาอื่นที่ยังเก็บอยู่ การดำเนินการเหล่านี้ส่งผลต่อพฤติกรรมในอนาคตและข้อมูลที่ยังคงจัดเก็บไว้แตกต่างกัน
เมื่อหลุดจากบริบทที่กำลังใช้งาน
ข้อเท็จจริงอาจหายไปจากข้อมูลนำเข้ารอบถัดไปของโมเดล เพราะข้อความก่อนหน้าถูกตัดออกหรือสรุปไว้ ทำให้โมเดลใช้ข้อมูลนั้นได้ทันทีน้อยลง แต่บทสนทนาต้นฉบับหรือระเบียนหน่วยความจำอาจยังคงอยู่ และอาจกลับมาได้จากการค้นคืนในภายหลัง
การกำหนดให้หมดอายุหรือระงับการเรียกคืน
กำหนดส่งที่หมดอายุแล้วอาจยังคงอยู่ในคลังข้อมูล แต่ไม่ปรากฏในการค้นหาที่เกี่ยวกับงานปัจจุบัน การระงับการเรียกคืนมีประโยชน์เมื่อมีเหตุผลให้เก็บประวัติไว้ แต่ไม่ควรเรียกวิธีนี้ว่าการลบโดยสมบูรณ์ การค้นหาข้อมูลย้อนหลังหรือขั้นตอนการทำงานด้านการดูแลระบบอาจยังเข้าถึงระเบียนนั้นได้
การลบหน่วยความจำที่จัดเก็บไว้
การลบระเบียนที่เก็บไว้อย่างถาวรควรครอบคลุมข้อมูลแทนระเบียนที่ใช้ในการค้นคืนด้วย หากลบประโยคหนึ่งออกจากโปรไฟล์ แต่ประโยคนั้นยังอยู่ในสรุปที่ค้นหาได้ ผู้ช่วยอาจสร้างความชอบเดิมขึ้นมาใหม่ในภายหลัง ระเบียนต้นทาง เวกเตอร์ฝังตัว สรุป แคช และสำเนาจำลอง อาจทำให้ต้องดำเนินการลบแยกกัน ทั้งนี้ขึ้นอยู่กับสถาปัตยกรรมของระบบ
ข้อมูลสำรองและบันทึกอาจมีกำหนดการเก็บรักษาของตนเอง ผลิตภัณฑ์ควรอธิบายขอบเขตเหล่านี้ให้ชัดเจน และป้องกันไม่ให้เนื้อหาที่ลบไปแล้วกลับมาใช้งานอีกระหว่างการกู้คืนข้อมูล “เราจะไม่ใช้หน่วยความจำนี้อีกต่อไป” กับ “เราลบสำเนาทั้งหมดที่เก็บไว้แล้ว” เป็นคำมั่นสัญญาที่แตกต่างกัน
การเปลี่ยนค่าน้ำหนักของโมเดล
การลบหน่วยความจำภายนอกไม่ได้เปลี่ยนพารามิเตอร์ของโมเดลโดยตรง หากนำข้อมูลไปใช้ในการฝึกโมเดล การจัดการข้อมูลนั้นในตัวโมเดลเป็นอีกปัญหาหนึ่ง ซึ่งเกี่ยวข้องกับกระบวนการฝึกและการนำโมเดลไปใช้งาน ในทำนองเดียวกัน การลบหน่วยความจำส่วนบุคคลไม่อาจรับประกันได้ว่าโมเดลจะไม่สร้างข้อเท็จจริงที่คล้ายกันจากความรู้ทั่วไปหรือเบาะแสที่ให้ไว้ในพรอมป์ต์ใหม่
ดังนั้น การทดสอบการลืมที่มีความหมายจึงต้องตรวจสอบทั้งว่าระบบยังจัดเก็บข้อมูลนั้นอยู่หรือไม่ และช่องทางการดึงข้อมูลตามปกติยังทำให้ข้อมูลนั้นกลับมาได้หรือไม่ คำตอบเพียงครั้งเดียวในแชตที่บอกว่า “ลืมแล้ว” ไม่ได้พิสูจน์ข้อใดเลย
ความทรงจำ, RAG, การฝึกโมเดล และแคชชิง: ขอบเขตอยู่ตรงไหน
การสร้างข้อความเสริมด้วยการดึงข้อมูล หรือ RAG จะนำหลักฐานภายนอกมาให้โมเดลใช้ระหว่างสร้างคำตอบ งานวิจัย RAG ระยะแรก ผสานพารามิเตอร์ของโมเดลเข้ากับดัชนีเอกสารที่ดึงข้อมูลมาใช้ได้ ระบบความทรงจำส่วนบุคคลก็ใช้การดึงข้อมูลได้เช่นกัน แต่ยังต้องมีนโยบายสำหรับสร้าง ปรับปรุง และเลิกใช้ระเบียนจากการโต้ตอบด้วย
คู่มือของบริษัทอาจถูกดึงมาใช้โดยไม่ได้เป็นความทรงจำเกี่ยวกับผู้ใช้ บันทึกเกี่ยวกับการโต้ตอบครั้งก่อนอาจถูกดึงมาจากไฟล์ธรรมดาโดยไม่ต้องใช้ดัชนีเวกเตอร์ การดึงข้อมูลเป็นเพียงกลไก ส่วนวัตถุประสงค์และวงจรชีวิตของระเบียนที่อยู่เบื้องหลังเป็นตัวกำหนดว่าระบบที่กำลังสร้างนั้นเป็นระบบประเภทใด
การฝึกโมเดลและการปรับแต่งโมเดลจะเปลี่ยนพารามิเตอร์ของโมเดล ส่วนความทรงจำภายนอกทั่วไปจะเปลี่ยนหลักฐานที่ส่งให้โมเดล ผู้ช่วยที่ทำตามค่ากำหนดซึ่งเพิ่งบันทึกไว้ย่อมแสดงพฤติกรรมต่างออกไปได้ แม้น้ำหนักของโมเดลจะยังคงเดิม
การแคชพรอมป์ต์และการอนุมานจะนำการคำนวณก่อนหน้ากลับมาใช้ซ้ำเมื่อระบบรองรับ วิธีนี้ช่วยเพิ่มประสิทธิภาพได้ แต่ไม่ได้ยืนยันด้วยตัวมันเองว่าข้อความที่จดจำไว้นั้นเป็นปัจจุบัน ได้รับอนุญาต หรือเหมาะกับงานในอนาคตหรือไม่ ชั้นการทำงานเหล่านี้อาจทำงานร่วมกันได้ และการแก้ปัญหาจำเป็นต้องระบุให้ได้ว่าชั้นใดเป็นสาเหตุของพฤติกรรมที่พบ
MemGPT เป็นตัวอย่างสถาปัตยกรรมที่มีอิทธิพล โดยสำรวจการย้ายข้อมูลระหว่างบริบทที่มีขีดจำกัดกับระดับชั้นความทรงจำภายนอก โดยใช้อุปมาเรื่องระบบปฏิบัติการ บทเรียนสำคัญคือการจัดการการเคลื่อนย้ายข้อมูลอย่างชัดเจน ไม่ใช่การตั้งสมมติฐานว่าการจัดเก็บข้อมูลจะขยายบริบทเฉพาะหน้าของโมเดลได้โดยอัตโนมัติและไร้ขีดจำกัด
เหตุใดความทรงจำระยะยาวจึงทำให้ข้อผิดพลาดคงอยู่ได้นานขึ้น
คำตอบที่ผิดพลาดอาจส่งผลต่อการโต้ตอบครั้งเดียว แต่ความทรงจำที่ผิดพลาดอาจส่งผลได้อีกหลายครั้ง หากผู้ช่วยอนุมานว่าผู้ใช้อนุมัติการตัดสินใจ บันทึกข้ออนุมานนั้นเป็นข้อเท็จจริง แล้วอ้างถึงระเบียนที่บันทึกไว้ในภายหลัง ข้อผิดพลาดก่อนหน้าของผู้ช่วยเองก็อาจดูเสมือนมีหลักฐานอิสระมายืนยัน
สำหรับผู้ช่วยในโครงการของเรา ควรแยกแหล่งข้อมูลต้นฉบับออกจากการตีความของโมเดลให้เห็นชัดเจน บทสรุปของการตัดสินใจอาจช่วยให้ค้นหาข้อมูลได้สะดวก แต่การดำเนินการใด ๆ ที่มีผลสำคัญควรอ้างอิงการตัดสินใจที่ได้รับอนุมัติจริง การกล่าวซ้ำในบันทึกที่สร้างขึ้นหลายฉบับไม่ได้ทำให้ข้ออนุมานที่ไม่มีหลักฐานรองรับเพียงข้อเดียวกลายเป็นการยืนยันอิสระหลายครั้ง
ความทรงจำระยะยาวยังเปิดช่องให้คำสั่งปนเปื้อนเข้ามาได้ เอกสารที่ไม่น่าเชื่อถืออาจมีประโยคที่สั่งให้ผู้ช่วยเปลี่ยนพฤติกรรมในอนาคต หากจัดเก็บประโยคนั้นเป็นกฎการทำงาน ก็เท่ากับนำเนื้อหาภายนอกข้ามขอบเขตอำนาจของคำสั่ง แอปพลิเคชันควรจัดการเนื้อหาตามแหล่งที่มา แทนที่จะยกระดับให้เป็นคำสั่งที่เชื่อถือได้เพียงเพราะเนื้อหาปรากฏอยู่ในคลังความทรงจำ
สภาพแวดล้อมที่ใช้ร่วมกันทำให้เกิดขอบเขตอีกประการหนึ่ง ข้อเท็จจริงหนึ่งอาจเกี่ยวข้องกับคำถาม แต่เป็นของลูกค้าหรือโครงการอื่น การตรวจสอบสิทธิ์การเข้าถึงควรจำกัดการดึงข้อมูลก่อนที่ข้อมูลจะไปถึงโมเดล การขอให้โมเดลเพิกเฉยต่อระเบียนที่ไม่ได้รับอนุญาตหลังจากส่งข้อมูลเหล่านั้นไปให้แล้ว เป็นแนวทางการออกแบบที่ด้อยกว่า
วิธีประเมินว่าความทรงจำใช้งานได้จริงหรือไม่
การสาธิตที่น่าเชื่อถือมักให้ผู้ช่วยพูดทวนค่ากำหนดที่บันทึกไว้หนึ่งรายการ แต่การประเมินอย่างจริงจังจะติดตามข้อมูลที่เปลี่ยนแปลงไปตลอดหลายเซสชัน และตรวจสอบว่าความทรงจำช่วยให้งานเสร็จสมบูรณ์ได้ดีขึ้นหรือไม่
LongMemEval ประเมินการดึงข้อมูล การให้เหตุผลข้ามเซสชัน การให้เหตุผลเชิงเวลา การปรับปรุงความรู้ และการงดตอบ หมวดหมู่เหล่านี้แสดงให้เห็นว่า คุณภาพของความทรงจำระยะยาวมีขอบเขตกว้างกว่าการดึงประโยคที่ตรงกันเพียงประโยคเดียว ควรตีความผลการทดสอบมาตรฐานที่เผยแพร่โดยพิจารณาจากระบบและการตั้งค่าที่นำมาทดสอบ ไม่ใช่เหมารวมว่าผลเหล่านั้นอธิบายผลิตภัณฑ์ปัจจุบันทุกชนิดได้
สำหรับเวิร์กโฟลว์ Cedar การประเมินอาจเริ่มจากเพิ่มค่ากำหนดหนึ่งรายการ กลับมาทำโครงการต่อ เพิ่มข้อยกเว้น แก้กำหนดเวลา ลบบันทึก แล้วถามคำถามที่ออกแบบมาเพื่อเปิดเผยการเรียกคืนข้อมูลที่ล้าสมัยหรือไม่มีหลักฐานรองรับ นอกจากนี้ควรทดสอบโมเดลเดียวกันโดยปิดฟีเจอร์ความทรงจำ เพื่อดูว่าระบบที่เพิ่มเข้ามาช่วยให้ผลลัพธ์ดีขึ้นหรือไม่
- ความแม่นยำในการบันทึก: ระบบบันทึกข้อความที่ต้องการ พร้อมขอบเขตและเงื่อนไขกำกับไว้หรือไม่?
- ประโยชน์ของการดึงข้อมูล: ระบบค้นพบหลักฐานที่จำเป็นต่องานได้หรือไม่ โดยไม่เติมประวัติที่ไม่เกี่ยวข้องลงในบริบทมากเกินไป?
- การจัดการการปรับปรุงข้อมูล: เมื่อมีการแก้ไข ระบบแทนที่ข้อเท็จจริงปัจจุบัน พร้อมเก็บความแตกต่างที่เป็นประโยชน์ระหว่างข้อมูลในอดีตไว้หรือไม่?
- การงดตอบ: ผู้ช่วยยอมรับหรือไม่เมื่อไม่มีระเบียนสนับสนุน?
- การแยกข้อมูล: ระเบียนถูกจำกัดให้อยู่กับผู้ใช้ ผู้เช่า และโครงการที่ถูกต้องหรือไม่?
- การลืม: การลบหรือการหมดอายุทำให้ระบบไม่เรียกคืนข้อมูลนั้นในอนาคตตามที่ต้องการได้หรือไม่ รวมถึงผ่านบทสรุปที่สร้างต่อจากข้อมูลนั้นด้วย?
- ต้นทุนการดำเนินงาน: การปรับปรุงที่ได้คุ้มกับเวลาแฝงที่เพิ่มขึ้น จำนวนครั้งที่เรียกใช้โมเดล พื้นที่จัดเก็บ และการบำรุงรักษาหรือไม่?
ควรตรวจสอบย้อนกลับว่าความล้มเหลวเกิดขึ้นในขั้นตอนไหน คำตอบที่ขาดหายไปอาจเกิดจากการบันทึกไม่สำเร็จ การกำหนดขอบเขตการค้นหาไม่ถูกต้อง การจัดอันดับที่ไม่เหมาะสม การละเว้นข้อควรคำนึง หรือโมเดลตีความหลักฐานที่ดีผิดพลาด การเพิ่มขนาดบริบทไม่ได้ช่วยแก้ปัญหาเหล่านี้ได้ทั้งหมด
เลือกออกแบบระบบความจำให้เหมาะสม
การสรุปเอกสารแบบครั้งเดียวอาจต้องใช้เพียงเอกสารและคำสั่งในขณะนั้น การวิเคราะห์ที่ถูกขัดจังหวะจะได้ประโยชน์จากจุดบันทึกความคืบหน้าของงาน ผู้ช่วยสำหรับโครงการที่ดำเนินต่อเนื่องอาจต้องใช้บันทึกการตัดสินใจที่ระบุเวอร์ชันและการอ้างอิงชิ้นงาน ส่วนผู้ช่วยที่ทำงานข้ามหลายเซสชันของผู้ใช้อาจต้องมีพื้นที่จัดเก็บการตั้งค่าที่แยกต่างหากและแก้ไขได้
เริ่มจากระบุคำถามในอนาคตที่ต้องการให้ความจำช่วยตอบ “มีงานอะไรที่ยังไม่เสร็จ?” ต้องใช้ข้อมูลสถานะของงาน “ลูกค้ารายนี้ต้องการรูปแบบใด?” ต้องใช้การตั้งค่าที่กำหนดขอบเขตไว้ “เหตุใดเราจึงปฏิเสธแนวทางนี้?” ต้องใช้บันทึกการตัดสินใจพร้อมหลักฐานประกอบ คำถามที่แตกต่างกันย่อมต้องใช้รูปแบบการจัดเก็บข้อมูลที่แตกต่างกัน
ควรเลือกใช้บันทึกจำนวนน้อยที่ชัดเจนและระบุที่มาได้ แทนคลังข้อมูลที่รวบรวมทุกอย่างโดยไม่คัดกรองแล้วนำเสนอราวกับเป็นการปรับให้เหมาะกับผู้ใช้แต่ละคน แยกสถานะปัจจุบันออกจากเหตุการณ์ในอดีต เก็บลิงก์ไปยังชิ้นงานต้นทางไว้ และวางแผนให้แก้ไขและลบข้อมูลได้ตั้งแต่เริ่มออกแบบ
ความจำเชิงรุกช่วยให้ระบบ AI มีภาพปัจจุบันที่สอดคล้องเป็นหนึ่งเดียว ส่วนความจำแบบคงอยู่ช่วยให้ระบบรักษาความต่อเนื่องข้ามเวลาได้ คุณภาพของความต่อเนื่องนั้นขึ้นอยู่กับการตัดสินใจระหว่างความจำทั้งสองแบบ ได้แก่ จะบันทึกอะไร จะเรียกข้อมูลใดกลับมาใช้ เวอร์ชันใดมีผล และข้อมูลใดสามารถปล่อยให้หายไปได้












