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
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
つくぼし
April 22, 2025
Technology
1.3k
0
Share
Mastraに入門してみた ~AWS CDKを添えて~
つくぼし
April 22, 2025
More Decks by つくぼし
See All by つくぼし
CDKで始めるTypeScript開発のススメ
tsukuboshi
1
1.5k
Amazon Bedrock GenUハンズオン座学資料 #2 GenU環境でRAGを体験してみよう
tsukuboshi
0
720
Amazon Bedrock GenUハンズオン座学資料 #1 GenU環境で生成AIを体験してみよう
tsukuboshi
0
1.3k
AWSエンジニアに捧ぐLangChainの歩き方
tsukuboshi
5
2.1k
世界の中心でApp Runnerを叫ぶ ~Aurora DSQLを添えて~
tsukuboshi
0
840
初めてのGPTs ~ネコ派を〇〇派に変える技術~
tsukuboshi
0
890
Amplify Gen 2ではじめる 生成AIアプリ開発入門
tsukuboshi
1
1.8k
AWSで構築するパターン別RAG構成解説
tsukuboshi
5
8.8k
AWS構成図から CloudFormationとパラメータシートを 自動生成するシステムを作ってみた
tsukuboshi
0
11k
Other Decks in Technology
See All in Technology
パワポ作るマンをMCP Apps化してみた
iwamot
PRO
0
250
「AIエージェントで変わる開発プロセス―レビューボトルネックからの脱却」
lycorptech_jp
PRO
0
210
互換性のある(らしい)DBへの移行など考えるにあたってたいへんざっくり
sejima
PRO
0
450
ブラックボックス化したMLシステムのVertex AI移行 / mlops_community_62
visional_engineering_and_design
1
240
CREがSLOを握ると 何が変わるのか
nekomaho
0
310
不確実性と戦いながら見積もりを作成するプロセス/mitsumori-process
hirodragon112
1
150
GitHub Advanced Security × Defender for Cloudで開発とSecOpsのサイロを超える: コードとクラウドをつなぐ、開発プラットフォームのセキュリティ
yuriemori
1
120
15年メンテしてきたdotfilesから開発トレンドを振り返る 2011 - 2026
giginet
PRO
2
240
JAWS DAYS 2026でAIの「もやっと」感が解消された話
smt7174
1
110
タスク管理も1on1も、もう「管理」じゃない - KiroとBedrock AgentCoreで変わった“判断の仕事”
yusukeshimizu
0
150
「活動」は激変する。「ベース」は変わらない ~ 4つの軸で捉える_AI時代ソフトウェア開発マネジメント
sentokun
0
130
最大のアウトプット術は問題を作ること
ryoaccount
0
150
Featured
See All Featured
GraphQLとの向き合い方2022年版
quramy
50
14k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.1k
sira's awesome portfolio website redesign presentation
elsirapls
0
200
Unlocking the hidden potential of vector embeddings in international SEO
frankvandijk
0
220
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.6k
So, you think you're a good person
axbom
PRO
2
2k
Why You Should Never Use an ORM
jnunemaker
PRO
61
9.8k
Measuring Dark Social's Impact On Conversion and Attribution
stephenakadiri
1
170
Between Models and Reality
mayunak
2
250
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
160
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
140
Fashionably flexible responsive web design (full day workshop)
malarkey
408
66k
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