はじめに
AWS Hands-on for Beginners をやってみたシリーズ。
今回は、Serverless #3 AWS Lambda と AWS AI Services を組み合わせて作る音声文字起こし & 感情分析パイプライン をやってみました。
これまでにやってみたのはこちら。
- ハンズオンはじめの一歩: AWS アカウントの作り方 & IAM 基本のキ をやってみた
- Security #1 アカウント作成後すぐやるセキュリティ対策 をやってみた
- Network編#1 AWS上にセキュアなプライベートネットワーク空間を作成する をやってみた
- Network編#2 Amazon VPC間およびAmazon VPCとオンプレミスのプライベートネットワーク接続 をやってみた
- Network編#3 クライアントVPNをつかって、リモート接続環境を構築しよう をやってみた
- スケーラブルウェブサイト構築編 をやってみた
- Serverless #1 サーバーレスアーキテクチャで翻訳 Web API を構築する をやってみた
- Serverless #2 AWS SAM を使ってテンプレートからサーバーレスな環境を構築する をやってみた
内容と感想
S3 と Lambda を連携させるのは本当に簡単にできるなーと感じました。
時間のかかるバッチ処理とかを Lambda でやらせるのはいいかもなーと思いきや、Lambda は時間制限あるのがちょっと悩ましいですね。
例えば、JSON ファイルをアップロードして、そのファイルを使って何らかの処理を行うといった場合、いわゆる管理画面内でそういう機能を用意するのと、S3 + Lambda で処理するのとどちらがいいのだろう?
管理画面的なものがあるサービスならやっぱり管理画面に作っちゃった方が良いのかな??
でも、例えば Lambda を使うかどうかに関わらず、 S3 を経由してファイルを送ってもらってそれを自動で処理したいみたいな用途だと S3 + Lambda が候補の筆頭に来るのかな〜
動画の内容はざっくりと下記のような感じ。
- Lambda についての説明
- ポーリングベース
- ストリームベース/非ストリームベース
- 非ポーリングベース
- 同期 → API Gateway (前回やった)
- 非同期 → S3 (今回扱う)
- ポーリングベース
- S3 についての説明
- Transcribe についての説明・簡単なハンズオン
- 音声ファイルからの文字起こし
- S3 → Lambda で Transcribe 使用 → S3 のように処理するよう実装
- 上記に加え、Lambda function で Comprehend を使うことにより、感情分析を行うよう実装
- さらに Polly を使うことで、文字から音声ファイルを作成して S3 に出力させ、上記のフローに適用させる
コメント