JP7544246B2 - 表示制御装置、表示制御方法および表示制御プログラム - Google Patents

表示制御装置、表示制御方法および表示制御プログラム Download PDF

Info

Publication number
JP7544246B2
JP7544246B2 JP2023501732A JP2023501732A JP7544246B2 JP 7544246 B2 JP7544246 B2 JP 7544246B2 JP 2023501732 A JP2023501732 A JP 2023501732A JP 2023501732 A JP2023501732 A JP 2023501732A JP 7544246 B2 JP7544246 B2 JP 7544246B2
Authority
JP
Japan
Prior art keywords
dialogue
information
gui
unit
internal state
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
JP2023501732A
Other languages
English (en)
Other versions
JPWO2022180704A1 (ja
Inventor
真実 小宮山
明 片岡
英毅 小矢
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NTT Inc
NTT Inc USA
Original Assignee
Nippon Telegraph and Telephone Corp
NTT Inc USA
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 Nippon Telegraph and Telephone Corp, NTT Inc USA filed Critical Nippon Telegraph and Telephone Corp
Publication of JPWO2022180704A1 publication Critical patent/JPWO2022180704A1/ja
Application granted granted Critical
Publication of JP7544246B2 publication Critical patent/JP7544246B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00—Input 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/14—Digital output to display device ; Cooperation and interconnection of the display device with other functional units

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • User Interface Of Digital Computer (AREA)
  • Digital Computer Display Output (AREA)

Description

本発明は、表示制御装置、表示制御方法および表示制御プログラムに関する。
従来、チャットUI(User Interface)を用いた対話システムにおいて、対話の遷移状態(適宜、「コンテキスト」)を管理し、応答内容を制御するシステム構成がある。さらに、対話システムを介して、別のシステムを操作する場合には、操作実行するための情報を取得(スロット充足)、管理する必要があり、対話システムの意図推定、スロット充足のための技術もある。
一方、対話システムから代行操作を可能とする「ChatOps」は、主にソフトウェア開発におけるソースコードの版数管理作業等の作業をチャットボットへコマンド入力することにより自動化する。ここでは、チャットボット自体がアプリケーションを自動実行するためのプログラムおよびインターフェースを持つ(例えば、非特許文献1参照)。
Storey M and Zagalsky、 "Disrupting Developer Productivity One Bot at a Time"、 2016
しかしながら、上述した従来技術では、チャットUIを用いた対話システムにおいて、代行操作を容易に行うことができなかった。なぜならば、従来技術では、以下で説明する課題があるためである。
第1に、対話システムがPC(Personal Computer)作業の代行操作を行う場合、対話システムが代行操作を行うための情報を内部に保持することになるが、ユーザがそれらの情報を確認や修正したいケースが出てくる。例えば、自動操作実行の是非をユーザが判断したい場合や、後から確定した情報があり、対話システム上のデータが古く修正したい場合等に対応できないという課題がある。
第2に、チャットUIにより、対話システムが保持する情報をテキストベースで提示することは可能だが、対話形式でユーザに提示することに不向きな場合がある。例えば、リスト形式のデータの確認や編集を行う際、一覧性に欠ける、また、データ値を修正するたびに対話を繰り返す必要があり、煩わしい等である。このため、ユーザへの情報提示や入力受付を全てチャットUIで行うのは非効率になるという課題がある。
上記の第2の課題のように、チャットUIで全てのユーザ操作を行うことが困難な場合、チャットUIとは別の専用画面を用意し、ユーザ操作を行ってもらうことが対策として考えられる。例えば、運送会社の再配達受付では、まず、チャットUIによりユーザに通知し、ユーザに専用画面にリンクさせ、必要な情報を入力させ、必要があれば、入力された情報を対話システム側に反映する。このように、チャットUIとは別に専用画面を用意することで、ユーザ入力に関する課題(一覧性、効率性の向上)は解決される。
しかしながら、システムを構築するという観点においては、対話システムを介して代行操作を行う用途ごとに専用画面が必要となる。このため、専用画面の開発コストがかさむため、多用途な対話システムを目指す上でネックになる。また、対話シナリオに合わせて専用画面も整備が必要であり、運用コストも増加する。
上述した課題を解決し、目的を達成するために、本発明に係る表示制御装置は、対話ごとの発話テキストと遷移条件リストとを含む対話シナリオ情報を読み込む読込部と、前記遷移条件リストに基づいて、現在遷移している対話に関する情報を取得する取得部と、前記現在遷移している対話に関する情報に基づいて、前記遷移している対話を特定する特定部と、前記現在遷移している対話に対応する前記対話シナリオ情報を受信する受信部と、前記受信部によって受信された前記対話シナリオ情報に基づいて、表示するGUI(Graphical User Interface)の情報を生成する生成部と、前記生成部によって生成された前記表示するGUIの情報に基づいて、対話プログラムの内部状態を表わすGUIを表示する表示部とを備えることを特徴とする。
また、本発明に係る表示制御方法は、表示制御装置によって実行される表示制御方法であって、対話ごとの発話テキストと遷移条件リストとを含む対話シナリオ情報を読み込む読込工程と、前記遷移条件リストに基づいて、現在遷移している対話に関する情報を取得する取得工程と、前記現在遷移している対話に関する情報に基づいて、前記遷移している対話を特定する特定工程と、前記現在遷移している対話に対応する前記対話シナリオ情報を受信する受信工程と、前記受信工程によって受信された前記対話シナリオ情報に基づいて、表示するGUIの情報を生成する生成工程と、前記生成工程によって生成された前記表示するGUIの情報に基づいて、対話プログラムの内部状態を表わすGUIを表示する表示工程とを含むことを特徴とする。
また、本発明に係る表示制御プログラムは、対話ごとの発話テキストと遷移条件リストとを含む対話シナリオ情報を読み込む読込ステップと、前記遷移条件リストに基づいて、現在遷移している対話に関する情報を取得する取得ステップと、前記現在遷移している対話に関する情報に基づいて、前記遷移している対話を特定する特定ステップと、前記現在遷移している対話に対応する前記対話シナリオ情報を受信する受信ステップと、前記受信ステップによって受信された前記対話シナリオ情報に基づいて、表示するGUIの情報を生成する生成ステップと、前記生成ステップによって生成された前記表示するGUIの情報に基づいて、対話プログラムの内部状態を表わすGUIを表示する表示ステップとをコンピュータに実行させることを特徴とする。
本発明では、チャットUIを用いた対話システムにおいて、代行操作を容易に行うことができる。
図1は、第1の実施形態に係る表示制御システムの構成例を示す図である。 図2は、第1の実施形態に係る表示制御装置の構成例を示すブロック図である。 図3は、第1の実施形態に係る対話シナリオ作成1の一例を示す図である。 図4は、第1の実施形態に係る対話シナリオ作成2の一例を示す図である。 図5は、第1の実施形態に係る対話シナリオ情報の一例を示す図である。 図6は、第1の実施形態に係る業務イメージの一例を示す図である。 図7は、第1の実施形態に係る各種データ設定1の一例を示す図である。 図8は、第1の実施形態に係る各種データ設定2の一例を示す図である。 図9は、第1の実施形態に係る表示制御処理1-1の一例を示す図である。 図10は、第1の実施形態に係る表示制御処理1-2の一例を示す図である。 図11は、第1の実施形態に係る表示制御処理1-3の一例を示す図である。 図12は、第1の実施形態に係る表示制御処理1-4の一例を示す図である。 図13は、第1の実施形態に係るGUI生成処理1-1の一例を示す図である。 図14は、第1の実施形態に係るGUI生成処理1-2の一例を示す図である。 図15は、第1の実施形態に係る表示制御処理2-1の一例を示す図である。 図16は、第1の実施形態に係る表示制御処理2-2の一例を示す図である。 図17は、第1の実施形態に係る表示制御処理3の一例を示す図である。 図18は、第1の実施形態に係るGUI制御処理2の一例を示す図である。 図19は、第1の実施形態に係る内部状態ボード制御処理の流れの一例を示すフローチャートである。 図20は、第1の実施形態に係るGUI制御処理の流れの一例を示すフローチャートである。 図21は、プログラムを実行するコンピュータを示す図である。
以下に、本発明に係る表示制御装置、表示制御方法および表示制御プログラムの実施形態を図面に基づいて詳細に説明する。なお、本発明は、以下に説明する実施形態により限定されるものではない。
〔第1の実施形態〕
以下に、第1の実施形態(適宜、本実施形態)に係る表示制御システムの構成、表示制御装置の構成、対話シナリオ等の各種設定処理、表示制御処理およびGUI生成処理、内部状態ボード制御処理の流れ、GUI制御処理の流れを順に説明し、最後に本実施形態の効果を説明する。
[表示制御システムの構成]
図1を用いて、本実施形態に係る表示制御システム(適宜、本システム)100の構成を詳細に説明する。図1は、第1の実施形態に係る表示制御システムの構成例を示す図である。本システム100は、ユーザ20、表示制御装置10(図示せず)の処理に関与するチャットUI30、対話プログラム40、対話プログラムの内部状態を表わすGUIである内部状態ボード50、対話シナリオ情報記憶部14aを有する。ここで、ユーザ20と、チャットUI30、対話プログラム40、内部状態ボード50に関与する表示制御装置10と、対話シナリオ情報記憶部14aとは、図示しない所定の通信網を介して、有線または無線により通信可能に接続される。なお、図1に示した表示制御システム100には、複数台の表示制御装置10や、複数のユーザ20が含まれてもよい。
(基本的な表示制御処理)
まず、図1(1)~(4)を用いて、基本的な表示制御処理について説明する。ユーザ20は、表示制御装置10の対話システムで用いるチャットUI30に対して、テキスト入力等の操作を行う(図1(1)参照)。チャットUI30に入力された情報は、情報流通され、チャットボット(適宜、「ボット」)等の対話プログラム40に送信される(図1(2)参照)。一方、対話プログラム40からチャットUI30に対して対話応答が行われ(図1(3)参照)、チャットUI30からユーザ20に対して、対話内容が表示される(図1(4)参照)。なお、対話プログラム40の処理に必要な対話シナリオは、対話シナリオ情報記憶部14aから読み込まれる。
(内部状態ボードを用いた表示制御処理)
次に、図1(5)~(8)を用いて、内部状態ボード50を用いた表示制御処理について説明する。ユーザ20は、チャットUI30とともに表示された内部状態ボード50に対して、テキスト入力等の操作を行う(図1(5)参照)。このとき、内部状態ボード50は、対話プログラム40で現在遷移している対話に対応する内部状態ボードとして表示される。
ここで、対話プログラムの内部状態とは、少なくとも対話の遷移状態と対話システムの機能を実行するために必要なデータ値であって、内部状態記憶部14bに記憶される情報である。例えば、内部状態とは、対話の履歴や進捗状況等のフローに関わる情報の他、代行操作等の各種業務の操作のために必要なデータ値全般であるが、特に限定されない。
図1では、対話プログラム40の「対話プログラムの内部状態フロー(イメージ)」における「現在位置」と示されるノードが、現在遷移している対話に対応する。また、上記の「対話プログラムの内部状態フロー(イメージ)」における「代行操作を行うノード」と示されるノードは、他システムへの代行操作を行うことのできる対話を表わす。なお、代行操作等の業務イメージについては、(業務イメージ)で後述する。
上記のユーザ操作によって、内部状態ボード50の内容が変更された場合や、追加された場合は、内部状態記憶部14b(図示せず)に記憶された内部状態が更新される(図1(6)参照)。また、上記のユーザ操作によって、対話の遷移等が起こり、内部状態の変更が起こった場合は、変更後の内部状態や対話シナリオをもとにGUIが生成される(図1(7)参照)。そして、ユーザ20に対して、変更後の内部状態を示した内部状態ボード50が表示される(図1(8)参照)。
また、内部状態ボード50は、対話プログラムの内部状態を提示するためのGUIであるが、UIやウィンドウサイズは可変であり、対話のコンテキスト(遷移状態)、もしくは端末上でのユーザ操作(例:別システムのボタン押下等)で表示内容が切り替わる。さらに、内部状態ボード50は、初期状態では空白であったり、透明であったり、サイズ0であってもよい。一方、チャットUI30は、対話プログラム(ボット)にアクセスするためのUIであり、内部状態ボード50のウィンドウと重複するように表示されてもよいし、独立した構成で表示されてもよい。
本実施形態に係る表示制御システム100では、チャットUI30とは別に、対話プログラムの内部状態を表示および編集するための画面(内部状態ボード)50を有し、現在の対話遷移状態と対話シナリオもしくは対話シナリオに紐づけられたデータをもとに内部状態ボード50のGUIの表示を制御する。このため、ユーザ20が対話プログラムの内部状態を理解、編集することを容易にする。つまり、ユーザ20にチャットボット40内部の状態を提示し、ユーザ20に代行操作の実行是非を判断しやすくし、また、チャットボット40が代行操作を実行する際に用いる情報(投入データ等)を確認、修正しやすくする。さらに、対話シナリオを生成すれば内部状態ボードのGUIが自動的に生成されるため、専用画面を都度作成する必要がない。なお、対話シナリオについては、[対話シナリオ等の各種設定処理]で後述する。
[表示制御装置の構成]
図2を用いて、本実施形態に係る表示制御装置10の構成を詳細に説明する。図2は、本実施形態に係る表示制御装置の構成例を示すブロック図である。表示制御装置10は、入力部11、出力部12、通信部13、記憶部14および制御部15を有する。
入力部11は、当該表示制御装置10への各種情報の入力を司る。入力部11は、例えば、マウスやキーボード等であり、当該表示制御装置10への設定情報等の入力を受け付ける。また、出力部12は、当該表示制御装置10からの各種情報の出力を司る。出力部12は、例えば、ディスプレイ等であり、当該表示制御装置10に記憶された設定情報等を出力する。
通信部13は、他の装置との間でのデータ通信を司る。例えば、通信部13は、各通信装置との間でデータ通信を行う。また、通信部13は、図示しないオペレータの端末との間でデータ通信を行うことができる。
記憶部14は、制御部15が動作する際に参照する各種情報や、制御部15が動作した際に取得した各種情報を記憶する。記憶部14は、対話シナリオ情報記憶部14aおよび内部状態記憶部14bを有する。ここで、記憶部14は、例えば、RAM(Random Access Memory)、フラッシュメモリ等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置等である。なお、図2の例では、記憶部14は、表示制御装置10の内部に設置されているが、表示制御装置10の外部に設置されてもよいし、複数の記憶部が設置されていてもよい。
対話シナリオ記憶部14aは、対話シナリオ情報、表示内容設定情報およびGUI構成情報等を記憶する。例えば、対話シナリオ記憶部14aは、対話シナリオ情報として、ノードID(identification)、ノード名、ノードタイプ、発話テキスト、遷移条件リスト、ボード表示制御等のノードの基本情報や、代行操作のための設定等を記憶する。また、対話シナリオ記憶部14aは、表示内容設定情報として、表示リストやGUI構成リスト等を記憶する。また、対話シナリオ記憶部14aは、GUI構成情報として、HTML(Hypertext Markup Language)等のGUIを表示するための情報等を記憶する。内部状態記憶部14bは、対話の遷移状態、対話システムの機能を実行するために必要なデータ値等を記憶する。
制御部15は、当該表示制御装置10全体の制御を司る。制御部15は、内部状態ボード制御部151として、読込部151a、検知部151b、取得部151c、特定部151d、設定部151eおよび反映部151f、GUI制御部152として、受信部152a、生成部152bおよび表示部152cを有する。ここで、制御部15は、例えば、CPU(Central Processing Unit)やMPU(Micro Processing Unit)等の電子回路やASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)等の集積回路である。
読込部151aは、対話ごとの発話テキストと遷移条件リストとを含む対話シナリオ情報を読み込む。例えば、読込部151aは、ノードID、ノード名、ノードタイプ、発話テキスト、遷移条件リスト、ボード表示制御、代行操作のための設定を含む対話シナリオ情報を読み込む。また、読込部151aは、キー情報を指定する表示リストとGUI構成情報を指定するGUI構成リストとを含む表示内容設定情報を読み込む。さらに、読込部151aは、GUI構成情報を読み込む。例えば、読込部151aは、GUI構成情報として、HTML等のGUIを表示するための情報を読み込む。
検知部151bは、対話を行うユーザの操作を検知する。例えば、検知部151bは、対話を行うユーザ20の端末における内部状態ボード50上でのテキストデータの入力処理や更新処理を検知する。また、検知部151bは、対話を行うユーザ20の端末におけるチャットUI30や業務システム等の他アプリケーションに対するテキストデータの入力処理やクリック等のユーザ操作を検知してもよい。
取得部151cは、遷移条件リストに基づいて、現在遷移している対話に関する情報を取得する。また、取得部151cは、遷移条件リストおよびユーザの操作に基づいて、現在遷移している対話に関する情報を取得する。例えば、取得部151cは、現在遷移している対話に関する情報として、遷移条件リストおよびユーザの操作の履歴を取得する。さらに、取得部151cは、現在遷移している対話に関する情報として、特定部151dによって特定された現在遷移している対話に対応するノードID、ノード名、ノードタイプ、ボード表示制御を取得する。
特定部151dは、現在遷移している対話に関する情報に基づいて、現在遷移している対話を特定する。例えば、特定部151dは、遷移条件リストおよびユーザの操作の履歴に基づいて、遷移している対話を特定する。また、特定部151dは、現在遷移している対話に対応するノードID、ノード名、ノードタイプ、ボード表示制御を特定する。さらに、特定部151dは、特定した現在遷移している対話に対応するノードID、ノード名、ノードタイプ、ボード表示制御を取得部151cに送信する。
設定部151eは、取得部151cによって取得された現在遷移している対話に関する情報に基づいて、対話プログラムの内部状態を表わすGUIの表示、または非表示を設定する。例えば、設定部151eは、現在遷移している対話に対応するボード表示制御が「表示」である場合には、対話プログラムの内部状態を表わすGUIの表示を設定する。一方、設定部151eは、現在遷移している対話に対応するボード表示制御が「非表示」である場合には、対話プログラムの内部状態を表わすGUIの非表示を設定する。さらに、設定部151eは、現在遷移している対話に対応するノードID、ノード名、ノードタイプごとに、対話プログラムの内部状態を表わすGUIのウィンドウサイズや色彩等の表示方式を設定してもよい。
反映部151fは、対話プログラムの内部状態を表わすGUIの変更が入力された場合には、対話プログラムの内部状態に対して、入力された変更を反映する。例えば、反映部151fは、検知部151bによって内部状態ボード50上でのテキストデータの入力処理が検知された場合には、入力処理されたテキストデータを内部状態記憶部14bに格納し、内部状態の変更を反映する。
受信部152aは、現在遷移している対話に対応する対話シナリオ情報を受信する。また、受信部152aは、現在遷移している対話に対応する表示内容設定情報を受信する。さらに、受信部152aは、現在遷移している対話に対応するGUI構成情報を受信する。
生成部152bは、受信部152aによって受信された対話シナリオ情報に基づいて、表示するGUIの情報(GUI描画情報)を生成する。例えば、生成部152bは、所定のキー情報に合致する情報を用いて、表示するGUIの情報を生成する。また、生成部152bは、表示内容設定情報に含まれる表示リストで指定された情報をキーに、対話シナリオ情報から該当する情報を抽出し、抽出した情報のキー名をラベル、データ値をテキストボックスとして表示するGUIの情報を生成する。さらに、生成部152bは、受信部152aによって受信されたGUI構成情報に基づいて、表示するGUIの情報を生成する。例えば、生成部152bは、読込部151aによって読み込まれた表示内容設定情報にGUI構成リストが含まれている場合には、GUI構成リストが指定するGUI構成情報に基づいて、表示するGUIの情報を生成する。
表示部152cは、生成部152bによって生成された表示するGUIの情報に基づいて、対話プログラムの内部状態を表わすGUI(内部状態ボード)50を表示する。例えば、表示部152cは、生成部152bによって生成された情報のキー名をラベル、データ値をテキストボックスとして表示する。また、表示部152cは、上記のデータ値がリストであれば羅列した配置に表示する。さらに、表示部152cは、反映部151fによって内部状態記憶部14bに反映するボタンを内部状態ボード50の最下部に表示してもよい。
[対話シナリオ等の各種設定処理]
図3~図8を用いて、本実施形態に係る対話シナリオ等の各種設定処理を詳細に説明する。図3、図4は、第1の実施形態に係る対話シナリオ作成の一例を示す図である。図5は、第1の実施形態に係る対話シナリオ情報の一例を示す図である。図6は、第1の実施形態に係る業務イメージの一例を示す図である。図7、図8は、第1の実施形態に係る各種データ設定の一例を示す図である。
(対話シナリオ作成1)
図3を用いて、本実施形態に係る対話シナリオ作成1を詳細に説明する。図3では、対話プログラムの内部状態フローのイメージが示されており、ノード(a)~(v)が各対話等の処理に対応する。なお、末端のノード(f)、(j)、(n)、(q)、(u)、(v)は、「スタートに戻るノード」を表わし、代行操作を実行した場合には、このノードに遷移して最初の対話に戻る。
各ノードの情報を設定することにより、対話シナリオ(対話シナリオ情報)が構成される。また、各ノードは「発話テキスト」と「遷移条件リスト」を持ち、対話シナリオは、指定した遷移条件に従い遷移する。
図3のノード(a)を用いて、ノードの基本情報および遷移条件の具体例について説明する。図3のノード(a)の基本情報では、“ノードid”として“node0000”、“ノード名”として“スタート”、“ノードタイプ”として“normal”、“発話テキスト”として“Hello!”、“遷移条件リスト”として[{“(遷移条件のid)”,“(ノード1-1のid)”},{“(遷移条件のid)”,“(ノード2-1のid)”},{“(遷移条件のid)”,“(ノード3-1)のid”}]、“ボード表示制御”として“表示”等がJson(JavaScript(登録商標) Object Notation)を用いて表現されている(図3(1)参照)。
ここで、“ノードタイプ”は、“normal”は通常ノード(通常処理)であり、“action”は代行操作ノード(代行操作処理)である。また、“遷移条件リスト”の“(ノード1-1のid)”、“(ノード2-1のid)”、“(ノード3-1)のid”は、宛先ノードである。また、“ボード表示制御”は、“表示”が内部状態ボード表示であり、“非表示”が内部状態ボード非表示であり、ノードごとに設定してもよい。
また、図3のノード(a)の遷移条件では、“遷移条件id”として”condition1-1”、“遷移条件名”として“○○システムを開き、業務Aを開始”、“遷移条件”として、ユーザ発話=“業務Aを開始”またはURL=“xxx”のページを開く等がJsonを用いて表現されている(図3(2)参照)。なお、対話シナリオの作成は、フローを描画できるようなGUIで作成してもよいし、上記のようなJsonベースでの記載でもよく、特に限定されない。
(対話シナリオ作成2)
図4を用いて、本実施形態に係る対話シナリオ作成2を詳細に説明する。対話シナリオ作成2は、各ノードに「代行操作」および「代行操作に必要なデータ取得」のための設定情報を持たせることができる設定である。図4では、各ノードの設定例(1)~(5)がJsonを用いて表現されている。
データ取得のための設定例として、ノードの情報の末尾に、“データ取得リスト”として{“ユーザID”,“(データ取得先のid)”}、{“ユーザ名”,“(データ取得先のid)”}、{“顧客会社名”,“(データ取得先のid)”}、{“顧客担当者名”,“(データ取得先のid)”}等を記載する(図4(1)参照)。また、データ取得先の設定例として、“データ取得先id”として“UI123456”、“データ取得先情報”として“(UIを特定するための情報)”を記載する(図4(2)参照)。ここで、(UIを特定するための情報)とは、例えば、セレクタ情報(HTML)や画面配置順(インデックス番号)等で指定される。なお、上記のデータ取得先の設定例は、音声操作では辞書データに相当する。また、図4では、図3で説明したノードの基本情報と分けて記載しているが、同じJsonファイル中で記載してもよい。
また、データ取得のための設定例として、ノードの情報の末尾に、“データ取得リスト”として{“日時”,“(データ取得先のid)”}、{“場所”,“(データ取得先のid)”}、{“対応詳細”,“(データ取得先のid)”}、{“備考”,“(データ取得先のid)”}等を記載する(図4(3)参照)。
一方、代行操作のための設定例として、ノードの情報の末尾に、“代行操作id”として“(代行操作id)”、“代行操作名”として“(代行操作の説明)”、“利用データリスト”として{“ユーザID”:“(ユーザIDの値)”}、{“ユーザ名”:“(ユーザ名の値)”}、…、{“対応詳細”:“(対応詳細の値)”}、{“備考”:“(備考の値)”}が記載されている(図4(4)参照)。なお、代行操作を行うノードは、ノードタイプが“action”のノードである。
また、代行操作実行情報の例として、“代行操作id”として“action123456”、“代行操作内容として“(代行操作のための機能実行プログラム)”が記載されている(図4(5)参照)。ここで、(代行操作のための機能実行プログラム)とは、例えば、スクリプト言語そのもの(例:JavaScript)、RPA(Robotic Process Automation)アプリ実行のための情報(例:exeのパス、読み込むシナリオのパス)、対話システムが内包する代行操作実行系を動作させるための専用の命令セットであるが、特に限定されない。
(対話シナリオ情報)
図5を用いて、本実施形態に係る対話シナリオ情報のイメージを詳細に説明する。図5では、(1)ノードごとの情報、(2)ノードの基本情報、(3)データ取得のための設定、(4)代行操作のための設定、(5)データ取得先の情報、(6)代行操作実行情報の例がJsonを用いて表現されている。図5で示す構成の1ファイルの設定で1対話シナリオに対応するが、ファイル構成は特に限定されない。また、記載の形式はJsonに限られず、情報が識別できれば任意の形式で記載してもよい。
(業務イメージ)
図6を用いて、本実施形態に係る業務イメージを詳細に説明する。図6では、対話プログラムの内部状態フローのイメージを用いて、具体的な業務イメージと最終的な代行操作を示している。なお、図6のフローでは、代行操作を実行した場合には、「スタートに戻るノード」に遷移して最初の対話に戻る。
業務イメージ1が「システムAへ顧客情報の登録」であった場合、代行操作として「システムBへデータ転記」が実行される。業務イメージ2が「システムBへ案件情報の登録」であった場合、業務イメージ2-1では、「新規登録」を経て、代行操作として「進捗管理表作成」が実行され、業務イメージ2-2では、「案件情報更新」を経て、代行操作として「進捗管理表更新」が実行され、業務イメージ2-3では、「発注情報登録」を経て、代行操作として「見積書作成」が実行される。業務イメージ3が「システムCへ物品の発注処理」であった場合、代行操作として「メール送付」が実行される。
(各種データ設定1)
図7を用いて、本実施形態に係る各種データ設定1を詳細に説明する。各種データの設定1は、各設定内容は専用エディタ(GUI)等により設定する、つまりローコードで設定することを可能とする。なお、各種データ設定1は、ノードのプロパティ設定を行うイメージで、各種データの変更等を実行することができる。
まず、例えば、専用エディタ等を利用してデータ取得先を指定するGUIから、ノードの詳細設定情報を出力する(図7(1)参照)。このとき、データ取得先を指定する情報は、HTMLのセレクタ情報、画面配置のインデックス番号等であるが、特に限定されない。次に、出力された表示画面に各種情報を入力する(図7(2)参照)。この結果、図7(3)で示すデータ取得のための設定例や図7(4)で示すデータ取得先の設定例を設定することができる。最後に、出力された表示画面の設定を完了することによって、ノードへの各種設定が完了する(図7(5)参照)。なお、上記の設定処理はユーザの手入力や他アプリによって実行してもよい。
(各種データ設定2)
図8を用いて、本実施形態に係る各種データ設定2を詳細に説明する。各種データ設定2は、代行操作の情報を持つノード(ノードタイプ:action)の場合にも、ローコードで設定することを可能とする。
まず、例えば、専用エディタ等を利用して、ノードの詳細設定情報を出力する(図8(1)参照)。ここで出力された表示画面に各種情報を入力する(図8(2)参照)。なお、ここでは、各種情報の入力として、スクリプト言語を用いているが、特に限定されない。また、対象となるアプリ指定に関する情報を入力してもよい。この結果、図8(3)で示す代行操作のための設定例や図8(4)で示す代行操作実行情報の例を設定することができる。最後に、出力された表示画面の設定を完了することによって、ノードへの各種設定が完了する(図8(5)参照)。一方、各種情報の入力は、ローカルアプリ指定によって実行してもよい(図8(6)参照)。なお、上記の設定処理はユーザの手入力によって実行してもよい。
[表示制御処理1]
図9~図12を用いて、本実施形態に係る表示制御処理1を詳細に説明する。図9~図12は、第1の実施形態に係る表示制御処理1の一例を示す図である。
(表示制御処理1-1)
図9を用いて、本実施形態に係る表示制御処理1-1を詳細に説明する。表示制御処理1-1は、対話シナリオの内部状態と内部状態ボード50上のGUI表示が連動し、現在の遷移しているノードの情報から、内部状態ボードで表示するGUIが決定される処理である。なお、表示制御処理1-1では、ノードとして“ノードタイプ”=“normal”について説明する。
まず、ユーザ20は、チャットUI30に対して、入力操作等を実行する(図9(1)参照)。また、ユーザ20は、業務システムに対して、入力操作等を実行してもよい(図9(2)参照)。次に、ユーザ20の操作により、対話システムの遷移条件が満たされたときは、対話プログラムの内部状態が遷移する(図9(3)参照)。このとき、現在遷移しているノードの図9(4)に示すノードの基本情報に含まれる発話テキスト等の情報をチャットUI30に対応させる(図9(5)参照)。そして、発話テキストに基づき、チャットUI30が発話を行う(図9(6)参照)。最後に、ユーザ20の操作に基づく遷移状態が反映され、内部状態ボード50の表示が更新される(図9(7)参照)。
(表示制御処理1-2)
図10を用いて、本実施形態に係る表示制御処理1-2を詳細に説明する。表示制御処理1-2は、内部状態ボード50で表示されたデータ値を書き換える処理であり、内部状態ボード50上でユーザが書き換えた値、もしくは内部状態として未取得のデータを内部状態記憶部14bへ反映することができる。なお、内部状態ボード50の表示更新時は、初期値として内部状態記憶部14bからデータ値を取得し表示する。また、表示制御処理1-2では、ノードとして“ノードタイプ”=“normal”について説明する。
まず、ユーザ20は、内部状態ボード50に対して、データ値の修正や未取得だった値を手入力する(図10(1)参照)。次に、ユーザ20は、内部状態ボード50上の適用ボタンを押し、入力を完了する(図10(2)参照)。この結果、ユーザ20によって修正、入力処理されたデータが、内部状態記憶部14bへ反映される(図10(3)参照)。
(表示制御処理1-3)
図11を用いて、本実施形態に係る表示制御処理1-3を詳細に説明する。表示制御処理1-3は、代行操作の情報を持つノード(“ノードタイプ”=“action”)に遷移したときの処理であり、基本的な流れは、表示制御処理1-1で示した“ノードタイプ”=“normal”のときと同様であるが、内部状態ボード50では、代行操作する際の利用データを表示する処理である。
まず、ユーザ20は、チャットUI30に対して、入力操作等を実行する(図11(1)参照)。また、ユーザ20は、業務システムに対して、入力操作等を実行してもよい(図11(2)参照)。次に、ユーザ20の操作により、対話システムの遷移条件が満たされたときは、対話プログラムの内部状態が遷移する(図11(3)参照)。このとき、現在遷移しているノードの図11(4)に示すノードの基本情報に含まれる発話テキスト等の情報に基づき、チャットUI30が発話を行う(図11(5)参照)。最後に、ユーザ20の操作に基づく遷移状態が反映され、内部状態ボード50の表示が更新される(図11(6)参照)。
(表示制御処理1-4)
図12を用いて、本実施形態に係る表示制御処理1-4を詳細に説明する。表示制御処理1-4は、内部状態ボード50で表示されたデータ値を書き換える処理であり、かつ代行操作の情報を持つノード(“ノードタイプ”=“action”)に遷移したときの処理である。基本的な流れは、表示制御処理1-2で示した“ノードタイプ”=“normal”のときと同様であるが、内部状態ボード50では、代行操作する際の利用データを表示する処理である。
まず、ユーザ20は、内部状態ボード50に対して、入力操作や必要であればデータ値の修正等を実行する(図12(1)参照)。また、ユーザ20は、チャットUI30に対して、入力操作等を実行する(図12(2)参照)。このとき、例えば、チャットUI30によって、「進捗管理票を自動実行しますか?」という発話がされていた場合には、「はい」を入力すると、代行操作が実行される(図12(3)参照)。このとき、図12(4)(5)の破線で囲った代行操作に関する情報を制御部15が読み込み、実行する。一方、「いいえ」を入力すると、処理がスタートに戻る。最後に、内部状態が遷移し、スタートに戻る(図12(6)参照)。
[GUI生成処理1]
図13、図14を用いて、本実施形態に係るGUI生成処理1を詳細に説明する。図13、図14は、第1の実施形態に係るGUI生成処理の一例を示す図である。
(GUI生成処理1-1)
図13を用いて、本実施形態に係るGUI生成処理1-1を詳細に説明する。上述の表示制御処理1では、生成部152bに独自のGUI生成ロジックを持つ構成であり、表示制御処理1に係るGUI生成処理1は、ノードの持つ情報(キーバリュー)のうち、表示内容設定情報でキー名を指定すれば独自のGUI生成ロジックにより、内部状態ボードのGUIが表示される。なお、GUI生成処理1-1では、ノードとして“ノードタイプ”=“normal”について説明する。
まず、図13(1)で示すノードの基本情報の例、図13(2)で示すデータ取得のための設定例は、現在遷移しているノードに設定されている情報である。ここで、現在遷移しているノードの持つ情報のうち、表示内容設定情報で指定した情報(キーバリュー)が内部状態ボード50で表示される(図13(3)参照)。このとき、生成部152bは、キー名をラベルで表示し、データ値をテキストボックスで表示し、データ値が配列であれば羅列し、テキストボックスの値は内部状態記憶部14bから取得し、内部状態記憶部14bに反映するボタンをボードの最下部に表示するためのGUI生成ロジックを持つ。また、上記のGUI生成ロジックは、外部ファイルでGUIの紐づけの定義を作成、修正も可能である。
また、上記の情報(キーバリュー)を指定する表示内容設定情報の例を図13(4)で示す。このとき、ノードタイプが“normal”であり、表示リストにはキー名が記載され、該当する情報が表示される。
一方、内部状態等が反映されることにより、内部状態ボードの表示例に示した「案件情報の更新」および「データ取得リスト」には、ノードの情報のうち、図13(1)(2)の破線で囲んだ情報が表示される。また、内部状態ボードの表示例に示した「データ取得リスト」には、データ取得リストのキー名から、内部状態記憶部14bにアクセスすることにより取得されたデータ値が反映される。
(GUI生成処理1-2)
図14を用いて、本実施形態に係るGUI生成処理1-2を詳細に説明する。GUI生成処理1-2は、代行操作の情報を持つノード(“ノードタイプ”=“action”)に遷移したときの処理であり、基本的な流れは、GUI生成処理1-1で示した“ノードタイプ”=“normal”のときと同様であるが、内部状態ボード50では、代行操作する際の利用データを表示する処理である。
まず、図14(1)で示すノードの基本情報の例、図14(2)で示す代行操作のための設定例は、現在遷移しているノードに設定されている情報である。ここで、GUI生成処理1-1と同様に、現在遷移しているノードの持つ情報のうち、表示内容設定情報で指定した情報(キーバリュー)が内部状態ボード50で表示される。
また、上記の情報(キーバリュー)を指定する表示内容設定情報の例を図14(3)で示す。このとき、ノードタイプが“action”であり、表示リストにはキー名が記載され、該当する情報が表示される。
一方、内部状態等が反映されることにより、内部状態ボードの表示例に示した「進捗管理表更新」「利用データリスト」には、ノードの情報のうち、図14(1)(2)の破線で囲んだ情報が表示される。
[表示制御処理2]
図15、図16を用いて、本実施形態に係る表示制御処理2を詳細に説明する。図15、図16は、第1の実施形態に係る表示制御処理2の一例を示す図である。
(表示制御処理2-1)
図15を用いて、本実施形態に係る表示制御処理2-1を詳細に説明する。表示制御処理2-1は、基本的に内部状態ボード50は表示されない処理である。
まず、ユーザ20は、業務システムに対して、入力操作等を実行する(図15(1)参照)。次に、ユーザ20の操作により、対話システムの遷移条件が満たされたときは、対話プログラムの内部状態が遷移する(図15(2)参照)。このとき、現在遷移しているノードの図15(3)に示すノードの基本情報に含まれる発話テキスト等の情報をチャットUI30に対応させる(図15(4)参照)。そして、発話テキストに基づき、チャットUI30が発話を行う(図15(5)参照)。図15(1)~(5)の処理を通じて、遷移したノードの“ボード表示制御”が“非表示”に指定されているため、内部状態ボード50は非表示となる。
(表示制御処理2-2)
図16を用いて、本実施形態に係る表示制御処理2-2を詳細に説明する。表示制御処理2-2は、基本的に内部状態ボード50は表示されない処理(“ボード表示制御”=“非表示”)であるが、内部状態ボード50が必要なノード(例:“ノードタイプ”=“action”)に遷移したときに、内部状態ボードを表示する処理である。
まず、ユーザ20は、チャットUI30に対して、入力操作等を実行する(図16(1)参照)。また、ユーザ20は、業務システムに対して、入力操作等を実行してもよい(図16(2)参照)。次に、ユーザ20の操作により、対話システムの遷移条件が満たされたときは、対話プログラムの内部状態が遷移する(図16(3)参照)。このとき、現在遷移しているノードの図16(4)に示すノードの基本情報に含まれる発話テキスト等の情報をチャットUI30に対応させる(図16(5)参照)。そして、発話テキストに基づき、チャットUI30が発話を行う(図16(6)参照)。最後に、ユーザ20の操作に基づく遷移状態が反映され、内部状態ボード50の表示が開始される(図16(7)参照)。
[表示制御処理3]
図17を用いて、本実施形態に係る表示制御処理3を詳細に説明する。図17は、第1の実施形態に係る表示制御処理3の一例を示す図である。表示制御処理3は、高度なGUIを設定したい場合、GUI構成情報を定義し、読み込むことで任意のGUIを表示する処理である。また、表示制御処理3は、内部状態ボードのGUIから内部状態そのものを書き換えることもできる。なお、上述した表示制御処理1、表示制御処理2と共通する処理については省略する。
表示制御処理3では、対話シナリオからの情報をもとに、内部状態ボード50内部のGUI表示を行う。ここで、表示制御処理3では、フローの情報を解釈しGUI表示との対応付けは、表示させたい内容に応じて、対話システムの実装とは独立して定義してもよい。例えば、表示制御処理3では、対応付けの定義情報を外部ファイルで持ち、それを内部状態ボード制御部151が解釈し、表示することもできる(図17(1)参照)。
また、表示制御処理3では、代行操作の候補として、現在の遷移状態のノードから、ノードタイプ=“action”であるノードを再帰的に検索し、合致したノードの情報を利用する(図17(2)参照)。ここで、図17の内部状態の表示例に示す「案件情報更新」は、現在の遷移状態のノード名を表わす。また、「進捗管理表更新」等は、代行操作名であり、近接するバーやパーセンテージは、計算された利用データリストの充足率を表示したものである。さらに、図17の内部状態の表示例に示す「前のフロー」「次のフロー」の候補は、それぞれ前のフローのノード名、次のフローのノード名を表わす。
また、図17の内部状態の表示例に示す「進む」のボタンを押すことで、フローの遷移状態を移動させ、内部状態を書き換えることもできる(図17(3)参照)。さらに、図17の内部状態の表示例に示す「遷移条件を確認」のボタンを押すことで、遷移条件を読み込んで表示することもできる(図17(4)参照)。
[GUI生成処理2]
図18を用いて、本実施形態に係るGUI生成処理2を詳細に説明する。図18は、第1の実施形態に係るGUI生成処理2の一例を示す図である。GUI生成処理2は、高度なGUIを設定する場合の処理である。なお、上述したGUI生成処理1-1、GUI生成処理1-2と共通する処理については省略する。
まず、内部状態ボード50の表示内容設定情報の例を図18(1)で示す。また、GUI構成情報の例を図18(2)で示す。ここで、表示内容設定情報には、GUI構成リストとして、紐づけされたGUI構成情報のGUI構成IDが記載されている。表示制御装置10の生成部152bは、読込部151aによって読み込まれた表示内容設定情報にGUI構成リストが含まれている場合には、GUI構成リストが指定するGUI構成情報に基づいて、表示するGUIの情報を生成する。
また、図18(2)で示す(GUI構成情報)には、具体的なGUIを設定するための情報が記載される(図18(3)参照)。例えば、内部状態ボード50がWebベースの表示エンジンを持つのであれば、HTMLやJavascript等が記載される。なお、図18(3)では、HTMLの例を示したが、ノード名等が内部状態記憶部14bへのアクセスにより検索され、対応する内部状態ボード50が表示される(図18(4)参照)。
上述した処理は、静的なGUI構成情報(ファイル)をもとにGUIを生成するが、特に限定されない。対話シナリオの傾向(例:分岐数、階層、取得/利用データ数)等を用いて、対話シナリオ情報(Json)のみをもとに推論し、動的にGUI構成情報を生成する等の処理を行い、内部状態ボードのGUIとして表示してもよい。
[内部状態ボード制御処理の流れ]
図19を用いて、本実施形態に係る内部状態ボード制御処理の流れを詳細に説明する。図19は、第1の実施形態に係る内部状態ボード制御処理の流れの一例を示すフローチャートである。
まず、内部状態ボード制御部151の読込部151aは、対話シナリオ情報記憶部14aから対話シナリオ情報、表示内容設定情報を読み込む(ステップS101)。また、読込部151aは、必要があればGUI構成情報を読み込む。次に、検知部151bは、内部状態記憶部14bの監視(変更検知)を開始する(ステップS102)。このとき、検知部151bは、ユーザの操作を検知し、その操作に対応する内部状態の変更を検知する。続いて、内部状態記憶部14bの情報が変更された場合、つまり内部状態の変更が検知された場合(ステップS103:Yes)、取得部151cは、内部状態記憶部14bから、現在遷移しているノードの情報(対話遷移状態)を取得する(ステップS104)。このとき、特定部151dは、現在遷移しているノードを特定する。一方、内部状態記憶部14bの情報が変更されていない場合、つまり内部状態の変更が検知されない場合(ステップS103:No)、ステップS103に移行する。
さらに、内部状態記憶部14bから取得したノードの基本情報より、現在遷移しているノードが“ボード表示制御”=“表示”であった場合(ステップS105:Yes)、設定部151eは、内部状態ボード50のウィンドウを表示し、最前面にする(ステップS107)。一方、現在遷移しているノードが“ボード表示制御”=“表示”でなかった場合(ステップS105:No)、設定部151eは、内部状態ボード50のウィンドウを非表示にする(ステップS106)。
最後に、内部状態ボード50のウィンドウを表示したときは、GUI制御部152によるGUI制御処理を行い、GUIを内部状態ボード50のウィンドウ上に表示し、ステップS103に移行する。一方、内部状態ボード50のウィンドウを非表示にしたときは、GUI制御処理を行わず、ステップS103に移行する。
[GUI制御処理の流れ]
図20を用いて、本実施形態に係るGUI制御処理の流れを詳細に説明する。図20は、第1の実施形態に係るGUI制御処理の流れの一例を示すフローチャートである。
まず、GUI制御部152の受信部152aは、現在遷移しているノードに紐づけられた対話シナリオ情報、表示内容設定情報を受信する。また、受信部152aは、必要があれば、現在遷移しているノードに紐づけられたGUI構成情報を受信する(ステップS201)。このとき、受信部152aは、内部状態ボード制御部151の取得部151cから各種情報を受信してもよいし、対話シナリオ情報記憶部14aから各種情報を受信してもよい。
次に、表示内容設定情報に記載された情報に、GUI構成リストが含まれていない場合(ステップS202:No)、生成部152bは、表示内容設定情報に記載された表示リストで指定された情報をキーに、対話シナリオ情報から該当する情報を抽出し(ステップS203)、抽出した情報のキー名をラベル、データ値をテキストボックスとして表示するGUIの情報(GUI描画情報)を生成し(ステップS204)、内部状態記憶部14bに反映するボタンがボードの最下部に表示されるようGUI描画情報を更新する(ステップS205)。一方、表示内容設定情報に記載された情報に、GUI構成リストが含まれている場合(ステップS202:Yes)、生成部152bは、GUI構成リストに紐づくGUI構成情報をもとに表示するGUIの情報(GUI描画情報)を生成する(ステップS206)。
最後に、表示部152cは、生成部152bによって生成されたGUI描画情報をもとに、内部状態ボードのGUIを表示し(ステップS207)、処理を終了する。このとき、表示部152cは、表示するGUIに対応する情報(キーバリューのバリュー値)が、内部状態記憶部14bに記憶されていれば、その情報を当該GUIのデータ値として反映する。
[第1の実施形態の効果]
第1に、上述した本実施形態に係る表示制御処理では、対話ごとの発話テキストと遷移条件リストとを含む対話シナリオ情報を読み込み、遷移条件リストに基づいて、現在遷移している対話に関する情報を取得し、現在遷移している対話に関する情報に基づいて、遷移している対話を特定し、現在遷移している対話に対応する対話シナリオ情報を受信し、受信した対話シナリオ情報に基づいて、表示するGUIの情報を生成し、生成した表示するGUIの情報に基づいて、対話プログラムの内部状態を表わすGUIを表示する。このため、本処理では、チャットUIを用いた対話システムにおいて、代行操作を容易に行うことができる。
第2に、上述した本実施形態に係る表示制御処理では、対話を行うユーザの操作を検知し、遷移条件リストおよびユーザの操作に基づいて、現在遷移している対話の関する情報を取得する。このため、本処理では、チャットUIを用いた対話システムにおいて、ユーザ操作を検知することにより、代行操作をより容易に行うことができる。
第3に、上述した本実施形態に係る表示制御処理では、対話プログラムの内部状態を表わすGUIの変更が入力された場合には、対話プログラムの内部状態に対して、GUIの変更を反映する。このため、本処理では、チャットUIを用いた対話システムにおいて、ユーザが対話プログラムの内部状態を容易に表示、編集できることにより、代行操作をより容易に行うことができる。
第4に、上述した本実施形態に係る表示制御処理では、取得した現在遷移している対話に関する情報に基づいて、対話プログラムの内部状態を表わすGUIの表示、または非表示を設定する。このため、本処理では、チャットUIを用いた対話システムにおいて、ユーザが対話プログラムの内部状態を効率的に表示、編集できることにより、代行操作をより容易に行うことができる。
第5に、上述した本実施形態に係る表示制御処理では、GUI構成情報を読み込み、現在遷移している対話に対応するGUI構成情報を受信し、受信したGUI構成情報に基づいて、表示するGUIの情報を生成する。このため、本処理では、チャットUIを用いた対話システムにおいて、ユーザが対話プログラムの内部状態を効果的に表示、編集できることにより、代行操作をより容易に行うことができる。
第6に、上述した本実施形態に係る表示制御処理では、所定のキー情報に合致する情報を用いて、表示するGUIの情報を生成する。このため、本処理では、チャットUIを用いた対話システムにおいて、ユーザが対話プログラムの内部状態をより効率的に表示、編集できることにより、代行操作をより容易に行うことができる。
〔システム構成等〕
上記実施形態に係る図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示のごとく構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。さらに、各装置にて行なわれる各処理機能は、その全部または任意の一部が、CPUおよび当該CPUにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
また、上記実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部または一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
〔プログラム〕
また、上記実施形態において説明した表示制御装置10が実行する処理をコンピュータが実行可能な言語で記述したプログラムを作成することもできる。この場合、コンピュータがプログラムを実行することにより、上記実施形態と同様の効果を得ることができる。さらに、かかるプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータに読み込ませて実行することにより上記実施形態と同様の処理を実現してもよい。
図21は、プログラムを実行するコンピュータを示す図である。図21に例示するように、コンピュータ1000は、例えば、メモリ1010と、CPU1020と、ハードディスクドライブインタフェース1030と、ディスクドライブインタフェース1040と、シリアルポートインタフェース1050と、ビデオアダプタ1060と、ネットワークインタフェース1070とを有し、これらの各部はバス1080によって接続される。
メモリ1010は、図21に例示するように、ROM(Read Only Memory)1011及びRAM1012を含む。ROM1011は、例えば、BIOS(Basic Input Output System)等のブートプログラムを記憶する。ハードディスクドライブインタフェース1030は、図21に例示するように、ハードディスクドライブ1090に接続される。ディスクドライブインタフェース1040は、図21に例示するように、ディスクドライブ1100に接続される。例えば、磁気ディスクや光ディスク等の着脱可能な記憶媒体が、ディスクドライブ1100に挿入される。シリアルポートインタフェース1050は、図21に例示するように、例えば、マウス1110、キーボード1120に接続される。ビデオアダプタ1060は、図21に例示するように、例えばディスプレイ1130に接続される。
ここで、図21に例示するように、ハードディスクドライブ1090は、例えば、OS1091、アプリケーションプログラム1092、プログラムモジュール1093、プログラムデータ1094を記憶する。すなわち、上記のプログラムは、コンピュータ1000によって実行される指令が記述されたプログラムモジュールとして、例えば、ハードディスクドライブ1090に記憶される。
また、上記実施形態で説明した各種データは、プログラムデータとして、例えば、メモリ1010やハードディスクドライブ1090に記憶される。そして、CPU1020が、メモリ1010やハードディスクドライブ1090に記憶されたプログラムモジュール1093やプログラムデータ1094を必要に応じてRAM1012に読み出し、各種処理手順を実行する。
なお、プログラムに係るプログラムモジュール1093やプログラムデータ1094は、ハードディスクドライブ1090に記憶される場合に限られず、例えば着脱可能な記憶媒体に記憶され、ディスクドライブ等を介してCPU1020によって読み出されてもよい。あるいは、プログラムに係るプログラムモジュール1093やプログラムデータ1094は、ネットワーク(LAN(Local Area Network)、WAN(Wide Area Network)等)を介して接続された他のコンピュータに記憶され、ネットワークインタフェース1070を介してCPU1020によって読み出されてもよい。
上記の実施形態やその変形は、本願が開示する技術に含まれると同様に、請求の範囲に記載された発明とその均等の範囲に含まれるものである。
10 表示制御装置
11 入力部
12 出力部
13 通信部
14 記憶部
14a 対話シナリオ情報記憶部
14b 内部状態記憶部
15 制御部
151 内部状態ボード制御部
151a 読込部
151b 検知部
151c 取得部
151d 特定部
151e 設定部
151f 反映部
152 GUI制御部
152a 受信部
152b 生成部
152c 表示部
20 ユーザ
30 チャットUI
40 対話プログラム(チャットボット)
50 内部状態ボード
100 表示制御システム

Claims (8)

  1. 対話プログラムの内部状態を記憶する記憶部と、
    対話ごとの発話テキストと遷移条件リストとを含む対話シナリオ情報を読み込む読込部と、
    前記遷移条件リストおよびユーザの操作に基づいて、前記記憶部から前記対話の遷移状態を取得する取得部と、
    前記対話の遷移状態に基づいて、現在遷移している対話を特定する特定部と、
    前記現在遷移している対話に対応する前記対話シナリオ情報を受信する受信部と、
    前記受信部によって受信された前記対話シナリオ情報に基づいて、表示するGUI(Graphical User Interface)の情報を生成する生成部と、
    前記生成部によって生成された前記表示するGUIの情報に基づいて、前記内部状態を表わすGUIを表示する表示部と
    を備えることを特徴とする表示制御装置。
  2. 前記対話を行うユーザの操作および前記操作に対応する前記内部状態の変更を検知する検知部をさらに備え、
    前記取得部は、前記検知部によって前記記憶部が記憶する前記内部状態の変更が検知された場合には、前記遷移条件リストおよび前記操作に基づいて、前記記憶部から前記対話の遷移状態を取得することを特徴とする請求項1に記載の表示制御装置。
  3. 前記内部状態を表わすGUIの変更が入力された場合には、前記内部状態に対して、前記変更を反映する反映部をさらに備えることを特徴とする請求項1に記載の表示制御装置。
  4. 前記取得部は、前記現在遷移している対話に対応するボード表示制御をさらに取得し、
    前記ボード表示制御に基づいて、前記内部状態を表わすGUIの表示、または非表示を設定する設定部をさらに備えることを特徴とする請求項1に記載の表示制御装置。
  5. 前記読込部は、GUI構成情報をさらに読み込み、
    前記受信部は、前記現在遷移している対話に対応する前記GUI構成情報をさらに受信し、
    前記生成部は、前記受信部によって受信された前記GUI構成情報に基づいて、前記表示するGUIの情報を生成することを特徴とする請求項1に記載の表示制御装置。
  6. 前記生成部は、所定のキー情報に合致する情報を用いて、前記表示するGUIの情報を生成することを特徴とする請求項1に記載の表示制御装置。
  7. 表示制御装置によって実行される表示制御方法であって、
    対話ごとの発話テキストと遷移条件リストとを含む対話シナリオ情報を読み込む読込工程と、
    前記遷移条件リストおよびユーザの操作に基づいて、対話プログラムの内部状態を記憶する記憶部から前記対話の遷移状態を取得する取得工程と、
    前記対話の遷移状態に基づいて、現在遷移している対話を特定する特定工程と、
    前記現在遷移している対話に対応する前記対話シナリオ情報を受信する受信工程と、
    前記受信工程によって受信された前記対話シナリオ情報に基づいて、表示するGUIの情報を生成する生成工程と、
    前記生成工程によって生成された前記表示するGUIの情報に基づいて、前記内部状態を表わすGUIを表示する表示工程と
    を含むことを特徴とする表示制御方法。
  8. 対話ごとの発話テキストと遷移条件リストとを含む対話シナリオ情報を読み込む読込ステップと、
    前記遷移条件リストおよびユーザの操作に基づいて、対話プログラムの内部状態を記憶する記憶部から前記対話の遷移状態を取得する取得ステップと、
    前記対話の遷移状態に基づいて、現在遷移している対話を特定する特定ステップと、
    前記現在遷移している対話に対応する前記対話シナリオ情報を受信する受信ステップと、
    前記受信ステップによって受信された前記対話シナリオ情報に基づいて、表示するGUIの情報を生成する生成ステップと、
    前記生成ステップによって生成された前記表示するGUIの情報に基づいて、前記内部状態を表わすGUIを表示する表示ステップと
    をコンピュータに実行させることを特徴とする表示制御プログラム。
JP2023501732A 2021-02-24 2021-02-24 表示制御装置、表示制御方法および表示制御プログラム Active JP7544246B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2021/006942 WO2022180704A1 (ja) 2021-02-24 2021-02-24 表示制御装置、表示制御方法および表示制御プログラム

Publications (2)

Publication Number Publication Date
JPWO2022180704A1 JPWO2022180704A1 (ja) 2022-09-01
JP7544246B2 true JP7544246B2 (ja) 2024-09-03

Family

ID=83047871

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2023501732A Active JP7544246B2 (ja) 2021-02-24 2021-02-24 表示制御装置、表示制御方法および表示制御プログラム

Country Status (2)

Country Link
JP (1) JP7544246B2 (ja)
WO (1) WO2022180704A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117573859B (zh) * 2024-01-15 2024-08-13 杭州数令集科技有限公司 自动推进剧情和对话的数据处理方法、系统及设备

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019028783A (ja) 2017-07-31 2019-02-21 株式会社L is B コールセンタ支援装置、コールセンタ支援システム、コールセンタ支援方法およびコールセンタ支援プログラム

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102194690B1 (ko) * 2017-06-29 2020-12-23 비즈오션 씨오 엘티디 정보입력 방법, 정보입력 장치 및 정보입력 시스템

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019028783A (ja) 2017-07-31 2019-02-21 株式会社L is B コールセンタ支援装置、コールセンタ支援システム、コールセンタ支援方法およびコールセンタ支援プログラム

Also Published As

Publication number Publication date
WO2022180704A1 (ja) 2022-09-01
JPWO2022180704A1 (ja) 2022-09-01

Similar Documents

Publication Publication Date Title
CN112579226B (zh) 用户界面逻辑视图和执行视图导航和转换
CN107491329B (zh) Docker镜像构建方法、设备、存储介质以及电子装置
US8032232B2 (en) Natively retaining project documentation in a controller
CN101405715B (zh) 用户可定制网络装置配置呈现的动态导航方法和应用工具
US11977878B2 (en) System and method for managing software services in building customized software
US8458648B2 (en) Graphical modelization of user interfaces for data intensive applications
CN112835568B (zh) 一种项目构建方法和装置
JP6514084B2 (ja) 操作支援システム、操作支援方法、および、操作支援プログラム
US10572278B2 (en) Smart controls for user interface design and implementation
CN112352214B (zh) 显示控制装置、显示控制方法和记录介质
EP3926465B1 (en) Method and system for creating an app by merging source code
US12524214B1 (en) Automated error troubleshooting via generative AI software development assistant
US20130042200A1 (en) System and method for annotating graphical user interface
CN118647968A (zh) 用于控制工业软件程序的执行的基于用户行为的帮助推荐
US11314530B2 (en) User-based extension setting devices, methods, and programs
US7992128B2 (en) Computer software adaptation method and system
KR101552914B1 (ko) 웹 서버 어플리케이션 프레임워크 장치와 프레임워크를 이용한 웹 어플리케이션 처리 방법 및 이를 구현할 수 있는 컴퓨터로 읽을 수 있는 기록 매체
US20190012052A1 (en) Configuration Constraints in Globalization of Features
EP4341800B1 (en) Updating a deployed app method and system
US20120011079A1 (en) Deriving entity-centric solution models from industry reference process and data models
JP7014960B2 (ja) 情報処理装置、サーバ、その処理方法及びプログラム
WO2022180704A1 (ja) 表示制御装置、表示制御方法および表示制御プログラム
US12619399B1 (en) Requirements discovery for generative ai software development assistant
CN119998786A (zh) 具有来自示例性命令的指导的自动封装工具
JP2015148925A (ja) プログラム生成装置および方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230621

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20240507

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240705

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20240723

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240805

R150 Certificate of patent or registration of utility model

Ref document number: 7544246

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350