Diese Präsentation wurde erfolgreich gemeldet.
Wir verwenden Ihre LinkedIn Profilangaben und Informationen zu Ihren Aktivitäten, um Anzeigen zu personalisieren und Ihnen relevantere Inhalte anzuzeigen. Sie können Ihre Anzeigeneinstellungen jederzeit ändern.

JavaScript と Bot Service を使った Bot 開発

351 Aufrufe

Veröffentlicht am

Azure Bot Service と Node.js で Bot を開発する方法についての資料です。

Veröffentlicht in: Technologie
  • Als Erste(r) kommentieren

JavaScript と Bot Service を使った Bot 開発

  1. 1. こちらが入力した言葉を コンピューターが解釈して 何らかの答えを返してくれる 自動で動作する アプリ
  2. 2. 日本マイクロソフト社内 庶務サポートBOT
  3. 3. Website 認証 検索 購入 Bot いらっしゃいませ、○○さん。 はい、こちらに。 ご注文を承りました。 ご利用ありがとうございました。
  4. 4. Conversational Agent 宿泊予約飛行機の予約 ご挨拶 (Hello!) 会員確認Dialogs/Tasks Parameters (なし) 予約開始日 予約終了日 人数 概算見積もり 出発場所 … 到着場所 認証 特別オファー 部屋の種類 旅行 Bot 「品川から沖縄に 行きたい」 「1泊1人10,000円まで、 国際通りから徒歩圏」
  5. 5. 旅行 Bot 宿泊予約飛行機の予約 ご挨拶 (Hello!) 会員確認Dialogs/Tasks Intent Entity Cognitive Services LUIS
  6. 6. Microsoft Graph https://graph.microsoft.com/
  7. 7. https://graph.microsoft.com/
  8. 8. ユーザー入力の想定 3か4LDKで、家賃2から5万円くらい。 庭付きで、品川から電車で45分以内、 その最寄り駅から徒歩10分圏内。そこ から徒歩5分以内にジムがある物件を 探しています。 部屋を探しています。 Starwars の映画の曲 が聞きたいのだけど、 どの映画だったかわ すれちゃいました。 悲愴感というか物悲 しい雰囲気の曲です。 あと、デススターに 突入するときの勇ま しい感じの曲も知り たいです。 漢字表記が複数、 間違い、ひらがな 複数の質問が 一度に
  9. 9. ナビゲーション ようこそ! 何かお役に 立つ事はありますか? Events Stages Amenities どのイベントに 興味がありますか? Music Comedy Film Laser Dome Spectacles Theater 誰の音楽が好きですか? “Lady Gaga”
  10. 10. Bot が理解できる入力に誘導する ※途中、操作がわからなく なった場合は「/help」、 メニューに戻る場合は、 「/menu」と入力してください。 内容が理解できませんでした。 以下のように入力してみてく ださい。 例)品川から渋谷まで電車で 行くには?
  11. 11. 会話の入出力 自然言語処理 ログ DB
  12. 12. 会話の入出力 自然言語処理 ログ DB 外部サービスAPIなど
  13. 13. 会話の入出力 自然言語処理 ログ DB 回答 DB
  14. 14. 会話の入出力 自然言語処理 ログ DB 回答 DB
  15. 15. 会話の入出力 自然言語処理 回答 DB ログ DB
  16. 16. ダイアログ形式の コミュニケーションを実装 (C#, Node.js) BOT アプリをメッセージングサービスに 公開 BOT 開発のための統合環境
  17. 17. Node.js & C# SDK Built-in ダイアログ:
  18. 18. BOTと他のメッセージチャネルを接続
  19. 19. 開発ツール http://aka.ms/bf-bc-vstemplate https://aka.ms/bf-bc-emulator https://github.com/Microsoft/botbuilder 開発ドキュメント https://docs.botframework.com/en-us/
  20. 20. • Node.js、C# ともに 用意されているテンプレートの 種類と数は同じ • クライアントからコードを デプロイする際、言語が異なると HTっTP 500 が発生するので注意
  21. 21. • ダウンロードしてローカル環境で開発 • オンラインコードエディタで編集
  22. 22. • Node.js はコードを書き換えればそのまま動作 • C# は Build.cmd でビルドが必要
  23. 23. 必要なランタイムと ツール コメントアウト npm install モジュールの インストール npm -g windows-build-tools
  24. 24. コマンドライン デバッグ実行 node app.js ① ② エミュレーターから アクセス
  25. 25. プロジェクトに含まれるpublish.js を実行 node publish.js
  26. 26. ~ Azure なしで開発する場合 ~ npm init npm init npm -g windows-build-tools Microsoft Visual C++ ランタイム コンパイラ 以下がインストールされる
  27. 27. ~ Azure なしで開発する場合 ~ npm init npm install --save botbuilder npm install --save restify 「Create a bot with the Bot Builder SDK for Node.js」のサンプ ルコードをコピー npm install --save botbuilder-azure
  28. 28. node app.js
  29. 29. Text Analytics Language Understanding Intelligent Service (LUIS) Language: ja keyPhrases: Azure
  30. 30. https://www.luis.ai/
  31. 31. 検索の専門的な知識不要で容易にリッチ検索アプリの構築を可能と し、また完全マネージドで運用管理コストも削減することができる → アプリ/サービス開発に集中できる
  32. 32. 地理空間検索 全てAzure Searchの機能で実現しています http://azjobsdemo.azurewebsites.net/
  33. 33. インデックス追加・更新 /indexes/<indexname> PUT インデックス一覧表示 /indexes GET インデックス統計情報取得 /indexes/<indexname>/stats GET インデックスの削除 /indexes/<indexname> DELETE ドキュメント追加・削除 /indexes/<indexname>/docs/index POST 検索 /indexes/<indexname>/docs GET ドキュメントlookup /indexes/<indexname>/docs/<key> GET ドキュメント数取得 /indexes/<indexname>/docs/$count GET サジェスション /indexes/<indexname>/docs/suggest GET テストアナライザ /indexes/<indexname>/analyze POST https://<アカウント名>.search.windows.net { "@odata.context": "https://yoichikademo.search.windows.net /indexes('messages')/$metadata#Collectio n(Microsoft.Azure.Search.V2016_09_01.Ind exResult)", "value": [ { "errorMessage": null, "key": "1", "status": true, "statusCode": 201 }, { "errorMessage": null, "key": "2", "status": true, "statusCode": 201 }, { "errorMessage": null, "key": "3", "status": true, "statusCode": 201 } ] } ※ APIバージョン 2016-09-21の機能一覧。バージョンごとの機能についてはこちらを参照ください
  34. 34. プログラムとコンテンツの 2 の観点
  35. 35. 想定外の自然言語以外の処理はテストケースを 100% クリア
  36. 36. 想定外の自然言語処理は合格ラインを決める
  37. 37. ユーザーの問い合わせは解決したか? はい いいえ
  38. 38. • いつでもどこでも • ユーザーが使い慣れたツール を経由して、商品やサービス を提供可能 • 自然言語からの類推 • パーソナライズ、パターン化 などによる定型処理
  39. 39. http://bit.ly/emotion-bot-hol Azure Antenna : Azure Bot Service ではじめる チャットボット開発ハンズオン

×