目次
- ハンズオン資料 (1)
- ハンズオン資料 (2)
- ハンズオン資料 (3)
2. API の有効化
例として(このハンズオンを通して)Google Cloud Natural Language API を使用します。
まずは API を有効化する必要があります。
ダッシュボードから「API とサービス」→「ライブラリ」を選択。
↓
「Natural Language API」を選択(クリック)します。
↓
このような画面になったら、画面上方の「▶ 有効にする」ボタンをクリックします。
↓ (数秒〜数十秒待ちます)
このような画面になればOK。
※初めからこの画面になった場合(特に「▶ 有効にする」ボタンが「■ 無効にする」となっていた場合)は、API はすでに有効化済みです。
3. API キーの作成
※取り敢えず手っ取り早く動作を試すために、API キーで API にアクセスします。
GCPコンソール(ホーム)から、「API とサービス」→「認証情報」を選択。
(2. 節の続きでそのまま左カラムの「認証情報」クリックでもOK)
↓
「認証情報を作成」ボタンをクリック、出現するドロップダウンの「API キー」を選択
↓
API キーが表示されます。必要に応じて、テキストエディタ等にコピーしておいてください。
「閉じる」をクリックして元の画面に戻ります。
※ここでは「キーを制限」を実施せずにそのまま続行します。そのままだと危険なので、ハンズオンが終わったら API キーを削除 しておきましょう。
4. API キーを利用したリクエスト
Google Cloud Shell を利用して Natural Language API の動作確認をします。
画面右上の「Google Cloud Shell」アイコンをクリック。
↓ (数秒〜数十秒待ちます)
画面右下にシェル(bash)画面が現れます。
ここにコマンドを入力して各種処理を実行できます。
※お好みに応じて、各種設定をいじっておくと良いです。
私は最低限↓は設定しています。これでキーボードによるコピペが手軽に出来て色々捗ります(注: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
{
"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 キーの一覧から、削除したいキーの右に表示されているゴミ箱アイコンをクリックします。
↓
このような確認ダイアログが表示されます。
入力欄に「削除」と入力して「削除」ボタンをクリックしてください。これで削除が完了します。