Mastraは、AIエージェントや関連機能を構築するためのオープンソースのTypeScriptフレームワークです。
これにより、メモリを持ち、関数を実行できるAIエージェントの作成や、決定論的なワークフローでのLLM(大規模言語モデル)呼び出しの連鎖が可能になります。
主な特徴:
-
モデルルーティング: Vercel AI SDKを利用して、OpenAI、Anthropic、Google Geminiなど、さまざまなLLMプロバイダーとの統一的なインターフェースを提供します
-
エージェントのメモリとツール呼び出し: エージェントにツール(関数)を持たせることができ、メモリを永続化し、最新性、セマンティック類似性、または会話スレッドに基づいて取得できます
-
ワークフローグラフ: LLM呼び出しを決定論的に実行するためのグラフベースのワークフローエンジンを提供し、各ステップの入出力をログに記録し、オブザーバビリティツールに送信できます
-
エージェント開発環境: ローカル開発環境でエージェントと対話し、その状態やメモリを確認できます
-
RAG(Retrieval-Augmented Generation): ドキュメントをチャンクに分割し、埋め込みを作成、ベクターデータベースに保存し、クエリ時に関連するチャンクを取得してLLMの応答をデータに基づかせることができます
-
デプロイメント: エージェントやワークフローをReact、Next.js、Node.jsアプリケーションに組み込んだり、スタンドアロンのエンドポイントとしてデプロイできます
-
評価(Evals): 自動評価指標を提供し、毒性、バイアス、関連性、事実性などの評価が可能です
公式サイトの「Examples」セクションでは、Mastraを使用した具体的なプロジェクト例が紹介されています。 citeturn0search0これには、テキスト生成、構造化出力、ストリーミング応答、RAG、音声機能などが含まれます。
主な例:
-
エージェント: システムプロンプトを持つエージェント、ツールを使用するエージェント、階層型マルチエージェントシステムなど
-
ワークフロー: ワークフローの作成、順次ステップ、並列ステップ、条件分岐、エージェントの呼び出しなど
-
RAG: テキストのチャンク化と埋め込み、ベクターデータベースへの保存、結果の再ランキングなど
「Docs」セクションでは、Mastraの詳細なドキュメントが提供されています。 citeturn0search1インストール方法、プロジェクト構造、エージェントの作成、ツールの追加、ワークフローの構築、RAGの実装、デプロイメント、評価、音声統合など、多岐にわたるトピックが網羅されています。
さらに、MastraはMCP(Model Context Protocol)の採用を進めており、AIツールの統合を標準化し、エコシステム全体の互換性と効率性を向上させることを目指しています。
公式サイトの各セクションを参照しながら、具体的なコード例や詳細な解説を確認することで、Mastraの機能や使い方を深く理解できるでしょう。