Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Step Functions Express ワークフローの使い所 / 20260725jaw...

Step Functions Express ワークフローの使い所 / 20260725jawsug-niigata-sado

2026/07/25 (土) JAWS-UG新潟 in 佐渡 - Lightning Sado 2026 にて登壇した資料です。

イベントページ
https://jawsug-niigata.connpass.com/event/387865/

Avatar for kasacchiful

kasacchiful PRO

July 25, 2026

More Decks by kasacchiful

Other Decks in Programming

Transcript

  1. 自己紹介 笠原 宏 (@kasacchiful) クラスメソッド株式会社 データ事業本部 ソリューションアーキテクト 新潟県新潟市在住 JAWS-UG新潟 /

    Python機械学習勉強会 in 新潟 / JaSST Niigata / ASTER / KomeKaigi ほか AWS Community Builder (Serverless) 2022, 2025 Japan AWS Top Engineer / 2022-2026 Japan All AWS Certifications Engineer AWS Samurai 2025 2
  2. 今日のお話(10 分) Step Functions の Express ワークフロー について Standard と

    Express の違いと、使い所 Express ワークフローの注意点 AI エージェント時代の Standard と Express の使い分け デモ:同期 Express 実行でリアルタイム AI API (Bedrock を並列呼び出し) 3
  3. AWS Step Functions とは 複数の AWS サービス・Lambda・API 呼び出しを「ステートマシン」として繋ぐマネージドの オーケストレーター 状態(State)を

    JSON/YAML の ASL (Amazon States Language) で定義 Task / Choice / Parallel / Map / Wait …… を並べて業務フローを組む ステートマシンの種別が2種類ある Standard と Express 4
  4. 比較:Standard vs Express 観点 最大実行時間 実行保証 課金 実行履歴 スループット .sync

    / .waitForTaskToken StartSyncExecution (同期API) Standard 最大 1 年 exactly-once 状態遷移ごと コンソールに保持(90 日) 制限あり ✓ ✗ 6 Express 5 分以内 非同期=at-least-once / 同期=at-most-once 実行回数 × 時間 × メモリ CloudWatch Logs (コンソールに表示はされる) 最大 10 万実行/秒 ✗(Request-Response のみ) ✓ 「同期」は2種類 ステートマシン内で入れ子で子の実行を待つ .sync は Standard 外部から呼び出しアクション StartSyncExecution は Express 短時間・高頻度・安く大量に処理するなら Express
  5. Express の「旨み」 安い 高頻度用途では Standard の状態遷移課金より 15〜20 倍安いこともある 速い・多い 非同期実行なら最大

    10 万実行/秒、同期実行はオンデマンドに自動スケール 他サービスから同期で使える StartSyncExecution で リクエスト/レスポンス API Gateway の裏に、Lambdaの代わりに置ける サーバーレス キャパシティ管理不要、使った分だけ 7
  6. Express の 「使い所」 同期 Express 実行 API のバックエンド、BFF、マイクロサービスを束ねる 「叩いたらすぐ返る」オーケストレーション 非同期

    Express 実行 IoT / ストリーミング / イベント大量処理 大量に飛んでくるイベントを安く高速にさばく AI と相性◎ LLM 呼び出しは単発で短く、並列化しやすい 分類・モデレーション・単発 RAG・アンサンブル 8
  7. Express の 「注意点」 5 分以内 長い処理・人の承認待ち( .waitForTaskToken は Express 非対応)は

    Standard へ 実行保証はモードで違う 非同期 = at-least-once(二重実行しうる → べき等な処理を選ぶ) 同期 = at-most-once(失敗しても自動リトライ無し → 呼び出し側で対処) 課金・外部副作用が二重にならないか要注意 実行履歴はCloudWatch Logsに CloudWatch Logs を必ず設定( level=ALL / 実行データ込み) コンソールにはCloudWatch Logsを元に表示はされる 定義を変更すると以前の実行履歴がコンソールに表示されなくなる 9
  8. 長時間エージェント vs 短時間・高頻度 長時間のエージェント・ループ(多ターン推論・ツール実行・人の承認) Standard / Bedrock AgentCore(2026-03 に Step

    Functions 統合が追加) 短時間・高頻度の単発 AI 処理(分類・モデレーション・単発 RAG・並列アンサンブル) Express 同期実行でそのまま API に Bedrock は Step Functions 最適化統合 bedrock:invokeModel で Lambda なしに呼べる AgentCore Harness も Step Functions 最適化統合 agentcore:invokeHarness で呼べます 今日のデモでは「単発・並列・同期の AI API」を試してみます 11
  9. デモ:同期 Express = リアルタイム AI API 12 {"question": "..."} クライアント

    curl / ( ) API Gateway REST ブラウザ POST /ask ・ 直接統合(Lambda レス) StartSyncExecution AWS Step Functions — Express ワークフロー(同期実⾏ / StartSyncExecution) (並列) Parallel Prepare SafetyCheck Bedrock Bedrock block→ $question invokeModel invokeModel allow→ allow / block 回答⽣成(RAG ⾵) ⼊⼒取得 GenerateAnswer Amazon CloudWatch Logs Express はコンソールに実⾏履歴を残さない → ログで確認 Choice 拒否 回答 応答 (数秒) JSON
  10. デモの中身(ASL / JSONata) → Parallel で 2 つの Bedrock を並列実行

    → Choice で分岐 SafetyCheck 入力の安全/対象判定( allow / block ) GenerateAnswer 静的コンテキストで回答生成 API Gateway が 直接 StartSyncExecution (Lambda レス) CDK 純正の StepFunctionsIntegration で実現(前後処理が要るなら Lambda 経由も可) Prepare 叩いたら数秒で返る同期 # AI API curl -s -XPOST "$API_URL" \ -H 'content-type: application/json' \ -d '{"question":"Express ?"}' | jq # => { "verdict": "allow", "answer": "..." } ← ワークフローの使い所は 状態機械の output がそのまま返る 13
  11. デモで見てほしいポイント 同期実行で数秒 & Lambda レス API Gateway が直接 StartSyncExecution して応答を返す(Lambda

    を挟まない) 並列 安全判定と回答生成が同時に走る( Parallel ) 可観測性 CloudWatch Logs を元にコンソールに実行履歴を表示 14
  12. まとめ Express は 短時間・高頻度・安く大量にさばくワークフロー 同期実行なら API の裏に、非同期実行なら大量イベント処理に 注意点 5 分

    / at-least-once / 履歴は CloudWatch Logs AI とは好相性 単発・並列・同期の AI 処理は Express の土俵 長時間エージェントは Standard / Express と使い分けることをオススメ 15
  13. 参考リンク Choosing workflow type in Step Functions(AWS Docs) CloudWatch Logs

    で Express の実行を見る(AWS Docs) Bedrock 最適化統合 / 生成 AI ワークフロー(AWS ML Blog) Step Functions に Bedrock AgentCore 統合が追加(2026-03) 20