LoginSignup
0
0

More than 1 year has passed since last update.

AWS Lambda + Translate で翻訳機能使ってみた!

Last updated at Posted at 2022-11-21

*この記事はawsハンズオンビギナーズをやってみて復習として作成しています

今回は、Lambdaをテスト実行してその結果を英訳できるところまでをやります。

1 Lambda関数の作成

以下の画面から「関数の作成」ボタンをクリックします。

スクリーンショット 2022-11-20 15.46.22.png

~設定項目~
1,任意の関数名を入力
2,ランタイムの設定(今回はpython3.7にしました)
3,アーキテクチャは「x86_64」を選択

スクリーンショット 2022-11-20 16.00.33.png

Lambdaのサービスロールを付与します

~設定項目~
1,「基本的なLambdaアクセス権限で新しいロールを作成」を選択すればOK

スクリーンショット 2022-11-20 16.00.58.png

2 Lambdaの関数(コード)の編集

LambdaでAWS Translateを呼び出すようにコードを編集します。

以下のリンクから

以下のスクショの選択部分をコピーしておきます

スクリーンショット 2022-11-20 17.08.29.png

スクリーンショット 2022-11-20 16.03.50.png

Lambdaのコードの編集画面にコピペします。

コピペ後にコードの編集をします。詳細は動画をみてください。
めんどくさい方用にコードを添付しておきます。


import json
import boto3

translate = boto3.client('translate')

def lambda_handler(event, context):
    
    input_text = '英語できるようになりたいね'
        
    response = translate.translate_text(
        Text=input_text,
        SourceLanguageCode='ja',
        TargetLanguageCode='en'
    )
    
    output_text = response.get('TranslatedText')
    
    return {
        'statusCode': 200,
        'body': json.dumps({
            'output_text': output_text
        })
    }

上記をそのままLambdaの関数の編集画面に設定していただければすぐにできると思います。
input_textの部分は自由に変えてみてください。

これでLambdaは完成ですが、このLambda自体にTranslateを実行する権限自体がないので権限を付与していきます。

3 LambdaにTranslateの実行権限を付与

IAMのロール一覧の画面から検索でLambda関数作成時に自動生成されたサービスロールを見つけます。

スクリーンショット 2022-11-21 13.28.48.png

こちらのロールにTranslateの権限をつけていきます。
今回は学習用ですのでフルの権限をつけちゃいます。

スクリーンショット 2022-11-21 13.34.45.png

4 テストしてみる

テストイベントを設定後「テスト」をクリック

スクリーンショット 2022-11-21 13.41.33.png

英訳されました。

スクリーンショット 2022-11-21 13.41.12.png

お疲れ様でした。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0