LoginSignup
2
1

More than 5 years have passed since last update.

IBM Watson Car_Demo サンプルをやってみるその3

Last updated at Posted at 2018-04-09

IBM Watson Car_Demo サンプルをやってみるその3

■ はじめに

 前回はIBM WatsonのチュートリアルCar_Demoについて、備忘録とワークススペースについて投稿してきました。
 さて今回はCar_Demoを日本語するための準備のために、Language Transaltorについて再び備忘録を投稿します。 

■ 前提

 IBM Watson Car_Demo サンプルをやってみるその1およびその2を完了していること。
 curlをインストールする。

■ IBM Watson Language Translatorを試す

 IBM Cloudeにログイン
 Watson_19.jpg

 ダッシュボードでカタログをクリック
 Watson_20.jpg

 カタログの左リストからWatsonをクリック
Watson_21.jpg

 Language Traslatorをクリック

Watson_18.jpg

Language Translatorのサービス作成画面
Watson_22.jpg

 もちろん、ライトプラン
Watson_23.jpg

 作成ボタンクリック
Watson_24.jpg

 またまたチュートリアル(それも英語)ドカン!
Watson_25.jpg

 めけずに、まずServicesをクリック
Watson_26.jpg

 Language TranslatorサービスをSelected
Watson_27.jpg

 サービスの追加をクリック
Watson_28.jpg

 新規プロジェクトの作成画面、プロジェクト名の入力:にデフォルトが設定済み
 そのまま採用(任意でいい)
Watson_29.jpg

 プロジェクト作成クリック
Watson_30.jpg

 プロジェクト作成エラー
 残念ながらライトプランでは、プロジェクトは作成できないようです。
 別のプランにする必要があります。
 最初のLanguage Translatorのサービス作成までで1インスタンスできていいるためです。
 チュートリアルのServicesをクリックする下りは不要(ガーン)
 トラップだ!
Watson_31.jpg

 ダッシュボードに戻って、Language Translatorのサービスができている確認
 できていました!
 サービス名をクリック
Watson_33.jpg

 サービス資格情報をクリック
Watson_34.jpg

 資格情報をクリック
Watson_35.jpg

 新規情報の追加画面、パラメーターはブランクのまま
 追加クリック
Watson_36.jpg

 資格情報が追加されます
Watson_37.jpg

 キー名を選択して、資格情報の表示をクリック
 url並びに、usernameとpasswordをメモに保存してください。
Watson_38.jpg

 チュートリアのStep1のコマンドを参照して翻訳してみます。
 curlをインストールする必要があります。
Watson_39.jpg
 
 curlのapiはここを参照して見てください。
 だたし、パラメータの指定に違いがあるところに注意です。

 × POST request 例

 curl -u "{username}":"{password}" \
 -X POST \
 -H "Accept: application/json" \
 -d '{"text":"Hello","model_id":"en-es"}' \
 "https://gateway.watsonplatform.net/language-translator/api/v2/translate"

 Windowsでは、エラーです。

 ○ Windows版

curl -u username:password -X POST -H "Accept: application/json" -d "{\"text\":\"Hello\","\model_id\":\"en-ja\"}" https://gateway.watsonplatform.net/language-translator/api/v2/translate

 改行をつけない、記号の前に\をつけるところがポイントです。
 英語→日本語の場合、model-idはen-jaにします。
 VSCodeのjson出力結果が文字化けしています。出力結果はUTF-8で戻ってきます。
 VSCodeのターミナルをUTF-8に設定します。
Watson_41.jpg

 VSCodeの設定→検索に「shellArgs.windows」を入力
 terminal.integrated.shellArgs.windowsの編集ボタンで編集をクリックして、右ウィンドウにコピーして下記のように編集します。

  "terminal.integrated.shellArgs.windows": [
    "/k",
    "chcp",
    "65001"
  ]

Watson_40.jpg

Watson_42.jpg

 ターミナルをexitして、Ctrl+Shift+@で再起動します。
 Active code page:65001が表示されれば、UTF-8に変更されました。

Watson_43.jpg

 違う英文を投入してみます。

 curl -u username:password -X POST -H "Accept: application/json" -d  "{\"text\":\"i feel like getting a coffee\",\"model_id\":\"en-ja\"}"  https://gateway.watsonplatform.net/language-translator/api/v2/translate

 翻訳結果が「iコーヒーが好きな気がする」になって(笑)、iをIとして認識してくれないようです。
 また,curlでUTF-8でbody writeエラーが出力されるようです、予想ですが送信している文字がUTF-8でないため怒られているようです。特に翻訳に影響がないようなので一旦無視して進みます。
Watson_44.jpg

 iをIにした英文を投入すると、私と翻訳してくれました。(翻訳のくせがありそうです)
Watson_45.jpg

 curlを使えば、Watsonで英語を日本語へ翻訳できそうです。
 前回の「car_waorksapce.json」のIntents、Entities、Dialog_nodesをこのLanguage Translatorの機能で日本語化します。

■ まとめ

 WatsonのLanguage Translatorをローカルから利用するには、curlで入力文を投入することで翻訳結果を取得できます。
 Watsonの翻訳には癖がありそうです。AIにも無くて七癖的な人間味がありそうで興味深いです。
 次回はこのLanguage Translatorで「car_workspace.json」を一括翻訳にチャレンジします。

以上、おそまつ

2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1