Mastra 是一个 开源的 TypeScript 智能体(Agent)框架,专门用于构建 AI 应用和功能。它提供了构建智能体所需的核心能力,包括记忆、工具调用、RAG、工作流执行等。Mastra 提供从模型调用、智能体记忆、工作流编排、RAG 到评测与部署的一整套能力,帮助开发者快速构建和上线 AI 智能体应用。

主要功能总结如下:

  1. 模型路由(Model routing)

    • 基于 Vercel AI SDK

    • 提供统一接口调用各类大模型(OpenAI、Anthropic、Google Gemini 等)。

  2. 智能体记忆与工具调用(Agent memory & tool calling)

    • 可以给智能体配置工具(函数)供其调用。

    • 支持持久化记忆,按时间、语义相似度或对话线程进行检索。

  3. 工作流图(Workflow graphs)

    • 用图结构组织确定性的 LLM 调用流程。

    • 支持 .then().branch().parallel() 等语法,便于分支、链式调用。

    • 内置日志与可观测性支持。

  4. 智能体开发环境(Playground)

    • 本地开发时可直接与智能体对话。

    • 可查看其状态与记忆,方便调试。

  5. RAG(检索增强生成)

    • 提供文档处理 API(文本、HTML、Markdown、JSON)。

    • 支持切片、向量化存储、多种向量数据库与嵌入模型。

    • 在查询时检索相关内容,为 LLM 提供上下文。

  6. 部署(Deployment)

    • 支持集成到 React、Next.js、Node.js 应用中。

    • 提供部署助手,可快速打包成 Node.js 服务或部署到 Vercel、Cloudflare Workers、Netlify 等无服务器平台。

  7. 评测(Evals)

    • 内置多种自动化评估指标(模型打分、规则、统计)。

    • 包括毒性、偏见、相关性、事实准确性等。

    • 支持自定义评测方法

  • Mastra 安装与快速开始

    前置条件

  • Node.js v20+

  • 一个支持的 LLM API Key(默认支持 OpenAI

安装方式一:使用 CLI 快速创建项目

  1. 启动交互式安装:

    npx create-mastra@latest
  2. 非交互式安装(直接指定参数):

    npx create-mastra@latest --project-name hello-mastra --example --components tools,agents,workflows --llm openai
  3. 使用模板(例如 Text-to-SQL 应用):

    npx create-mastra@latest --template text-to-sql

👉 在 .env 文件中配置 API Key:

OPENAI_API_KEY=<your-api-key>
  1. 启动开发服务器:

    npm run dev 

安装方式二:手动安装

  1. 创建新项目:

    mkdir hello-mastra && cd hello-mastra npm init -y
  2. 安装依赖:

    npm install typescript tsx @types/node mastra@latest --save-dev
    npm install @mastra/core@latest zod@^3 @ai-sdk/openai
    
  3. package.json 添加脚本:

    { "scripts": { "dev": "mastra dev", "build": "mastra build" } }
  4. 配置 TypeScript(tsconfig.json):

    {
      "compilerOptions": {
        "target": "ES2022",
        "module": "ES2022",
        "moduleResolution": "bundler",
        "esModuleInterop": true,
        "strict": true,
        "skipLibCheck": true,
        "noEmit": true,
        "outDir": "dist"
      },
      "include": ["src/**/*"]
    }
    
  5. 配置 .env

    OPENAI_API_KEY=<your-api-key>

     


示例:创建一个天气工具与智能体

  • 工具(weather-tool.ts):获取天气信息。

  • 智能体(weather-agent.ts):调用工具并回答天气问题。

  • 注册智能体(index.ts):把 agent 注册到 Mastra。

启动后即可在 Mastra Playground 测试。


在已有项目中集成

  • 支持 Next.js、Vite + React、Astro、Express 等。

  • 使用:

    mastra init

后续步骤

  • 本地开发(npm run dev

  • 部署到 Mastra Cloud 或 Vercel、Cloudflare、Netlify 等平台。

 

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐