Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Mastraに入門してみた ~AWS CDKを添えて~
Search
つくぼし
April 22, 2025
Technology
0
620
Mastraに入門してみた ~AWS CDKを添えて~
つくぼし
April 22, 2025
Tweet
Share
More Decks by つくぼし
See All by つくぼし
Amazon Bedrock GenUハンズオン座学資料 #2 GenU環境でRAGを体験してみよう
tsukuboshi
0
300
Amazon Bedrock GenUハンズオン座学資料 #1 GenU環境で生成AIを体験してみよう
tsukuboshi
0
700
AWSエンジニアに捧ぐLangChainの歩き方
tsukuboshi
4
1.3k
世界の中心でApp Runnerを叫ぶ ~Aurora DSQLを添えて~
tsukuboshi
0
350
初めてのGPTs ~ネコ派を〇〇派に変える技術~
tsukuboshi
0
620
Amplify Gen 2ではじめる 生成AIアプリ開発入門
tsukuboshi
1
1.3k
AWSで構築するパターン別RAG構成解説
tsukuboshi
5
6.4k
AWS構成図から CloudFormationとパラメータシートを 自動生成するシステムを作ってみた
tsukuboshi
0
9.9k
5分で分かる(かもしれない) Vector engine for OpenSearch Serverless
tsukuboshi
1
1.6k
Other Decks in Technology
See All in Technology
GeminiとNotebookLMによる金融実務の業務革新
abenben
0
230
Github Copilot エージェントモードで試してみた
ochtum
0
110
生成AIでwebアプリケーションを作ってみた
tajimon
2
150
Welcome to the LLM Club
koic
0
170
セキュリティの民主化は何故必要なのか_AWS WAF 運用の 10 の苦悩から学ぶ
yoh
1
160
Oracle Cloud Infrastructure:2025年6月度サービス・アップデート
oracle4engineer
PRO
2
250
Amazon ECS & AWS Fargate 運用アーキテクチャ2025 / Amazon ECS and AWS Fargate Ops Architecture 2025
iselegant
16
5.6k
フィンテック養成勉強会#54
finengine
0
180
PHP開発者のためのSOLID原則再入門 #phpcon / PHP Conference Japan 2025
shogogg
4
770
地図も、未来も、オープンに。 〜OSGeo.JPとFOSS4Gのご紹介〜
wata909
0
110
AWS テクニカルサポートとエンドカスタマーの中間地点から見えるより良いサポートの活用方法
kazzpapa3
2
550
AWS Summit Japan 2025 Community Stage - App workflow automation by AWS Step Functions
matsuihidetoshi
1
270
Featured
See All Featured
How to Think Like a Performance Engineer
csswizardry
24
1.7k
We Have a Design System, Now What?
morganepeng
53
7.7k
Typedesign – Prime Four
hannesfritz
42
2.7k
Why Our Code Smells
bkeepers
PRO
337
57k
Build The Right Thing And Hit Your Dates
maggiecrowley
36
2.8k
Music & Morning Musume
bryan
46
6.6k
The Pragmatic Product Professional
lauravandoore
35
6.7k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
124
52k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
29
9.5k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
RailsConf 2023
tenderlove
30
1.1k
Transcript
Mastraに⼊⾨してみた ~AWS CDKを添えて~
2 ⾃⼰紹介 • 部署 ◦ AWS事業本部コンサルティング部 • ニックネーム ◦ つくぼし
• 最近推しているAWSサービス ◦ AWS Infrastructure Composer • SNS/ブログ ◦ X(@tsukuboshi0755) ◦ DevelopersIO(つくぼし)
3 これからAIエージェント作るなら Mastraを推したい
Mastraとは 4 ⚫ TypeScript製のAIエージェントフレームワーク ⚫ OpenAI、Anthropic、Gemini等の様々なAIプロバイダーとシームレスに連携可能 ⚫ エージェント、メモリ、ワークフロー、RAG、可観測性、評価、⾳声といったLLMアプ リに必要な機能がオールインワンで揃う
LangGraphの⼈気を約半年で抜かしたMastra 5
Mastraのアクセス画⾯ 6 ⚫ ビルド時にHonoベースのHTTPサーバが⽣成され、Mastra単独でも以下の画⾯ですぐ試せる ⚫ Next.jsと直接統合できるので、フロントエンドをカスタマイズする事も容易
Mastraの実態はVercel AI SDKのスーパーセット 7 参照:https://mastra.ai/ja/docs/frameworks/ai-sdk
⚫ LangChainとMastraという単語が有名なので直接⽐較されるのを⾒かけるが、そもそもフ レームワークのレイヤーが異なるため、この2つを⽐較してもあまり意味がない事が多い ⚫ もし⼤雑把で良いから⽐較したい場合、LangChain vs Vercel AI SDK、LangGraph vs
Mastraの構造の⽅がまだ良いのでは?と考えている LangChainとMastraは同軸で⽐較するものではない 8 ファミリー系列 LLM処理汎用化フレームワーク AIエージェントフレームワーク LangChain系 LangChain LangGraph Vercel AI SDK系 Vercel AI SDK Mastra
Mastraエージェントの定義 9 ⚫ name(エージェント名)、instructions(システムプロンプト)、model(AIモデル)を定義 ⚫ toolsにはエージェントで呼び出したいツール群を定義する ⚫ MCPサーバをツールで呼び出す場合はawait mcp.getTools()を指定
MastraにおけるMCPサーバの定義 10 ⚫ @mastra/mcpモジュールのMCPConfigurationで定義可能 ⚫ servers内に使⽤したいMCPサーバの設定を記載する
Mastraエージェントの便利機能 11 ⚫ エージェントはステップ単位でタスクを実⾏する ⚫ maxStepsを使うと、LLM連続呼び出しの最⼤数を増減し、ステップ回数を制御できる ⚫ onStepFinishを使うと、各ステップ終了時の結果を出⼒し、タスクの進捗状況を表⽰で きる
Mastraのライセンス(ELv2)をどの程度気にする必要があるか? 12 ⚫ Elastic Licenseは、OSS公開されていたElasticSearchがクラウドプロバイダー社のマ ネージドサービスとして有料提供された事に対して、提供元のElastic社が反発した事が きっかけで⽣まれたライセンス ⚫ MastraにはELv2(Elastic License
v2)が付くので、使⽤の許可基準は以下のようになる ◯ Mastraを元に作ったAIエージェントアプリケーションを顧客に提供する→⭕ ◯ クラウドにおけるマネージドサービスとして、MastraのAPI各種とUIにそのままアク セスできる形で顧客に提供する→❌ ⚫ 結論:MastraでSaaSアプリを開発/提供するレベルであればほぼ気にしなくて良い認識
13 MastraをAWSにデプロイしたい どうせならTypeScriptで組みたい...
14 IaCにはAWS CDKを使おう!
AWS CDKとは 15 ⚫ AWSリソースをプログラミング⾔語で記載できるTypeScript製のフレームワーク ⚫ 裏側ではCDKコードがCloudFormationテンプレートに変換されデプロイされる仕組み ⚫ CDKのライブラリはコンストラクトレベルという単位で分けられている ◯
L1はAWSリソースがCloudFormationとほぼ同⼀の項⽬で、細かいパラメータを制御 できる ◯ L2はAWSリソースのベストプラクティスがデフォルト値として事前に設定されてお り、より少ないパラメータでリソースを構築できる ◯ L3は複数のAWSリソースがパターン化され、特定のユースケースにおけるアーキテク チャ全体を⼀括で展開できる
コンテナイメージのビルド/ECRへのプッシュ⾃動化 16 ⚫ cdk-docker-image-deploymentのDockerImageDeploymentを使⽤する事で、コンテナ イメージのビルドとECRへのプッシュをCDKデプロイ時に丸っと⾃動化可能 ⚫ ContainerImage.fromAssetが同⼀のECRリポジトリしか使えないのに対して、 cdk-docker-image-deploymentはイメージ毎にECRリポジトリを指定する事が可能
ALB + ECS Fargateの構成パターンを1つのモジュールで構築 17 ⚫ ecs_patternsのApplicationLoadBalancedFargateServiceを使⽤する事で、ALB + ECS Fargateの構成を簡単に構築できる
⚫ ネットワーク/ロードバランサー/各種ECSリソース等の設定がベストプラクティスで抽象 化され、少ない⾏数でデプロイ可能
npm run cdk:deployコマンドを実⾏するだけでAWSにデプロイできます 18
AWS MCP Serversについて 19 ⚫ AWS公式が公開しているMCP Serverの⼀覧がまとまっている ◯ https://github.com/awslabs/mcp/ ◯
Mastra以外にも、Claude Desktop等で使うのも良い ⚫ 以下のAWS MCP MCP Serversは認証情報登録が必要ないのでオススメ ◯ AWS Documentation MCP Server:AWSドキュメントの検索 ◯ AWS CDK MCP Server:CDKのベストプラクティス ◯ AWS Terraform MCP Server:Terraformのベストプラクティス
サンプルコードを知りたい⽅向け 20 https://zenn.dev/tsukuboshi/articles/nextjs-mastra-mcp-with-aws
次回予告 21 Mastraに競⾺予想させて⼀攫千⾦狙ってみた
None