Translation API でテキストを翻訳する

Cloud Translation を使用すると、任意の文字列をサポートされている任意の言語に翻訳できます。ソース言語が不明な場合は、言語を検出することも可能です。

学習内容

  • Cloud Translation API リクエストを作成し、curl で API を呼び出す
  • テキストの翻訳
  • Premium Edition の使用
  • 言語の検出

必要なもの

  • Google Cloud Platform プロジェクト
  • ChromeFirefox などのブラウザ

アンケート

このチュートリアルをどのように使用されますか?

通読するのみ 内容を読んで演習を完了する

Google Cloud Platform のご利用経験について、いずれに該当されますか?

初心者 中級者 上級者

セルフペース型の環境設定

Google アカウント(Gmail または Google Apps)をお持ちでない場合は、1 つ作成する必要があります。Google Cloud Platform のコンソール(console.cloud.google.com)にログインし、新しいプロジェクトを作成します。

Screenshot from 2016-02-10 12:45:26.png

プロジェクト ID を忘れないようにしてください。プロジェクト ID はすべての Google Cloud プロジェクトを通じて一意の名前にする必要があります(上記の名前はすでに使用されているので使用できません)。

Google Cloud Platform の新規ユーザーは、300 ドル分の無料トライアルをご利用いただけます。

カンファレンスでの Codelab のセットアップ

インストラクターから、プロジェクトが事前に作成された一時アカウントが提供さます。そのため、請求の有効化やこのコードラボの実行に伴う費用についてご心配いただく必要はありません。これらのアカウントは、コードラボの終了後すぐに無効になります。

講師からログイン用の仮のユーザー名とパスワードを受け取ったら、Google Cloud コンソール(https://console.cloud.google.com/)にログインします。

ログインすると、次のものが表示されます。

画面の左上にあるメニュー アイコンをクリックします。

プルダウンから [API Manager] を選択します。

[API を有効にする] をクリックします。

検索ボックスで「translate」を検索します。[Google Cloud Translation API] をクリックします。

API がすでに有効になっている場合は、[無効にする] ボタンが表示されます。API を無効にしないでください。

API が無効になっている場合は、[有効にする] をクリックして Cloud Translation API を有効にします。

有効になるまで数秒待ちます。有効にすると、次のように表示されます。

Google Cloud Shell は、 Cloud 上で動作するコマンドライン環境です。この Debian ベースの仮想マシンには、必要な開発ツール(gcloudbqgit など)がすべて用意され、永続的な 5 GB のホーム ディレクトリが提供されています。Cloud Shell を使用して Translation API へのリクエストを作成します。

Cloud Shell を始めるには、ヘッダーバーの右上にある [Google Cloud Shell をアクティブにする] Screen Shot 2015-06-08 at 5.30.32 PM.png アイコンをクリックします。

コンソールの下部の新しいフレーム内で Cloud Shell セッションが開き、コマンドライン プロンプトが表示されます。user@project:~$ プロンプトが表示されるまで待ちます。

curl を使用して Translation API にリクエストを送信するため、リクエスト URL で渡す API キーを生成する必要があります。API キーを作成するには、プロジェクト ダッシュボードの API Manager セクションに移動します。

[認証情報] タブに移動し、[認証情報を作成] をクリックします。

プルダウン メニューで [API キー] を選択します。

生成された API キーをコピーし、

API キーをクリップボードにコピーし、次のコード行を使用して Cloud Shell の環境変数に保存します。YOUR_API_KEY は、クリップボードのキーに置き換えてください。

export API_KEY=YOUR_API_KEY

この例では、「My name is Steve」という文字列をスペイン語に翻訳します。次の curl コマンドを使用して、翻訳するテキストと、先ほど保存した API キー環境変数を Translation API に渡します。

TEXT="My%20name%20is%20Steve"
curl "https://translation.googleapis.com/language/translate/v2?target=es&key=${API_KEY}&q=${TEXT}"

次のようなレスポンスが返されます。

{
  "data": {
    "translations": [
      {
        "translatedText": "Mi nombre es Steve",
        "detectedSourceLanguage": "en"
      }
    ]
  }
}

レスポンスには、翻訳されたテキストと API が検出した元の言語が表示されます。

Translation API では、テキストの翻訳に加えて、テキストの言語を検出することもできます。この例では、2 つの文字列の言語を検出します。次の curl コマンドを使用して、検査するテキストを、先ほど保存した API キー環境変数とともに Translation API に渡します。

TEXT_ONE="Meu%20nome%20é%20Steven"
TEXT_TWO="日本のグーグルのオフィスは、東京の六本木ヒルズにあります"
curl "https://translation.googleapis.com/language/translate/v2/detect?key=${API_KEY}&q=${TEXT_ONE}&q=${TEXT_TWO}"

レスポンスは次のようになります。

{
  "data": {
    "detections": [
      [
        {
          "confidence": 0.20671661198139191,
          "isReliable": false,
          "language": "pt"
        }
      ],
      [
        {
          "confidence": 0.97750955820083618,
          "isReliable": false,
          "language": "ja"
        }
      ]
    ]
  }
}

このサンプルで返される言語は「pt」と「ja」です。これらは、ポルトガル語と日本語の ISO-639-1 識別子です。Translation API でサポートされている言語のリストには、返される可能性のあるすべての言語コードが記載されています。

Cloud Translation API を使用してテキストを翻訳する方法を学びました。

学習した内容

  • Cloud Translation API リクエストを作成し、curl で API を呼び出す
  • テキストの翻訳
  • Premium Edition の使用
  • 言語の検出

次のステップ