ASTERIA Warp 製品ブログ

いつものLINEが翻訳アプリに?~LINEで翻訳Botをつくってみた~

いつものLINEが翻訳アプリに?~LINEで翻訳Botをつくってみた~みなさん、こんにちは。
アステリアのキクチです。

寒い日が続きますね。
巷ではインフルエンザが流行っていますが、みなさんは大丈夫ですか?

キクチも毎日娘に強制されていますが、一番の予防はやはり「手洗い・うがい」だそう。
寒さが一層厳しくなってきましたがみなさんも体調崩されないようにお気をつけください!




さて、今回の体験記では、すでにリリースされている2つのアダプター

LINEアダプター LINEアダプター
GoogleCloudPlatformアダプター GoogleCloudPlatformアダプター

こちらのアダプターを組み合わせて、簡単な翻訳Botを作ってみたのでご紹介したいと思います。

なぜ翻訳Botかって?
最近、弊社アステリアにも外国籍の社員が増えてきて、彼らとももっと会話したい!と思っているのですが、英語があまり得意ではないキクチにはなかなかハードルが高く…
気軽にコミュニケーションを取とりたいという想いで作ってみたのが、皆さんお使いのLINEを使った翻訳アプリ!
ASTERIA Warpを使えば、こんなものもサクッと作れちゃいます!

 

それぞれのアダプターについては、すでに以前のブログで紹介しているので詳細は割愛しますが、一般的に利用されているLINEが簡単に翻訳Botに変身しちゃうんです!

 


さて、まずは今回開発した翻訳Botの処理手順を確認していきます。

翻訳Botの処理手順

  1. ユーザーが英語の文章を含んだ「画像」もしくは英語の「テキスト」メッセージを送信
  2. LINEからのWebhookを受け取り、メッセージ内容が「テキスト」か「画像」の場合に翻訳処理実行
  3. メッセージ内容が「画像」の場合にはGoogleのVisionAPIを利用して画像内容を文字列に変換
  4. 文字列に変換したデータをGoogleのTranslationAPIを利用して日本語に変換
  5. 変換した文字列を送信元のユーザーに返信

こんな流れになります。
開発したフローを見てみましょう。

メインのフローはフローテンプレート「LINE@友達情報の受信/返信」を利用してちょっと手を加えています

LINE@友だち情報の受信/返信

Webhook受信

LINEから送られてきたWebhookをメッセージ種別に応じて振り分けていますが、重要なのは受け取ったデータをどうやって翻訳するか、ですね。

実際のデータ取得、翻訳処理はこんなフローで呼び出しています。

翻訳データ->OCR実行->翻訳実行->reply

メッセージ種別を判定しなくてはならないので少し複雑そうに見えるかもしれませんが、例えば実際に画像解析を行っている内容は

OCR解析

これだけですし、取得したテキストの翻訳も、

翻訳

これだけです。

個別の処理はとてもシンプルですね。

あとは、LINEアダプターのブログでも事前準備としてご紹介していましたが、初めに呼び出されるフロー(今回だと「Webhook受信」フロー)にURLトリガーをセットしておきます。


これで準備完了です。

実際に画像データやテキストを送信してみましょう。

まずは、こんな画像。

CHALLENGE OF EXISTING GRAPH DATABASES

英語のセミナーでのスライドのひとコマです。
もちろん、スピーカーも英語でした。

絵を見ればなんとなーくどんなことを話しているかは理解できるものの、
ほんとに「なんとなーく」になってしまします…汗

この画像を開発したLINEの翻訳Botに送ってみると…

画像翻訳Bot画面

おぉ、きちんと翻訳されたメッセージが返ってきました!

既存のグラフデータベースの課題

画像と合わせて翻訳を読んでみると、それなりに理解できるような気がしますね!

もちろん単純なテキストメッセージも…

He who runs after two hares will catch neither.

「He who runs after two hares will catch neither.」

…“二兎を追う者は一兎をも得ず“的な。

2匹のウサギを追いかけている彼はどちらも捕まえません。

なんだか、すごく説明口調ですが、翻訳出来ていそうな気がします。

うん、画像もテキストも翻訳出来ていますね!!


いかがですか?
こんなLINEBotがあれば、海外の街角でお店を探すときなどに看板の写真サッと撮るだけで翻訳してくれるので、「これは何のお店なんだろう…!?」なんてドキドキする必要は無くなるかもしれません。

また、今回のフロー開発については、LINE@側の準備から含めても1時間くらいしかかかっていません。
お手軽に機能を追加できてしまうのもASTERIA Warpだからこそですね!

でも、今回注目していただきたいのはASTERIA Warpは「翻訳」や「画像読み取り」といった重要なことは“何も”していないということです。

今回の処理の中でASTERIA Warpは「LINE」から「Google Vision API」へデータを渡す、「Google Translation API」から「LINE」へデータを渡す、といったデータの通り道にしかなっていません。
ただ、様々なアプリケーション開発の中で手間がかかってくるのが、「AからBへどうやってデータを渡す」のか、といった部分ではないでしょうか。
一番手間のかかる部分を簡単に構築できる、また思いついたアイデアを簡単に試せるというのもASTERIA Warpの魅力です!

今回はGoogle Cloud PlatformのAPIを利用しましたが、AzureやAWSのAPIもフローに手を加えるだけで利用できるのでぜひサンプルフローで試してみてくださいね。


今回のフローはこちらからダウンロードしてお使いいただけます↓

フローダウンロード

 

クラウド版 使い方いろいろ!
手ぶら de ASTERIA Warp
体験 5日間

サーバー準備の手間なくデータ連携ツール「ASTERIA Warp」の
全ての機能を5日間お試しいただけます。

今すぐ体験してみる 書籍の詳細についてはこちらをご覧ください。
基礎と実践 使い方マニュアル
【ASTERIA Warp 事例集】業務自動化/RPA、EAI、マスターデータ管理、クラウド連携・・・業務効率化・データ活用事例をまとめ読み

ASTERIA Warp関連サイトのご紹介

X

<技術情報をお探しの方>

ASTERIA Warp Developer Network
(ADN)サイト

ASTERIA Warp製品の技術情報やTips、また情報交換の場として「ADNフォーラム」をご用意しています。

X

<ASTERIA Warpユーザーの方>

ASTERIA Warpユーザーグループ
(AUG)サイト

ASTERIA Warpユーザー同士の交流の場として、各種イベント案内や開催レポートを掲載しています。

X

<ASTERIA Warpユーザーの方>

ASTERIA Warpユーザーサイト
Login

製品更新版や評価版のダウンロード、各種ドキュメントのご提供、また 技術的なお問合せもこちらで受付ています。

X

<ASTERIA Warpパートナーの方>

ASTERIA Warpパートナーサイト
Login

パートナーライセンスの発行や各種ドキュメントのご提供をしています。