This post is Private. Only a writer or those who know its URL can access this post.

#機械学習名古屋 勉強会#12 ハンズオン資料 (2)

More than 1 year has passed since last update.

目次

2. API の有効化

例として(このハンズオンを通して)Google Cloud Natural Language API を使用します。
まずは API を有効化する必要があります。

ダッシュボードから「API とサービス」→「ライブラリ」を選択。

GCP-0018L.png

GCP-0019.png

「Natural Language API」を選択(クリック)します。

GCP-0020.png

このような画面になったら、画面上方の「▶ 有効にする」ボタンをクリックします。

↓ (数秒〜数十秒待ちます)

GCP-0021.png

このような画面になればOK。

※初めからこの画面になった場合(特に「▶ 有効にする」ボタンが「■ 無効にする」となっていた場合)は、API はすでに有効化済みです。

3. API キーの作成

※取り敢えず手っ取り早く動作を試すために、API キーで API にアクセスします。

GCPコンソール(ホーム)から、「API とサービス」→「認証情報」を選択。

GCP-0022.png

(2. 節の続きでそのまま左カラムの「認証情報」クリックでもOK)

GCP-0023.png

「認証情報を作成」ボタンをクリック、出現するドロップダウンの「API キー」を選択

GCP-0024.png

API キーが表示されます。必要に応じて、テキストエディタ等にコピーしておいてください。
「閉じる」をクリックして元の画面に戻ります。
※ここでは「キーを制限」を実施せずにそのまま続行します。そのままだと危険なので、ハンズオンが終わったら API キーを削除 しておきましょう。

4. API キーを利用したリクエスト

Google Cloud Shell を利用して Natural Language API の動作確認をします。

GCP-0025.png

画面右上の「Google Cloud Shell」アイコンをクリック。

↓ (数秒〜数十秒待ちます)

GCP-0026a.png

画面右下にシェル(bash)画面が現れます。
ここにコマンドを入力して各種処理を実行できます。

※お好みに応じて、各種設定をいじっておくと良いです。
 私は最低限↓は設定しています。

GCP-0026b.png

これでキーボードによるコピペが手軽に出来て色々捗ります(注:Mac では「Cmd+shift+C/V」キーになります)。

まずは、先ほど作成した API キーを以下のように設定してください。

export API_KEY=AXXXXXXXXXXXXXXX

AXXXXXXXXXXXXXXX の部分は先ほどコピーしていたAPIキーに置き換えてください。

続いて用意されているテキストエディタで、entity-request.json というファイルを作成してください。
Google Cloud Shell(中身は Ubuntu)には、nano/vim/emacs は用意されている模様です。

例:

vim entity-request.json
entity-request.json
{
  "document":{
    "type":"PLAIN_TEXT",
    "content":"Michelangelo Caravaggio, Italian painter, is known for
              'The Calling of Saint Matthew'."
  },
  "encodingType":"UTF8"
}

続いて以下のコマンドを実行して、Natural Language API を呼び出します。

curl "https://language.googleapis.com/v1beta1/documents:analyzeEntities?key=${API_KEY}" \
  -s -X POST -H "Content-Type: application/json" --data-binary @entity-request.json

以下のようなレスポンスが表示されたら成功です。

{
  "entities": [
    {
      "name": "Michelangelo Caravaggio",
      "type": "PERSON",
      "metadata": {
        "wikipedia_url": "https://en.wikipedia.org/wiki/Caravaggio",
        "mid": "/m/020bg"
      },
      "salience": 0.8303663,
      "mentions": [
        {
          "text": {
            "content": "Michelangelo Caravaggio",
            "beginOffset": 0
          },
          "type": "PROPER"
        },
        {
          "text": {
            "content": "painter",
            "beginOffset": 33
          },
          "type": "COMMON"
        }
      ]
    },
    {
      "name": "Italian",
      "type": "LOCATION",
      "metadata": {
        "mid": "/m/03rjj",
        "wikipedia_url": "https://en.wikipedia.org/wiki/Italy"
      },
      "salience": 0.1387151,
      "mentions": [
        {
          "text": {
            "content": "Italian",
            "beginOffset": 25
          },
          "type": "PROPER"
        }
      ]
    },
    {
      "name": "The Calling of Saint Matthew",
      "type": "EVENT",
      "metadata": {
        "wikipedia_url": "https://en.wikipedia.org/wiki/The_Calling_of_St_Matthew_(Caravaggio)",
        "mid": "/m/085_p7"
      },
      "salience": 0.030918568,
      "mentions": [
        {
          "text": {
            "content": "The Calling of Saint Matthew",
            "beginOffset": 70
          },
          "type": "PROPER"
        }
      ]
    }
  ],
  "language": "en"
}

※ここで実行したのは エンティティ分析 と呼ばれるものです。
 Natural Language API には他に、感情分析構文解析 が用意されています。
 これらは日本語にも対応しているので、色々な API や文章で試してみてください。

おまけ. API キーの削除

API キーを削除するには、「API とサービス」→「認証情報」で表示される API キーの一覧から、削除したいキーの右に表示されているゴミ箱アイコンをクリックします。

GCP-0028.png

このような確認ダイアログが表示されます。

GCP-0029.png

入力欄に「削除」と入力して「削除」ボタンをクリックしてください。これで削除が完了します。

Sign up for free and join this conversation.
Sign Up
If you already have a Qiita account log in.