
Mastra เป็นเฟรมเวิร์ก TypeScript ที่มีความคิดเห็นที่ช่วยให้คุณสร้างแอปพลิเคชันและคุณสมบัติ AI ได้อย่างรวดเร็ว มันให้ชุดของดั้งเดิมที่คุณต้องการ: เวิร์กโฟลว์, ตัวแทน, ผ้าขี้ริ้ว, การบูรณาการ, การซิงค์และ evals คุณสามารถเรียกใช้ Mastra บนเครื่องในเครื่องของคุณหรือปรับใช้กับคลาวด์ที่ไม่มีเซิร์ฟเวอร์
คุณสมบัติหลักของ Mastra คือ:
| คุณสมบัติ | คำอธิบาย |
|---|---|
| รุ่น LLM | Mastra สนับสนุนผู้ให้บริการ LLM ที่หลากหลายรวมถึง OpenAI, Manthropic, Google Gemini คุณสามารถเลือกโมเดลและผู้ให้บริการเฉพาะเลือกระบบและการแจ้งเตือนของผู้ใช้และตัดสินใจว่าจะสตรีมการตอบกลับหรือไม่ |
| ตัวแทน | ตัวแทนเป็นระบบที่รูปแบบภาษาเลือกลำดับของการกระทำ ใน Mastra ตัวแทนให้แบบจำลอง LLM ด้วยเครื่องมือเวิร์กโฟลว์และข้อมูลที่ซิงค์ ตัวแทนสามารถเรียกฟังก์ชั่นของคุณเองหรือ APIs ของการบูรณาการของบุคคลที่สามและการเข้าถึงฐานความรู้ที่คุณสร้าง |
| เครื่องมือ | เครื่องมือพิมพ์ฟังก์ชั่นที่สามารถดำเนินการโดยตัวแทนหรือเวิร์กโฟลว์ด้วยการเข้าถึงการรวมและการตรวจสอบพารามิเตอร์ในตัว เครื่องมือแต่ละตัวมีสคีมาที่กำหนดอินพุตฟังก์ชั่นผู้ดำเนินการที่ใช้ตรรกะและการเข้าถึงการรวมที่กำหนดค่า |
| เวิร์กโฟลว์ | เวิร์กโฟลว์เป็นเครื่องสถานะที่ใช้กราฟที่ทนทาน พวกเขามีลูปการแตกแขนงรอการป้อนข้อมูลของมนุษย์ฝังเวิร์กโฟลว์อื่น ๆ จัดการข้อผิดพลาดการลองใหม่การแยกวิเคราะห์และอื่น ๆ พวกเขาสามารถสร้างในรหัสหรือด้วยตัวแก้ไขภาพ แต่ละขั้นตอนในเวิร์กโฟลว์มีการติดตาม opentelemetry ในตัว |
| ผ้าขี้ริ้ว | Retrieval-Augemented Generation (RAG) ช่วยให้คุณสร้างฐานความรู้สำหรับตัวแทน RAG เป็นไปป์ไลน์ ETL ที่มีเทคนิคการสืบค้นที่เฉพาะเจาะจงรวมถึง chunking การฝังและการค้นหาเวกเตอร์ |
| การรวมและซิงค์ | ใน Mastra การซิงค์เป็นฟังก์ชั่น async ที่สามารถปรับใช้เป็นงานพื้นหลังในสภาพแวดล้อมการดำเนินการที่แตกต่างกัน การรวมระบบเป็นไคลเอนต์ API ที่ปลอดภัยแบบอัตโนมัติสำหรับบริการของบุคคลที่สามที่สามารถใช้เป็นเครื่องมือสำหรับตัวแทนหรือขั้นตอนในเวิร์กโฟลว์ |
| Evals | EVALS เป็นการทดสอบอัตโนมัติที่ประเมินเอาต์พุต LLM โดยใช้วิธีการแบบจำลองที่มีกฎเกณฑ์ตามกฎและทางสถิติ แต่ละการประเมินจะส่งคืนคะแนนปกติระหว่าง 0-1 ที่สามารถบันทึกและเปรียบเทียบได้ Evals สามารถปรับแต่งด้วยพรอมต์และฟังก์ชั่นการให้คะแนนของคุณเอง |
หากคุณไม่มีคีย์ API สำหรับผู้ให้บริการ LLM คุณสามารถรับได้จากบริการต่อไปนี้:
หากคุณไม่มีบัญชีกับผู้ให้บริการเหล่านี้คุณสามารถลงทะเบียนและรับคีย์ API Openai และมานุษยวิทยาต้องการบัตรเครดิตเพื่อรับรหัส API ราศีเมถุนไม่มีและมีระดับฟรีสำหรับ API
เป็นขั้นตอนแรกให้สร้างไดเรกทอรีโครงการและนำทางเข้าไป:
mkdir hello-mastra
cd hello-mastraถัดไปเริ่มต้นโครงการ typeScript โดยใช้ NPM:
npm init -y
npm install typescript tsx @types/node @mastra/core@alpha --save-devmkdir src
touch src/index.ts จากนั้นเพิ่มรหัสนี้เป็น src/index.ts :
import { Agent } from '@mastra/core' ;
async function main ( ) {
const agent = new Agent ( {
name : 'story-writer' ,
maxSteps : 3 ,
model : {
provider : 'OPEN_AI' ,
name : 'gpt-4o' ,
toolChoice : 'auto' ,
} ,
instructions : `You are a helpful assistant who writes creative stories.` ,
tools : { } ,
} ) ;
const result = await agent . text ( {
messages : [ 'Write a short story about a robot learning to paint.' ] ,
} ) ;
console . log ( 'Agent response:' , result . text ) ;
}
main ( ) ;ในที่สุดเรียกใช้สคริปต์:
OPENAI_API_KEY= < your-openai-api-key > npx tsx src/index.ts หากคุณใช้มานุษยวิทยาตั้งค่า ANTHROPIC_API_KEY หากคุณใช้ราศีเมถุนตั้ง GOOGLE_GENERATIVE_AI_API_KEY
เรามีความไม่ลงรอยกันของชุมชน มาทักทายและแจ้งให้เราทราบหากคุณมีคำถามใด ๆ หรือต้องการความช่วยเหลือใด ๆ
นอกจากนี้ยังมีประโยชน์อย่างมากหากคุณปล่อยให้โครงการเป็นดาวที่นี่ที่ด้านบนของหน้า