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

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

■ はじめに

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

■　前提

　IBM Watson Car_Demo サンプルをやってみる[その１](https://qiita.com/pooshikin/items/cf2d35272407855d3581)および[その２](https://qiita.com/pooshikin/items/abe3f420873035589b54)を完了していること。
　[curlをインストールする。](https://qiita.com/sugasaki/items/ba9737d13db33d2cd71f)

■　IBM Watson Language Translatorを試す

　[IBM Cloude](https://console.bluemix.net/)にログイン
　![Watson_19.jpg](https://qiita-image-store.s3.amazonaws.com/0/239597/cf6b0845-11e5-0f1c-a2b1-59e11a54705f.jpeg)

　ダッシュボードでカタログをクリック
　![Watson_20.jpg](https://qiita-image-store.s3.amazonaws.com/0/239597/cc910b6a-1631-45fb-04b7-fae0448434b9.jpeg)

　カタログの左リストからWatsonをクリック
![Watson_21.jpg](https://qiita-image-store.s3.amazonaws.com/0/239597/b29d7e37-9097-5276-b77d-8b3bbb732b4d.jpeg)

　Language Traslatorをクリック

![Watson_18.jpg](https://qiita-image-store.s3.amazonaws.com/0/239597/7888cbe3-36aa-5543-428b-d9c99150ff10.jpeg)

Language Translatorのサービス作成画面
![Watson_22.jpg](https://qiita-image-store.s3.amazonaws.com/0/239597/97f21d74-5deb-2c89-0f76-bc528bcbed5d.jpeg)

　もちろん、ライトプラン
![Watson_23.jpg](https://qiita-image-store.s3.amazonaws.com/0/239597/1e48977f-678c-8e74-7d83-b42e9585ea48.jpeg)

　作成ボタンクリック
 ![Watson_24.jpg](https://qiita-image-store.s3.amazonaws.com/0/239597/529affa2-23ce-20ad-66e0-13bcb16540db.jpeg)

　またまたチュートリアル（それも英語）ドカン！
![Watson_25.jpg](https://qiita-image-store.s3.amazonaws.com/0/239597/624b4696-bd9b-eea3-087d-3a51bebcf32a.jpeg)

　めけずに、まずServicesをクリック
![Watson_26.jpg](https://qiita-image-store.s3.amazonaws.com/0/239597/73ad69ea-c211-2adb-5421-419e8a7de675.jpeg)

　Language TranslatorサービスをSelected
![Watson_27.jpg](https://qiita-image-store.s3.amazonaws.com/0/239597/3b78b013-9461-3a14-0c50-24a52156c6f4.jpeg)

　サービスの追加をクリック
![Watson_28.jpg](https://qiita-image-store.s3.amazonaws.com/0/239597/21b11275-0657-ae9e-d971-b70bba047181.jpeg)

　新規プロジェクトの作成画面、プロジェクト名の入力：にデフォルトが設定済み
　そのまま採用（任意でいい）
![Watson_29.jpg](https://qiita-image-store.s3.amazonaws.com/0/239597/8c529f02-2437-4e8d-cc6e-c5de04b2a715.jpeg)

　プロジェクト作成クリック
![Watson_30.jpg](https://qiita-image-store.s3.amazonaws.com/0/239597/ec67a3df-04c5-bea9-3693-b2ef63603c09.jpeg)

　プロジェクト作成エラー
　残念ながらライトプランでは、プロジェクトは作成できないようです。
　別のプランにする必要があります。
　最初のLanguage Translatorのサービス作成までで1インスタンスできていいるためです。
　チュートリアルのServicesをクリックする下りは不要（ガーン）
　トラップだ！
![Watson_31.jpg](https://qiita-image-store.s3.amazonaws.com/0/239597/dbbb56db-f726-313e-06ba-dd063d6585a1.jpeg)

　ダッシュボードに戻って、Language Translatorのサービスができている確認
　できていました！
　サービス名をクリック
![Watson_33.jpg](https://qiita-image-store.s3.amazonaws.com/0/239597/be4f7310-f064-6534-6543-90b4e1bdb8f7.jpeg)

　サービス資格情報をクリック
![Watson_34.jpg](https://qiita-image-store.s3.amazonaws.com/0/239597/1d49b554-234b-df01-f261-21863db0afb4.jpeg)

　資格情報をクリック
![Watson_35.jpg](https://qiita-image-store.s3.amazonaws.com/0/239597/e60c539e-cb89-ab13-0609-930e68580afe.jpeg)

　新規情報の追加画面、パラメーターはブランクのまま
　追加クリック
![Watson_36.jpg](https://qiita-image-store.s3.amazonaws.com/0/239597/e93b0b2c-33a0-d571-ae65-83ff2c5cb2a0.jpeg)

　資格情報が追加されます
![Watson_37.jpg](https://qiita-image-store.s3.amazonaws.com/0/239597/5a0a1049-8c33-2b48-2a84-c52d20ccf6b3.jpeg)

　キー名を選択して、資格情報の表示をクリック
　url並びに、usernameとpasswordをメモに保存してください。
![Watson_38.jpg](https://qiita-image-store.s3.amazonaws.com/0/239597/c574fb03-a13c-8ce5-7570-b5339b6de538.jpeg)


[　チュートリア](https://github.com/IBM-Bluemix-Docs/language-translator/blob/master/getting-started.md)のStep1のコマンドを参照して翻訳してみます。
　[curlをインストールする必要があります。](https://qiita.com/sugasaki/items/ba9737d13db33d2cd71f)
![Watson_39.jpg](https://qiita-image-store.s3.amazonaws.com/0/239597/4ee2e043-6df6-6bb0-5691-76746b92c882.jpeg)
　
　curlのapiは[ここ](https://www.ibm.com/watson/developercloud/language-translator/api/v2/?curl#introduction)を参照して見てください。
　だたし、パラメータの指定に違いがあるところに注意です。

　× POST request 例

```sh
　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](https://qiita-image-store.s3.amazonaws.com/0/239597/ea91f5d1-41b7-59fc-b3e2-958869183f5c.jpeg)

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

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

![Watson_40.jpg](https://qiita-image-store.s3.amazonaws.com/0/239597/2cdf4447-a55c-f923-4d38-bc67f28e0404.jpeg)


![Watson_42.jpg](https://qiita-image-store.s3.amazonaws.com/0/239597/656697d2-76f5-4c81-ea1b-0ae0cbad8ee4.jpeg)

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

![Watson_43.jpg](https://qiita-image-store.s3.amazonaws.com/0/239597/6599195d-a003-60f1-aaf3-e02939e8f8a9.jpeg)

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

```sh
　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](https://qiita-image-store.s3.amazonaws.com/0/239597/23043fc5-ba44-0b6c-a54c-5fe06a8cf6c3.jpeg)

　iをIにした英文を投入すると、私と翻訳してくれました。（翻訳のくせがありそうです）
![Watson_45.jpg](https://qiita-image-store.s3.amazonaws.com/0/239597/9fabd039-0a35-5a00-e51c-c0b1d5956520.jpeg)

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

■　まとめ

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

以上、おそまつ