Memory ของ AI Agent: จำระยะสั้น ระยะยาว และข้อมูลองค์กร

Plants.work · · upskilling
Memory ของ AI Agent: จำระยะสั้น ระยะยาว และข้อมูลองค์กร

เข้าใจว่า AI Agent จำอะไรได้อย่างไร ตั้งแต่ context rot, compaction, memory 3 ประเภท ไปจนถึงการดึงข้อมูลองค์กรแบบ just-in-time

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

Memory ของ AI Agent คืออะไร

โมเดลภาษาโดยตัวมันเองไม่ได้จำอะไรข้ามการเรียกใช้ ทุกครั้งที่ทำงาน มันเห็นเฉพาะสิ่งที่อยู่ใน context window ตอนนั้น Memory ของ Agent จึงหมายถึง ระบบที่คอยเลือกว่าจะเก็บอะไร เก็บไว้ที่ไหน และดึงอะไรกลับมาใส่ใน context ในจังหวะที่ต้องใช้ ถ้าอยากทบทวนส่วนประกอบพื้นฐานของ Agent อ่าน เข้าใจโครงสร้าง AI Agent ก่อนได้

ความจำระยะสั้น: อยู่ในบทสนทนาเดียว

เอกสารของ LangGraph อธิบายว่า short-term memory เป็นแบบ "thread-scoped" คือเก็บประวัติข้อความภายใน session เดียว และบันทึกสถานะไว้เพื่อให้กลับมาทำต่อได้ ปัญหาคือยิ่งคุยนาน context ยิ่งยาว

Anthropic เรียกปรากฏการณ์นี้ว่า context rot ในบทความ Effective context engineering for AI agents (กันยายน 2025): เมื่อ token สะสมมากขึ้น ความสามารถของโมเดลในการดึงข้อมูลจาก context อย่างแม่นยำจะลดลง วิธีรับมือที่บทความเสนอคือ

ความจำระยะยาว: ข้ามบทสนทนา

Long-term memory เก็บไว้นอก context และอยู่ข้าม session LangGraph แบ่งประเภทตามความจำของมนุษย์ไว้ 3 แบบ

Semantic: ข้อเท็จจริง

เช่น "พนักงานคนนี้อยู่สาขาเชียงใหม่ ชอบคำตอบภาษาไทย" เก็บได้ทั้งแบบ profile (เอกสารเดียวที่อัปเดตไปเรื่อยๆ) หรือแบบ collection (หลายเอกสารย่อย ข้อมูลหายยากกว่าแต่ค้นและอัปเดตยากกว่า)

Episodic: ประสบการณ์

เช่น "ครั้งก่อนเคยแก้ปัญหาสลิปเงินเดือนไม่ตรงด้วยการให้ติดต่อฝ่ายบัญชี" มักใช้เป็นตัวอย่างนำทางงานคล้ายกัน

Procedural: วิธีทำงาน

กฎและขั้นตอนของ Agent เอง เช่น system prompt ที่บอกว่า "อ้างเลขข้อในคู่มือพนักงานทุกครั้ง"

Agent ที่จดโน้ตเอง

อีกเทคนิคที่ Anthropic อธิบายคือ structured note-taking ให้ Agent เขียนโน้ตเก็บไว้นอก context เช่นไฟล์ NOTES.md หรือ to-do list แล้วอ่านกลับเมื่อต้องการ ตัวอย่างในบทความคือ Claude ที่เล่นเกม Pokémon จดความคืบหน้า แผนที่ที่สำรวจแล้ว และท่าโจมตีที่ได้ผล ทำให้กลับมาเล่นต่อได้หลังจาก context ถูกรีเซ็ต

แนวคิดคล้ายกันปรากฏตั้งแต่งานวิจัย MemGPT: Towards LLMs as Operating Systems (Packer และคณะ, 2023) ที่ได้แรงบันดาลใจจากระบบหน่วยความจำหลายชั้นของระบบปฏิบัติการ สลับข้อมูลระหว่างส่วนที่เร็วกับส่วนที่ช้าเพื่อให้ดูเหมือนมีหน่วยความจำใหญ่กว่าที่มีจริง

ข้อมูลองค์กร: ความจำที่ไม่ใช่ของ Agent

คู่มือพนักงาน นโยบายลา หรือราคาสินค้า ไม่ควรถูก "จำ" ไว้ใน memory ของ Agent แต่ควรดึงจากแหล่งต้นทางทุกครั้งที่ใช้ Anthropic เรียกแนวทางนี้ว่า just-in-time retrieval คือเก็บแค่ตัวอ้างอิงเบาๆ เช่น path ของไฟล์หรือลิงก์ แล้วโหลดเนื้อหาด้วย tool เมื่อจำเป็น วิธีนี้ทำให้ข้อมูลไม่ล้าสมัย เพราะถ้านโยบายเปลี่ยน Agent จะเห็นฉบับใหม่ทันที

ข้อควรระวัง

Agent ที่ดีไม่ได้จำทุกอย่าง แต่จำสิ่งที่ใช่ และรู้ว่าต้องไปเปิดดูที่ไหน

เริ่มต้นยังไง

  1. แยกให้ชัดว่าข้อมูลไหนเป็นของบทสนทนา ของผู้ใช้ หรือขององค์กร
  2. เริ่มจาก memory ระยะยาวแบบ profile สั้นๆ เพียงไม่กี่ field ที่ใช้บ่อยจริง
  3. ข้อมูลองค์กรให้ดึงจากแหล่งต้นทาง ไม่คัดลอกไปเก็บใน memory
  4. ตั้งกติกา compaction เมื่อบทสนทนายาวเกินกำหนด
  5. ให้ผู้ใช้เห็นและแก้สิ่งที่ Agent จำไว้ได้

อยากลองใช้ AI ช่วยวางแผนเส้นทางอาชีพสาย AI ลองคุยกับ AI Career Assistant ของ Plants.work หรือลงมือสร้าง Agent ใน workflow จริงผ่านคอร์ส n8n AI