TokenMizer เพิ่มความจำระยะยาวให้ LLM ด้วยโครงสร้างกราฟและพร็อกซี
แก้ไขปัญหาความจำสั้นของโมเดลภาษาขนาดใหญ่ด้วย TokenMizer เครื่องมือโอเพนซอร์สที่ใช้ระบบกราฟและจำลองตัวเองเป็น API พร็อกซี

ภาพประกอบจากคลังภาพสต็อก ไม่ใช่ภาพจากเหตุการณ์จริง
- TokenMizer ทำงานเป็นพร็อกซีคั่นกลางระหว่างแอปและ OpenAI API โดยไม่ต้องแก้โค้ด SDK
- ใช้กราฟความจำ (Graph Memory) แทนการยัดประวัติการสนทนาทั้งหมดลงใน context window
- มีเครื่องมือ Graph Explorer สร้างด้วย D3.js ช่วยให้มองเห็นความสัมพันธ์ของข้อมูลได้อย่างชัดเจน
- รองรับการติดตั้งผ่าน pip และมี MCP server สำหรับใช้งานกับโปรแกรมแก้ไขโค้ดอย่าง Cursor
การใช้งานโมเดลภาษาขนาดใหญ่หรือ LLM มักเริ่มต้นจากศูนย์ในทุกๆ การสนทนา เมื่อปิดแท็บและเปิดเซสชันใหม่ โมเดลจะจำไม่ได้เลยว่าผู้ใช้คือใคร เคยคุยอะไรกันเมื่อวาน หรือตัดสินใจเรื่องใดไปเมื่อสัปดาห์ก่อน วิธีแก้ปัญหาทั่วไปคือการยัดประวัติการแชททั้งหมดกลับเข้าไปใน context window ซึ่งมีต้นทุนสูง ทำงานช้า และสุดท้ายก็จะชนขีดจำกัดฮาร์ดโค้ด
นักพัฒนา Shweta Mishra จึงได้สร้าง TokenMizer ขึ้นมาเพื่อแก้ไขปัญหานี้ในแนวทางที่แตกต่าง โดยแทนที่จะจำด้วยการอ่านข้อมูลเดิมทั้งหมดซ้ำๆ ระบบนี้เลือกที่จะจดจำด้วยการสร้างกราฟความสัมพันธ์ขึ้นมาแทน
ตัวสถาปัตยกรรมของ TokenMizer ถูกออกแบบมาให้ทำหน้าที่เป็นพร็อกซีที่วางอยู่หน้า API ใดๆ ที่รองรับรูปแบบของ OpenAI ทำให้แอปพลิเคชันของคุณไม่ต้องเปลี่ยนวิธีเรียกใช้งานโมเดล แค่เปลี่ยนค่า API base URL ให้ชี้มาที่ TokenMizer แทนที่จะพุ่งตรงไปที่ OpenAI ทุกคำขอและการตอบกลับจะวิ่งผ่านเครื่องมือนี้ วิเคราะห์ และถูกจัดเก็บไว้ก่อนจะส่งต่อไปยังโมเดลจริง

ภาพประกอบจากคลังภาพสต็อก ไม่ใช่ภาพจากเหตุการณ์จริง
ทางเลือกในการออกแบบนี้มีความสำคัญมากกว่าที่ตาเห็น เพราะทำให้ TokenMizer สามารถทำงานร่วมกับเฟรมเวิร์กหรือแอปพลิเคชันใดๆ ที่รองรับรูปแบบ OpenAI API อยู่แล้วได้ทันที โดยไม่ต้องแก้ไข SDK หรือเขียนโค้ดเชื่อมต่อใหม่ การเพิ่มความจำให้กับแอปเดิมจึงทำได้เพียงแค่เปลี่ยน URL บรรทัดเดียวเท่านั้น
การใช้พร็อกซีคั่นกลางในลักษณะนี้ช่วยลดภาระในการปรับแก้โค้ดฝั่งแอปพลิเคชันได้อย่างมหาศาล แต่วิธีนี้ก็แลกมาด้วยความเสี่ยงด้านความเสถียร เนื่องจากหากระบบพร็อกซีเกิดล่มขึ้นมา การเรียกใช้งาน LLM ของแอปทั้งหมดก็จะหยุดชะงักตามไปด้วย นักพัฒนาจึงต้องให้ความสำคัญกับการทดสอบระบบและการจัดการข้อผิดพลาดอย่างรัดกุม
ในส่วนของฟีเจอร์หลักแบ่งออกเป็นสองส่วนสำคัญ ได้แก่ File Intelligence ที่คอยตรวจสอบว่าโค้ด เอกสาร หรือไฟล์ใดถูกอ้างอิงถึงระหว่างการสนทนาเพื่อสร้างบริบท และ Graph Memory ที่ดึงเอนทิตีและความสัมพันธ์ต่างๆ เช่น บุคคล โปรเจกต์ การตัดสินใจ และการพึ่งพากัน มาเก็บไว้เป็นโหนดและเส้นเชื่อมในฐานข้อมูล SQLite
ข้อแตกต่างในเชิงปฏิบัติคือ ระบบความจำแบบบันทึกข้อความตรงๆ (flat-log) จะทำงานช้าลงและมีต้นทุนสูงขึ้นเรื่อยๆ ตามขนาดประวัติที่ยาวขึ้นเพราะต้องค้นหาข้อความจำนวนมาก แต่ระบบความจำแบบกราฟจะยังคงทำงานได้อย่างรวดเร็วเพราะเป็นการท่องไปตามเส้นทางความสัมพันธ์ ไม่ใช่การกวาดอ่านไฟล์บันทึกข้อความทั้งหมด
นอกจากนี้ TokenMizer ยังมาพร้อมกับ Graph Explorer ที่สร้างขึ้นด้วย D3.js ซึ่งเป็นแผนที่ภาพแบบอินเทอร์แอกทีฟแสดงทุกเอนทิตีและการเชื่อมต่อที่ระบบเรียนรู้ ช่วยให้ผู้ใช้สามารถตรวจสอบได้ทันทีว่าเหตุใดโมเดลจึงดึงความจำจากสามเซสชันก่อนหน้าขึ้นมาใช้งาน
ตัวไลบรารีแจกจ่ายผ่าน pip ทำให้สามารถติดตั้งลงในสภาพแวดล้อม Python ที่มีอยู่ได้โดยตรง และยังมี CLI สำหรับตรวจสอบ ค้นหา และจัดการกราฟความจำโดยไม่ต้องเขียนโค้ด รวมถึงรองรับ MCP (Model Context Protocol) server เพื่อให้โปรแกรมอย่าง Cursor สามารถดึงความจำไปใช้เป็นเครื่องมือได้
ที่มา: Dev.to
พบข้อมูลผิดพลาดในบทความนี้? แจ้งปัญหาบทความนี้
ความคิดเห็น
แสดงความคิดเห็น