IBM Cloud ライト・アカウントは、クレジットカード登録不要で IBM Cloud の主要なサービスを一定範囲内で使うことができるアカウントです。他社のクラウドサービスでは無料のお試しでもクレカ登録が必須ですが、このライト・アカウントなら気軽にサービスを試すことができますね。そこで今回は、IBM Cloud ライト・アカウントで、AIサービスの「Watson」を試してみました。
(2019年1月5日更新)APIの認証方式が変わったため記事を更新しました。以前と比べてAPIの認証手順が簡単になっています。
IBM Cloud と Bluemix
以前 Watson は、IBM Bluemix のサービスのひとつでしたが、 2017年11月に Bluemix ブランドは IBM Cloud ブランドに統合されました。そのため、Watson も「IBM Cloud」のサービスの一部になっています。今後は IBM のクラウドサービスといえば、そのまま「IBM Cloud」だと思ってよいでしょう、シンプルでとてもわかりやすくなりましたね。
参考記事:BluemixはIBM Cloudとして生まれ変わりました。| IBM ソリューション ブログ
ライト・アカウントの制限事項
IBM Cloudライト・アカウントは、ライト・プランのサービスを無料で期間に制限なく使えます。また、ライトアカウントには次のような制限事項がありますが、サービスを試すだけならまったく問題ないでしょう。
- 10日間 開発なしでアプリを自動停止(メール通知あり)
- 30日間 活動なしでサービスの自動削除(メール通知あり)
ライト・アカウントの登録
IBM Cloudライト・アカウントのページから登録します。入力項目は、メールアドレス、氏名、電話番号だけなのでほぼ一瞬でアカウントを作成できます。
ライト・アカウントで使える Watson の API
それではまず、ライト・アカウントで使える Watson の API を確認してみまししょう。
IBM Cloudライト・アカウントの登録が終わったら、IBM Cloud のコンソールにログインして、画面左上の「カタログ」をクリックします。
左メニューの「AI」をクリックします。2019年1月5日現在、ライト・アカウントでは15種類の Watson API 及びツールを使うことができます。(ライト・アカウントでログインした場合は、初期状態でライトプランのみ表示するようにサービスカタログが「label:ライト」でフィルタされています)
5分で試せる!「Watson」Personality Insights(性格分析)
今回は、この Watson API の中から Personality Insights(性格分析)を試してみます。Personality Insights はテキストファイルから筆者の性格を推測することができるサービスです、英語だけでなく日本語にも対応しています。
サービスの作成
サービスカタログから「Personality Insights」をクリックします。
デプロイする地域/ロケーションの選択で「東京」を選択し、「作成」をクリックします。
以上で Personality Insights サービスが作成されました。
API鍵の確認
Personality Insights API を使うための API鍵を確認します。
左メニューの「管理」をクリックし、資格情報に表示されている「API鍵」をメモしておきます。(「資格情報を表示」をクリックすると実際の API鍵が表示されます)
テキストファイルの準備
性格分析を行う対象のテキストファイルを用意します。今回は「吉野家コピペ」を分析してみます。吉野家コピペをテキストファイルにコピペさせて頂き、文字エンコーディングを「UTF-8」にして「yoshinoya.txt」として保存します。
APIへのリクエスト書式
POSTリクエストで Personality Insights API にテキストファイルを投げます。書式は次の通りです。
--header "Content-Type: text/plain;charset=utf-8" \
--header "Content-Language: ja" \
--header "Accept: application/json" \
--data-binary "@{path_to_file}yoshinoya.txt" \
"https://gateway-tok.watsonplatform.net/personality-insights/api/v3/profile?version=2017-10-13" \
| python -mjson.tool
curl -X POST -u "apikey:{API鍵}"
先ほどメモした API鍵 を指定します。例えば API鍵 が「secret」の場合は、「curl -X POST -u apikey:secret」になります。
--header "Content-Type: text/plain;charset=utf-8"
テキストファイルの文字エンコーディング「utf-8」を指定します。
--header "Content-Language: ja"
テキストが日本語の場合は言語「ja」を指定します。英語の場合はこの指定は不要です。
--header "Accept: application/json"
分析結果を JSON形式でレスポンスするように指定します。
--data-binary "@{path_to_file}yoshinoya.txt"
テキストファイルのパスを「@」に続けて指定します。例えばテキストファイルのパスが /tmp/yoshinoya.txt の場合は、「--data-binary "@/tmp/yoshinoya.txt"」になります。
"https://gateway-tok.watsonplatform.net/personality-insights/api/v3/profile?version=2017-10-13"
リクエストの送信先 Personality Insights API のURLです。
| python -mjson.tool
分析結果を見やすくするためのコマンドです。
分析結果(抜粋)
Watson AI では吉野家コピペの主人公は、激情的で心配性な性格と分析されました。また、下の方で警告が出ていますが、吉野家コピペの単語数は544でこれでは分析するのには少ないようです。最低でも600語、できれば1200語以上あるのがベストとあります。
{ "category": "personality", "name": "Fiery",(激情的) "percentile": 0.8115237060151657, "significant": true, "trait_id": "facet_anger" }, { "category": "personality", "name": "Prone to worry",(心配性) "percentile": 0.8290704611710504, "significant": true, "trait_id": "facet_anxiety" }, { "category": "personality", "name": "Melancholy",(憂鬱) "percentile": 0.6091503344928976, "significant": true, "trait_id": "facet_depression" }, { "category": "personality", "name": "Immoderation",(過敏な反応) "percentile": 0.3959974855263127, "significant": true, "trait_id": "facet_immoderation" }, { "category": "personality", "name": "Self-consciousness",(自己意識) "percentile": 0.47007994976094597, "significant": true, "trait_id": "facet_self_consciousness" }, { "category": "personality", "name": "Susceptible to stress",(低ストレス耐性) "percentile": 0.6776460133221948, "significant": true, "trait_id": "facet_vulnerability" } (略) "processed_language": "ja", (略) "warnings": [ { "message": "There were 544 words in the input. We need a minimum of 600, preferably 1,200 or more, to compute statistically significant estimates", "warning_id": "WORD_COUNT_MESSAGE" } ], "word_count": 544, "word_count_message": "There were 544 words in the input. We need a minimum of 600, preferably 1,200 or more, to compute statistically significant estimates"
おわりに
前々から Watson を試してみたかったのですが、こんなに簡単に試せるとは思いませんでした。あおり文句ではなく本当にたった5分で試せます!
コメント