Mastra - เฟรมเวิร์ก AI Agent สำหรับ TypeScript
(github.com/mastra-ai)- เฟรมเวิร์กแบบ opinionated ที่พัฒนาบน TypeScript เพื่อสร้างแอปพลิเคชันและความสามารถด้าน AI ได้อย่างรวดเร็ว
- มีฟังก์ชันหลักที่จำเป็นสำหรับการพัฒนา AI เช่น workflow, agent, RAG, integration และ evals
- สามารถรันได้ทั้งบนสภาพแวดล้อมแบบโลคัลหรือบนเซิร์ฟเวอร์เลสคลาวด์
คุณสมบัติหลัก
- LLM Models : ใช้ Vercel AI SDK เพื่อรองรับผู้ให้บริการ LLM หลากหลายราย เช่น OpenAI, Anthropic, Google Gemini ผ่านอินเทอร์เฟซแบบรวมศูนย์ สามารถเลือกโมเดลและกำหนดได้อย่างอิสระว่าจะใช้การสตรีมหรือไม่
- Agents : Agents คือระบบที่ช่วยให้ language model ตัดสินใจลำดับของ action ได้ด้วยตัวเอง โดยมีเครื่องมือ, workflow และข้อมูลที่ซิงก์ไว้ให้ จึงสามารถเรียกใช้ฟังก์ชันหรือใช้ประโยชน์จาก knowledge base ได้เมื่อจำเป็น
- Tools : Tools คือฟังก์ชัน TypeScript ที่ agent หรือ workflow สามารถเรียกใช้ได้ แต่ละ tool มี schema ของพารามิเตอร์, executor function ที่ทำหน้าที่ตามตรรกะที่กำหนดไว้ และสิทธิ์เข้าถึงบริการ integration
- Workflows : Workflows คือ state machine สำหรับงานระยะยาวที่ทำงานบนกราฟ รองรับการวนซ้ำ, การแตกแขนง, การรออินพุตจากมนุษย์, การรวม workflow อื่น, การจัดการข้อผิดพลาด, การลองใหม่ และการพาร์ส โดยมี OpenTelemetry tracing ใช้กับทุก step
- RAG(Retrieval-Augmented Generation) : RAG ช่วยให้สร้าง knowledge base สำหรับ agent ได้ โดยใช้ ETL pipeline เพื่อแบ่ง chunk, ทำ embedding, ค้นหาแบบเวกเตอร์ และให้บริบท
- Integrations : ใน Mastra, Integration คือ Type-safe API client ที่ถูกสร้างอัตโนมัติ ทำให้สามารถนำบริการ third-party มาใช้เป็น tool หรือ step ใน workflow ได้
- Evals : ประเมินผลลัพธ์ของ LLM โดยอัตโนมัติด้วยวิธีแบบ model-based, rule-based และเชิงสถิติ พร้อมคืนค่า score มาตรฐานระหว่าง 0~1 เพื่อนำไปใช้เปรียบเทียบประสิทธิภาพและทำ logging ได้
1 ความคิดเห็น
ความคิดเห็นบน Hacker News
โค้ดตัวอย่างไม่ได้ชวนสนใจเท่าไร
คาดหวังกับ Mastra ไว้มาก
ดูเจ๋งดี! ขอถามสั้น ๆ ว่ามีแผนจะรองรับเซิร์ฟเวอร์ SSE MCP ไหม
ในฐานะผู้ใช้ Mastra ก็พอใจมาก
ยังไม่ค่อยเข้าใจเอเจนต์
ยินดีด้วย! ขอถามนอกเรื่องนิดหนึ่ง - เว็บไซต์เป็น OS ด้วยหรือเปล่า
การที่ทำโดยนักพัฒนา Gatsby เป็นข้อเสียมากกว่าข้อดี
มีเฟรมเวิร์กคล้ายกันอีกเป็นร้อยที่ทำสิ่งเดียวกันไม่มากก็น้อย
ยินดีกับการเปิดตัว
ใช้เฟรมเวิร์กของ Mastra และเรียนรู้ทุกอย่างเกี่ยวกับการทำงานของเอเจนต์ผ่านเอกสาร