TranslatorAPIを使ってみた

投稿者: | 2017年4月16日

今年の初めごろからCognitive Serviceの一部になりましたが今更になってようやくTranslatorAPIを利用してみたので記載していきます。

Azure Fucntionsで作成しているLine Botの一部として実装したのですがHttpClientを利用したサンプルが少ないのでいろいろ調べました。

 

※この記事は2017年4月16日時点の情報になります。

下記のコードはAzureFunctions + C#で作成したので必要であれば一部読み替えてください。

 

TranslatorAPIを利用するときは認証Tokenを取得する必要があります。

まずはTokenを取得する実装を行います。このソースの中に出てくるConfigurationManager.AppSettings[“AuthToken”]はTranslatorAPIのKEYになります。TranslatorAPIのKey取得方法についてはこちらを参考にしてください。

 

下記のソースは英語から日本語に翻訳するさんぷるそーすになります。

翻訳するテキストと翻訳する言語の設定をURLパラメータとして設定します。

先に取得したトークンはHTTPヘッダーに設定します。あとはGETリクエストすればいいだけです。ここでは英語から日本語に変換しています。URLパラメータのFromとToに言語を指定するば多種多様な翻訳が可能です。

取得したレスポンスはXML形式で返されるのでXDocumentでパースします。Functionsの場合はSystem.Xml.linqはデフォルトで参照していないのでnugetする必要がありますがここでは割愛します。

 

で、やってみた結果から言うと精度は低いです。

 

LineBotの試作版で試してみました。一目瞭然だと思いますが結構微妙な翻訳です。

Google翻訳のように利用頻度が高く学習された翻訳と比べるまでもないとは思いますが、今後の機械学習による翻訳精度の向上に期待したいと思います。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA