mastra
v0.1.10

Mastraは、AIアプリケーションと機能を迅速に構築するのに役立つ意見のあるタイプスクリプトフレームワークです。必要な一連のプリミティブを提供します:ワークフロー、エージェント、ぼろきれ、統合、同期、エバル。ローカルマシンでマストラを実行したり、サーバーレスクラウドに展開したりできます。
主なマストラ機能は次のとおりです。
| 特徴 | 説明 |
|---|---|
| LLMモデル | Mastraは、Openai、Anthropic、Google Geminiなど、さまざまなLLMプロバイダーをサポートしています。特定のモデルとプロバイダーを選択し、システムとユーザーのプロンプトを選択し、応答をストリーミングするかどうかを決定できます。 |
| エージェント | エージェントは、言語モデルが一連のアクションを選択するシステムです。 Mastraでは、エージェントはLLMモデルにツール、ワークフロー、および同期したデータを提供します。エージェントは、サードパーティの統合の独自の関数またはAPIを呼び出し、構築する知識ベースにアクセスできます。 |
| ツール | ツールは、組み込みの統合アクセスとパラメーター検証を備えたエージェントまたはワークフローで実行できる型切れの関数です。各ツールには、入力を定義するスキーマ、ロジックを実装するエグゼクティア関数、および構成された統合へのアクセスがあります。 |
| ワークフロー | ワークフローは、耐久性のあるグラフベースの状態マシンです。ループ、分岐、人間の入力を待ち、他のワークフローを埋め込み、エラー処理、再試行、解析などを備えています。それらは、コードまたはビジュアルエディターで構築できます。ワークフローの各ステップには、オペンテレメトリートレースが組み込まれています。 |
| ぼろきれ | 検索された生成(RAG)では、エージェントの知識ベースを構築できます。 RAGは、チャンク、埋め込み、ベクトル検索など、特定のクエリテクニックを備えたETLパイプラインです。 |
| 統合と同期 | Mastraでは、同期は異なる実行環境でバックグラウンドタスクとして展開できる非同期関数です。統合は、エージェントのツールまたはワークフローのステップとして使用できるサードパーティサービス用の自動生成されたタイプセーフAPIクライアントです。 |
| 回避 | Evalsは、モデルグレード、ルールベース、および統計的方法を使用してLLM出力を評価する自動テストです。各評価は、ログに記録して比較できる0-1の間の正規化されたスコアを返します。 Evalsは、独自のプロンプトとスコアリング機能でカスタマイズできます。 |
LLMプロバイダーのAPIキーがない場合は、次のサービスから入手できます。
これらのプロバイダーにアカウントがない場合は、サインアップしてAPIキーを取得できます。 Openaiと人類は、APIキーを取得するためにクレジットカードを必要とします。 Geminiは、APIに寛大なフリー層を持っていません。
最初のステップとして、プロジェクトディレクトリを作成し、それに移動します。
mkdir hello-mastra
cd hello-mastra次に、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を設定します。 Geminiを使用している場合は、 GOOGLE_GENERATIVE_AI_API_KEYを設定します。
オープンなコミュニティの不一致があります。来て、挨拶して、質問があるか、物事を実行できるように支援が必要かどうかをお知らせください。
また、プロジェクトをここにページの上部にスターを残す場合にも非常に役立ちます