Google の Cloud Translate API で翻訳を行う方法

Google Cloud Platformには数多くのAPIが公開されています。Google翻訳でお馴染みの翻訳についても同様に利用することができます。Google翻訳は日に日に賢くなっているので、これを利用しない手はありません。今回はこのCloud Translate APIを利用するまでの手順および利用方法について紹介します。

Cloud Translate API を利用するための前準備

Clouc Translate APIを利用する前に、APIの有効化とサービスアカウントキーの作成が必要になります。以下の手順でそれぞれの準備を行いましょう。

Cloud Translate API の有効化

「APIとサービス」よりCloud Translation APIを有効にします。下の画像の状態であれば、APIが有効になっていません。「有効にする」ボタンを押下し、APIを有効にしましょう。これを有効にしなければ、API実行時にエラーが返ってきます。 https://console.cloud.google.com/apis/dashboard?hl=ja

サービスアカウントキーの作成

Cloud Translate APIを実行するサーバのためにサービスアカウントキーを用意する必要があります。サービスアカウントキーの作成画面よりキーの作成を行います。 https://console.cloud.google.com/apis/credentials/serviceaccountkey?hl=ja&_ga=2.101692870.-695808396.1534220125 以下の内容を入力して下さい。
  • サービスカウント: 「新しいサービスアカウント」を選択
  • サービスアカウント名: (任意)
  • 役割: オーナー (Project > オーナー)
  • サービスアカウントID: (任意)
  • キーのタイプ: JSON
「作成」ボタンを押下すると、jsonファイルがダウンロードされます。 なお、上記の例では役割にオーナーを指定しましたが、本番環境などでは適切な役割のものをご利用下さい。

サービスアカウントキーの適用

ダウンロードしたサービスアカウントキーを適用します。ターミナルで以下を実行しましょう。
export GOOGLE_APPLICATION_CREDENTIALS="/home/user/Downloads/auth.json"
これで準備は整いました。

Cloud Translate API の利用

それではCloud Translate APIを利用しましょう。以下、Pythonでの紹介を行いますが、GO, Java, Node.js, PHP, Rubyでも利用可能です。 翻訳するためのAPIだからといって、難しく考える必要はありません。なぜならCloud Translate APIに用意されているメソッドは4種類だけです。 https://googleapis.github.io/google-cloud-python/latest/translate/client.html
  • Create … インスタンス生成
  • detect_language … 言語の検出
  • get_language … サポート言語のリストアップ
  • translate … 翻訳
単純に翻訳するだけなら、Createメソッドでインスタンス生成後、translateメソッドで翻訳するだけですので、たった2行だけで処理することができます。そのソースコードを以下に示します。
# coding: UTF-8
from google.cloud import translate

# インスタンス生成
client = translate.Client()

# I am a programer を日本語に翻訳
result = client.translate(u'I am a programer', target_language='ja')

print(result['translatedText'])
実行すると「私はプログラマーです」と表示されます。非常にシンプルですね。

まとめ

Cloud Translate API の利用方法を紹介しました。今回は簡単な利用方法を紹介しましたが、複数の文字列をリストで送ることができたり、翻訳のモデルが2種類あったりなど便利な機能も用意されています。ぜひ利用してみてください。
» エンジニア登録はこちら