IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

7049300顧客コミュニケーションおよびワークフローを管理するインテリジェント仮想エージェント
<>
  • -顧客コミュニケーションおよびワークフローを管理するインテリジェント仮想エージェント 図1
  • -顧客コミュニケーションおよびワークフローを管理するインテリジェント仮想エージェント 図2
  • -顧客コミュニケーションおよびワークフローを管理するインテリジェント仮想エージェント 図3
  • -顧客コミュニケーションおよびワークフローを管理するインテリジェント仮想エージェント 図4
  • -顧客コミュニケーションおよびワークフローを管理するインテリジェント仮想エージェント 図5
  • -顧客コミュニケーションおよびワークフローを管理するインテリジェント仮想エージェント 図6
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-03-29
(45)【発行日】2022-04-06
(54)【発明の名称】顧客コミュニケーションおよびワークフローを管理するインテリジェント仮想エージェント
(51)【国際特許分類】
   G06Q 10/10 20120101AFI20220330BHJP
【FI】
G06Q10/10 310
【請求項の数】 20
【外国語出願】
(21)【出願番号】P 2019183339
(22)【出願日】2019-10-03
(65)【公開番号】P2020077394
(43)【公開日】2020-05-21
【審査請求日】2019-10-03
(31)【優先権主張番号】62/740,742
(32)【優先日】2018-10-03
(33)【優先権主張国・地域又は機関】US
(31)【優先権主張番号】16/590,767
(32)【優先日】2019-10-02
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】516172237
【氏名又は名称】アクセンチュア グローバル ソリューションズ リミテッド
(74)【代理人】
【識別番号】100102406
【弁理士】
【氏名又は名称】黒田 健二
(74)【代理人】
【識別番号】100100240
【弁理士】
【氏名又は名称】松本 孝
(72)【発明者】
【氏名】山根 圭輔
(72)【発明者】
【氏名】粟倉 万統
(72)【発明者】
【氏名】眞壁 伸治
(72)【発明者】
【氏名】公文 貴之
(72)【発明者】
【氏名】水上 廣敏
(72)【発明者】
【氏名】八木 慧
(72)【発明者】
【氏名】坂田 和也
(72)【発明者】
【氏名】成尾 明久
(72)【発明者】
【氏名】星川 彰男
【審査官】山崎 誠也
(56)【参考文献】
【文献】特許第6263668(JP,B1)
【文献】特開2018-151724(JP,A)
【文献】米国特許出願公開第2017/0310613(US,A1)
【文献】LINEなどの主要チャットサービスに対応したチャットボット基盤[SMART Message BOT]を開発,[online],2016年12月01日,[令和2年10月2日検索], インターネット<URL:https://news.neoscorp.jp/news-bot-release/>
【文献】サテライトオフィス、LINE WORKSによるタスク管理機能の提供を開始,[online],2017年11月29日,[令和2年10月2日検索], インターネット<URL:https://news.mynavi.jp/article/20171129-549490/>
【文献】「LINE禁止」で終わりにしない 働き方改革はビジネスチャットから,日経コミュニケーション ,第629号,2016年05月30日,pp.12-18
(58)【調査した分野】(Int.Cl.,DB名)
G06Q 10/00-99/00
(57)【特許請求の範囲】
【請求項1】
複数のタスクを含む第1のワークフローを実行するために仮想エージェントを使用する方法であって、前記方法は、複数のユーザデバイスが接続される接続プラットフォームを使用して実行されるものであり、前記接続プラットフォームは、フロントエンドコンポーネントおよびバックエンドコンポーネントを含み、前記バックエンドコンポーネントは、機械学習モデルと、チャットエンジンと、ワークフローサーバと、データレイクとを含み、前記方法は、
第1のユーザに関連する第1のユーザデバイスであって、
前記第1のユーザは第1の状態を有する、前記第1のユーザデバイスおよび
第2のユーザに関連する第2のユーザデバイスであって、
前記第2のユーザは第2の状態を有する、前記第2のユーザデバイス
との間でメッセージの送信およびメッセージの受信をするステップであって、
前記メッセージは、前記フロントエンドコンポーネントおよび前記チャットエンジンのうちの1つ以上を介して送信および受信され、
前記チャットエンジンは、チャットサーバおよびボットサーバを有し、
前記受信されたメッセージのうちの少なくとも1つは、前記第1のワークフローに関連するリクエストを含む、
前記メッセージの送信およびメッセージの受信をするステップと、
前記受信されたメッセージのうちの少なくとも1つに含まれる少なくとも1つのチャットコマンドを受信すること、
前記少なくとも1つのチャットコマンドに基づき外部サービスをリクエストすること、または
前記第1のユーザおよび前記第2のユーザのうちの一方に関係するユーザ情報を取得すること
のために前記ボットサーバを使用するステップと、
前記第1のワークフローの第1のインスタンスを開始および管理することであって、前記第1のワークフローの前記第1のインスタンスの前記開始および管理は、前記複数のタスクを管理することを含む、前記開始および管理すること、
のために前記ワークフローサーバを使用するステップであって、
前記複数のタスクは、第1のタスクおよび第2のタスクを含む、
前記ワークフローサーバを使用するステップと、
前記データレイクを使用するステップであって、前記チャットエンジンからデータを受信前記データを変換されたデータに変換することを含む、前記データレイクを使用するステップと、
前記チャットエンジンの対話を改善するアクションを決定するために、前記フロンエンドコンポーネントを介して受信される対話情報を、前記機械学習モデルを用いて処理することと、前記機械学習モデルを訓練セットを用いて訓練することとを含む、前記バックエンドコンポーネントを使用するステップであって、
前記バックエンドコンポーネントは、過去の対話情報を前記訓練セットと他のセットに分割し、前記過去の対話情報は、前記チャットエンジンおよび/またはライブ担当者との以前の対話を特定する過去の情報含む、
前記バックエンドコンポーネントを使用するステップと、
前記データレイクに情報を記憶するステップであって、前記情報は、前記変換されたデータの状態と、前記第1のタスクを遂行した後の前記第1のユーザの前記状態および/または前記第2のユーザの前記状態とを含む、前記記憶するステップと、
前記第1のワークフローの前記第2のタスクの間、前記データレイクに記憶された前記情報を使用するステップと、
を含む、方法。
【請求項2】
前記第1のユーザは、ビジネス事業体の第1の従業員であり、前記第2のユーザは、前記ビジネス事業体の第2の従業員である、請求項1に記載の方法。
【請求項3】
前記方法は、第3のユーザに関連する第3のユーザデバイスとの間でメッセージの送信およびメッセージの受信をするステップをさらに含み、前記第3のユーザは、前記第1のユーザの上司である、請求項2に記載の方法。
【請求項4】
前記第1のワークフローの前記第2のタスクは、前記第3のユーザの承認を取得することを含む、請求項3に記載の方法。
【請求項5】
前記第1のワークフローと異なる第2のワークフローであって、第2のインスタンスを有する、前記第2のワークフローと、
前記第2のワークフローの前記第2のインスタンスを開始および管理すること
のために前記ワークフローサーバを使用するステップと、
をさらに含む、請求項1に記載の方法。
【請求項6】
前記第1のワークフローは、ローン申請に関係し、前記第2のワークフローは、信用調査に関係する、請求項5に記載の方法。
【請求項7】
前記第1のワークフローと異なる第3のワークフローであって、第3のインスタンスを有する、前記第3のワークフローと、
前記第3のワークフローの前記第3のインスタンスを開始および管理すること
のために前記ワークフローサーバを使用するステップと、
をさらに含む、請求項5に記載の方法。
【請求項8】
前記受信されたメッセージのうちの少なくとも1つに含まれる少なくとも1つのチャットコマンドを受信すること、および
受信された前記少なくとも1つのチャットコマンドに基づき外部サービスをリクエストすること
のために前記ボットサーバを使用するステップをさらに含む、請求項1に記載の方法。
【請求項9】
1つ以上のコンピュータにより実行可能な命令を含むソフトウェアを記憶した非一時的コンピュータ可読媒体であって、前記命令は、かかる実行をされると前記1つ以上のコンピュータを複数のユーザデバイスが接続される接続プラットフォームとして動作させるものであり、前記接続プラットフォームは、フロントエンドコンポーネントおよびバックエンドコンポーネントを含み、前記バックエンドコンポーネントは、機械学習モデルと、チャットエンジンと、ワークフローサーバと、データレイクとを含み、前記命令は、前記1つ以上のコンピュータに、
第1のユーザに関連する第1のユーザデバイスであって、
前記第1のユーザは第1の状態を有する、前記第1のユーザデバイスおよび
第2のユーザに関連する第2のユーザデバイスであって、
前記第2のユーザは第2の状態を有する、前記第2のユーザデバイス
との間でメッセージの送信およびメッセージの受信をすることであって、
前記メッセージは、前記フロントエンドコンポーネントおよび前記チャットエンジンのうちの1つ以上を介して送信および受信され、
前記チャットエンジンは、チャットサーバおよびボットサーバを有し、
前記受信されたメッセージのうちの少なくとも1つは、第1のワークフローに関連するリクエストを含む、
前記メッセージの送信およびメッセージの受信をすることと、
前記受信されたメッセージのうちの少なくとも1つに含まれる少なくとも1つのチャットコマンドを受信すること、
前記少なくとも1つのチャットコマンドに基づき外部サービスをリクエストすること、または
前記第1のユーザおよび前記第2のユーザのうちの一方に関係するユーザ情報を取得すること
のために前記ボットサーバを使用することと、
前記第1のワークフローの第1のインスタンスを開始および管理することであって、前記第1のワークフローの前記第1のインスタンスの前記開始および管理は、複数のタスクを管理することを含む、前記開始および管理すること、
のために前記ワークフローサーバを使用することであって、
前記複数のタスクは、第1のタスクおよび第2のタスクを含む、
前記ワークフローサーバを使用することと、
前記データレイクを使用することであって、前記チャットエンジンからデータを受信前記データを変換されたデータに変換することを含む、前記データレイクを使用することと、
前記チャットエンジンの対話を改善するアクションを決定するために、前記フロンエンドコンポーネントを介して受信される対話情報を、前記機械学習モデルを用いて処理することと、前記機械学習モデルを訓練セットを用いて訓練することとを含む、前記バックエンドコンポーネントを使用することであって、
前記バックエンドコンポーネントは、過去の対話情報を前記訓練セットと他のセットに分割し、前記過去の対話情報は、前記チャットエンジンおよび/またはライブ担当者との以前の対話を特定する過去の情報含む、
前記バックエンドコンポーネントを使用することと、
前記データレイクに情報を記憶することであって、前記情報は、前記変換されたデータの状態と、前記第1のタスクを遂行した後の前記第1のユーザの前記状態および/または前記第2のユーザの前記状態とを含む、前記記憶することと、
前記第1のワークフローの前記第2のタスクの間、前記データレイクに記憶された前記情報を使用することと、
をさせる、ソフトウェアを記憶した非一時的コンピュータ可読媒体。
【請求項10】
前記第1のユーザは、ビジネス事業体の第1の従業員であり、前記第2のユーザは、前記ビジネス事業体の第2の従業員である、請求項9に記載のソフトウェアを記憶した非一時的コンピュータ可読媒体。
【請求項11】
前記命令はさらに、前記1つ以上のコンピュータに、第3のユーザに関連する第3のユーザデバイスとの間でメッセージの送信およびメッセージの受信をさせ、前記第3のユーザは、前記第1のユーザの上司である、請求項10に記載のソフトウェアを記憶した非一時的コンピュータ可読媒体。
【請求項12】
前記第1のワークフローの前記第2のタスクは、前記第3のユーザの承認を取得することを含む、請求項11に記載のソフトウェアを記憶した非一時的コンピュータ可読媒体。
【請求項13】
前記命令はさらに、前記1つ以上のコンピュータに、
第2のワークフローの第2のインスタンスを開始および管理すること
のために前記ワークフローサーバを使用させ、前記第2のワークフローは、前記第1のワークフローと異なる、請求項9に記載のソフトウェアを記憶した非一時的コンピュータ可読媒体。
【請求項14】
前記第1のワークフローは、ローン申請に関係し、前記第2のワークフローは、信用調査に関係する、請求項13に記載のソフトウェアを記憶した非一時的コンピュータ可読媒体。
【請求項15】
前記命令はさらに、前記1つ以上のコンピュータに、
第3のワークフローの第3のインスタンスを開始および管理すること
のために前記ワークフローサーバを使用させ、前記第3のワークフローは、前記第1のワークフローおよび前記第2のワークフローと異なる、請求項13に記載のソフトウェアを記憶した非一時的コンピュータ可読媒体。
【請求項16】
前記命令はさらに、前記1つ以上のコンピュータに、
前記受信されたメッセージのうちの少なくとも1つに含まれる少なくとも1つのチャットコマンドを受信すること、および
前記少なくとも1つのチャットコマンドに基づき外部サービスをリクエストすること
のために前記ボットサーバを使用させる、請求項9に記載のソフトウェアを記憶した非一時的コンピュータ可読媒体。
【請求項17】
複数のタスクを含む第1のワークフローを実行するために仮想エージェントを使用するシステムであって、前記システムは、
1つ以上のコンピュータおよび命令を記憶した1つ以上のストレージデバイス
を含み、前記命令は、前記1つ以上のコンピュータにより実行されると前記1つ以上のコンピュータを複数のユーザデバイスが接続される接続プラットフォームとして動作させるものであり、前記接続プラットフォームは、フロントエンドコンポーネントおよびバックエンドコンポーネントを含み、前記バックエンドコンポーネントは、機械学習モデルと、チャットエンジンと、ワークフローサーバと、データレイクとを含み、前記命令は、前記1つ以上のコンピュータに、
第1のユーザに関連する第1のユーザデバイスであって、
前記第1のユーザは第1の状態を有する、前記第1のユーザデバイスおよび
第2のユーザに関連する第2のユーザデバイスであって、
前記第2のユーザは第2の状態を有する、前記第2のユーザデバイス
との間でメッセージの送信およびメッセージの受信をすることであって、
前記メッセージは、前記フロントエンドコンポーネントおよび前記チャットエンジンのうちの1つ以上を介して送信および受信され、
前記チャットエンジンは、チャットサーバおよびボットサーバを有し、
前記受信されたメッセージのうちの少なくとも1つは、第1のワークフローに関連するリクエストを含む、
前記メッセージの送信およびメッセージの受信をすることと、
前記受信されたメッセージのうちの少なくとも1つに含まれる少なくとも1つのチャットコマンドを受信すること、
前記少なくとも1つのチャットコマンドに基づき外部サービスをリクエストすること、または
前記第1のユーザおよび前記第2のユーザのうちの一方に関係するユーザ情報を取得すること
のために前記ボットサーバを使用することと、
前記第1のワークフローの第1のインスタンスを開始および管理することであって、前記第1のワークフローの前記第1のインスタンスの前記開始および管理は、前記複数のタスクを管理することを含む、前記開始および管理すること、
のために前記ワークフローサーバを使用することであって、
前記複数のタスクは、第1のタスクおよび第2のタスクを含む、
前記ワークフローサーバを使用することと、
前記データレイクを使用することであって、前記チャットエンジンからデータを受信前記データを変換されたデータに変換することを含む、前記データレイクを使用することと、
前記チャットエンジンの対話を改善するアクションを決定するために、前記フロンエンドコンポーネントを介して受信される対話情報を、前記機械学習モデルを用いて処理することと、前記機械学習モデルを訓練セットを用いて訓練することとを含む、前記バックエンドコンポーネントを使用することであって、
前記バックエンドコンポーネントは、過去の対話情報を前記訓練セットと他のセットに分割し、前記過去の対話情報は、前記チャットエンジンおよび/またはライブ担当者との以前の対話を特定する過去の情報含む、
前記バックエンドコンポーネントを使用することと、
前記データレイクに情報を記憶することであって、前記情報は、前記変換されたデータの状態と、前記第1のタスクを遂行した後の前記第1のユーザの前記状態および/または前記第2のユーザの前記状態とを含む、前記記憶することと、
前記第1のワークフローの前記第2のタスクの間、前記データレイクに記憶された前記情報を使用することと、
をさせるように動作可能である、システム。
【請求項18】
前記第1のユーザは、ビジネス事業体の第1の従業員であり、前記第2のユーザは、前記ビジネス事業体の第2の従業員である、請求項17に記載のシステム。
【請求項19】
前記命令はさらに、前記1つ以上のコンピュータに、第3のユーザに関連する第3のユーザデバイスとの間でメッセージの送信およびメッセージの受信をさせ、前記第3のユーザは、前記第1のユーザの上司である、請求項17に記載のシステム。
【請求項20】
前記第1のワークフローの前記第2のタスクは、前記第3のユーザの承認を取得することを含む、請求項19に記載のシステム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、全般的に、顧客コミュニケーションおよびワークフローの管理に関する。特に、本開示は全般的に、顧客コミュニケーションおよびワークフローを管理するインテリジェント仮想エージェントに関する。
【0002】
関連出願の相互参照
本願は、参照により本願明細書にその全体が援用される、2018年10月3日出願の、「顧客コミュニケーションをシームレスに処理およびサポートするインテリジェントチャットボットサービス(Intelligent Chatbot Service that Seamlessly Processes and Supports Customer Communication)」と題された米国特許仮出願第62/740,742号の利益を主張する。
【背景技術】
【0003】
仮想エージェントとは、ユーザと対話することができる、コンピュータにより生成されるエージェントである。目標指向型またはタスク指向型の仮想エージェントは、人間のユーザと自然言語でコミュニケーションをとり、様々なタスクの実行においてユーザと連携し、またはユーザを支援し得る。日常的には、仮想エージェントは「チャットボット」と呼ばれることもある。仮想エージェントは、予約および(例えばコンピュータの問題を解決するための)診断上の問題に取り組むなどの顧客のタスクを支援するために会社により使用されることがある。仮想エージェントの使用は、コールセンターを運営する営業費を削減し、顧客を支援できる利用可能なエージェントの数を企業が増加できる柔軟性を向上させることにより、会社に利点をもたらし得る。
【0004】
仮想エージェントは、ユーザが特定のタスクを迅速且つ効率的に実行するのを支援するために使用されることが増えている。現在、仮想エージェントは典型的に、単一のユーザとコミュニケーションをとり、単純なタスクしか実行しない。従来の仮想エージェントは、数日または数ヶ月にわたって発生し得る多数のタスクを有する単一の複雑な対話(例えば住宅ローンの申請)に関係する複数のユーザ(例えば顧客および様々な地位/職権レベルの企業従業員)と対話するための方策を提供しない。さらに、仮想エージェントは現在、複数のユーザによる仮想エージェントの使用を分析する方策を提供しない。さらに加えて、仮想エージェントは現在、この分析を使用して仮想エージェントの使用を改善する方策を提供しない。
【0005】
多くの複雑なビジネストランザクションは、別々の時点で発生する、複数の人々の間の一連の対話および複数のタスクの実行を含む。例として、銀行がローン(例えば住宅ローン)の申請を処理する事例では、典型的には、単一の住宅ローン申請に複数の銀行従業員が従事する。多くの場合、別々の従業員が別々の時点で住宅ローン申請に関する情報を更新し、且つ/または住宅ローンを求める顧客とコミュニケーションをとる。状況によっては、銀行従業員は、承認を取得するため、情報にアクセスするため、または一定レベルの職権を持つ者のみがアクセスもしくは実行できるタスクを実行するために、住宅ローンワークフローに上司を(例えば特定の状況に対処するために)参加させる必要があるかもしれない。複数の人々が別々の時点で単一のローン申請に関わるのは、ローン申請の多数の部分の状態をそれぞれの時点で容易に認識することはできないので、複雑なものとなるおそれがある。
【0006】
さらに、多くのビジネスにおいて、従業員システムのユーザインターフェースは、例えば信用調査、ローン契約、顧客の経歴調査など、体系化されたワークフローごとに、または顧客サービスごとに異なる。したがって、ワークフロー間および顧客サービス間の一貫性が欠如している。例として、典型的な銀行システムにおいて、顧客サービスのためのアプリケーションはサービスごとに異なる。結果として、こうした銀行システムでは、顧客アクティビティログの集中型管理を提供するのが困難である。各アプリケーションから顧客アクティビティログを抽出するプロセスは、そうしたアプリケーションに集中型管理が欠如しているため、緩慢である。
【0007】
当技術分野において、上述した欠点に対処するシステムおよび方法が必要とされている。
【発明の概要】
【課題を解決するための手段】
【0008】
開示されるインテリジェント仮想エージェントは、別々の時点で発生する複数の人々の間の一連の対話および複数のタスクの実行を含む複雑なビジネストランザクションを遂行できる単一のプラットフォームを提供することにより、上述されたものなどの従来の手法に関連する問題を解決する。こうした複雑なビジネストランザクションは、本願明細書ではワークフローとも呼ばれることがある。ワークフローは、複雑なビジネストランザクションの実行に関連する、コンピュータにより実装されるタスクを含み得る。例として、銀行などのビジネス事業体において、ワークフローには、ローン(例えば住宅ローン、自動車ローンなど)の申請、信用調査、顧客オンボーディング、監査などが含まれ得る。別の例において、ヘルスケア企業などのビジネス事業体では、ワークフローに患者の請求書作成、患者の病歴調査、患者のカルテの更新などが含まれ得る。開示されるインテリジェント仮想エージェントは、単一の企業の多数のビジネスグループが一貫した同じユーザインターフェースを体験し得るように種々のタイプのワークフローを扱うことができる、単一のプラットフォームを提供する。この一貫性は、種々のタイプのワークフローの扱いにおける予測可能性を高める。一部の実装において、タスクは、チャットメッセージの中で仮想エージェントにより受信されるコマンドに応答して実行されてもよい。
【0009】
本願明細書に記載される一部の実装は、機械学習モデルおよびビッグデータを利用してチャットボットの対話を改善する接続プラットフォームを提供する。例として、接続プラットフォームは、クライアントデバイスのユーザ(例えば顧客および顧客サービス担当者)間の対話に関連する対話情報をクライアントデバイスから受信してもよい。一部の実装において、対話情報は、数百、数千、数百万および/または同様のクライアントデバイスから受信された、数百、数千、数百万および/または同様のデータ点を含んでもよく、ビッグデータ問題を接続プラットフォームに提示してもよい。接続プラットフォームは、1つ以上の機械学習モデルを用いて対話情報を処理または分析して、チャットボットの対話を改善する実行すべき1つ以上のアクションを特定してもよい。接続プラットフォームは、1つ以上のアクションの実行を自動的に生じさせてチャットボットの対話を改善してもよい。
【0010】
開示されたデバイスおよび/または手法を使用して、接続プラットフォームは、顧客がクライアントデバイスを利用して(例えば人間とではなく)チャットボットと直接対話できるように、チャットボットの対話を改善してもよい。接続プラットフォームは、仮想エージェントが顧客と有意義な対話を実施して、顧客により提示される複数の問題を解決することを可能にしてもよい。さらに仮想エージェントは、人間の顧客サービス担当者の必要性をなくすので、接続プラットフォームは、他の場合であれば人間の顧客サービス担当者を利用して浪費されることになるリソース(例えば処理リソース、メモリリソース、金銭的リソースおよび/または同様のもの)を節約でき、さらに特に。さらに仮想エージェントは、人間の顧客サービス担当者に関連する非効率な行為(例えばエラー)を削減および/または排除することができる。
【0011】
一側面において、本開示は、複数のタスクを含む第1のワークフローを実行するために仮想エージェントを使用する方法を提供する。本方法は、第1のユーザおよび第2のユーザとの間でメッセージの送信およびメッセージの受信をするステップを含んでもよい。第1のユーザは、第1の状態を有してもよく、第2のユーザは、第2の状態を有してもよい。メッセージは、フロントエンドコンポーネントおよびチャットエンジンのうちの1つ以上を介して送信および受信されてもよい。チャットエンジンは、チャットサーバおよびボットサーバを有してもよい。受信されたメッセージのうちの少なくとも1つは、第1のワークフローに関連するリクエストを含んでもよい。本方法は、受信されたメッセージのうちの少なくとも1つに含まれる少なくとも1つのチャットコマンドを受信すること、少なくとも1つのチャットコマンドに基づき外部サービスをリクエストすること、または第1のユーザおよび第2のユーザのうちの一方に関係するユーザ情報を取得することのためにボットサーバを使用するステップを含んでもよい。本方法は、第1のワークフローの第1のインスタンスを開始および管理するためにワークフローサーバを使用するステップを含んでもよく、第1のワークフローの第1のインスタンスの開始および管理は、複数のタスクを管理することを含む。複数のタスクは、第1のタスクおよび第2のタスクを含んでもよい。本方法は、データレイクに情報を記憶するステップを含んでもよい。情報は、第1のタスクを遂行した後の第1のユーザの状態および/または第2のユーザの状態を含んでもよい。本方法は、第1のワークフローの第2のタスクの間、データレイクに記憶された情報を使用するステップを含んでもよい。
【0012】
上記の方法の一部の実装において、第1のユーザは、ビジネス事業体の第1の従業員であってもよく、第2のユーザは、ビジネス事業体の第2の従業員であってもよい。
【0013】
上記の方法の一部の実装において、本方法は、第3のユーザとの間でメッセージの送信およびメッセージの受信をするステップをさらに含んでもよく、第3のユーザは、第1のユーザの上司であってもよい。
【0014】
上記の方法の一部の実装において、第1のワークフローの第2のタスクは、第3のユーザの承認を取得することを含んでもよい。
【0015】
上記の方法の一部の実装において、本方法は、第1のワークフローと異なる第2のワークフローであって、第2のインスタンスを有する第2のワークフローと、第2のワークフローの第2のインスタンスを開始および管理するためにワークフローサーバを使用するステップとをさらに含んでもよい。
【0016】
上記の方法の一部の実装において、第1のワークフローは、ローン申請に関係してもよく、第2のワークフローは、信用調査に関係してもよい。
【0017】
上記の方法の一部の実装において、本方法は、第1のワークフローと異なる第3のワークフローであって、第3のインスタンスを有する第3のワークフローと、第3のワークフローの第3のインスタンスを開始および管理するためにワークフローサーバを使用するステップとをさらに含んでもよい。
【0018】
上記の方法の一部の実装において、本方法は、受信されたメッセージのうちの少なくとも1つに含まれる少なくとも1つのチャットコマンドを受信すること、および受信された少なくとも1つのチャットコマンドに基づき外部サービスをリクエストすることのためにボットサーバを使用するステップをさらに含んでもよい。
【0019】
さらに別の側面において、本開示は、1つ以上のコンピュータにより実行可能な命令を含んでもよいソフトウェアを記憶する非一時的コンピュータ可読媒体を提供し、この命令は、かかる実行がされると、1つ以上のコンピュータに、第1のユーザおよび第2のユーザとの間でメッセージの送信およびメッセージの受信をさせる。第1のユーザは、第1の状態を有してもよく、第2のユーザは、第2の状態を有してもよい。メッセージは、フロントエンドコンポーネントおよびチャットエンジンのうちの1つ以上を介して送信および受信されてもよい。チャットエンジンは、チャットサーバおよびボットサーバを有してもよい。受信されたメッセージのうちの少なくとも1つは、第1のワークフローに関連するリクエストを含んでもよい。命令は、1つ以上のコンピュータに、受信されたメッセージのうちの少なくとも1つに含まれる少なくとも1つのチャットコマンドを受信すること、少なくとも1つのチャットコマンドに基づき外部サービスをリクエストすること、または第1のユーザおよび第2のユーザのうちの一方に関係するユーザ情報を取得することのためにボットサーバを使用させてもよい。命令は、1つ以上のコンピュータに、第1のワークフローの第1のインスタンスを開始および管理するためにワークフローサーバを使用させてもよく、第1のワークフローの第1のインスタンスの開始および管理は、複数のタスクを管理することを含む。複数のタスクは、第1のタスクおよび第2のタスクを含んでもよい。命令は、1つ以上のコンピュータに、データレイクに情報を記憶させてもよい。情報は、第1のタスクを遂行した後の第1のユーザの状態および/または第2のユーザの状態を含んでもよい。命令は、1つ以上のコンピュータに、第1のワークフローの第2のタスクの間、データレイクに記憶された情報を使用させてもよい。
【0020】
上記の非一時的コンピュータ可読媒体の一部の実装において、第1のユーザは、ビジネス事業体の第1の従業員であってもよく、第2のユーザは、ビジネス事業体の第2の従業員であってもよい。
【0021】
上記の非一時的コンピュータ可読媒体の一部の実装において、命令はさらに、1つ以上のコンピュータに、第3のユーザとの間でメッセージの送信およびメッセージの受信をさせてもよく、第3のユーザは、第1のユーザの上司である。
【0022】
上記の非一時的コンピュータ可読媒体の一部の実装において、第1のワークフローの第2のタスクは、第3のユーザの承認を取得することを含んでもよい。
【0023】
上記の非一時的コンピュータ可読媒体の一部の実装において、命令はさらに、1つ以上のコンピュータに、第2のワークフローの第2のインスタンスを開始および管理するためにワークフローサーバを使用させてもよく、第2のワークフローは、第1のワークフローと異なる。
【0024】
上記の非一時的コンピュータ可読媒体の一部の実装において、第1のワークフローは、ローン申請に関係してもよく、第2のワークフローは、信用調査に関係してもよい。
【0025】
上記の非一時的コンピュータ可読媒体の一部の実装において、命令はさらに、1つ以上のコンピュータに、第3のワークフローの第3のインスタンスを開始および管理するためにワークフローサーバを使用させてもよく、第3のワークフローは、第1のワークフローおよび第2のワークフローと異なる。
【0026】
上記の非一時的コンピュータ可読媒体の一部の実装において、命令はさらに、1つ以上のコンピュータに、受信されたメッセージのうちの少なくとも1つに含まれる少なくとも1つのチャットコマンドを受信すること、および少なくとも1つのチャットコマンドに基づき外部サービスをリクエストすることのためにボットサーバを使用させてもよい。
【0027】
さらに別の側面において、本開示は、複数のタスクを含む第1のワークフローを実行する仮想エージェントを使用するシステムを提供し、システムは、1つ以上のコンピュータと、1つ以上のコンピュータにより実行可能な命令を記憶する1つ以上のストレージデバイスとを含み、この命令は、かかる実行がされると、1つ以上のコンピュータに、第1のユーザおよび第2のユーザとの間でメッセージの送信およびメッセージの受信をさせる。第1のユーザは、第1の状態を有してもよく、第2のユーザは、第2の状態を有してもよい。メッセージは、フロントエンドコンポーネントおよびチャットエンジンのうちの1つ以上を介して送信および受信されてもよい。チャットエンジンは、チャットサーバおよびボットサーバを有してもよい。受信されたメッセージのうちの少なくとも1つは、第1のワークフローに関連するリクエストを含んでもよい。命令は、1つ以上のコンピュータに、受信されたメッセージのうちの少なくとも1つに含まれる少なくとも1つのチャットコマンドを受信すること、少なくとも1つのチャットコマンドに基づき外部サービスをリクエストすること、または第1のユーザおよび第2のユーザのうちの一方に関係するユーザ情報を取得することのためにボットサーバを使用させてもよい。命令は、1つ以上のコンピュータに、第1のワークフローの第1のインスタンスを開始および管理するためにワークフローサーバを使用させてもよく、第1のワークフローの第1のインスタンスの開始および管理は、複数のタスクを管理することを含む。複数のタスクは、第1のタスクおよび第2のタスクを含んでもよい。命令は、1つ以上のコンピュータに、データレイクに情報を記憶させてもよい。情報は、第1のタスクを遂行した後の第1のユーザの状態および/または第2のユーザの状態を含んでもよい。命令は、1つ以上のコンピュータに、第1のワークフローの第2のタスクの間、データレイクに記憶された情報を使用させてもよい。
【0028】
上記のシステムの一部の実装において、第1のユーザは、ビジネス事業体の第1の従業員であってもよく、第2のユーザは、ビジネス事業体の第2の従業員であってもよい。
【0029】
上記のシステムの一部の実装において、命令はさらに、1つ以上のコンピュータに、第3のユーザとの間でメッセージの送信およびメッセージの受信をさせてもよく、第3のユーザは、第1のユーザの上司であってもよい。
【0030】
上記のシステムの一部の実装において、第1のワークフローの第2のタスクは、第3のユーザの承認を取得することを含んでもよい。
【0031】
以下の図面および詳細な説明を検討すると、当業者には、本開示の他のシステム、方法、特徴および利点が明らかであるか、または明らかとなるであろう。そのようなさらなるシステム、方法、特徴および利点はすべて、本記載および本概要に含まれ、本開示の範囲内にあり、添付の特許請求の範囲により保護されるものとする。
【0032】
様々な実施形態が記載されるが、記載は限定ではなく例示であるものとし、当業者には当然のことながら、さらに多くの実施形態および実装が、実施形態の範囲内で可能である。特徴の可能な組み合わせが多数、添付の図面に示されこの詳細な記載の中で説明されるが、開示される特徴の他の組み合わせが多数あり得る。特に制限されない限り、任意の実施形態の任意の特徴または構成要素が、他の任意の実施形態における他の任意の特徴または構成要素と組み合わされて使用されてもよく、またはそれに代替してもよい。
【0033】
本開示は、平均的な当業者に周知の特徴および構成要素との組み合わせを含み、それを予期する。開示された実施形態、特徴および構成要素はさらに、従来の任意の特徴または構成要素と組み合わされて、特許請求の範囲により定義される別個の発明を構成し得る。任意の実施形態の任意の特徴または構成要素がさらに、他の発明の特徴または構成要素と組み合わされて、特許請求の範囲により定義されるもう1つの別個の発明を構成することもある。したがって、当然のことながら、本開示において示され且つ/または説明される特徴の任意のものが、個々に、または任意の適切な組み合わせで実装され得る。したがって、実施形態は、添付の特許請求の範囲およびその等価物に照らしてされる場合を除いて、制限されない。さらに、様々な変更および変化が、添付の特許請求の範囲に記載の範囲内で加えられ得る。
【0034】
本発明は、以下の図面および記載を参照するとよりよく理解できる。図面のコンポーネントは、必ずしも一定の縮尺にはなっておらず、重点はむしろ、本発明の原理を示すことに置かれている。さらに、図面では、同じ参照番号は異なる図面にわたって対応する部分を指示する。
【図面の簡単な説明】
【0035】
図1】第1のクライアントデバイス、第1のユーザ、第2のクライアントデバイスおよび第2のユーザを含む実装の概略図であり、すべて接続プラットフォームに関連している。
図2】接続プラットフォームのコネクテッドテクノロジーソリューション(CTS:connected technology solution)コンポーネントおよびCTSチャットコンポーネントを含む実装の概略図である。
図3】接続プラットフォームのCTSチャットコンポーネントの詳細の概略図である。
図4】本願明細書に記載されるシステムおよび/または方法が実装され得る例示の環境の概略図である。
図5】デバイスの例示のコンポーネントの概略図である。
図6】実施形態による、ワークフローを実行するために仮想エージェントを使用する方法の概略図を示す。
【発明を実施するための形態】
【0036】
図1図3は、本願明細書に記載される例示の実装100の図である。図1に示されるように、第1のクライアントデバイス104は、接続プラットフォーム106および第1のユーザ102(例えば従業員または顧客)に関連してもよい。第2のクライアントデバイス110は、接続プラットフォーム106および第2のユーザ108(例えば従業員または顧客)に関連してもよい。一部の実装において、第1のユーザおよび第2のユーザは、双方とも従業員であってもよい。一部の実装において、第1のユーザは顧客であってもよく、第2のユーザは従業員であってもよい。一部の実装において、接続プラットフォームは、数百、数千、数百万および/または同様のクライアントデバイスおよびユーザに関連してもよく、クライアントデバイスから対話情報を受信してもよい。例として、銀行などの企業では、個々の従業員が使用する、多岐にわたるタイプのワークフローのための統一されたシステムとして、接続プラットフォームを数千の従業員全員が使用するかもしれない。そのような銀行では、従業員は、チャットボットとコミュニケーションをとることにより、且つ/またはチャットボットの指示に従うことにより、信用調査を実施してもよい。チャットボットは、従業員によりその仕事の一部または全部を実行するため、ならびに顧客とコミュニケーションをとるために使用される銀行システムの標準インターフェースとしての機能を果たしてもよい。体系化された多様なワークフローのユーザインターフェースを一貫したもの(すなわち、チャットボットが企業内の体系化されたワークフローすべての唯一のユーザインターフェースである)にすることにより、ユーザインターフェースが同じとなるため、体系化された追加のワークフローを開発することがより容易になる。
【0037】
一部の実装において、対話情報は、顧客により提示された問題、顧客により提示された問題に対する解決策、顧客により投げかけられた質問、顧客により投げかけられた質問に対する回答、対話の間に議論された製品および/もしくはサービス、対話の間に議論されたトピックならびに/または同様のものを特定する情報を含んでもよい。
【0038】
顧客コミュニケーションおよび顧客に対する従業員のサービスの双方にチャットボットを使用することにより、顧客アクティビティログ(例えば顧客がどの種類のサービスを使用したか、顧客がいつ、およびどのようにそれを行ったかなど)を顧客サービス全体にわたって管理することがより容易になる。このことは、顧客のアクティビティログならびに顧客ごとの従業員のアクティビティログのより迅速な分析、ならびに分析に基づくより迅速なアクションを可能にする。例として、顧客アクティビティログおよび従業員アクティビティログが、特定のサービスに関する顧客のリクエストに従業員が対応するのが遅かったことを示唆する場合、分析を使用して、別のサービスのクーポン付きの謝罪電子メールを顧客に送信するなどの解決策を考え出すことができる。別の例として、企業顧客のアクティビティログが、その顧客のトランザクションの頻度が増加していること、またはトランザクションの量が増加している(もしくは減少している)ことを示唆する場合、このトランザクションの変化を分析して、顧客の企業との関係を判断することができる。この分析を使用して、顧客に新たなサービスを提案するなどのとるべきアクションについて、ビジネス上の決定を下すことができる。
【0039】
前述のとおり、仮想エージェントは、顧客と従業員との間の直接のコミュニケーションのために使用されてもよい。この直接のコミュニケーションは、顧客および従業員のアクティビティログの、より容易な集中型管理を可能にする。
【0040】
図2に示されているように、接続プラットフォーム106は、コネクテッドテクノロジーコンポーネント(CTS)コンポーネント202およびCTSチャットコンポーネント204を含んでもよい。
【0041】
CTSコンポーネント202は、チャネル、モノのインターネット(IoT:Internet of Things)デバイス、外部アプリケーションプログラミングインターフェース(API:application programming interface)、既存システムおよび/または同様のものを接続して、事業体に対して新たなプラットフォームを提供してもよい。一部の実装において、CTSコンポーネントは、接続プラットフォームを顧客に対しパーソナライズしてもよく、API拡張性を提供してもよく、ビッグデータ分析を実行してもよく、新たなデジタルエコシステムを構築するソリューションの開発を可能にしてもよく、さらに/または同様のことをしてもよい。
【0042】
図3に関連して後述されるCTSチャットコンポーネント204は、複数の事業体、顧客および/または同様のものをシームレスに接続して、顧客中心の動作を提供するプラットフォームを提供し得る。
【0043】
図3に示されているように、接続プラットフォームのCTSチャットコンポーネント204は、ランタイムコンポーネント、開発者言語コンポーネントおよび構築ツールコンポーネントを含むフロントエンドコンポーネント302を含んでもよい。CTSチャットコンポーネント204はさらに、ウェブサーバ306、(例えばアプリケーションサーバ、ボットサーバ、ストレージおよびデータベースを含む)チャットエンジン308、(例えばアプリケーションサーバおよびデータベースを含む)状態データレイク324ならびに(例えばアプリケーションサーバおよびデータベースを含む)ワークフローエンジン318を含むバックエンドコンポーネント304含んでもよい。
【0044】
フロントエンドコンポーネント302は、接続プラットフォーム106のユーザと対話するためのフロントエンドサービスを提供してもよい。一部の実装において、フロントエンドコンポーネントは、チャットメッセージを送信および受信すること、チャットの宛先を切り替えること、チャットユーザインターフェースにより使用される申請フォームを作成すること、ファイルをアップロードすること、エラーログを提供すること、ならびに/または同様のことなどのフロントエンドサービスを提供してもよい。
【0045】
フロントエンドコンポーネント302のランタイムコンポーネントは、2つの関係者間の双方向通信を実施してもよく、チャットメッセージを用いた対話を開始してもよく、チャットのユーザを切り替えてもよく、ダイアログを介してフォームに記入するためのユーザインターフェースを提供してもよく、チャット中に画像ファイルをアップロードしてもよく、発生したエラーを示すエラーログを送信してもよく、さらに/または同様のことをしてもよい。
【0046】
開発者言語コンポーネントおよび構築ツールコンポーネントは、開発者がCTSチャットコンポーネントのためのアプリケーションを開発/構築することを可能にしてもよい。一部の実装において、開発者言語コンポーネントおよび構築ツールコンポーネントは、開発者がCTSチャットコンポーネントのためのアプリケーションを構築および開発することを可能にするツールを提供してもよい。
【0047】
バックエンドコンポーネント304は、チャットボットの対話を改善するバックエンドサービスを提供してもよい。一部の実装において、バックエンドコンポーネントは、バックエンドサービスを使用して、(例えばフロントエンドコンポーネントを介して受信される上述された)対話情報を機械学習モデル330を用いて処理し、実行する1つ以上のアクションを決定し、チャットボットの対話を改善するアクションを決定してもよい。
【0048】
一部の実装において、バックエンドコンポーネント304は、過去の対話情報(例えばチャットボット、ライブ担当者および/または同様のものとの以前の対話を特定する過去の情報)を使用して、機械学習モデルに対して訓練動作を実行してもよい。例として、バックエンドコンポーネントは、過去の対話情報を、訓練セット、検証セット、テストセットおよび/または同様のものに分割してもよい。一部の実装において、バックエンドコンポーネントは、機械学習モデルを、例として教師なし訓練手順を使用して訓練してもよい。バックエンドコンポーネントは、過去の対話情報からの訓練セットを用いて機械学習モデルを訓練してもよい。例として、バックエンドコンポーネントは、過去の対話情報を最小特徴セットに削減するために、次元削減を実行してもよい。換言すれば、過去の対話情報の中の考慮される確率変数が、比較により適したより小さなセットの変数である最小特徴セットに削減されてもよい。訓練に最小特徴セットを使用することは、機械学習モデルを訓練するために使用されるリソース(例えば処理リソース、メモリリソースおよび/または同様のもの)を削減する。バックエンドコンポーネントは、分類手法を最小特徴セットに適用してもよい。
【0049】
一部の実装において、バックエンドコンポーネント304は、ロジスティック回帰分類手法を使用して、カテゴリ別の結果(例えば、過去の対話情報がどのように顧客の問題を解決したか)を判断してもよい。さらに、または代わりに、バックエンドコンポーネントは、ネイティブベイズ分類器手法を使用してもよい。この事例において、バックエンドコンポーネントは、バイナリ再帰分割を実行して過去の対話情報を区分および/または分岐に分けて、区分および/または分岐を使用して予測を実行してもよい(例えば、過去の対話情報が顧客の問題をどのように解決したか)。再帰分割を使用することに基づき、バックエンドコンポーネントは、データ点の手動の線形ソーティングおよび分析と比べてコンピューティングリソースの利用を削減し、それによって、数千、数百万または数十億のデータ点を使用して機械学習モデルを訓練することを可能にしてもよく、これにより、より少数のデータ点を使用するよりも正確なモデルがもたらされ得る。
【0050】
さらに、または代わりに、バックエンドコンポーネントは、サポートベクタマシン(SVM:support vector machine)分類器手法を使用して、訓練セットの中のデータ点間の非線形境界を生成してもよい。この事例において、非線形境界は、テストデータを特定のクラスに分類するために使用される。
【0051】
さらに、または代わりに、バックエンドコンポーネントは、主題の専門家から機械学習モデルに対する入力を受信することを含む教師あり訓練手順を使用して機械学習モデルを訓練してもよく、これにより、教師なし訓練手順と比べてアクティビティオートマタビリティの機械学習モデルを訓練するための時間、処理リソースの量および/または同様のものが削減され得る。一部の実装において、バックエンドコンポーネントは、ニューラルネットワーク手法、潜在意味インデックス手法および/または同様のものなどの他の1つ以上のモデル訓練手法を使用してもよい。例として、バックエンドコンポーネントは、(例えば2層フィードフォワードニューラルネットワークアーキテクチャ、3層フィードフォワードニューラルネットワークアーキテクチャおよび/または同様のものを使用して)人工ニューラルネットワーク処理手法を実行して、過去の対話情報の最適領域に関するパターン認識を実行してもよい。この事例において、人工ニューラルネットワーク処理手法を使用することは、雑音が多い、不正確な、または不完全なデータに対してより強固であることにより、且つ複雑性のより低い手法を使用する人間のアナリストまたはシステムには検出不可能なパターンおよび/または傾向をバックエンドコンポーネントが検出できるようにすることにより、バックエンドコンポーネントによって生成される訓練済み機械学習モデルの精度を改善し得る。
【0052】
ウェブサーバ306は、フロントエンドコンポーネントと、バックエンドコンポーネントのアプリケーションサーバとの間の通信リンクを提供するサーバデバイスを含んでもよい。
【0053】
チャットエンジン308は、双方向通信を実施することおよびチャットメッセージを用いた対話を開始することによりチャットメッセージを送信および受信してもよく、チャットセッションに関連するルーム情報を記憶および/または管理してもよく、特定の前置詞を利用するチャットボットを提供してもよく、チャットボットにより利用されたコマンド履歴を記憶してもよく、以前のチャットメッセージを探索してもよく、ファイル(例えば画像ファイル)をチャットセッションを介してアップロードおよびダウンロードしてもよく、さらに/または同様のことをしてもよい。一部の実装において、チャットエンジンは、WebSocket、server-sent-event(SSE)および/または同様のものを利用してクライアントデバイスにデータをプッシュしてもよい。
【0054】
チャットエンジン308は、チャットエンジンに関連して上述した機能のうちの1つ以上を実行するチャットサーバ310(例えばサーバデバイス)を含んでもよい。
【0055】
チャットエンジン308は、ボットサーバ312を含んでもよく、ボットサーバ312は、チャットコマンド(単数または複数)を受信および分析してチャットコマンドからスクリプトおよび/もしくはパラメータを取得してもよく、チャットボットと対話するユーザに関連するユーザ情報を取得してもよく、スクリプト実行の結果をチャットメッセージとして送信してもよく、ハイパーテキスト転送プロトコル(HTTP:hypertext transfer protocol)リクエストを介して外部サービスをリクエストしてもよく、外部サービスの実行に基づく結果を受信してもよく、特定のスクリプトを実行してもよく、さらに/または同様のことをしてもよい。
【0056】
一部の実装において、ボットサーバ312は、アダプタコンポーネントおよびスクリプトコンポーネントを含んでもよい。アダプタコンポーネントは、ユーザとの通信を担当してもよい。スクリプトコンポーネントは、スクリプト命令に従って処理を実行し、チャットボットの挙動を定義してもよく、外部ドメインにリクエストを提供してもよく、さらに/または同様のことをしてもよい。一部の実装において、ボットサーバは、ユーザインターフェースを更新せずに新たな特徴がチャットボットに追加されることを可能にしてもよく、ボットスクリプトの迅速な開発を可能にしてもよく、さらに/または同様のことをしてもよい。一部の実装において、ボットサーバは外部サービス(例えばSlack)と協働してもよい。例として、一部の実装において、アダプタは外部サービスと通信してもよい。一部の実装において、ボットスクリプトは、開発者が特定の状況に適切なスクリプトを作成するのを支援するテンプレートを含んでもよい。例として、テンプレートは、(1)スクリプトとリンクされるコマンド名をセットすること、(2)必要な引数、(3)ヘルプ内で表示される表現および(4)処理論理を含んでもよい。
【0057】
チャットエンジン308は、チャットサーバ310および/またはボットサーバ312のためのストレージを提供するファイルストレージ314を含んでもよい。
【0058】
チャットエンジン308は、チャットサーバおよび/またはボットサーバのためのデータ構造(例えばデータベース、テーブル、リストおよび/または同様のもの)を提供するデータベース316を含んでもよい。
【0059】
状態データレイク324は、チャットボットからデータを受信してもよく、データを変換されたデータ(例えばモデル)に変換してもよい。状態データレイクは、変換されたデータに基づき将来の状態を計算してもよく、変換されたデータをデータレイク(例えばデータベース)に記憶してもよい。一部の実装において、状態データレイクは、変換されたデータの状態情報を管理してもよく、チャットボットによる将来のチャットセッションのためのデータのソースであってもよい。一部の実装において、状態データレイクは、例として従業員および顧客の双方を含み得るシステムのユーザについての情報を収集する。例として、状態データレイクは、顧客の状態を管理して、販売およびマーケティングを支援してもよい。別の例において、状態データレイクは、システムユーザによるシステムの使用ならびに顧客との関係を管理して、ビジネス運営を簡素化するのを支援してもよい。一部の実装において、状態データレイクは、ワークフローおよび/またはワークフローインスタンスに関係する状態を管理してもよい。顧客との関係は、企業に対する顧客のロイヤルティを証明する顧客との対話を含んでもよい。状態データレイクを使用することにより、プラットフォームは、プラットフォームが分析できるビッグデータにアクセスできてもよい。プラットフォームは、この分析を使用して、(例えば顧客に対するマーケティングまたは従業員の訓練に関係する)ビジネス上の決定を下し、変更を加えてワークフローを改善してもよい。例として、プラットフォームは、ユーザ(例えば従業員)の使用性向を分析して、従業員がタスクを遂行するのにエラーを犯したりまたは長くかかりすぎたりする傾向があるかを判断してもよい。別の例において、プラットフォームは、顧客とビジネス事業体との間の対話を分析して、ビジネス事業体に対する顧客のロイヤルティ、顧客が頻繁にビジネス事業体と対話するかどうか、顧客がビジネス事業体の他の製品に関心を持ち得るかどうか、または顧客がビジネス事業体について苦情を言ったかどうかを判断してもよい。
【0060】
状態データレイク324は、状態データレイク324に関連して上述された機能のうちの1つ以上を実行し得るサーバデバイスを含むデータレイクサーバ326を含んでもよい。
【0061】
状態データレイク324は、データレイクサーバ326のためのデータ構造(例えばデータベース、テーブル、リストおよび/または同様のもの)を提供し得るデータベース328を含んでもよい。
【0062】
ワークフローエンジン318は、ワークフローの定義を登録してもよく、定義されたワークフローを開始してもよく、実行されたワークフローの状態を更新してもよく、必要な状態遷移を実行してもよく、ワークフローもしくは実行された状態遷移を開始したユーザに関連するユーザ情報を取得してもよく、権限情報を取得してもよく、実行されたワークフローを探索してもよく、これから起きるトランザクションを実行できる状態、実行者もしくはユーザを検索してもよく、HTTPリクエストを介して外部サービスを呼び出してもよく、外部サービスによる実行の結果を受信してもよく、状態遷移でエラーが発生すると通知を提供してもよく、さらに/または同様のことをしてもよい。一部の実装において、ワークフローエンジンは、別のワークフローに進むとき、現在のワークフローと別のワークフローとの間の処理を可能にしてもよく、処理が成功すれば状態を更新してもよい。ワークフローエンジン318は、ワークフローのインスタンスを開始して、ワークフローの中の複数のタスクを管理してもよい。
【0063】
ワークフローエンジン318は、ワークフローエンジン318に関連して上述した機能のうちの1つ以上を実行するサーバデバイスを含むワークフローサーバ322を含んでもよい。
【0064】
ワークフローエンジン318は、ワークフローサーバ322のためのデータ構造(例えばデータベース、テーブル、リストおよび/または同様のもの)を提供し得るワークフローデータベース320を含んでもよい。
【0065】
このように、機械学習モデルおよびビッグデータを利用してチャットボットの対話を改善するプロセスのいくつかの異なる段階が自動化されてもよく、これにより、人間の主観性および無駄がプロセスから除去されてもよく、さらにこれにより、プロセスの速度および効率が改善されて、コンピューティングリソース(例えばプロセッサリソース、メモリリソースおよび/または同様のもの)が節約されてもよい。さらに、本願明細書に記載された実装は、コンピュータによる的確なプロセスを使用して、以前は実行されなかった、または以前は人間の主観的な直感もしくは入力を使用して実行されていたタスクもしくは役割を実行する。例として、現在、機械学習モデルおよびビッグデータを利用して仮想エージェントの対話および仮想エージェントにより実行されるワークフローを改善する手法は存在しない。最後に、機械学習モデルおよびビッグデータを利用して仮想エージェントの対話を改善するプロセスを自動化することは、他の場合であればチャットボットの対話を改善しようと試行して浪費されることになるコンピューティングリソース(例えばプロセッサリソース、メモリリソースおよび/または同様のもの)を節約する。
【0066】
図1図3に示されたデバイスおよびコンポーネントの数および配置は、例として示されている。実際には、図1図3に示されたものと比べて、追加のデバイスおよび/もしくはコンポーネント、より少数のデバイスおよび/もしくはコンポーネント、異なるデバイスおよび/もしくはコンポーネントまたは別様に配置されたデバイスおよび/もしくはコンポーネントがあってもよい。さらに、図1図3に示されている2つ以上のコンポーネントが単一のコンポーネント内に実装されてもよく、または、図1図3に示されている単一のコンポーネントが複数の分散型コンポーネントとして実装されてもよい。さらに、または代わりに、図1図3に示されるコンポーネントのセット(例えば1つ以上のコンポーネント)が、図1図3に示されているコンポーネントの別のセットにより実行されるものとして記載されている1つ以上の機能を実行してもよい。
【0067】
図4は、本願明細書に記載されるシステムおよび/または方法が実装され得る例示の環境400の図である。図4に示されるように、環境400は、クライアントデバイス410、接続プラットフォーム420およびネットワーク430を含んでもよい。環境400のデバイスは、有線接続、無線接続または有線接続と無線接続との組み合わせを介して相互接続してもよい。
【0068】
クライアントデバイス410は、本願明細書に記載された情報などの情報を受信、生成、記憶、処理および/または提供できる1つ以上のデバイスを含む。例として、クライアントデバイス410は、接続プラットフォーム420との間で情報の受信および/または情報の送信をしてもよい。一部の実装において、クライアントデバイス410は、携帯電話(例えばスマートフォン、無線電話など)、ラップトップコンピュータ、タブレットコンピュータ、ハンドヘルドコンピュータ、ゲーム用デバイス、ウェアラブル通信デバイス(例えばスマート腕時計、スマート眼鏡など)、全地球測位衛星(GPS:Global Positioning Satellite)デバイス、サーバデバイス、パーソナルコンピュータまたは類似のタイプのデバイスを含んでもよい。
【0069】
接続プラットフォーム420は、機械学習モデルを利用してワークフローを分析し、分析に基づきワークフローに変更を加える1つ以上のデバイスを含む。一部の実装において、接続プラットフォーム420は、具体的な必要性に応じて一定のソフトウェアコンポーネントの入れ替えが可能なように、モジュール式で設計されてもよい。よって、接続プラットフォーム420は、種々の用途のために容易且つ/または迅速に再構成され得る。一部の実装において、接続プラットフォーム420は、クライアントデバイス410との間で情報の受信および/または情報の送信をしてもよい。
【0070】
一部の実装において、図のように、接続プラットフォーム420は、クラウドコンピューティング環境422においてホストされてもよい。特に、本願明細書に記載される実装は、接続プラットフォーム420がクラウドコンピューティング環境422においてホストされるものとして記載するが、一部の実装では、接続プラットフォーム420はクラウドベースでなくてもよく(すなわちクラウドコンピューティング環境外に実装されてもよい)、または部分的にクラウドベースとされてもよい。
【0071】
クラウドコンピューティング環境422は、接続プラットフォーム420をホストする環境を含む。クラウドコンピューティング環境422は、接続プラットフォーム420をホストするシステム(単数または複数)および/またはデバイス(単数または複数)の物理的な位置および構成の知識をエンドユーザに要求しない計算、ソフトウェア、データアクセス、ストレージなどのサービスを提供してもよい。図のように、クラウドコンピューティング環境422は、コンピューティングリソース424のグループ(まとめて「コンピューティングリソース群424」と呼ばれ、個別には「コンピューティングリソース424」と呼ばれる)を含んでもよい。
【0072】
コンピューティングリソース424は、1つ以上のパーソナルコンピュータ、ワークステーションコンピュータ、サーバデバイスまたはその他のタイプの計算および/もしくは通信デバイスを含む。一部の実装において、コンピューティングリソース424は、接続プラットフォーム420をホストしてもよい。クラウドリソースは、コンピューティングリソース424において実行される演算インスタンス、コンピューティングリソース424内に設けられるストレージデバイス、コンピューティングリソース424により提供されるデータ転送デバイスなどを含んでもよい。一部の実装において、コンピューティングリソース424は、有線接続、無線接続または有線接続と無線接続との組み合わせを介して他のコンピューティングリソース群424と通信してもよい。
【0073】
図4にさらに示されるとおり、コンピューティングリソース424は、1つ以上のアプリケーション(「APP(application)」)424-1、1つ以上の仮想マシン(「VM(virtual machine)」)424-2、仮想化ストレージ(「VS(virtualized storage)」)424-3、1つ以上のハイパーバイザ(「HYP(hypervisor)」)424-4および/または同様のものなどのクラウドリソースのグループを含む。
【0074】
アプリケーション424-1は、クライアントデバイス410に提供されても、またはクライアントデバイス410によりアクセスされてもよい1つ以上のソフトウェアアプリケーションを含む。アプリケーション424-1は、クライアントデバイス410上でソフトウェアアプリケーションをインストールして実行する必要性を排除してもよい。例として、アプリケーション424-1は、接続プラットフォーム420に関連するソフトウェアおよび/またはクラウドコンピューティング環境422を用いて提供できる他の任意のソフトウェアを含んでもよい。一部の実装において、1つのアプリケーション424-1は、仮想マシン424-2を介して他の1つ以上のアプリケーション424-1との間で情報を送受信してもよい。
【0075】
仮想マシン424-2は、物理マシンのようにプログラムを実行するマシン(例えばコンピュータ)のソフトウェア実装を含む。仮想マシン424-2は、用途、および仮想マシン424-2の任意の実マシンとの類似の程度に応じて、システム仮想マシンまたはプロセス仮想マシンのいずれかとされ得る。システム仮想マシンは、完全なオペレーティングシステム(「OS(operating system)」)の実行をサポートする完全なシステムプラットフォームを提供してもよい。プロセス仮想マシンは、単一のプログラムを実行してもよく、単一のプロセスをサポートしてもよい。一部の実装において、仮想マシン424-2は、ユーザ(例えばクライアントデバイス410のユーザまたは接続プラットフォーム420のオペレータ)の代わりに実行してもよく、さらにデータ管理、同期化または長期データ転送など、クラウドコンピューティング環境422のインフラストラクチャの管理をしてもよい。
【0076】
仮想化ストレージ424-3は、コンピューティングリソース424のストレージシステムまたはデバイスの中で仮想化手法を使用する1つ以上のストレージシステムおよび/または1つ以上のデバイスを含む。一部の実装において、ストレージシステムの文脈の中で、仮想化のタイプはブロック仮想化およびファイル仮想化を含んでもよい。ブロック仮想化は、物理ストレージからの論理ストレージの抽象化(または分離)を指してもよく、その結果、物理ストレージまたはヘテロジニアス構造と無関係にストレージシステムがアクセスされ得る。この分離は、ストレージシステムの管理者がエンドユーザに対しどのようにストレージを管理するかの点で、柔軟性を管理者に認めてもよい。ファイル仮想化は、ファイルレベルでアクセスされるデータと、ファイルが物理的に記憶される場所との間の依存関係を排除してもよい。これは、ストレージ使用の最適化、サーバコンソリデーションおよび/または無停止ファイルマイグレーションの実行を可能にしてもよい。
【0077】
ハイパーバイザ424-4は、複数のオペレーティングシステム(例えば「ゲストオペレーティングシステム」)がコンピューティングリソース424などのホストコンピュータ上で同時に実行できるようにするハードウェア仮想化手法を提供してもよい。ハイパーバイザ424-4は、ゲストオペレーティングシステムに仮想オペレーティングプラットフォームを提示してもよく、ゲストオペレーティングシステムの実行を管理してもよい。多様なオペレーティングシステムの複数のインスタンスが、仮想化ハードウェアリソースを共有してもよい。
【0078】
ネットワーク430は、1つ以上の有線ネットワークおよび/または無線ネットワークを含む。例として、ネットワーク430は、セルラネットワーク(例えば第5世代(5G:fifth generation)ネットワーク、ロングタームエボリューション(LTE:long-term evolution)ネットワーク、第3世代(3G:third generation)ネットワーク、符号分割多元接続(CDMA:code division multiple access)ネットワークなど)、公衆陸上モバイルネットワーク(PLMN:public land mobile network)、ローカルエリアネットワーク(LAN:local area network)、ワイドエリアネットワーク(WAN:wide area network)、メトロポリタンエリアネットワーク(MAN:metropolitan area network)、電話網(例えば公衆交換電話網(PSTN:Public Switched Telephone Network))、プライベートネットワーク、アドホックネットワーク、イントラネット、インターネット、光ファイバベースのネットワークおよび/もしくは同様のものならびに/またはこれらもしくはその他のタイプのネットワークの組み合わせを含んでもよい。
【0079】
図4に示されたデバイスおよびネットワークの数および配置は、例として示されている。実際には、図4に示されたものと比べて、追加のデバイスおよび/もしくはネットワーク、より少数のデバイスおよび/もしくはネットワーク、異なるデバイスおよび/もしくはネットワークまたは別様に配置されたデバイスおよび/もしくはネットワークがあってもよい。さらに、図4に示されている2つ以上のデバイスが単一のデバイス内に実装されてもよく、または、図4に示されている単一のデバイスが複数の分散型デバイスとして実装されてもよい。さらに、または代わりに、環境400のデバイスのセット(例えば1つ以上のデバイス)が、環境400のデバイスの別のセットにより実行されるものとして記載されている1つ以上の機能を実行してもよい。
【0080】
図5は、デバイス500の例示のコンポーネントの図である。デバイス500は、クライアントデバイス410、接続プラットフォーム420および/またはコンピューティングリソース424に対応してもよい。一部の実装において、ユーザデバイス410、接続プラットフォーム420および/またはコンピューティングリソース424は、1つ以上のデバイス500および/またはデバイス500の1つ以上のコンポーネントを含んでもよい。図5に示されているように、デバイス500は、バス510、プロセッサ520、メモリ530、ストレージコンポーネント540、入力コンポーネント550、出力コンポーネント560および通信インターフェース570を含んでもよい。
【0081】
バス510は、デバイス500のコンポーネント間の通信を可能にするコンポーネントを含む。プロセッサ520は、ハードウェア、ファームウェアまたはハードウェアとソフトウェアとの組み合わせにおいて実装される。プロセッサ520は、中央処理ユニット(CPU:central processing unit)、グラフィックス処理ユニット(GPU:graphics processing unit)、アクセラレーテッド処理ユニット(APU:accelerated processing unit)、マイクロプロセッサ、マイクロコントローラ、デジタル信号プロセッサ(DSP:digital signal processor)、フィールドプログラマブルゲートアレイ(FPGA:field-programmable gate array)、特定用途向け集積回路(ASIC:application-specific integrated circuit)または別のタイプの処理コンポーネントの形態をとる。一部の実装において、プロセッサ520は、機能を実行するようにプログラムできる1つ以上のプロセッサを含む。メモリ530は、プロセッサ520により使用される情報および/または命令を記憶するランダムアクセスメモリ(RAM:random access memory)、読み取り専用メモリ(ROM:read only memory)および/または別のタイプの動的もしくは静的ストレージデバイス(例えばフラッシュメモリ、磁気メモリおよび/または光学メモリ)を含む。
【0082】
ストレージコンポーネント540は、デバイス500の動作および使用に関係する情報および/またはソフトウェアを記憶する。例として、ストレージコンポーネント540は、ハードディスク(例えば磁気ディスク、光学ディスク、光磁気ディスクおよび/またはソリッドステートディスク)、コンパクトディスク(CD:compact disc)、デジタル多用途ディスク(DVD:digital versatile disc)、フロッピーディスク、カートリッジ、磁気テープおよび/または別のタイプの非一時的コンピュータ可読媒体を、対応するドライブとともに含んでもよい。
【0083】
入力コンポーネント550は、デバイス500がユーザ入力(例えばタッチスクリーンディスプレイ、キーボード、キーパッド、マウス、ボタン、スイッチおよび/またはマイクロフォン)などを介して情報を受信することを可能にするコンポーネントを含む。さらに、または代わりに、入力コンポーネント550は、情報を感知するセンサ(例えば全地球測位システム(GPS:global positioning system)コンポーネント、加速度計、ジャイロスコープおよび/またはアクチュエータ)を含んでもよい。出力コンポーネント560は、デバイス500からの出力情報を提供するコンポーネントを含む(例えばディスプレイ、スピーカおよび/または1つ以上の発光ダイオード(LED:light-emitting diode))。
【0084】
通信インターフェース570は、デバイス500が有線接続、無線接続または有線接続と無線接続との組み合わせなどを介して他のデバイスと通信することを可能にする、トランシーバのようなコンポーネント(例えばトランシーバならびに/または別々の受信機および送信機)を含む。通信インターフェース570は、デバイス500が、別のデバイスから情報を受信し、且つ/または別のデバイスに情報を提供することを可能にしてもよい。例として、通信インターフェース570は、イーサネットインターフェース、光インターフェース、同軸インターフェース、赤外線インターフェース、無線周波数(RF:radio frequency)インターフェース、ユニバーサルシリアルバス(USB:universal serial bus)インターフェース、Wi-Fiインターフェース、セルラネットワークインターフェースまたは同様のものを含んでもよい。
【0085】
デバイス500は、本願明細書に記載された1つ以上のプロセスを実行してもよい。デバイス500は、メモリ530および/またはストレージコンポーネント540などの非一時的コンピュータ可読媒体により記憶されたソフトウェア命令をプロセッサ520が実行するのに基づきこれらのプロセスを実行してもよい。本願明細書において、コンピュータ可読媒体は非一時的メモリデバイスと定義される。メモリデバイスは、単一の物理ストレージデバイス内のメモリ空間または複数の物理ストレージデバイスにまたがったメモリ空間を含む。
【0086】
ソフトウェア命令は、メモリ530および/またはストレージコンポーネント540に別のコンピュータ可読媒体から、または通信インターフェース570を介して別のデバイスから読み込まれてもよい。メモリ530および/またはストレージコンポーネント540に記憶されたソフトウェア命令は、実行されると本願明細書に記載された1つ以上のプロセスをプロセッサ520に実行させてもよい。さらに、または代わりに、本願明細書に記載の1つ以上のプロセスを実行するために、配線による回路構成がソフトウェア命令の代わりに、またはソフトウェア命令と組み合わせて使用されてもよい。したがって、本願明細書に記載された実装は、ハードウェア回路構成とソフトウェアとのいかなる特定の組み合わせにも限定されない。
【0087】
図5に示されたコンポーネントの数および配置は、例として示されている。実際には、デバイス500は、図5に示されたものと比べて、追加のコンポーネント、より少数のコンポーネント、異なるコンポーネントまたは別様に配置されたコンポーネントを含んでもよい。さらに、または代わりに、デバイス500のコンポーネントのセット(例えば1つ以上のコンポーネント)が、デバイス500のコンポーネントの別のセットにより実行されるものとして記載されている1つ以上の機能を実行してもよい。
【0088】
図6は、実施形態による、第1のワークフロー600(または方法600)を実行するために仮想エージェントを使用する方法の概略図を示す。方法600は、フロントエンドコンポーネントと、チャットサーバおよびボットサーバを有するチャットエンジンとのうちの1つ以上を介して、第1のユーザおよび第2のユーザの双方との間でメッセージの送信およびメッセージの受信をすることを含んでもよく、受信されたメッセージのうちの少なくとも1つは、ワークフローに関連するリクエストを含む(動作602)。第1のユーザは、第1の状態を有してもよく、第2のユーザは、第2の状態を有してもよい。
【0089】
方法600は、(1)受信されたメッセージのうちの少なくとも1つに含まれる少なくとも1つのチャットコマンドを受信および分析し、(2)少なくとも1つのチャットコマンドに基づき外部サービスをリクエストし、さらに/または(3)第1のユーザおよび第2のユーザのうちの一方に関係するユーザ情報を取得するためにボットサーバを使用することを含んでもよい(動作604)。
【0090】
方法600は、第1のワークフローの第1のインスタンスを開始および管理するためにワークフローサーバを使用することを含んでもよく、開始および管理は、複数のタスクを含む第1のワークフローの第1のインスタンスを管理することを含む(動作606)。複数のタスクは、第1のタスクおよび第2のタスクを含んでもよい。
【0091】
方法600は、データレイクに情報を記憶することを含んでもよく、情報は、第1のタスクを遂行した後の第1のユーザの状態および/または第2のユーザの状態を含む(動作608)。
【0092】
方法600は、第1のワークフローの第2のタスクの間、データレイクに記憶された情報を使用することを含んでもよい(動作610)。例として、実施形態において本方法は、データレイクに記憶された情報に基づきワークフローに変更を加えてもよい。
【0093】
前述の開示は、例示および説明を提供するが、網羅的であることも、実装を開示された厳密な形態に限定することも意図していない。上記の開示を考慮して変更および変形を考え得るし、または実装の実践から変更および変形が習得されるかもしれない。
【0094】
本願明細書で使用されるとき、コンポーネントという用語は、ハードウェア、ファームウェアおよび/またはハードウェアとソフトウェアとの組み合わせとして広く解釈されるものとする。
【0095】
特定のユーザインターフェースが本願明細書に記載され、且つ/または図面に示された。ユーザインターフェースは、グラフィカルユーザインターフェース、非グラフィカルユーザインターフェース(例えばテキストベースのユーザインターフェース)または同様のものを含んでもよい。ユーザインターフェースは、表示される情報を提供してもよい。一部の実装において、ユーザは、表示されるユーザインターフェースを提供するデバイスの入力コンポーネント(例えばキーボード、マウス、マイクロフォンなど)を介して入力を提供することなどにより、情報と相互作用してもよい。一部の実装において、ユーザインターフェースは、デバイスおよび/またはユーザにより設定可能であってもよい(例えばユーザがユーザインターフェースのサイズ、ユーザインターフェースを介して提供される情報、ユーザインターフェースを介して提供される情報のポジションなどを変更してもよい)。さらに、または代わりに、ユーザインターフェースは、標準設定、ユーザインターフェースが表示されるデバイスのタイプに基づく特定の設定ならびに/またはユーザインターフェースが表示されるデバイスに関連する性能および/もしくは仕様に基づく設定のセットに予め設定されてもよい。
【0096】
当然のことながら、本願明細書に記載されたシステムおよび/または方法は、異なる形態のハードウェア、ファームウェアまたはハードウェアとソフトウェアとの組み合わせに実装されてもよい。これらのシステムおよび/または方法を実装するために使用される実際の専用制御ハードウェアまたはソフトウェアコードは、実装を限定するものではない。したがって、システムおよび/または方法の動作および挙動は、特定のソフトウェアコードを参照することなく本願明細書に記載されたが、当然のことながら、ソフトウェアおよびハードウェアが、本願明細書の記載に基づくシステムおよび/または方法を実装するよう設計されてもよい。
【0097】
特徴の特定の組み合わせが特許請求の範囲に記載され且つ/または明細書で開示されるが、これらの組み合わせは可能な実装の開示を限定することを意図されたものではない。実際には、これらの特徴の多くが、具体的に特許請求の範囲に記載および/または明細書に開示されなかった形で組み合わされてもよい。下記に列挙される各従属クレームは、1つのみのクレームに直接従属するかもしれないが、可能な実装の開示は、クレームセットの中の他のすべてのクレームと組み合わせた各従属クレームを含む。
【0098】
本願明細書で使用されるいずれの構成要素、動作または命令も、重要または必須とは、そのように明示的に記載されない限りは解釈されてはならない。さらに、本願明細書で使用されるとき、冠詞「或る(aおよびan)」は、1つ以上の項目を含むものとし、「1つ以上の(one or more)」と交換可能なように使用され得る。さらに、本願明細書で使用されるとき、「セット(set)」という用語は、1つ以上の項目(例えば関係する項目、無関係の項目、関係する項目と無関係の項目との組み合わせおよび/または同様のもの)を含むものとし、「1つ以上の(one or more)」と交換可能なように使用され得る。1つのみの項目が意図される場合、「1つの(one)」という用語または類似の文言が使用される。さらに、本願明細書で使用されるとき、「有する(has、have、having)」という用語および/または同様のものは、非限定的な用語であるものとする。さらに、「基づく(based on)」という語句は、別段の記載が明示的にされない限り「少なくとも部分的に基づく(based,at least in part,on)」を意味するものとする。
【0099】
本発明の様々な実施形態について記載してきたが、記載は限定ではなく例示であるものとし、当業者には当然のことながら、さらに多くの実施形態および実装が、本発明の範囲内で可能である。したがって、本発明は、添付の特許請求の範囲およびその等価物に照らしてされる場合を除いて、制限されない。さらに、様々な変更および変化が、添付の特許請求の範囲に記載の範囲内で加えられ得る。
図1
図2
図3
図4
図5
図6