ทีม Tiger Data สร้าง Slack AI agent ชื่อ 'Eon' ภายใน 6 สัปดาห์ จนพนักงาน 50% ของบริษัทใช้งานทุกวัน และได้เปิดซอร์สกระบวนการทั้งหมดไว้แล้ว โดยโฟกัสที่เสถียรภาพระดับ production จริง ไม่ใช่แค่เดโม และหัวใจสำคัญคือการแก้ปัญหาในภาคสนามจริง ไม่ว่าจะเป็นการรักษาบริบท, API ล่ม, คำขอพร้อมกันจำนวนมาก แทนที่จะโฟกัสแค่การเรียกใช้ LLM

1. หน่วยความจำที่เข้าใจเวลา (Time-Based Memory)
  • Slack ส่งมาได้แค่ข้อความเดี่ยว จึงไม่มีบริบทจากบทสนทนาก่อนหน้า ทำให้จัดการคำถามอย่าง "แล้วเรื่องนั้นไปถึงไหนแล้ว?" ได้ยาก
  • วิธีแก้: บันทึกทุกข้อความใน Slack แบบเรียลไทม์ลง TimescaleDB พร้อม timestamp ใช้การ query ด้วย SQL เพื่อทำความเข้าใจบริบท → เร็ว เสถียร และไม่ติดข้อจำกัดของ API
2. หลีกเลี่ยงกับดักของ MCP server แบบครอบจักรวาล (Custom MCP Servers)
  • MCP(Model Context Protocol): มาตรฐานที่ให้ agent เข้าถึงเครื่องมือภายนอกอย่าง GitHub, Linear เป็นต้น
  • ปัญหา: server ทางการมีเครื่องมือที่ไม่จำเป็นมากเกินไป ทำให้เปลืองโทเค็น และการเรียก API ก็ซับซ้อนเพราะต้องเรียกหลายครั้ง
  • วิธีแก้: สร้าง MCP server ที่ปรับแต่งเองโดยตรง (e.g., tiger-linear-mcp-server) ให้ดึงข้อมูลทุกอย่างที่ต้องใช้ได้ในเครื่องมือเดียวในครั้งเดียว → เพิ่มประสิทธิภาพด้วย context engineering
3. Production ต้องออกแบบโดยตั้งต้นว่าความล้มเหลวจะเกิดขึ้น (Failure-Resilient Design)
  • ต้องรองรับทั้งการ crash, API ล่ม, และทราฟฟิกพุ่งสูง
  • วิธีแก้: พัฒนาเฟรมเวิร์ก tiger-agents-for-work
    • บันทึก event ลง PostgreSQL ก่อนเสมอ → ป้องกันข้อมูลสูญหาย
    • retry อัตโนมัติ (สูงสุด 3 ครั้ง ห่างกัน 10 นาที)
    • worker pool แบบคงที่ → จำกัด concurrency และประมวลผลคิว
    • asynchronous signaling → ตอบสนองได้ในระดับมิลลิวินาที
โอเพนซอร์สและคู่มือเริ่มต้น
  • เปิดโค้ดทั้งหมดใน tiger-eon และสามารถ deploy Slack agent ได้ด้วยสคริปต์ติดตั้งภายใน 10 นาที
  • เป็นโมดูลาร์: ใช้งานแยกส่วนได้ทั้ง Slack memory, MCP server, และเฟรมเวิร์ก (e.g., ใช้ tiger-docs-mcp-server สำหรับค้นหาเอกสาร)
  • ข้อความสำคัญ: AI agent ไม่จำเป็นต้องพึ่งโครงสร้างพื้นฐานพิเศษ แต่สามารถสร้างบน PostgreSQL ได้ด้วยการประมวลผล event ที่ทนทาน, หน่วยความจำแบบมีโครงสร้าง, และเครื่องมือที่โฟกัสเฉพาะงาน

ยังไม่มีความคิดเห็น

ยังไม่มีความคิดเห็น