チャットBotの概要
会話型ボット
Kore.ai のアプローチ
Kore.ai 会話型プラットフォーム
ボットの概念と用語
自然言語処理 (NLP)
ボットタイプ
ボットタスク
Kore.ai プラットフォームを使う
ボットビルダーのアクセス
Kore.ai ボットビルダーを使う
初めてのボット構築
ボット構築を始める
シンプルなボットを構築
ボットビルダー
標準ボットの構築
設計
開発 - 標準ボット
ストーリーボード
ダイアログタスク
ユーザーインテントノード
ダイアログノード
エンティティノード
サポートするエンティティタイプ
複合エンティティ
サポートする色
サポートする会社名
フォームノード
ロジックノード
メッセージノード
確認ノード
サービスノード
カスタム認証の実装
サービスノード用双方向 SSL
スクリプトノード
エージェント転送ノード
Webフックノード
ノードのグループ化
接続と遷移
ダイアログの管理
プロンプトエディタ
アラートタスク
アラートタスク
無視する単語 & フィールドメモリ
デジタルフォーム
デジタルビュー
知識グラフ
用語
構築
生成
ボットオントロジーのインポート/エクスポート
解析
知識の抽出
スモールトーク
自然言語
概要
機械学習
ML (機械学習) モデル
基本概念
NLP (自然言語処理) の設定 & ガイドライン
知識グラフのトレーニング
示唆
ランキング & リゾルバ
高度な NLP 設定
インテリジェンス
概要
コンテキスト管理
セッションおよびコンテキスト変数
コンテキストオブジェクト
ダイアログ管理
サブインテント
エンティティの変更
複数インテントの検出
センチメント分析 (英語)
トーン分析
センチメント管理
デフォルトの会話
デフォルトの標準レスポンス
チャネルの有効化
テスト & デバグ
ボットと会話
発話テスト
バッチテスト
会話の記録 & テスト
ボットの公開
ボットの分析
概要
ダッシュボード
カスタムダッシュボード
会話フロー
ボットメトリクス (英語)
アドバンスド トピック
ボット認証
言語管理
共同開発
IVR 統合
データ テーブル
ユニバーサル ボット
定義
構築
トレーニング
カスタマイズ
言語の有効化
スマート ボット
スマート ボットの定義
イベントベースのボットアクション
koreUtil ライブラリ
ボット設定
ボットの機能
ボット設定
PII 設定
エラーメッセージのカスタマイズ
セッションを管理する
ボット管理
ボットのバージョン
ボット変数
API ガイド (英語)
API 概要
API リスト
API コレクション
SDK (英語)
SDK 概要
SDK セキュリティ
SDK アプリ登録
Web 上の SDK チュートリアル
メッセージ形式とテンプレート
モバイル SDK プッシュ通知
メッセージ形式とテンプレート
ウィジット SDK チュートリアル
WebSocket 接続
BotKit SDK の利用
インストール
設定
イベント
機能
BotKit SDK チュートリアル - エージェント転送
BotKit SDK チュートリアル - フライト検索サンプルボット
外部 NLP エンジンの利用
ボット管理者
ボット管理者コンソール
ダッシュボード
ユーザー管理
御社ユーザーの管理
御社グループの管理
ロールを管理
ボット管理
エンロール
ユーザーの招待
一括招待
ユーザーのインポート
AD からユーザーを同期
セキュリティ & コンプライアンス
シングル サインオンを使う
セキュリティの設定
クラウド コネクタ
分析
請求処理
How To
シンプルなボットの構築
バンキングボットの構築
送金タスク
残高の更新タスク
知識グラフを作成
知識グラフへ抽出したFAQを入力
スマート アラートのスケジュール
エージェント転送の設定
パネルやウィジットの設定
デジタル ビューの設定
デジタル フォームの設定
データをデータテーブルに追加
データテーブルのデータを更新
フォームデータをデータテーブルに追加
コンテキストの切り替え
意図を使う
インテントやエンティティのパターン
エンティティ ルール
マルチ言語なボットの動き
カスタム ダッシュボード
ボット メトリクスをフィルターするためのカスタムタグ
グローバル変数
コンテンツ変数
ボット機能を使う
ボットリリースのライフサイクル
グループノードを利用したインテントのスコーピング
Kore-Unblu インテグレーション
  1. Home
  2. Docs
  3. Bots
  4. Chatbot Overview
  5. ボットの概念と用語

ボットの概念と用語

このセクションでは、Kore.ai Botプラットフォームに関連する主要な用語や概念について説明しています。

Bot

Botとは、人やデジタルシステム、インターネット対応のものとの間でインテリジェントな仲介役を務めるバーチャルアシスタントの一つの形態を指します。Botは、機械学習、自然言語処理、およびその他の形態の高度なソフトウェアを備えたインテリジェントなものであり、人間による複雑な会話を処理したり、過去のやり取りから学習したり、時間の経過とともに応答を改善したりすることができます。

発話

ユーザーがチャットBotに言ったことはすべて発話となります。例えば、ユーザーが次の日曜日のオーランド行きのフライトを予約してくださいと入力した場合、その文全体がユーザーの発話とみなされます。

インテント

ユーザーがチャットBotにしてほしいことについて説明している、発話中のいくつかの重要な単語のことを指します。通常は動詞と名詞の組み合わせです。例えば、上記のユーザーの次の日曜日のオーランド行きのフライトを予約してくださいという発話では、インテントはフライトを予約するになります。

エンティティ

ユーザーのインテントを満たすために、Botはその他の情報やパラメータを必要とすることがあります。例えば、フライトを予約するためには、出発地と目的地の都市や旅行日が必要になります。上記の例では、ユーザーの次の日曜日のオーランドへのフライトを予約してくださいという発話では、オーランド次の日曜日がエンティティになります

エンティティとは、チャットBotがユーザーからの要求を完了させるために必要なフィールド、データ、単語のことを指します。必要なエンティティが手元にあれば、Botプラットフォームはウェブサービスにアクセスして、特定のデータを取得したり、ユーザーインテントに沿ったアクションを実行したりすることができます。

パラメータとユーザー入力の詳細については、Botタスクの定義で、特定のタスクタイプのパラメータおよびフィールドを参照してください。

発話のサンプル インテント エンティティ
オーランド行きのフライトを予約する フライトを予約する 都市:オーランド
今週の日曜日にBillとのミーティングを予約する ミーティングを予約する 人名:Bill
日付:2018年4月22日
赤ワイン2本をカートに追加する カートに追加する アイテム:赤ワイン
数:2

自然言語処理

Botがユーザーインテントを識別し、ユーザーの発話から有用な情報を抽出し、そのデータ(エンティティ)を関連するタスクにマッピングするプロセスを指します。これにより、Botは複雑なメニューやプログラミング言語ではなく、テキスト形式で要求を処理することができます。
Kore.aiのプラットフォームは独自のNLP戦略を採用しています。ファンダメンタルミーニングと機械学習エンジンを組み合わせ、最適な会話精度を実現します。Kore.aiのプラットフォーム上に構築されたBotは、以下のことを理解して処理することができます。

  • 複数センテンスのメッセージ
  • 複数のインテント
  • コンテキストに沿った参照
  • パターンや慣用句など

人工知能

音声認識や理解、言語翻訳など、通常は人間のような知能を必要とする作業を行うために、人間の行動や意思決定をシミュレートする機械の能力のことを指します。

機械学習

明示的にプログラムされることなく、アルゴリズムやパターン、学習データを使って学習したり、隠れた洞察を見つけたりする機械の能力を指します。

エンティティ抽出

タスクを完了させるために、ユーザーの発話から関連性のある貴重なデータを抽出することを指します。Botは、ユーザーのタスクを完了させるためのデータがすべて揃っているかどうかを確認し、揃っていない場合は、不足している情報を送信するようユーザーに促す場合があります。

Botタスク

タスクとは、開発者によってチャットBotに指定されたさまざまなタイプの単純なジョブと複雑なジョブを指します。これらのタスクは、ユーザーインテントを満たすためにチャットBotによって実行されます。

旅行Botの場合、タスク名はチケットの予約、ホテルの検索、天気予報の提供など、ユーザーインテントに応じたものになります。

Botがユーザーインテントを理解すると、ウェブサービスにアクセスし、現在の天気予報を抽出し、その応答を解析し、ユーザーにデータを配信するなどのタスクを実行する準備が整います。

Kore.aiは5つの事前定義済みのタスクタイプを提供しており、事実上すべてのBotシナリオに対応しています。

アクションタスク

Botは、スケジューの予約、商品の検索、重要な情報の更新など、記録システムで情報を収集、修正、投稿することができます。

アラートタスク

Botは、バックエンドシステムをポーリングしたり、定期的に情報を取得したりすることで、エンタープライズシステムから直接、顧客や従業員にタイムリーで関連性の高い、パーソナライズされた通知を送信することができます。ユーザーやBot開発者はアラートを設定することができます。

ナレッジグラフ

Botは、事前定義済みの情報を照会することで、よくある質問への回答をユーザーに提供することができます。例えば、Botは、営業時間に関する顧客の質問に答えると同時に、返品ポリシーに関する質問にも答えることができます。

情報タスク

Botは、バックエンドシステムからのデータをレポート形式でユーザーに提供することができます。これらのレポートは、ユーザーの好み、適用可能なフィルタに基づいて書式設定およびまとめられ、後に使用するためにダウンロードすることができます。例えば、Botは、売上の多い順にまとめられた、昨年の営業担当者の地域別トップ10の詳細なレポートを営業マネージャーに提供することができます。

ダイアログタスク

Botは、人々が毎日行う自然なやり取りを再現した、複数のラリーを含む複雑な会話体験を処理することができます。

学習

学習とは、チャットBotがいかにして新しいインテントやエンティティを認識し、質問に正しく回答し、ユーザーの発話の重要な部分を識別するかということを指します。学習は手動でも自動でも行えます。そして人間と同様に、Botは自分が間違っているのはどんな時か、そして正しい行動、応答、または回答とは何であるかについて知る必要があります。

教師あり学習

入力変数(X)と出力変数(Y)があり、アルゴリズムを使用して入力から出力へのマッピング関数を学習する学習の形式です。ここでは、Botの開発者は教師としての役割を果たし、Botが学習する内容をコンピュータ上で完全に制御することができます。つまり、アルゴリズムは提供されたトレーニングデータに基づいて予測を行います。Bot作成者である開発者は、検出された結果が正しいか正しくないかのフラグを立てることで、これらの予測を手動で修正することができます。Botが何を理解すべきかについてBot開発者は
すでに把握しているため、開発者が決定した時点、またはモデルが許容できるレベルの性能に達した時点で、学習を停止することができます。

教師なし学習

Bot開発者の管理を必要としない学習の形式です。ここでは、Botは良好なすべての発話(つまりBotによって正常に認識された発話)と完了済みのタスクから学習します。Botは、これらの結果を利用してモデルを自動的に拡張し、不一致があった場合にはユーザーが提供するインテントの確認を含めて、Botを再トレーニングします。この形式のトレーニングにより、Botは言語能力を拡張し、問題のあった発話を除外しつつ、人間が介入することなく精度を向上させることができます。

メッセージチャネル

チャネルとは、SMS、電子メール、モバイルアプリ、ウェブサイト、メッセージアプリなど、Botが存在できる様々なコミュニケーションプラットフォームを指します。Botビルダーを使用すると、一度チャットBotのタスクを設計し、ボックスにチェックを入れるだけでチャネルをまたいで展開することができます。また、メッセージの応答を変更したり、日付セレクタやカルーセルなどのチャネル固有のUI要素を活用したりすることで、チャネル横断的な体験を差別化することができます。

変数、コンテキスト、セッションデータ

開発者がタスクを作成して定義すると、以下を利用することができるようになります。

  • Botプラットフォームが提供するセッション変数
  • それらが定義するカスタム変数
  • 変数の範囲を定義するコンテキスト

例えば、一部のAPIリクエストではタスクを実行する前にセッション変数を設定する必要があったり、次のノードに移動するためにダイアログタスクコンポーネントがセッション変数にアクセスする必要があったりします。ダイアログタスクは、追加のシステム変数でコンテキストオブジェクトにアクセスすることもできます。これらのセッション変数とコンテキスト変数によって、データを永続化して保存することができます。例えば、商業、輸送、宅配に特化したサービスに使用されるユーザーの自宅住所は、Botがタスクを実行するときに使用します。

Botプラットフォームは、JavaScriptを使用してセクション内でタスクを定義する際に使用されるセッション変数をサポートしています。セッション変数は、使用されるコンテキストや範囲によって異なります。例えば、エンタープライズレベル、Botレベル、ユーザーレベル、セッションレベルなどがあります。

メニュー