見出し画像

GCP 入門 (16) - Translation API

「GCP」(Google Cloud Platform)の「Translation API」で自然言語処理を行う方法をまとめました。

・macOS 10.15.7
・Python 3.6

前回

1. Translation

「Translation」は、自然言語テキストの言語間の翻訳を行うAPIです。

サービスの種類は、次のとおりです。

Translation API
100以上の言語のテキスト翻訳の機能を提供するAPIです。一般的な翻訳機能を提供する「Translation API Basic」と、コンテキスト固有の用語やフレーズを追加できる「Translation API Advanced」があります。
Media Translation API
リアルタイムな音声翻訳の機能を提供するAPIです。
AutoML Translation
翻訳済みの言語ペアをアップロードするだけで、翻訳モデルを学習できるサービスです。

料金は、次のとおりです。

Translation API Basic
Translation API Advanced
Media Translation API
Auto ML Translation

2. プロジェクトの作成とAPIの有効化

(1) GCPの「Cloud Console」を開く。
(2) トップ画面上端の「プロジェクト名」から新規プロジェクトを作成。
(3) トップ画面上端の「検索ボックス」で「Cloud Translation API」を検索し、「有効にする」ボタンを押す。

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

(1) 「認証情報 → 認証情報を作成 → ウィザードで選択」を選択。
(2) 「1. 必要な認証情報の種類を調べる」で、以下を設定し、「必要な認証情報」ボタンを押す。

・使用するAPI : Cloud Translation API
・"App Engine または Compute Engine でこの API を使用する予定はありますか?" : いいえ

(3) 「2. 認証情報を取得する」で、以下を設定し、「次へ」ボタンを押す。

・サービスアカウント名 : test
・ロール : オーナー ※ どのリソースにアクセスできるかに影響
・キーのタイプ : JSON

成功すると、 「サービスアカウントキー」(JSONファイル)がダウンロードされます。

4. Pythonの開発環境の準備

(1) Python3.6」の仮想環境の作成。
(2) 「クライアントライブラリ」のインストール。

$ pip install google-cloud-translate==2.0.1
$ pip install six==1.15.0

(3) サービスアカウントキーの登録。

$ export GOOGLE_APPLICATION_CREDENTIALS="[サービスアカウントキーのパス]"

5. 翻訳

「翻訳」を実行するコードは、次のとおりです。

import six
from google.cloud import translate_v2 as translate

# 入力
text = "こんにちは"
if isinstance(text, six.binary_type):
    text = text.decode("utf-8")

# Translate Clientの生成
translate_client = translate.Client()

# 翻訳
result = translate_client.translate(text, target_language='en')

# 結果の出力
print('入力 :', result["input"])
print('出力 :', result["translatedText"])
print('検出言語 :', result["detectedSourceLanguage"])
入力 : こんにちは
出力 : Hello
検出言語 : ja

「言語コード」は、以下で確認できます。

次回


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