見出し画像

Amazon Translateを使って翻訳API を作ってみた

はじめに

今回は、API Gateway、Lambda、およびAmazon Translateを使用して、簡単な翻訳APIの構築を検証していきます。

今まで、AWSのAI系サービスで検証を行ったことがなかったため、今回扱ってみました。

Amazon Translateとは

Amazon TranslateのAWS公式の説明は以下の通りです。

Amazon Translate は高度な機械学習テクノロジーを使用して、高品質の翻訳をオンデマンドで提供するテキスト翻訳サービスです。

https://docs.aws.amazon.com/ja_jp/translate/latest/dg/what-is.html

Amazon Translateは、機械翻訳を提供するAWSのサービスです。
公式説明でもあるように、このサービスを使用することでテキストをある言語から別の言語に翻訳できます。

高い精度と豊富な対応言語により、グローバルなプロジェクトやアプリケーションにおいて非常に役立ちます。

検証

まず、ポリシー名「TranslateFullAccess」が許可されたIAMロールを作成します。こちらを許可することで、コードにてTranslateを使用できます。

続いて、先ほど作成したIAMロールを使用したLambda関数を作成します。

Lambdaのコードソースでは、以下画像のように「input_text」に入ってきた内容(英語)を処理し、「output_text」で日本語に変更したものを出力する内容を記載しています。

次に、API GatewayにてREST APIを使用して設定していきます。 メソッドタイプで以下画像のようにします。

メソッドリクエストで「input_text」を設定していきます。

デプロイ後にLambda関数を確認すると、関数にAPI Gatewayが設定してあることが分かります。

API Gatewayから生成されたURLをpostmanにて使用し、文末に翻訳したい内容を記載します。以下の例では、生成されたURLに「/translate?input_text=I want to be a soccer player」と付けてリクエストを送ると以下のように無事日本語訳された内容が返ってきます。

終わりに

API Gateway、Lambdaを活用し、Amazon Translateを組み合わせることで、シンプルな翻訳APIを構築できました。

今回は、AWSのAI系サービスの中でも言語系であるAmazon Translateを使用しましたが、次回以降は、画像系や分析計のAI系サービスも検証していきたいと思います。


この記事が気に入ったらサポートをしてみませんか?