WO2020141611A1 - 対話型サービス提供システム、対話型サービス提供方法、シナリオ生成編集システム及びシナリオ生成編集方法 - Google Patents

対話型サービス提供システム、対話型サービス提供方法、シナリオ生成編集システム及びシナリオ生成編集方法 Download PDF

Info

Publication number
WO2020141611A1
WO2020141611A1 PCT/JP2019/051643 JP2019051643W WO2020141611A1 WO 2020141611 A1 WO2020141611 A1 WO 2020141611A1 JP 2019051643 W JP2019051643 W JP 2019051643W WO 2020141611 A1 WO2020141611 A1 WO 2020141611A1
Authority
WO
WIPO (PCT)
Prior art keywords
scenario
configuration data
data
scenario configuration
editing
Prior art date
Application number
PCT/JP2019/051643
Other languages
English (en)
French (fr)
Inventor
匠吾 太田
弘太 白倉
Original Assignee
株式会社コンシェルジュ
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 株式会社コンシェルジュ filed Critical 株式会社コンシェルジュ
Priority to US17/420,049 priority Critical patent/US11822905B2/en
Publication of WO2020141611A1 publication Critical patent/WO2020141611A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • G06F40/35Discourse or dialogue representation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/16Sound input; Sound output
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/268Morphological analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/289Phrasal analysis, e.g. finite state techniques or chunking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/40Processing or translation of natural language
    • G06F40/53Processing of non-Latin text
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/34Graphical or visual programming

Abstract

[課題]シナリオ生成時や編集時の管理者の労力を軽減すること、及び、生成時又は編集時の制限を少なくすることによって直感的な操作を行うことを可能にし、その結果、管理者の利便性を向上させることが可能な対話型サービス提供システムなどを提供すること。 [解決手段]情報処理システムは、受け付けた管理者の指示に基づいて、複数の前記シナリオ構成データをオブジェクトとしてオブジェクト空間内に配置し、かつ、配置されている2以上のシナリオ構成データにおける接続及び切断を制御し、オブジェクト空間内に配置された2以上のシナリオ構成データが接続された場合に、当該接続されたシナリオ構成データから構成されるシナリオ構成データ群の一体的な処理が少なくとも部分的なシナリオとして正常動作可能か正常動作不能かを判定し、配置されたシナリオ構成データを含むオブジェクト空間を画像化するとともに、判定処理の結果を表示させる構成を有している。

Description

対話型サービス提供システム、対話型サービス提供方法、シナリオ生成編集システム及びシナリオ生成編集方法
 本発明は、対話型サービス提供システム、対話型サービス提供方法、シナリオ生成編集システム及びシナリオ生成編集方法などに関する。
 近年、知識量が豊富なエキスパートのノウハウをベースとしたチャットボットと呼ばれるロボットを用いて、対話型のシナリオに基づいてユーザからの問い合わせに答えるチャットアプリ等のサービスが提案されている。
 例えば、チャットボットを提供するシステムは、プログラミング言語やスクリプト言語等を用いたスクリプトによって制御されている。
 また、この様なスクリプトを生成するためには、例えば、プログラミング言語やスクリプト言語等で直接記述するハードコーディングやGUI(Graphical User Interfade)を用いてアイコンを配置するコードレスコーディングといった手法が知られている。
 しかしながら、従来のチャットボットを提供するシステムは、大量のシナリオ、及び、多くの分岐が存在した場合には、ログの確認やシナリオの全体を簡易に表示することが難しく、かつ、当該シナリオの変更を簡易に行うことが難しいことから、これらを解決するための種々のシステムが登場している。
 特に、最近では、複雑化するシナリオを整理して可視化するために、当該シナリオを生成する際に、ある程度システム側で誘導するものが知られている(例えば、非特許文献1)。
Watson Conversation Serviceを利用したチャボット開発の公式サイト[平成30年11月30日検索](URL:https://www.ibm.com/watson/jp-ja/how-to-build-a-chabot/)
 しかしながら、上記非特許文献1などのシナリオに基づいてユーザの要求に対する応答を行うシステムにあっては、管理者によって容易にシナリオを生成させることができるものの、管理者に対する自由度が少なく、かつ、シナリオの生成時又は編集時における管理者をサポートする機能についても不十分の場合がある。
 本発明は、上記課題を解決するためになされたものであり、その目的は、シナリオ生成時や編集時の管理者の労力を軽減すること、及び、生成時又は編集時の制限を少なくすることによって直感的な操作を行うことを可能にし、その結果、管理者の利便性を向上させることが可能な対話型サービス提供システムなどを提供することにある。
 上述した課題を解決するため、本発明の第1の実施形態に係る対話型サービス提供システムは、
 所与の入力テキストを解析し、かつ、当該入力テキストに対応する応答が規定されているシナリオがデータ化されたシナリオデータに基づいて、該当するユーザの希望するサービスを実行する対話型サービス提供システムであって、
 前記シナリオデータを管理する管理者の指示を受け付ける受付処理手段と、
 前記受け付けた管理者の指示に基づいて、前記シナリオデータを構築するための予め定められた処理を規定するシナリオ構成データを組み合わせて、前記シナリオデータを生成又は編集するシナリオ生成編集手段と、
 前記シナリオデータを生成又は編集する際に、前記受け付けた管理者の指示に基づいて、(A)複数の前記シナリオ構成データをオブジェクトとしてオブジェクト空間内に配置し、かつ、(B)配置されている2以上のシナリオ構成データにおける接続及び切断を制御するオブジェクト配置接続制御手段と、
 前記オブジェクト空間内に配置された2以上の前記シナリオ構成データが接続された場合に、当該接続されたシナリオ構成データから構成されるシナリオ構成データ群の一体的な処理が少なくとも部分的なシナリオとして正常動作可能か正常動作不能かを判定する判定処理を実行する判定手段と、
 前記配置されたシナリオ構成データを含む前記オブジェクト空間を画像化するとともに、前記判定処理の結果を表示手段に表示させる表示制御処理を実行する表示制御手段と、
を備える、構成を有している。
 また、本発明の第2の実施形態に係る対話型サービス提供方法は、
 所与の入力テキストを解析し、かつ、当該入力テキストに対応する応答が規定されているシナリオがデータ化されたシナリオデータに基づいて、該当するユーザの希望するサービスを実行する方法であって、
 前記シナリオデータを管理する管理者の指示を受け付け、
 前記受け付けた管理者の指示に基づいて、前記シナリオデータを構築するための予め定められた処理を規定するシナリオ構成データを組み合わせて、前記シナリオデータを生成又は編集し、
 前記シナリオデータを生成又は編集する際に、前記受け付けた管理者の指示に基づいて、(A)複数の前記シナリオ構成データをオブジェクトとしてオブジェクト空間内に配置し、かつ、(B)配置されている2以上のシナリオ構成データにおける接続及び切断を制御し、
 前記オブジェクト空間内に配置された2以上の前記シナリオ構成データが接続された場合に、当該接続されたシナリオ構成データから構成されるシナリオ構成データ群の一体的な処理が少なくとも部分的なシナリオとして正常動作可能か正常動作不能かを判定する判定処理を実行し、
 前記配置されたシナリオ構成データを含む前記オブジェクト空間を画像化するとともに、前記判定処理の結果を表示手段に表示させる表示制御処理を実行する、構成を有している。
 また、本発明の第3の実施形態に係るシナリオ生成編集システムは、
 所与の入力テキストを解析し、かつ、当該入力テキストに対応する応答が規定されているシナリオがデータ化されたシナリオデータに基づいて、該当するユーザの希望するサービスを実行する対話型サービス提供システムにおいて用いられる当該シナリオデータの生成又は編集を実行するシナリオ生成編集システムであって、
 前記シナリオデータを管理する管理者の指示を受け付ける受付処理手段と、
 前記受け付けた管理者の指示に基づいて、前記シナリオデータを構築するための予め定められた処理を規定するシナリオ構成データを組み合わせて、前記シナリオデータを生成又は編集するシナリオ生成編集手段と、
 前記シナリオデータを生成又は編集する際に、前記受け付けた管理者の指示に基づいて、(A)複数の前記シナリオ構成データをオブジェクトとしてオブジェクト空間内に配置し、かつ、(B)配置されている2以上のシナリオ構成データにおける接続及び切断を制御するオブジェクト配置接続制御手段と、
 前記オブジェクト空間内に配置された2以上の前記シナリオ構成データが接続された場合に、当該接続されたシナリオ構成データから構成されるシナリオ構成データ群の一体的な処理が少なくとも部分的なシナリオとして正常動作可能か正常動作不能かを判定する判定処理を実行する判定手段と、
 前記配置されたシナリオ構成データを含む前記オブジェクト空間を画像化するとともに、前記判定処理の結果を表示手段に表示させる表示制御処理を実行する表示制御手段と、
を備える、構成を有している。
 また、本発明の第4の実施形態に係るシナリオ生成編集方法は、
 所与の入力テキストを解析し、かつ、当該入力テキストに対応する応答が規定されているシナリオがデータ化されたシナリオデータに基づいて、該当するユーザの希望するサービスを実行する対話型サービス提供システムにおいて用いられる当該シナリオデータの生成又は編集を実行する方法であって、
 前記シナリオデータを管理する管理者の指示を受け付け、
 前記受け付けた管理者の指示に基づいて、前記シナリオデータを構築するための予め定められた処理を規定するシナリオ構成データを組み合わせて、前記シナリオデータを生成又は編集し、
 前記シナリオデータを生成又は編集する際に、前記受け付けた管理者の指示に基づいて、(A)複数の前記シナリオ構成データをオブジェクトとしてオブジェクト空間内に配置し、かつ、(B)配置されている2以上のシナリオ構成データにおける接続及び切断を制御し、
 前記オブジェクト空間内に配置された2以上の前記シナリオ構成データが接続された場合に、当該接続されたシナリオ構成データから構成されるシナリオ構成データ群の一体的な処理が少なくとも部分的なシナリオとして正常動作可能か正常動作不能かを判定し、
 前記配置されたシナリオ構成データを含む前記オブジェクト空間を画像化するとともに、前記判定処理の結果を表示手段に表示させる表示制御処理を実行する、
として機能させる、構成を有している。
一実施形態における情報処理システムの構成を示すシステム構成図である。 一実施形態におけるサービス提供用サーバ装置の構成を示す機能ブロック図である。 一実施形態におけるサービス提供用サーバ装置によって実行される配置制御処理を説明するための図である。 一実施形態におけるサービス提供用サーバ装置によって実行される接続切断制御処理を説明するための図である。 一実施形態におけるサービス提供用サーバ装置によって実行される判定処理を説明するための図である。 一実施形態におけるサービス提供用サーバ装置によって実行される判定処理を説明するための図である。 一実施形態におけるサービス提供用サーバ装置によって実行される判定処理を説明するための図である。 一実施形態におけるサービス提供用サーバ装置によって実行される判定処理を説明するための図である。 一実施形態におけるサービス提供用サーバ装置によって実行される表示制御処理を説明するための図である。 一実施形態におけるサービス提供用サーバ装置によって実行される表示制御処理を説明するための図である。 一実施形態におけるサービス提供用サーバ装置によって実行される表示制御処理を説明するための図である。 一実施形態におけるサービス提供用サーバ装置によって実行される表示制御処理を説明するための図である。 一実施形態におけるサービス提供用サーバ装置によって実行される表示制御処理を説明するための図である。 一実施形態におけるサービス提供用サーバ装置によって実行される表示制御処理を説明するための図である。 一実施形態のサービス提供用サーバ装置によって実行されるオブジェクト配置接続制御処理(接続切断制御処理)、判定処理及び表示制御処理を含むシナリオ生成編集処理を示すフローチャートである。
 (1)本発明の一実施形態は、
 所与の入力テキストを解析し、かつ、当該入力テキストに対応する応答が規定されているシナリオがデータ化されたシナリオデータに基づいて、該当するユーザの希望するサービスを実行する対話型サービス提供システムであって、
 前記シナリオデータを管理する管理者の指示を受け付ける受付処理手段と、
 前記受け付けた管理者の指示に基づいて、前記シナリオデータを構築するための予め定められた処理を規定するシナリオ構成データを組み合わせて、前記シナリオデータを生成又は編集するシナリオ生成編集手段と、
 前記シナリオデータを生成又は編集する際に、前記受け付けた管理者の指示に基づいて、A複数の前記シナリオ構成データをオブジェクトとしてオブジェクト空間内に配置し、かつ、B配置されている2以上のシナリオ構成データにおける接続及び切断を制御するオブジェクト配置接続制御手段と、
 前記オブジェクト空間内に配置された2以上の前記シナリオ構成データが接続された場合に、当該接続されたシナリオ構成データから構成されるシナリオ構成データ群の一体的な処理が少なくとも部分的なシナリオとして正常動作可能か正常動作不能かを判定する判定処理を実行する判定手段と、
 前記配置されたシナリオ構成データを含む前記オブジェクト空間を画像化するとともに、前記判定処理の結果を表示手段に表示させる表示制御処理を実行する表示制御手段と、
を備える、構成を有している。
 この構成により、本発明の一実施形態は、例えば、2以上のシナリオ構成データの接続や切断によってエラーが生じた場合に、エラー表示や複数のシナリオ構成データを接続するための矢印の非表示などの正常動作不能であることを示す表示制御処理を実行することができる。
 すなわち、本発明の一実施形態は、シナリオデータを生成中又は編集中において、複数のシナリオ構成データから構成されるシナリオの一部が生成される毎に、又は、当該シナリオの一部が変更された場合に、該当する複数のシナリオ構成データ部分のシナリオを確認しながら生成又は編集することができる。
 特に、本発明の一実施形態は、キーボードや入力ポインティングデバイス(例えば、マウス)などの入力インターフェースと、表示手段(例えば、モニタ)と、を用いてシナリオデータの生成又は編集を実行した場合であって、シナリオデータ(シナリオ構成データを含む。)及び管理者の操作に連動させた操作状況などを表示する場合に、該当するシナリオ構成データ部分のシナリオを確認しながら生成又は編集することができる。
 そして、本発明の一実施形態は、例えば、
(A1)数多くのシナリオ構成データが組み込まれた長編のシナリオ、多くの分岐(すなわち、選択肢)が登場する複雑なシナリオ、若しくは、それらが複雑に絡み合った高度のシナリオの生成や編集が実行された場合であっても、
(A2)1つのシナリオデータを複数人の管理者によって生成や編集が実行された場合であっても、又は、
(A3)シナリオの所定の箇所から当該箇所の前段のシナリオの部分(時系列的に先に処理される部分)に戻れる流れにシナリオを編集した場合であっても、
各処理若しくは特定の部分の処理の確認や変更を管理者が意識することなく一つ一つ確認することができるので、容易に利用することができるとともに、その作業効率や操作性を格段に向上させることができる。
 また、本発明の一実施形態は、部分的なシナリオ毎にエラーチェックなどを実行することができるとともに、シナリオ構成データの配置や他のシナリオ構成データとの接続を意識しなくても、シナリオを的確に生成又は編集することができるので、シナリオの生成時又は編集時の自由度をも高めることができる。
 したがって、本発明の一実施形態は、シナリオ生成時や編集時の管理者の労力を軽減することができるとともに、生成時又は編集時の制限を少なくすることによって直感的な操作を行うことができるので、管理者の利便性を向上させることができる。
 なお、「入力テキスト」としては、例えば、文字入力及び音声入力であることが好ましいが、テキストに変換可能な入力であれば特に限定されない。
 そして「入力テキストの解析」には、例えば、形態素解析、かな漢字変換、校正支援、係り受け解析、キーフレーズ抽出、及び、自然言語理解を含み、それぞれ、機械学習が行われているものであってもよい。
 また、「ユーザ」としては、例えば、本発明のシステムを利用して所定の情報(すなわち、ユーザが取得を希望する情報)の提供を受ける利用者を示し、「管理者」とは、例えば、ユーザに情報を提供する情報提供者、又は、情報提供者に代わって本発明のシステムを運営する運営者を示す。
 そして、「ユーザが希望するサービスを提供する」には、例えば、ユーザが希望する情報(所定の商品やサービスに関する問い合わせ内容の他に、画像や音声などのコンテンツを含む。)を提供すること、商品やサービスの売買に関する情報、又は、ユーザが管理者に対して希望する問い合わせ(例えば、電子メールや電話などの所定の通信手段による問い合わせ)を完了すること(回答を要求するまで)など、いわゆる、製品やサービスのカスタマーセンター又はコールセンターの代替となるサービスなどを含む。
 特に、ユーザが希望する情報としては、検索キーとなる入力テキストに基づいて、
(B1)予め各種の情報が検索キーと対応付けられて記憶されているデータベースから取得した情報(コンテンツを含む。)を提供すること、又は、
(B2)ネットワークを介して外部の検索エンジンなどの検索結果若しくはその結果物(コンテンツを含む。)を提供すること、
を含む。
 さらに、「シナリオ」とは、ユーザの希望するサービスを提供するための複数の処理を規定するものであり、各処理の内容とその順序、及び、当該処理を実行する際に必要なデータの種別やその内容が規定されたものである。
 そして「シナリオのデータ化」とは、例えば、シナリオが、所定のタイミングにおいて実行されるプログラムとして規定されていることを示す。
 上記に加えて、「予め定められた処理を規定するシナリオ構成データ」とは、例えば、シナリオ上、所与の処理を規定するためのノードである。
 そして、「2以上のシナリオ構成データ」又は「シナリオ構成データ群」とは、例えば、直列接続された2以上のシナリオ構成データ、又は、1のシナリオ構成データに並列接続された複数のシナリオ構成データであることなどを示す。ただし、「2以上のシナリオ構成データ」又は「シナリオ構成データ群」としては、階層(直列的な階層又は並列的な階層)を有するシナリオ構成データであってもよい。
 また、「2以上のシナリオ構成データ」は、同一の処理や同一の機能を有するものであってもよいし、異なる処理や異なる機能を有するものであってもよい。ただし、「2以上のシナリオ構成データ」は、シナリオ上において問い合わせ内容や質問とその回答、又は、検索要求と検索結果などユーザの入力に対する応答や当該入力に対する出力事項の関係となる一対のノード(すなわち、2以上のノードであってもよい。)が好ましい。
 特に、「シナリオ構成データ」には、例えば、
(C1)ユーザの入力したテキストや選択したボタンを解析し、その内容によってシナリオを分岐させるためのノード(以下、「ユーザノード」という。)、
(C2)チャットボット(すなわち、システム側)からの発言やデータをユーザに提示するためのノード(以下、「ボットノード」という。)、
(C3)Q&Aなどのユーザに複数の選択肢を提示し、当該提示した選択肢の中から選択された選択肢に対する処理を実行するノード(以下、「Q&Aノード」という。)
(C4)複数の選択肢を提示して選択された選択肢に対するシナリオに分岐させるためのノード(以下、「複数Q&Aノード」という。)
(C5)条件に従ってシナリオを分岐させるためのノード(条件設定ノード)、
(C6)ユーザが当該ノードを通過したときに電子メールやチャットなどによって所定の通知を管理者又はユーザが受け取るためのノード(以下、「通知ノード」という。)、
(C7)強制的に他のノードにジャンプするノード(以下、「ジャンプノード」という。)、
(C8)所定の入力テキストを受け付けた場合に強制的に該当する処理を実行するためのノード(以下、「インテントノード」という。)、及び、
(C9)ノードの中に別のシナリオを作成するためのノード(以下、「コンポーネントノード」という。)
などが含まれる。
 そして、「2以上のシナリオ構成データにおける接続及び切断」とは、例えば、矢印オブジェクトなどの接続オブジェクトを介して2以上のシナリオ構成データがシナリオ上においてもかつオブジェクト空間上の視覚的にも接続されること、又は、当該接続が切断されることを示す。ただし、接続オブジェクトを介することなく、シナリオ上においても、かつ、オブジェクト空間上の視覚的にも接続されてもよく、また、シナリオの構成上のみ、又は、、オブジェクト空間上において視覚的にのみ接続されていなくてもよい。
 さらに、「正常動作不能」には、例えば、直前又は直後に連続的に接続された2つシナリオ構成データとの関係において入力及び出力の条件や数が一致しない場合(シナリオ構成データの組み合わせの不具合)などを示す
 またさらに、「判定処理の結果」とは、例えば、正常動作不能を示すエラー表示、及び、正常動作可能を示す正常表示を示すが、基本的には、当該エラー表示が好ましい。
 そして、「表示制御処理」には、例えば、シナリオ構成データの近傍やそれらを接続するオブジェクト(例えば矢印)上に、又は、シナリオ構成データが配置されているオブジェクト空間とは別のオブジェクト空間に該当するシナリオ構成でデータのIDなどの識別情報とともに、正常動作可能又は正常動作不能であることを示す表示を行うことなどが含まれる。
 (2)また、本発明の一実施形態は、
 前記判定手段が、
  前記オブジェクト空間内に配置され、かつ、前記2以上のシナリオ構成データが直接接続された場合に、当該直接接続されたシナリオ構成データ群の一体的な処理が少なくとも前記部分的なシナリオとして正常動作可能か正常動作不能かを判定する前記判定処理を実行する、構成を有していてもよい。
 この構成を有する場合には、本発明の一実施形態は、例えば、直接的に接続された2以上のシナリオ構成データにおいて、シナリオの流れに沿ってエラーなどの不具合を判定し、管理者に知らせることができる。
 したがって、この場合には、本発明の一実施形態は、シナリオの生成中又は編集中に瞬時にエラーなどの不具合を見つけ出すことができるので、シナリオ全体を実行させてみて初めてエラーの有無が通知される場合に比べて管理者の労力を軽減することができるとともに、管理者の利便性を向上させることができる。
 (3)また、本発明の一実施形態は、
 前記2以上のシナリオ構成データのうち、前記シナリオ上において時系列的に先に設定された第1のシナリオ構成データが、当該第1のシナリオ構成データの時系列後に接続された他のシナリオ構成データである第2のシナリオ構成データの、前記シナリオ上において実行する上での前提となるシナリオ構成データである、構成を有していてもよい。
 この構成を有する場合には、本発明の一実施形態は、シナリオの問い合わせや質問と回答の組み合わせ、選択肢の提示と各選択肢の処理、又は、検索キーの入力とその結果の表示など1つのシナリオ構成データによって形成させることが難しく、複数のシナリオ構成データによって形成することが作業的又は視覚的に容易となる場合にも、シナリオの生成中又は編集中に瞬時にエラーなどの不具合を見つけ出すことができる。
 したがって、この場合には、本発明の一実施形態は、作業効率がよく、かつ、管理者の利便性を向上させることができるとともに、管理者としてシナリオ生成又は編集する上で、高度な知識を有することなく、利用することができる。
 なお、「前提となるシナリオ構成データ」とは、例えば、当該シナリオ構成データが実行されなければ、当該シナリオ構成データの後段で実行されるシナリオ構成データの実行が成立しない関係のあるシナリオ構成データのことを示す。
 (4)また、本発明の一実施形態は、
 前記表示制御手段が、
  前記判定処理によって正常動作不能と判定された場合には、前記表示制御処理として、前記該当するシナリオ構成データに関連付けて、前記判定処理の結果をオブジェクトとして表示させる、構成を有していてもよい。
 この構成を有する場合には、本発明の一実施形態は、シナリオデータを生成中又は編集中において、例えば、エラーなどの不具合を当該発生したシナリオ構成データに関連付けて視覚化させることができるので、管理者に容易にエラーなどを迅速にかつ容易に特定させることができる。
 なお、「シナリオ構成データに関連付けて、判定処理の結果をオブジェクトとして表示させる」とは、例えば、表示されているシナリオ構成データのオブジェクトの近傍に表示すること、オブジェクト空間とは異なるオブジェクト空間に、シナリオ構成データ名とともに表示することを示し、判定処理の結果を示すオブジェクトを、オブジェクト空間上に配置制御して表示させてもよいし、画像化されたオブジェクト空間に重畳して表示させてもよい。
 (5)また、本発明の一実施形態は、
 前記表示制御手段が、
  前記判定処理の結果のオブジェクトを、該当する複数のシナリオ構成データを直接接続する接続オブジェクト上に表示させる、構成を有していてもよい。
 この構成を有する場合には、本発明の一実施形態は、シナリオデータを生成中又は編集中において、シナリオ上における不具合の箇所を管理者に視覚的にかつ容易に知らせることができる。
 なお、「接続オブジェクト」には、例えば、フローチャート等によって用いられるコネクタ(例えば、シナリオの流れを示す矢印など)が含まれる。
 (6)また、本発明の一実施形態は、
 前記表示制御手段が、
  前記判定処理によって正常動作不能と判定された場合には、前記表示制御処理として、前記該当するシナリオ構成データから次のシナリオ構成データに接続するための接続オブジェクトを非表示にする、構成を有していてもよい。
 この構成を有する場合には、本発明の一実施形態は、シナリオデータを生成中又は編集中において、例えば、接続オブジェクトとしての矢印を該当するシナリオ構成データから次のシナリオ構成データに向けて描けない又は接続できないなど、エラーなどの不具合を当該発生したシナリオ構成データに関連付けて視覚化させることができるとともに、シナリオの生成又は編集の完了、又は、その継続を強制的に禁止させることができるので、管理者に容易にエラーなどを迅速にかつ容易に特定させることができる。
 なお、「該当するシナリオ構成データ」は、例えば、上述の2以上のシナリオ構成データに含まれるシナリオ構成データであるが、当該2以上のシナリオ構成データのうち、時系列的に後に実行される1以上のシナリオ構成データであることが好ましい。
 この場合には、「次のシナリオ構成データ」は、時系列的に後のシナリオ構成データの次に実行される1以上のシナリオ構成データを示す。
 (7)また、本発明の一実施形態は、
 前記該当するシナリオ構成データが前記ユーザに対して複数の選択肢の中から1以上の選択肢を選択させるためのシナリオ構成データの場合には、
 前記表示制御手段が、前記表示制御処理として、
  前記該当するシナリオ構成データが接続可能な後段のシナリオ構成データの数を示す接続可能数を検出し、
  前記管理者の指示に基づく、前記検出された接続可能数と同じ数の前記接続オブジェクトの表示を許可する、構成を有していてもよい。
 この構成を有する場合には、本発明の一実施形態は、シナリオデータを生成中又は編集中において、複数のシナリオ構成データから構成されるシナリオの一部が生成される毎に、又は、当該シナリオの一部が変更された場合に、当該複数のシナリオ構成データ部分のシナリオを確認しながら生成又は編集することができる。
 (8)また、本発明の他の実施形態は、
 前記受け付けた管理者の指示に基づいて、前記オブジェクト空間内に配置された前記シナリオ構成データの予め定められた設定可能な項目を設定する設定手段を更に備え、
 前記判定手段が、
  前記項目設定されたシナリオ構成データにおける、前記予め定められた処理が部分的なシナリオとして正常動作可能か正常動作不能かを判定する判定処理を実行する、構成を有していてもよい。
 この構成を有する場合には、本発明の一実施形態は、シナリオデータを生成中又は編集中において、複数のシナリオ構成データから構成されるシナリオの一部が生成される毎に、又は、当該シナリオの一部が変更された場合に、当該複数のシナリオ構成データ部分のシナリオを確認しながら生成又は編集することができる。
 なお、「設定可能な項目」としては、選択肢の数や内容、ユーザに提供する情報の種別や内容、及び、受け付ける入力テキストの種別や内容などが含まれる。
 (9)また、本発明の他の実施形態は、
 所与の入力テキストを解析し、かつ、当該入力テキストに対応する応答が規定されているシナリオがデータ化されたシナリオデータに基づいて、該当するユーザの希望するサービスを実行する方法であって、
 前記シナリオデータを管理する管理者の指示を受け付け、
 前記受け付けた管理者の指示に基づいて、前記シナリオデータを構築するための予め定められた処理を規定するシナリオ構成データを組み合わせて、前記シナリオデータを生成又は編集し、
 前記シナリオデータを生成又は編集する際に、前記受け付けた管理者の指示に基づいて、A複数の前記シナリオ構成データをオブジェクトとしてオブジェクト空間内に配置し、かつ、B配置されている2以上のシナリオ構成データにおける接続及び切断を制御し、
 前記オブジェクト空間内に配置された2以上の前記シナリオ構成データが接続された場合に、当該接続されたシナリオ構成データから構成されるシナリオ構成データ群の一体的な処理が少なくとも部分的なシナリオとして正常動作可能か正常動作不能かを判定する判定処理を実行し、
 前記配置されたシナリオ構成データを含む前記オブジェクト空間を画像化するとともに、前記判定処理の結果を表示手段に表示させる表示制御処理を実行する、構成を有している。
 この構成により、本発明の一実施形態は、シナリオデータを生成中又は編集中において、複数のシナリオ構成データから構成されるシナリオの一部が生成される毎に、又は、当該シナリオの一部が変更された場合に、該当する複数のシナリオ構成データ部分のシナリオを確認しながら生成又は編集することができる。
 また、本発明の一実施形態は、部分的なシナリオ毎にエラーチェックなどを実行することができるとともに、シナリオ構成データの配置や他のシナリオ構成データとの接続を意識しなくても、シナリオを的確に生成又は編集することができるので、シナリオの生成時又は編集時の自由度をも高めることができる。
 したがって、本発明の一実施形態は、シナリオ生成時や編集時の管理者の労力を軽減することができるとともに、生成時又は編集時の制限を少なくすることによって直感的な操作を行うことができるので、管理者の利便性を向上させることができる。
 (10)また、本発明の他の実施形態は、
 所与の入力テキストを解析し、かつ、当該入力テキストに対応する応答が規定されているシナリオがデータ化されたシナリオデータに基づいて、該当するユーザの希望するサービスを実行する対話型サービス提供システムにおいて用いられる当該シナリオデータの生成又は編集を実行するシナリオ生成編集システムであって、
 前記シナリオデータを管理する管理者の指示を受け付ける受付処理手段と、
 前記受け付けた管理者の指示に基づいて、前記シナリオデータを構築するための予め定められた処理を規定するシナリオ構成データを組み合わせて、前記シナリオデータを生成又は編集するシナリオ生成編集手段と、
 前記シナリオデータを生成又は編集する際に、前記受け付けた管理者の指示に基づいて、A複数の前記シナリオ構成データをオブジェクトとしてオブジェクト空間内に配置し、かつ、B配置されている2以上のシナリオ構成データにおける接続及び切断を制御するオブジェクト配置接続制御手段と、
 前記オブジェクト空間内に配置された2以上の前記シナリオ構成データが接続された場合に、当該接続されたシナリオ構成データから構成されるシナリオ構成データ群の一体的な処理が少なくとも部分的なシナリオとして正常動作可能か正常動作不能かを判定する判定処理を実行する判定手段と、
 前記配置されたシナリオ構成データを含む前記オブジェクト空間を画像化するとともに、前記判定処理の結果を表示手段に表示させる表示制御処理を実行する表示制御手段と、
を備える、構成を有している。
 この構成により、シナリオデータを生成中又は編集中において、複数のシナリオ構成データから構成されるシナリオの一部が生成される毎に、又は、当該シナリオの一部が変更された場合に、該当する複数のシナリオ構成データ部分のシナリオを確認しながら生成又は編集することができる。
 また、部分的なシナリオ毎にエラーチェックなどを実行することができるとともに、シナリオ構成データの配置や他のシナリオ構成データとの接続を意識しなくても、シナリオを的確に生成又は編集することができるので、シナリオの生成時又は編集時の自由度をも高めることができる。
 したがって、この場合には、シナリオ生成時や編集時の管理者の労力を軽減することができるとともに、生成時又は編集時の制限を少なくすることによって直感的な操作を行うことができるので、管理者の利便性を向上させることができる。
 (11)また、本発明の他の実施形態は、
 所与の入力テキストを解析し、かつ、当該入力テキストに対応する応答が規定されているシナリオがデータ化されたシナリオデータに基づいて、該当するユーザの希望するサービスを実行する対話型サービス提供システムにおいて用いられる当該シナリオデータの生成又は編集を実行するプログラムであって、
 前記シナリオデータを管理する管理者の指示を受け付ける受付処理手段、
 前記受け付けた管理者の指示に基づいて、前記シナリオデータを構築するための予め定められた処理を規定するシナリオ構成データを組み合わせて、前記シナリオデータを生成又は編集するシナリオ生成編集手段、
 前記シナリオデータを生成又は編集する際に、前記受け付けた管理者の指示に基づいて、A複数の前記シナリオ構成データをオブジェクトとしてオブジェクト空間内に配置し、かつ、B配置されている2以上のシナリオ構成データにおける接続及び切断を制御するオブジェクト配置接続制御手段、
 前記オブジェクト空間内に配置された2以上の前記シナリオ構成データが接続された場合に、当該接続されたシナリオ構成データから構成されるシナリオ構成データ群の一体的な処理が少なくとも部分的なシナリオとして正常動作可能か正常動作不能かを判定する判定処理を実行する判定手段、及び
 前記配置されたシナリオ構成データを含む前記オブジェクト空間を画像化するとともに、前記判定処理の結果を表示手段に表示させる表示制御処理を実行する表示制御手段、
として機能させる、構成を有している。
 この構成により、シナリオデータを生成中又は編集中において、複数のシナリオ構成データから構成されるシナリオの一部が生成される毎に、又は、当該シナリオの一部が変更された場合に、該当する複数のシナリオ構成データ部分のシナリオを確認しながら生成又は編集することができる。
 また、部分的なシナリオ毎にエラーチェックなどを実行することができるとともに、シナリオ構成データの配置や他のシナリオ構成データとの接続を意識しなくても、シナリオを的確に生成又は編集することができるので、シナリオの生成時又は編集時の自由度をも高めることができる。
 したがって、この場合には、シナリオ生成時や編集時の管理者の労力を軽減することができるとともに、生成時又は編集時の制限を少なくすることによって直感的な操作を行うことができるので、管理者の利便性を向上させることができる。
 以下、図面を参照しつつ、本発明の実施形態について説明する。なお、以下の実施形態は、ユーザの問い合わせに対してチャットボットを用いて対話を行いつつ、自動的にその応答を行うシステム(以下、「情報処理システム」という。)に対し、本発明に係る対話型サービス提供システムなどを適用した場合の実施形態である。
 [1]情報処理システムの概要
 まず、図1を用いて本実施形態における情報処理システム1の概要及び構成について説明する。
 なお、図1は、本実施形態における情報処理システム1の構成を示すシステム構成図である。
 また、図1においては、図が煩雑になることを防止するために、一部のユーザ、及び、通信端末装置のみを表示している。すなわち、実際の情報処理システム1においては、表示するよりも多数のユーザ及び通信端末装置が存在している。
 本実施形態の情報処理システム1は、
(A1)ユーザ(すなわち、当該情報処理システム1の利用者)が希望する情報(所定の商品やサービスに関する問い合わせ内容の他に、画像や音声などのコンテンツを含む。)を提供すること、
(A2)商品やサービスの売買に関する情報や当該売買を行うこと、又は、
(A3)ユーザがサービスを提供する管理者(具体的には、ユーザが希望する情報を提供する提供者や問い合わせ先、又は、当該情報処理システム1を運営する運営者)管理者に対して希望する問い合わせ(例えば、電子メールや電話などの所定の通信手段による問い合わせ)を完了すること(回答を要求するまで)
など、いわゆる、製品やサービスのカスタマーセンター又はコールセンターの代替となるサービスを提供するためのシステムである。
 特に、情報処理システム1は、ユーザが希望する情報として、検索キーとなる入力テキストに基づいて、
(A1-1)予め各種の情報が検索キーと対応付けられて記憶されているデータベースから取得した情報(コンテンツを含む。)又は、
(A1-2)ネットワークを介して外部の検索エンジンなどの検索結果若しくはその結果物(コンテンツを含む。)、
を提供するための構成を有している。
 そして、本実施形態の情報処理システム1は、予め規定されたシナリオを用いるとともに、当該シナリオに基づいて、ユーザからの入力に応じて対話を行いつつ、当該ユーザからの問い合わせ、質問、又は、検索要求など、入力に対する応答や出力事項を提供する構成を有している。
 具体的には、本実施形態の情報処理システム1は、ユーザによって用いられるユーザ用端末装置10と、サービスを提供する管理者(具体的には、ユーザが希望する情報を提供する提供者や問い合わせ先、又は、当該情報処理システム1を運営する運営者)によって管理運用され、ネットワーク20を介して、通信接続されたユーザ用端末装置10のユーザに対して、チャットボットを用いたサービスを提供するサービス提供用サーバ装置30と、を備えている。
 ユーザ用端末装置10は、ユーザによって利用されるPC(パーソナルコンピュータ)、タブレット型情報通信端末装置、スマートフォン、携帯型電話機等の通信端末装置である。
 特に、ユーザ用端末装置10は、キーボード、マウス、テンキー等の操作機能と、液晶パネル、有機EL(Electro Luminescence)パネル等の表示素子によって構成される表示機能を有している。
 また、ユーザ用端末装置10は、所定のアプリケーションを実行するCPUを有し、サービス提供用サーバ装置30とデータ通信を実行し、ユーザが所望するサービスを享受するための構成を有している。
 特に、ユーザ用端末装置10は、ユーザによってテキストが入力された場合には、入力されたテキストをテキストデータとしてサービス提供用サーバ装置30に送信し、ユーザの入力によって音声データや画像データを受け付けた場合には、所与の音声解析や画像解析を実行して入力された音声データや画像データをテキストデータに変換し、変換したテキストデータをサービス提供用サーバ装置30に送信する。
 サービス提供用サーバ装置30は、各種のデータベース(以下、「DB」という。)を有するコンピュータシステムであり、かつ、サービスの提供者又は当該サービスの管理を行う管理者(以下、まとめて「管理者」という。)によって運営されるシステムである。
 また、サービス提供用サーバ装置30は、ユーザによって入力された所与のテキスト(以下、「入力テキスト」という。)を解析し、かつ、当該入力テキストに対応する応答が規定されているチャットボットを用いたサービスなどのシナリオを用いて各ユーザの希望するサービスを実現するための構成を有している。
 そして、サービス提供用サーバ装置30は、このようなサービスを運用するためのシナリオがデータ化されたシナリオデータの生成又は編集を実行し、当該生成又は編集されたシナリオデータに沿って各種のサービスを提供する構成を有している。
 特に、本実施形態の情報処理システム1は、シナリオデータの生成中又は編集中において、複数のシナリオ構成データから構成されるシナリオの一部が生成される毎に、又は、当該シナリオの一部が変更された場合に、該当するシナリオ構成データから構成されるシナリオの一部分(以下、「部分シナリオ」ともいう。)を確認しながら生成又は編集することが可能な構成を有している。
 そして、情報処理システム1は、例えば、キーボードや入力ポインティングデバイス(例えば、マウス)などの入力インターフェースと、モニタと、を用いてシナリオデータの生成又は編集を実行した場合であって、シナリオデータ(シナリオ構成データを含む。)及び管理者の操作に連動させた操作状況などを表示する場合に、該当するシナリオ構成データ部分のシナリオを確認しながら生成又は編集することが可能な構成を有している。
 具体的には、サービス提供用サーバ装置30は、
(B1)シナリオを管理する管理者の指示を受け付ける受付処理、
(B2)受け付けた管理者の指示に基づいて、シナリオデータを構築するための予め定められた処理を規定するシナリオ構成データを組み合わせて、シナリオデータを生成又は編集するシナリオ生成編集処理、
(B3)シナリオデータを生成又は編集する際に、前記受け付けた管理者の指示に基づいて、(B3-1)複数の前記シナリオ構成データをオブジェクトとしてオブジェクト空間内に配置し、かつ、(B3-2)配置されている2以上のシナリオ構成データにおける接続及び切断を制御するオブジェクト配置接続制御処理、
(B4)オブジェクト空間内に配置された2以上のシナリオ構成データが接続された場合(例えば、直接接続された場合)に、当該接続されたシナリオ構成データから構成されるシナリオ構成データ群の一体的な処理が少なくとも部分的なシナリオとして正常動作可能か正常動作不能かを判定する判定処理、及び、
(B5)配置されたシナリオ構成データを含むオブジェクト空間を画像化するとともに、判定処理の結果を表示させる表示制御処理、
を実行する構成を有している。
 特に、サービス提供用サーバ装置30は、判定処理としては、シナリオ構成データ群を形成する2以上のシナリオ構成データが、シナリオ上において時系列的に前後となる場合(すなわち、シナリオ上先に設定された第1のシナリオ構成データと、当該第1のシナリオ構成データの時系列後に接続された第2のシナリオ構成データとによって、シナリオ構成データ群が形成される場合)に、シナリオ構成データ群の一体的な処理が少なくとも部分的なシナリオとして正常動作可能か正常動作不能かを判定するようになっている。
 このような構成により、本実施形態の情報処理システム1は、例えば、
(C1)数多くのシナリオ構成データが組み込まれた長編のシナリオ、多くの分岐(すなわち、選択肢)が登場する複雑なシナリオ、若しくは、それらが複雑に絡み合った高度のシナリオの生成や編集が実行された場合であっても、
(C2)1つのシナリオデータを複数人の管理者によって生成や編集が実行された場合であっても、又は、
(C3)シナリオの所定の箇所から当該箇所の前段のシナリオの部分(時系列的に先に処理される部分)に戻れる流れにシナリオを編集した場合であっても、
各処理若しくは特定の部分の処理の確認や変更を管理者が意識することなく一つ一つ確認することができるので、容易に利用することができるとともに、その作業効率や操作性を格段に向上させることができるようになっている。
 また、本実施形態の情報処理システム1は、部分的なシナリオ毎にエラーチェックなどを実行することができるとともに、シナリオ構成データの配置や他のシナリオ構成データとの接続を意識しなくても、シナリオを的確に生成又は編集することができるので、シナリオの生成時又は編集時の自由度をも高めることができるようになっている。
 そして、本実施形態の情報処理システム1は、シナリオ生成時や編集時の管理者の労力を軽減することができるとともに、生成時又は編集時の制限を少なくすることによって直感的な操作を行うことができるので、管理者の利便性を向上させることができるようになっている。
[2]サービス提供用サーバ装置
[2.1]構成
 次に、図2を用いて本実施形態のサービス提供用サーバ装置30の構成について説明する。なお、図2は、本実施形態のサービス提供用サーバ装置30の構成を示す機能ブロック図である。
 通信制御部310は、所定のネットワークインターフェースであり、各ユーザ用端末装置10と通信チャネルを構築し、各種データの授受を行う。
 ROM/RAM320には、サービス提供用サーバ装置30の駆動に必要な各種のプログラムが記憶されている。また、ROM/RAM320は、各種の処理が実行される際のワークエリアとして用いられる。
 データ記憶部330は、HDD、又は、SSD(Solid State Drive)により構成される。
 また、データ記憶部330には、各種のアプリケーションが記憶されるアプリケーションDB331と、生成されたシナリオデータ及び当該シナリオデータを生成する際に基本的な機能が規定された各シナリオ構成データが記憶されるシナリオDB332と、が構築される。
 アプリケーションDB331には、少なくとも、ユーザの入力に基づき予め設定されたシナリオ及びチャットボットを用いて各種のサービスを提供するためのアプリケーション(以下、「サービス運用アプリケーション」という。)及び当該チャットボットを用いて提供するサービスのシナリオを生成するためのアプリケーション(以下、「シナリオ生成編集アプリケーション」という。)と、当該各アプリケーションを実行する際に用いる各種のデータと、が記憶されている。
 シナリオDB332には、管理者によって設定されたシナリオデータと、シナリオデータを生成する際に用いられるシナリオ構成データと、が記憶されている。
 シナリオデータとは、チャットボットを用いたサービスを提供するために、管理者によって設定されたデータであって、ユーザの希望するサービスを提供するための複数の処理を規定し、各処理の内容とその順序、及び、当該処理を実行する際に必要なデータの種別やその内容が規定されているデータである。
 そして、シナリオデータは、外部のデータベースや上記の各種のアプリケーションと連携して各種のサービスを提供することが可能なデータ構成を有している。
 シナリオ構成データとは、シナリオ上の予め定められた個々の処理を規定するデータである。
 例えば、シナリオ構成データとしては、
(A1)ユーザの入力したテキストや選択したボタンを解析し、その内容によってシナリオを分岐させるためのノード(以下、「ユーザノード」という。)、
(A2)チャットボット(すなわち、システム側)からの発言やデータをユーザに提示するためのノード(以下、「ボットノード」という。)、
(A3)Q&Aなどのユーザに複数の選択肢を提示し、当該提示した選択肢の中から選択された選択肢に対する処理を実行するノード(以下、「Q&Aノード」という。)
(A4)複数の選択肢を提示して選択された選択肢に対するシナリオに分岐させるためのノード(以下、「複数Q&Aノード」という。)
(A5)条件に従ってシナリオを分岐させるためのノード(条件設定ノード)、
(A6)ユーザが当該ノードを通過したときに電子メールやチャットなどによって所定の通知を管理者又はユーザが受け取るためのノード(以下、「通知ノード」という。)、
(A7)強制的に他のノードにジャンプするノード(以下、「ジャンプノード」という。)、
(A8)所定の入力テキストを受け付けた場合に強制的に該当する処理を実行するためのノード(以下、「インテントノード」という。)、及び、
(A9)ノードの中に別のシナリオを作成するためのノード(以下、「コンポーネントノード」という。)
などが含まれる。
 管理制御部340は、主に中央演算処理装置(CPU)によって構成され、プログラムを実行することによって、サービス提供用サーバ装置30の各部を統合制御する。
 データ処理部200は、管理制御部340と同一の中央演算処理装置(CPU)によって、又は、管理制御部340と異なる中央演算処理装置(CPU)によって構成され、アプリケーションを実行することによって各種の処理を実現する。
 特に、データ処理部200は、管理者によって設定されたシナリオ基づいてチャットボットを用いたサービスを提供するためのサービス提供処理を実行するサービス制御部210と、管理者の指示に基づいて、新規なシナリオの生成、又は、既に生成されたシナリオの編集を行うシナリオ生成編集処理を実行するシナリオ生成編集制御部220と、を実現する。
 そして、本実施形態におけるサービス制御部210及びシナリオ生成編集制御部220の詳細及びその動作については後述する。
 表示部370は、CRT、LCD、タッチパネル型ディスプレイ、又は、HMD(ヘッドマウントディスプレイ)などによって実現され、タスクデータに基づいて各種のタスクに関する画像、又は、認知機能の測定結果に関する画像を表示する。なお、例えば、本実施形態の表示部370は、表示手段を構成する。
 描画制御部380は、配置されたシナリオ構成データを含むオブジェクト空間及び判定処理の結果を表示部370に表示させるための画像を生成する。
 操作部390は、管理者による操作データを入力するためのものであり、その機能は、タッチパネル又はタッチパネル型ディスプレイなどにより実現できる。
 すなわち、操作部390は、表示部370に画像が表示される画面上における2次元の指示位置座標(x,y)を検出可能な検出部(タッチパネル)を備え、指先又はタッチペンなどの入力機器を用いたタッチパネル上の接触操作を検出する。
 なお、操作部390は、指示位置以外の操作情報(操作信号)を入力可能なボタンやレバー、キーボード、マイク、加速度センサ、マウス、トラックパッド又は視線を用いた入力デバイス(視線入力装置)などを備えていてもよい。
[2.2]サービス提供処理
 次に、本実施形態のサービス制御部210によって実行されるサービス提供処理の詳細について説明する。 
 サービス制御部210は、サービス提供処理を実行するため、サービス運用アプリケーションを実行することによって、ユーザ用端末装置10においてユーザに入力されたテキストなどのデータ(以下、「入力データ」という。)を受け付けるユーザ入力受付部211と、入力された入力データを解析してユーザの指示を認識するユーザ入力解析部212と、認識したユーザの指示に基づいて、所定の処理を実行し、ユーザが希望する情報を応答して提供する応答制御部213と、から構成されている。
 ユーザ入力受付部211は、ユーザによって入力されたテキストデータを受け付けてもよいし、音声データ、又は、画像データを受け付けてもよい。
 そして、ユーザ入力受付部211は、テキストデータを受け付けた場合には、当該受け付けたデータをユーザ入力解析部212に出力し、音声データや画像データを受け付けた場合には、所与の音声解析や画像解析を実行してテキストデータに変換し、変換したテキストデータをユーザ入力解析部212に出力する。
 ユーザ入力解析部212は、入力されたテキストデータ、すなわち、ユーザによって入力された入力テキストに対して、形態素解析、かな漢字変換、校正支援、係り受け解析、キーフレーズ抽出、及び、自然言語理解などの各種の自然言語処理を実行し、受け付けたユーザの指示を認識する。
 応答制御部213は、認識されたユーザの指示に基づいて、例えば、
(1)ユーザが希望する情報(所定の商品やサービスに関する問い合わせ内容の他に、画像や音声などのコンテンツを含む。)の提供、
(2)商品やサービスの売買に関する情報、若しくは、ユーザが希望する問い合わせ(例えば、電子メールや電話などの所定の通信手段による問い合わせ)を完了すること(回答を要求するまでであって、該当するメールアドレス宛に、ベースとなる文章も組み込まれた電子メールの起動や該当する電話番号への発信なども含む。)、又は、
(3)該当するユーザに再入力を促す画像の表示制御、
を実行する。
[2.2]シナリオ生成編集処理
 次に、図3~図9Bを用いて本実施形態のシナリオ生成編集制御部220に実行されるシナリオ生成編集処理の詳細について説明する。
 なお、図3は、本実施形態における配置制御処理を説明するための図であり、図4は、本実施形態における接続切断制御処理を説明するための図である。また、図5A~図6Bは、本実施形態における判定処理を説明するための図であり、図7A~図9Bは、本実施形態の表示制御処理を説明するための図である。
(シナリオ生成編集制御部の構成)
 シナリオ生成編集制御部220は、シナリオ生成編集処理を実行するため、
(A1)操作部390を介して入力された管理者の指示を受け付ける受付処理を実行する操作受付部221と、
(A2)シナリオ構成データに基づいて、シナリオデータを生成又は編集を制御するオブジェクト配置接続制御処理を実行する生成編集処理部222と、
(A3)オブジェクト空間内に配置された2以上のシナリオ構成データが接続された場合、当該接続されたシナリオ構成データから構成されるシナリオ構成データ群の一体的な処理が少なくとも部分的なシナリオとして正常動作可能か正常動作不能かを判定する判定処理を実行する判定処理部223と、
(A4)シナリオ構成データを含むオブジェクト空間の画像化を含む表示制御処理を実行する表示制御部224と、
から構成される。
 なお、例えば、本実施形態の操作受付部221は、受付処理手段を構成し、生成編集処理部222は、シナリオ生成編集手段及びオブジェクト配置接続制御手段を構成する、また、例えば、本実施形態の判定処理部223は、判定手段を構成し、表示制御部224は、表示制御手段を構成する。
(オブジェクト配置接続制御処理の原理)
 生成編集処理部222は、受付処理によって受け付けた管理者の指示に基づいて、シナリオデータを構築するための予め定められた処理を規定するシナリオ構成データを組み合わせて、シナリオデータを生成又は編集する。
 特に、生成編集処理部222は、シナリオデータを生成又は編集する際に、受け付けた管理者の指示に基づいて、
(B1)複数のシナリオ構成データをオブジェクトとしてオブジェクト空間内に配置する配置制御処理と、
(B2)配置されている2以上のシナリオ構成データにおける接続及び切断を制御する接続切断制御処理と、
を含む、オブジェクト配置接続制御処理を実行する。
 また、生成編集処理部222は、オブジェクト空間内に配置された2以上のシナリオ構成データが接続された場合(例えば、直接接続された場合)に、当該接続されたシナリオ構成データから構成されるシナリオ構成データ群の一体的な処理が少なくとも部分的なシナリオとして正常動作可能か正常動作不能かを判定する判定処理を実行する。
(配置制御処理(オブジェクト配置接続制御処理))
 生成編集処理部222は、受け付けた管理者の指示に基づいて、シナリオ構成データの種別を特定し、特定した種別のシナリオ構成データを、オブジェクトとして、オブジェクト空間内において指定された座標の位置に配置する。
 具体的には、生成編集処理部222は、例えば、シナリオ構成データがオブジェクト化されたオブジェクト(以下、「処理記号オブジェクト」という。ただし、以後において、場合によっては、オブジェクトとしてもシナリオ構成データと言及する場合もある。)、2以上の処理記号ボックスを接続するための矢印のオブジェクト(以下、「矢印オブジェクト」という。)、当該矢印オブジェクトや処理記号オブジェクトに重畳される表示オブジェクトなどのオブジェクト空間が画像化された場合に表示物を表す各種オブジェクトをオブジェクト空間に配置設定する処理を行う。
 また、生成編集処理部222は、各オブジェクト(モデルオブジェクト)の位置や回転角度(向き、方向と同義)を決定し、その位置(X、Y)或いは(X、Y、Z)にその回転角度(X、Y軸回りでの回転角度)或いは(X、Y、Z軸回りでの回転角度)でオブジェクトを配置又は移動させる。
 なお、オブジェクト空間とは、いわゆる仮想2次元空間、又は、仮想3次元空間の両方を含む。そして、2次元空間とは、例えば2次元座標(X,Y)においてオブジェクトが配置される空間であり、また、3次元空間とは、例えば3次元座標(X,Y,Z)においてオブジェクトが配置される空間である。
 特に、生成編集処理部222は、シナリオ構成データ毎に、受け付けた管理者の指示に基づいて、特定した種別のシナリオ構成データを、処理記号オブジェクトとして、指定された座標位置に配置してもよいし、受け付けた管理者の指示に基づいて、ユーザノードとマルチノードなどの関連する2以上のシナリオ構成データを、処理記号オブジェクトとして、指定された座標位置に配置してもよい。
 すなわち、ユーザノードなどは、シナリオ上において当該ノードの後に実行するノードが必須となるため、本実施形態の生成編集処理部222は、ユーザノード及び条件設定ノードを配置する際に、シナリオ上においてその後に処理するノード(種々のノードに変化するマルチノード)を配置してもよい。
 例えば、生成編集処理部222は、図3Aに示すように、操作受付部221を介してシナリオ開始から2つ目のノードとして選択肢のある通知ノードの配置の指示を受け付けると、B通知ノードを配置する。
 そして、例えば、生成編集処理部222は、図3に示すように、ユーザの指示に基づいて、配置した通知ノードに対して3つの選択肢を設定すると、当該各選択肢に対してボットノードを配置し、通知ノードから各ボットノードへの接続オブジェクトとして矢印オブジェクトを配置するとともに、当該各矢印オブジェクト上に選択肢の条件を表示するための表示オブジェクトを配置する。
 なお、図3は、処理記号オブジェクトとともに接続オブジェクトとしての矢印オブジェクトも配置しているが、後述するように、処理記号オブジェクトのみ配置し、その後に管理者の指示に基づいて、矢印オブジェクトを配置してもよい。
 一方、生成編集処理部222は、受け付けた管理者の指示に基づいて、既にオブジェクト空間に配置された処理記号オブジェクトの座標位置を、オブジェクト空間内において、移動させることも可能な構成を有している。
 そして、このとき、生成編集処理部222は、移動対象の処理記号オブジェクトに接続されている矢印オブジェクトの端部を移動対象の処理記号オブジェクトに連動させて移動させ、当該矢印オブジェクトを伸長させる制御(矢印オブジェクトの他端部が固定されているための伸長制御)を実行することが好ましい。
 なお、このとき、生成編集処理部222は、移動対象の処理記号オブジェクト及び矢印オブジェクトに重畳表示される表示オブジェクトも、これらの処理記号オブジェクト及び矢印オブジェクトに連動させて移動させることが好ましい。
(接続切断制御処理(オブジェクト配置接続制御処理))
 生成編集処理部222は、接続切断制御処理としては、オブジェクト空間において視覚的に、受け付けた管理者の指示に基づいて、かつ、矢印オブジェクトを用いて、処理記号オブジェクトとして既に配置された2以上のシナリオ構成データを接続し、又は、既に接続されている2以上のシナリオ構成データを切断する。
 具体的には、生成編集処理部222は、接続切断制御処理としては、受け付けた管理者の指示に基づいて、
(1)未だ処理記号オブジェクトに未接続の矢印オブジェクトの一端を、処理記号オブジェクトに接続する制御(処理記号オブジェクトの外縁のいずれかに接続させる制御)、及び、
(2)既に処理記号オブジェクトに接続されている矢印オブジェクトを、該当する処理記号オブジェクトとの接続ポイントから切断する制御、
を実行する。
 特に、生成編集処理部222は、例えば、フローチャート等によって用いられるコネクタ(例えば、シナリオの流れを示す矢印)などの接続オブジェクトを介して2以上のシナリオ構成データがシナリオ上においても、オブジェクト空間上の視覚的にも接続するための制御、又は、当該接続を切断するための制御を実行する。
 具体的には、生成編集処理部222は、特定の種別の処理記号オブジェクトをオブジェクト空間に配置する場合には、例えば、図4ABに示すように、当該配置する処理記号オブジェクトの所定の外縁に、一端が既に接続されている接続オブジェクトを同一のタイミングでオブジェクト空間に配置してもよいし、管理者の指示に基づいて、他のシナリオ構成データのオブジェクト(すなわち、処理記号オブジェクト)とのオブジェクト空間に接続オブジェクトを登場させて、当該処理記号オブジェクトにその両端を接続してもよい。
 なお、図4には、通知ノードとボットノードが切断されている状態を示す図と、通知ノードとボットノードが接続されている状態を示す図がと、示されている。
 なお、生成編集処理部222は、上述の図3に示すように、処理記号オブジェクトをオブジェクト空間に配置する毎に、配置対象の処理記号オブジェクトの外縁から当該処理記号オブジェクトの処理内容に応じた数の接続オブジェクトを配置してもよい。
 一方、生成編集処理部222は、上述のように、矢印オブジェクトの接続制御又は切断制御を実行すると、当該矢印オブジェクトの接続制御又は切断制御に対応付けて、該当するシナリオ構成データに規定されている処理内容を、シナリオデータ上において接続された順に処理を実行するための内容に、書き換える。
 特に、生成編集処理部222は、矢印オブジェクトの一端が処理記号オブジェクト(以下、「接続先対象オブジェクト」という。)に接続された場合には、当該矢印オブジェクトの他端に既に接続されている処理記号オブジェクト(以下、「接続元対象オブジェクト」という。)の次に処理が実行されるように、当該接続先対象オブジェクトの処理内容を書き換える。
 また、生成編集処理部222は、矢印オブジェクトの両端が処理記号オブジェクトに既に接続されている状態であって、管理者の指示に基づいて、当該矢印オブジェクトの一端の処理記号オブジェクト(以下、「切断先オブジェクト」という。)との接続が切断された場合には、矢印オブジェクトが未だ接続されている切断元の処理記号オブジェクト(以下、「切断元処理記号オブジェクト」という。)及びに切断先オブジェクトに規定されている処理内容であって、相互に切断された処理記号オブジェクトに関する部分の内容を、それぞれ、初期化してもよいし、そのままの内容を保持してもよい。
 なお、生成編集処理部222は、このような構成を有することによって、ノードの付け替え、すなわち、シナリオ構成データのシナリオ上の処理順の入れ替え、新規のシナリオ構成データの追加、又は、既に配置されているシナリオ構成データの削除など、シナリオの編集も可能となっている。
(判定処理)
 判定処理部223は、例えば、シナリオ上において問い合わせ内容や質問とその回答、又は、検索要求と検索結果などユーザの入力に対する応答や当該入力に対する出力事項の関係となる一対のノード(すなわち、2以上のノードであってもよい。)などのオブジェクト空間内に配置された2以上のシナリオ構成データが接続された場合(直接接続又は間接接続を含む。)に、当該接続されたシナリオ構成データから構成されるシナリオ構成データ群の一体的な処理が少なくとも部分的なシナリオとして正常動作可能か正常動作不能かを判定する判定処理を実行する。
 そして、判定処理部223は、配置された2以上のシナリオ構成データが直列接続された2以上のシナリオ構成データ(すなわち、処理記号オブジェクト)、又は、1のシナリオ構成データに並列接続された複数のシナリオ構成データから構成されるシナリオ構成データ群(すなわち、処理記号オブジェクト群)が形成される毎に、判定処理を実行する。
 また、判定処理部223は、配置された2以上のシナリオ構成データとして、同一の処理や同一の機能を有するシナリオ構成データ群、又は、異なる処理や異なる機能を有するシナリオ構成データ群について当該判定処理を実行してもよい。
 そして、判定処理部223は、矢印オブジェクトなどの接続オブジェクトを介して2以上のシナリオ構成データがシナリオ上であってオブジェクト空間上の視覚的にも接続されること、又は、当該接続が切断されることなど、2以上のシナリオ構成データにおける接続及び切断がされた場合に、当該判定処理を実行する。
 さらに、判定処理部223は、判定処理として、例えば、選択肢や処理を実行するための条件など、直前又は直後に連続的に接続された2つシナリオ構成データとの関係においてユーザに提示される選択肢と実際に選択肢の処理として実行される数が一致するか否か、又は、特定の処理を実行する際に必要な処理が実行されているか否かなど、直前又は直後に連続的に接続された2つシナリオ構成データとの関係において正常動作可能か又は正常動作不能かを判定する。
 すなわち、判定処理部223は、直前又は直後に連続的に接続された2つシナリオ構成データとの関係において入力及び出力の条件や数の一致又は不一致を判定し、シナリオ構成データ群の一体的な処理が部分的なシナリオとして正常動作可能か又は正常動作不能かを判定する。
 具体的には、判定処理部223は、シナリオ構成データ群を構成する2以上のシナリオ構成データのうち、シナリオ上において時系列的に先に設定された第1のシナリオ構成データと、当該第1のシナリオ構成データの時系列後に接続された他のシナリオ構成データである第2のシナリオ構成データの、シナリオ上において実行する上での前提となるシナリオ構成データ(例えば、当該シナリオ構成データが実行されなければ、当該シナリオ構成データの後段で実行されるシナリオ構成データの実行が成立しない関係のあるシナリオ構成データ)との関係において、部分的なシナリオとして正常動作可能か又は正常動作不能かを判定する。
 特に、判定処理部223は、オブジェクト空間上において、直接接続された2以上のシナリオ構成データのうち、先に処理される第1のシナリオ構成データの処理によって第2のシナリオ構成データに要求されるシナリオ上の選択肢の数(すなわち、出力数)と、当該第2のシナリオ構成データの実際の選択肢の数が一致するか否かを判定する。
 例えば、第1のシナリオ構成データ(通知ノード)において、3つの選択肢を提示し、当該3つの選択肢のそれぞれにおいて第2のシナリオ構成データ(ボットノード)の接続が要求される場合には、判定処理部223は、図5A及びBに示すように、3つの第2のシナリオ構成データ(ボットノード)が第1のシナリオ構成データ(通知ノード)に接続されているか否かを判定する。
 なお、図5Aは、判定処理時に3つのボットノードが配置された例を示す図であり、図5Bは、判定処理時に2つのボットノードが配置された例を示す図である。そして、図5Aの例は、正常動作可能と判定され、図5Bの例は、正常動作不能と判定される場合を示している。
 一方、判定処理部223は、オブジェクト空間上において、直接接続された2以上のシナリオ構成データのうち、第2のシナリオ構成データの実行の前提に必要な処理を第1のシナリオ構成データによって実行しているか否かを判定してもよい。
 例えば、第2のシナリオ構成データにおいて、性別の入力に基づいて所定の処理を実行する場合(性別に基づく質問を提示する場合)において、判定処理部223は、図6A及びBに示すように、第2のシナリオ構成データが性別の入力に対応する処理を実行するか否かを判定する。
 なお、図6Aは、第2のシナリオ構成データとして、男性用のデータ提供又は女性用のデータ提供を行うシナリオ構成データが設定された場合を示し、図6Bは、第2のシナリオ構成データとして、男性用のデータ提供又は20代用のデータ提供を行うシナリオ構成データが設定された場合を示している。そして、図6Aの例は、正常動作可能と判定され、図6Bの例は、正常動作不能と判定される場合を示している。
(表示制御処理)
 表示制御部224は、記配置されたシナリオ構成データを含むオブジェクト空間を画像化するとともに、正常動作不能を示すエラー表示、及び、正常動作可能を示す正常表示などの判定処理の結果をモニタなどの表示手段に表示させる表示制御処理を実行する。
 特に、表示制御部224は、判定処理によって正常動作不能と判定された場合には、表示制御処理として、該当するシナリオ構成データに関連付けて、判定処理の結果をオブジェクトとして表示させる。
 具体的には、表示制御部224は、例えば、
(1)判定処理の結果を示すオブジェクトを、判定処理の対象となっているシナリオ構成データ(上記の場合には、第2のシナリオ構成データ)のオブジェクトの近傍に表示し、
(2)判定処理の結果を示すオブジェクトを、判定処理の対象となっているシナリオ構成データに接続する接続オブジェクト(すなわち、矢印オブジェクト)上に表示し、
(3)シナリオ構成データが配置されているオブジェクト空間(以下、「メインオブジェクト空間」という。)とは異なるオブジェクト空間(以下、「サブオブジェクト空間」という。)に判定処理の結果を示すオブジェクトをシナリオ構成データ名(例えば、ID)とともに表示する。
 例えば、選択肢のシナリオ構成データと当該選択肢の各選択に対する処理を行うためのシナリオ構成データとのシナリオ構成データ群の一体的な処理によって部分的なシナリオとして正常動作不能と判定される場合を想定する。
 この場合において、選択肢のシナリオ構成データ(すなわち、第1のシナリオ構成データ)と、当該選択肢の各選択に対する処理を行うためのシナリオ構成データ(すなわち、第2のシナリオ構成データ)と、が接続されると、表示制御部224は、表示制御処理として、図7A及びBに示すように、判定処理の結果を示すオブジェクトを、第1のシナリオ構成データと第2のシナリオ構成データとを接続する矢印オブジェクト上に表示し、正常動作不能を示す正常動作不能オブジェクトを配置して表示する。
 なお、表示制御部224は、図8A及びBに示すように、判定処理の結果を、矢印オブジェクト上に代えて、第2のシナリオ構成データ上に、正常動作不能オブジェクトを配置して表示させてもよいし、図9A及びBに示すように、サブオブジェクト空間に該当するシナリオ構成データの識別情報(すなわち、第2のシナリオ構成データのID)とともに、当該判定処理の結果を、表示させてもよい。
[3]シナリオ生成編集処理の動作
 次に、図10を用いて本実施形態のサービス提供用サーバ装置において実行されるシナリオ生成編集処理(オブジェクト配置接続制御処理(接続切断制御処理)、判定処理及び表示制御処理)について説明する。
 なお、図10は、本実施形態のサービス提供用サーバ装置おいて実行されるオブジェクト配置接続制御処理(接続切断制御処理)、判定処理及び表示制御処理を含むシナリオ生成編集処理を示すフローチャートである。
 本動作は、生成編集処理部222がシナリオ生成編集処理のオブジェクト配置接続制御処理中であるものとし、当該オブジェクト配置接続制御処理における配置制御処理中に、操作受付部221によって受け付けた管理者の指示が、シナリオ構成データの切断又は接続の場合に実行される動作である。
 まず、シナリオ生成編集制御部220は、操作受付部221によって管理者の指示が受け付けられたことを検出すると(ステップS101)、当該受け付けた指示が、処理記号オブジェクトに未だ未接続の矢印オブジェクトの一端を、いずれかの処理記号オブジェクトに接続する制御(以下、「接続制御」という。)、又は、既に両端が接続されている矢印オブジェクトの一端を切断する制御(以下、「切断制御」という。)であるか否かを判定する(ステップS102)。
 このとき、生成編集処理部222は、当該受け付けた指示が、矢印オブジェクトの接続制御又は切断制御でない場合(すなわち、処理記号オブジェクトの配置若しくはそれに関連する制御の場合)には、本処理を終了させる。
 一方、生成編集処理部222は、当該受け付けた指示が、矢印オブジェクトの接続制御又は切断制御であると判定した場合には、ステップS103の処理に移行する。
 次いで、判定処理部223は、当該接続されたシナリオ構成データから構成されるシナリオ構成データ群を特定し(ステップS103)、当該特定したシナリオ構成データ群の一体的な処理が部分的なシナリオとして正常動作可能か正常動作不能かを判定する判定処理を実行する(ステップS104)。
 このとき、表示制御部224は、該当するシナリオ構成データ群の一体的な処理が部分的なシナリオとして正常動作可能と判定した場合には、該当するシナリオ構成データ群のオブジェクト(すなわち、処理記号オブジェクト)に正常動作可能であることを示すオブジェクトをオブジェクト空間に形成して画像化し(ステップS105)、本処理を終了させる。
 他方、表示制御部224は、該当するシナリオ構成データ群の一体的な処理が部分的なシナリオとして正常動作不能と判定した場合には、当該正常動作不能を示すオブジェクトを、第1のシナリオ構成データと第2のシナリオ構成データとを接続する矢印オブジェクト上に形成して画像化して(ステップS106)、本処理を終了させる。
[4]変形例
 次に、本実施形態の変形例について説明する。
(変形例1)
 本実施形態においては、シナリオ構成データをオブジェクト空間に配置する場合であって、配置指示されたシナリオ構成データから他のシナリオ構成データと接続するための矢印オブジェクトが表示される場合において、表示制御部224は、判定処理によって正常動作不能と判定された場合には、表示制御処理として、該当するシナリオ構成データから次のシナリオ構成データに接続するための接続オブジェクト(すなわち、矢印オブジェクト)を非表示にしてもよい。
 例えば、判定処理部223は、シナリオデータを生成中又は編集中において、新規にシナリオ構成データを配置する際には当該新規のシナリオ構成データから次のシナリオ構成データに接続するためのフリーの矢印オブジェクトを、当該新規のシナリオ構成データに接続させた状態でオブジェクト空間に配置する。
 そして、表示制御部224は、接続オブジェクトとしての矢印を該当するシナリオ構成データから次のシナリオ構成データに接続した場合であって、判定処理によって正常動作不能と判定された場合には、当該2以上のシナリオ構成データのうち、時系列的に後に実行されるシナリオ構成データから、次のシナリオ構成データを接続するための矢印オブジェクトを非表示にしてもよい。
(変形例2)
 本実施形態のシナリオ生成編集制御部220は、上述のシナリオ生成編集処理においては、受け付けた管理者の指示に基づいて、オブジェクト空間内に配置されたシナリオ構成データの予め定められた設定可能な項目を設定する。
 この場合に、判定処理部223は、項目設定されたシナリオ構成データにおける、予め定められた処理が部分的なシナリオとして正常動作可能か正常動作不能かを判定する判定処理を実行してもよい。
 例えば、この場合には、判定処理部223は、選択肢の数や内容、ユーザに提供する情報の種別や内容、又は、受け付ける入力テキストの種別や内容などを項目として設定する。
 また、この場合には、表示制御部224は、上述と同様に、判定処理によって正常動作不能と判定された場合には、表示制御処理として、該当するシナリオ構成データに関連付けて、判定処理の結果をオブジェクトとして表示させる。
 すなわち、この場合には、表示制御部224は、例えば、
(1)判定処理の結果を示すオブジェクトを、判定処理の対象となっているシナリオ構成データのオブジェクトの近傍に表示し、
(2)判定処理の結果を示すオブジェクトを、判定処理の対象となっているシナリオ構成データに接続する接続オブジェクト(すなわち、矢印オブジェクト)上に表示し、
(3)シナリオ構成データが配置されているメインオブジェクト空間とは異なるサブオブジェクト空間に判定処理の結果を示すオブジェクトをシナリオ構成データ名(例えば、ID)とともに表示する。
(変形例3)
 上記実施形態においては、サービス提供用サーバ装置30内に各DBを設け、これらのDBをサービス提供用サーバ装置30のみにおいて管理及び制御する構成としたが、各DBの管理、制御主体は、各々、別個なコンピュータシステムを用いるようにしてもよい。
(変形例4)
 上記実施形態においては、サービス提供用サーバ装置30によってユーザ用端末装置10に各種のサービスの提供及びシナリオ生成編集処理を提供しているが、複数のサーバ装置を連動させてサーバシステムを構築し、当該構築したサーバシステムを用いて各種のサービスの提供及びシナリオ生成編集処理を実行してもよい。
(変形例5)
 上記実施形態においては、サービス提供用サーバ装置30に、サービス制御部210及び
シナリオ生成編集制御部220が設けられているが、シナリオ生成編集制御部220が独立的に設けられたサーバ装置によって実現されてもよい。
1     …情報処理システム
10    …ユーザ用端末装置
20    …ネットワーク
30    …サービス提供用サーバ装置
200   …データ処理部
210   …サービス制御部
211   …ユーザ入力受付部
212   …ユーザ入力解析部
213   …応答制御部
220   …シナリオ生成編集制御部
221   …操作受付部
222   …生成編集処理部
223   …判定処理部
224   …表示制御部
310   …通信制御部
320   …RAM
330   …データ記憶部
331   …アプリケーションDB
332   …シナリオDB
340   …管理制御部
370   …表示部
380   …描画制御部
390   …操作部

Claims (11)

  1.  所与の入力テキストを解析し、かつ、当該入力テキストに対応する応答が規定されているシナリオがデータ化されたシナリオデータに基づいて、該当するユーザの希望するサービスを実行する対話型サービス提供システムであって、
     前記シナリオデータを管理する管理者の指示を受け付ける受付処理手段と、
     前記受け付けた管理者の指示に基づいて、前記シナリオデータを構築するための予め定められた処理を規定するシナリオ構成データを組み合わせて、前記シナリオデータを生成又は編集するシナリオ生成編集手段と、
     前記シナリオデータを生成又は編集する際に、前記受け付けた管理者の指示に基づいて、(A)複数の前記シナリオ構成データをオブジェクトとしてオブジェクト空間内に配置し、かつ、(B)配置されている2以上のシナリオ構成データにおける接続及び切断を制御するオブジェクト配置接続制御手段と、
     前記オブジェクト空間内に配置された2以上の前記シナリオ構成データが接続された場合に、当該接続されたシナリオ構成データから構成されるシナリオ構成データ群の一体的な処理が少なくとも部分的なシナリオとして正常動作可能か正常動作不能かを判定する判定処理を実行する判定手段と、
     前記配置されたシナリオ構成データを含む前記オブジェクト空間を画像化するとともに、前記判定処理の結果を表示手段に表示させる表示制御処理を実行する表示制御手段と、
    を備えることを特徴とする対話型サービス提供システム。
  2.  請求項1に記載の対話型サービス提供システムにおいて、
     前記判定手段が、
      前記オブジェクト空間内に配置され、かつ、前記2以上のシナリオ構成データが直接接続された場合に、当該直接接続されたシナリオ構成データ群の一体的な処理が少なくとも前記部分的なシナリオとして正常動作可能か正常動作不能かを判定する前記判定処理を実行する、対話型サービス提供システム。
  3.  請求項1又は2に記載の対話型サービス提供システムにおいて、
     前記2以上のシナリオ構成データのうち、前記シナリオ上において時系列的に先に設定された第1のシナリオ構成データが、当該第1のシナリオ構成データの時系列後に接続された他のシナリオ構成データである第2のシナリオ構成データの、前記シナリオ上において実行する上での前提となるシナリオ構成データである、対話型サービス提供システム。
  4.  請求項1~3のいずれか1項に記載の対話型サービス提供システムにおいて、
     前記表示制御手段が、
      前記判定処理によって正常動作不能と判定された場合には、前記表示制御処理として、前記該当するシナリオ構成データに関連付けて、前記判定処理の結果をオブジェクトとして表示させる、対話型サービス提供システム。
  5.  請求項4に記載の対話型サービス提供システムにおいて、
     前記表示制御手段が、
      前記判定処理の結果のオブジェクトを、該当する複数のシナリオ構成データを直接接続する接続オブジェクト上に表示させる、対話型サービス提供システム。
  6.  請求項1~3のいずれか1項に記載の対話型サービス提供システムにおいて、
     前記表示制御手段が、
      前記判定処理によって正常動作不能と判定された場合には、前記表示制御処理として、前記該当するシナリオ構成データから次のシナリオ構成データに接続するための接続オブジェクトを非表示にする、対話型サービス提供システム。
  7.  請求項6に記載の対話型サービス提供システムにおいて、
     前記該当するシナリオ構成データが前記ユーザに対して複数の選択肢の中から1以上の選択肢を選択させるためのシナリオ構成データの場合には、
     前記表示制御手段が、前記表示制御処理として、
      前記該当するシナリオ構成データが接続可能な後段のシナリオ構成データの数を示す接続可能数を検出し、
      前記管理者の指示に基づく、前記検出された接続可能数と同じ数の前記接続オブジェクトの表示を許可する、対話型サービス提供システム。
  8.  請求項1~7のいずれか1項に記載の対話型サービス提供システムにおいて、
     前記受け付けた管理者の指示に基づいて、前記オブジェクト空間内に配置された前記シナリオ構成データの予め定められた設定可能な項目を設定する設定手段を更に備え、
     前記判定手段が、
      前記項目設定されたシナリオ構成データにおける、前記予め定められた処理が部分的なシナリオとして正常動作可能か正常動作不能かを判定する判定処理を実行する、対話型サービス提供システム。
  9.  所与の入力テキストを解析し、かつ、当該入力テキストに対応する応答が規定されているシナリオがデータ化されたシナリオデータに基づいて、該当するユーザの希望するサービスを実行する対話型サービス提供方法であって、
     前記シナリオデータを管理する管理者の指示を受け付け、
     前記受け付けた管理者の指示に基づいて、前記シナリオデータを構築するための予め定められた処理を規定するシナリオ構成データを組み合わせて、前記シナリオデータを生成又は編集し、
     前記シナリオデータを生成又は編集する際に、前記受け付けた管理者の指示に基づいて、(A)複数の前記シナリオ構成データをオブジェクトとしてオブジェクト空間内に配置し、かつ、(B)配置されている2以上のシナリオ構成データにおける接続及び切断を制御し、
     前記オブジェクト空間内に配置された2以上の前記シナリオ構成データが接続された場合に、当該接続されたシナリオ構成データから構成されるシナリオ構成データ群の一体的な処理が少なくとも部分的なシナリオとして正常動作可能か正常動作不能かを判定する判定処理を実行し、
     前記配置されたシナリオ構成データを含む前記オブジェクト空間を画像化するとともに、前記判定処理の結果を表示手段に表示させる表示制御処理を実行することを特徴とする対話型サービス提供方法。
  10.  所与の入力テキストを解析し、かつ、当該入力テキストに対応する応答が規定されているシナリオがデータ化されたシナリオデータに基づいて、該当するユーザの希望するサービスを実行する対話型サービス提供システムにおいて用いられる当該シナリオデータの生成又は編集を実行するシナリオ生成編集システムであって、
     前記シナリオデータを管理する管理者の指示を受け付ける受付処理手段と、
     前記受け付けた管理者の指示に基づいて、前記シナリオデータを構築するための予め定められた処理を規定するシナリオ構成データを組み合わせて、前記シナリオデータを生成又は編集するシナリオ生成編集手段と、
     前記シナリオデータを生成又は編集する際に、前記受け付けた管理者の指示に基づいて、(A)複数の前記シナリオ構成データをオブジェクトとしてオブジェクト空間内に配置し、かつ、(B)配置されている2以上のシナリオ構成データにおける接続及び切断を制御するオブジェクト配置接続制御手段と、
     前記オブジェクト空間内に配置された2以上の前記シナリオ構成データが接続された場合に、当該接続されたシナリオ構成データから構成されるシナリオ構成データ群の一体的な処理が少なくとも部分的なシナリオとして正常動作可能か正常動作不能かを判定する判定処理を実行する判定手段と、
     前記配置されたシナリオ構成データを含む前記オブジェクト空間を画像化するとともに、前記判定処理の結果を表示手段に表示させる表示制御処理を実行する表示制御手段と、
    を備えることを特徴とするシナリオ生成編集システム。
  11.  所与の入力テキストを解析し、かつ、当該入力テキストに対応する応答が規定されているシナリオがデータ化されたシナリオデータに基づいて、該当するユーザの希望するサービスを実行する対話型サービス提供システムにおいて用いられる当該シナリオデータの生成又は編集を実行するシナリオ生成編集方法であって、
     前記シナリオデータを管理する管理者の指示を受け付け、
     前記受け付けた管理者の指示に基づいて、前記シナリオデータを構築するための予め定められた処理を規定するシナリオ構成データを組み合わせて、前記シナリオデータを生成又は編集し、
     前記シナリオデータを生成又は編集する際に、前記受け付けた管理者の指示に基づいて、(A)複数の前記シナリオ構成データをオブジェクトとしてオブジェクト空間内に配置し、かつ、(B)配置されている2以上のシナリオ構成データにおける接続及び切断を制御し、
     前記オブジェクト空間内に配置された2以上の前記シナリオ構成データが接続された場合に、当該接続されたシナリオ構成データから構成されるシナリオ構成データ群の一体的な処理が少なくとも部分的なシナリオとして正常動作可能か正常動作不能かを判定する判定処理を実行し、
     前記配置されたシナリオ構成データを含む前記オブジェクト空間を画像化するとともに、前記判定処理の結果を表示手段に表示させる表示制御処理を実行することを特徴とするシナリオ生成編集方法。
PCT/JP2019/051643 2018-12-31 2019-12-31 対話型サービス提供システム、対話型サービス提供方法、シナリオ生成編集システム及びシナリオ生成編集方法 WO2020141611A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US17/420,049 US11822905B2 (en) 2018-12-31 2019-12-31 Interactive service providing system, interactive service providing method, scenario generation and editing system, and scenario generation and editing method

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2018-248814 2018-12-31
JP2018248814A JP6579637B1 (ja) 2018-12-31 2018-12-31 対話型サービス提供システム、シナリオ生成編集システム及びプログラム

Publications (1)

Publication Number Publication Date
WO2020141611A1 true WO2020141611A1 (ja) 2020-07-09

Family

ID=68053644

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2019/051643 WO2020141611A1 (ja) 2018-12-31 2019-12-31 対話型サービス提供システム、対話型サービス提供方法、シナリオ生成編集システム及びシナリオ生成編集方法

Country Status (3)

Country Link
US (1) US11822905B2 (ja)
JP (1) JP6579637B1 (ja)
WO (1) WO2020141611A1 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7370936B2 (ja) * 2020-06-25 2023-10-30 株式会社三共 遊技機
JP7370937B2 (ja) * 2020-06-25 2023-10-30 株式会社三共 遊技機

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1069379A (ja) * 1996-08-28 1998-03-10 Yamatake Honeywell Co Ltd 図的プログラミング方法
JP2018032330A (ja) * 2016-08-26 2018-03-01 株式会社アドバンスト・メディア 情報処理システム、情報処理装置、サーバ、情報処理方法及びプログラム
JP2018195298A (ja) * 2017-05-12 2018-12-06 富士通株式会社 対話シナリオの表示制御プログラム、対話シナリオの表示制御方法および情報処理装置

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08115207A (ja) * 1994-10-14 1996-05-07 Hitachi Ltd プログラム合成方法
JP2000089944A (ja) * 1998-07-15 2000-03-31 Hitachi Software Eng Co Ltd 接続ガイドマ―カ表示方法およびシステム、記録媒体
US20180129484A1 (en) * 2016-11-04 2018-05-10 Microsoft Technology Licensing, Llc Conversational user interface agent development environment

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1069379A (ja) * 1996-08-28 1998-03-10 Yamatake Honeywell Co Ltd 図的プログラミング方法
JP2018032330A (ja) * 2016-08-26 2018-03-01 株式会社アドバンスト・メディア 情報処理システム、情報処理装置、サーバ、情報処理方法及びプログラム
JP2018195298A (ja) * 2017-05-12 2018-12-06 富士通株式会社 対話シナリオの表示制御プログラム、対話シナリオの表示制御方法および情報処理装置

Also Published As

Publication number Publication date
JP6579637B1 (ja) 2019-09-25
US11822905B2 (en) 2023-11-21
JP2020109558A (ja) 2020-07-16
US20220083317A1 (en) 2022-03-17

Similar Documents

Publication Publication Date Title
AU2016267690B2 (en) Flow designer for contact centers
US9087177B2 (en) Method, computer and program for making out seat layout
WO2002077784A1 (en) Method and computer system for executing functions for objects based on the movement of an input device
AU2002216117A1 (en) Method and computer system for executing functions for objects based on the movement of an input device
US20180107279A1 (en) Applications, systems, and methods for facilitating emotional gesture-based communications
EP2068542B1 (en) Method and system for providing a user interface to a call center agent which guides him through the conversation with a caller
WO2014002812A1 (ja) 端末装置及びアノテーション方法並びにコンピュータシステム及びコンピュータプログラム
WO2020141611A1 (ja) 対話型サービス提供システム、対話型サービス提供方法、シナリオ生成編集システム及びシナリオ生成編集方法
CN110300966A (zh) 增强的数据透视表的创建和交互
US11895063B2 (en) Interactive input support system and interactive input support method
JP2020109612A (ja) 対話型サービス提供システム、シナリオ生成編集システム及びプログラム
EP3304879B1 (en) Flow designer for contact centers
JP2006277290A (ja) 操作支援装置及び方法、並びに業務ナビゲーションシステム
JP4148721B2 (ja) 会議支援用共用端末、情報処理プログラム、記憶媒体、情報処理方法及び会議支援システム
US11782909B2 (en) Computer system and method for bulk associating attribute values with data records
CN109313662A (zh) 到本机应用体验中的对网页的解构和呈现
JP2003111042A (ja) 会議支援装置、情報処理装置、電子会議システムおよびプログラム
JP4691895B2 (ja) データ処理システム設計装置及びそのためのコンピュータプログラム
JP2012118933A (ja) 画面設計評価装置、画面設計評価方法及びプログラム
Steger et al. Improved user experience in a VR based design review
Krekhov et al. MorphableUI: a hypergraph-based approach to distributed multimodal interaction for rapid prototyping and changing environments
JP2003281066A (ja) 会議支援装置、プログラム及び記憶媒体
JP7116671B2 (ja) システム開発支援装置およびシステム開発支援方法
JP2022014405A (ja) 経営支援システム、経営支援装置、および経営支援方法
Fleck et al. Exploring Tele-Assistance for Cyber-Physical Systems with MAUI

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 19907457

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 19907457

Country of ref document: EP

Kind code of ref document: A1