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

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

2025-164331情報処理装置、設定システム、プログラム、情報処理方法
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2025164331
(43)【公開日】2025-10-30
(54)【発明の名称】情報処理装置、設定システム、プログラム、情報処理方法
(51)【国際特許分類】
   G06F 8/33 20180101AFI20251023BHJP
【FI】
G06F8/33
【審査請求】未請求
【請求項の数】11
【出願形態】OL
(21)【出願番号】P 2024068205
(22)【出願日】2024-04-19
(71)【出願人】
【識別番号】000006747
【氏名又は名称】株式会社リコー
(74)【代理人】
【識別番号】100107766
【弁理士】
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【弁理士】
【氏名又は名称】伊東 忠彦
(72)【発明者】
【氏名】近藤 誠一
【テーマコード(参考)】
5B376
【Fターム(参考)】
5B376BC32
5B376BC38
(57)【要約】
【課題】生成AIを利用してプログラムの設定を支援する。
【課題を解決するための手段】端末装置から、アプリの識別情報を含む設定画面の画面情報の取得要求を受信し、生成AIからのレスポンスメッセージに応じてアプリのフィールドと他のアプリのフィールドを紐付ける設定プログラムを含む画面情報を端末装置に送信し、端末装置から端末装置に表示された設定画面に入力された設定内容を含むチャットメッセージを受信すると、チャットメッセージと、識別情報で特定されるアプリ及び他のアプリに関する情報と、設定内容を定義した関数を呼び出すための情報と、を生成AIに送信し、生成AIから、設定内容を定義した関数の呼び出しを含むレスポンスメッセージを受け付け、さらに、該レスポンスメッセージを端末装置に送信し、設定内容を定義した関数に基づく処理を実行させる。
【選択図】図5B
【特許請求の範囲】
【請求項1】
端末装置及び生成AIシステムとネットワークを介して通信する情報処理装置であって、
前記端末装置から、アプリケーションの識別情報を含む、前記アプリケーションのフィールドを他のアプリケーションのフィールドと対応づけるための設定画面の画面情報の取得要求を受信して、前記生成AIシステムからのレスポンスメッセージに応じて前記アプリケーションのフィールドを他のアプリケーションのフィールドと対応づける設定を行う設定用プログラムを含む前記画面情報を、前記端末装置に送信する通信部と、
前記通信部が、前記端末装置から、前記端末装置に表示された前記設定画面に入力された、前記設定の設定内容を含むチャットメッセージを受信すると、前記チャットメッセージと、前記識別情報で特定される前記アプリケーションに関する情報と、前記設定内容を定義した関数を呼び出すための情報と、前記他のアプリケーションに関する情報とを前記生成AIシステムに送信し、前記生成AIシステムから、前記設定内容を定義した関数の呼び出しを含むレスポンスメッセージを受け付けるチャット制御部と、を有し、
前記通信部は、さらに、
前記チャット制御部が受け付けた、前記設定内容を定義した関数の呼び出しを含むレスポンスメッセージを前記端末装置に送信し、前記設定内容を定義した関数に基づく処理を実行させる、情報処理装置。
【請求項2】
前記端末装置は、前記アプリケーションを提供するアプリケーションサービスと通信を行う第一のWebブラウザと、前記第一のWebブラウザと通信を行う第二のWebブラウザとを有し、
前記通信部は、
前記第一のWebブラウザに対する操作に応じて前記第一のWebブラウザから前記第二のWebブラウザに送信された前記画面情報の取得要求を、前記第二のWebブラウザから受信し、前記画面情報を前記第二のWebブラウザに送信し、
前記チャット制御部は、
前記第二のWebブラウザが表示させた前記設定画面に入力された前記チャットメッセージを前記生成AIシステムの送信し、
前記通信部は、さらに、
前記チャット制御部が受け付けた前記生成AIシステムからの前記レスポンスメッセージを、前記第二のWebブラウザに対して送信する、請求項1記載の情報処理装置。
【請求項3】
前記アプリケーションに関する情報及び前記他のアプリケーションに関する情報は、
前記第一のWebブラウザによって前記アプリケーションサービスから取得される情報であって、
前記通信部は、
前記第二のWebブラウザを介して前記アプリケーションに関する情報及び前記他のアプリケーションに関する情報を受信する、請求項2記載の情報処理装置。
【請求項4】
前記通信部は、
前記第二のWebブラウザから送信される前記チャットメッセージと共に、前記第二のWebブラウザから、前記アプリケーションに関する情報を受信する、請求項2記載の情報処理装置。
【請求項5】
前記設定用プログラムは、
前記レスポンスメッセージに、前記設定内容を定義した関数の関数呼び出し要求が含まれる場合に、
前記端末装置に、
前記関数呼び出し要求に応じた前記アプリケーションのフィールドを他のアプリケーションのフィールドと対応づける処理を実行させる、請求項1又は2記載の情報処理装置。
【請求項6】
前記チャット制御部は、前記生成AIシステムに対して、過去の会話履歴を示す情報を送信する、請求項1又は2記載の情報処理装置。
【請求項7】
前記画面情報は、
前記生成AIシステムからのレスポンスメッセージに応じてアプリケーションの編集を行うプログラムを含む請求項1記載の情報処理装置。
【請求項8】
前記設定画面は、
前記アプリケーションのフィールドの値に前記アプリケーションのフィールドと対応付けられた前記他のアプリケーションのフィールドの値を入力するルックアップ機能を、前記アプリケーションに追加するための設定画面である、請求項1記載の情報処理装置。
【請求項9】
端末装置、及び、生成AIシステムと情報処理装置がネットワークを介して通信する設定システムであって、
前記情報処理装置は、
前記端末装置から、アプリケーションの識別情報を含む、前記アプリケーションのフィールドを他のアプリケーションのフィールドと対応づけるための設定画面の画面情報の取得要求を受信して、前記生成AIシステムからのレスポンスメッセージに応じて前記アプリケーションのフィールドを他のアプリケーションのフィールドと対応づける設定を行う設定用プログラムを含む前記画面情報を、前記端末装置に送信する通信部と、
前記通信部が、前記端末装置から、前記端末装置に表示された前記設定画面に入力された、前記設定の設定内容を含むチャットメッセージを受信すると、前記チャットメッセージと、前記識別情報で特定される前記アプリケーションに関する情報と、前記設定内容を定義した関数を呼び出すための情報と、前記他のアプリケーションに関する情報とを前記生成AIシステムに送信し、前記生成AIシステムから、前記設定内容を定義した関数の呼び出しを含むレスポンスメッセージを受け付けるチャット制御部と、を有し、
前記通信部は、さらに、
前記チャット制御部が受け付けた、前記設定内容を定義した関数の呼び出しを含むレスポンスメッセージを前記端末装置に送信し、
前記端末装置は、
Webブラウザを有し、
前記Webブラウザは、前記レスポンスメッセージに、前記設定内容を定義した関数の関数呼び出し要求が含まれる場合に、前記設定用プログラムを前記端末装置に実行させる、設定システム。
【請求項10】
端末装置及び生成AIシステムとネットワークを介して通信する情報処理装置に、
前記端末装置から、アプリケーションの識別情報を含む、前記アプリケーションのフィールドを他のアプリケーションのフィールドと対応づけるための設定画面の画面情報の取得要求を受信して、前記生成AIシステムからのレスポンスメッセージに応じて前記アプリケーションのフィールドを他のアプリケーションのフィールドと対応づける設定を行う設定用プログラムを含む前記画面情報を、前記端末装置に送信する処理と、
前記端末装置から、前記端末装置に表示された前記設定画面に入力された、前記設定の設定内容を含むチャットメッセージを受信すると、前記チャットメッセージと、前記識別情報で特定される前記アプリケーションに関する情報と、前記設定内容を定義した関数を呼び出すための情報と、前記他のアプリケーションに関する情報とを前記生成AIシステムに送信し、前記生成AIシステムから、前記設定内容を定義した関数の呼び出しを含むレスポンスメッセージを受け付ける処理と、
前記生成AIシステムから受け付けた、前記設定内容を定義した関数の呼び出しを含むレスポンスメッセージを前記端末装置に送信し、前記設定内容を定義した関数に基づく処理を実行させる処理と、を実行させる、プログラム。
【請求項11】
端末装置及び生成AIシステムとネットワークを介して通信する情報処理装置が、
前記端末装置から、アプリケーションの識別情報を含む、前記アプリケーションのフィールドを他のアプリケーションのフィールドと対応づけるための設定画面の画面情報の取得要求を受信して、前記生成AIシステムからのレスポンスメッセージに応じて前記アプリケーションのフィールドを他のアプリケーションのフィールドと対応づける設定を行う設定用プログラムを含む前記画面情報を、前記端末装置に送信し、
前記端末装置から、前記端末装置に表示された前記設定画面に入力された、前記設定の設定内容を含むチャットメッセージを受信すると、前記チャットメッセージと、前記識別情報で特定される前記アプリケーションに関する情報と、前記設定内容を定義した関数を呼び出すための情報と、前記他のアプリケーションに関する情報とを前記生成AIシステムに送信し、前記生成AIシステムから、前記設定内容を定義した関数の呼び出しを含むレスポンスメッセージを受け付け、
前記生成AIシステムから受け付けた、前記設定内容を定義した関数の呼び出しを含むレスポンスメッセージを前記端末装置に送信し、前記設定内容を定義した関数に基づく処理を実行させる、情報処理方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置、設定システム、情報処理方法、プログラムに関する。
【背景技術】
【0002】
近年では、プログラムコードの入力を少なくしたり全くなくしたりするプログラミング支援技術が知られている。その一例として、人工知能(AI)を利用して、プログラムコードを自動生成する技術が知られている。
【発明の概要】
【発明が解決しようとする課題】
【0003】
プログラムは、新規に作成された後も、機能を追加するための各種の設定が行われるものである。このため、AIシステムを利用して自動生成したプログラムに対する設定でも、プログラムコードの入力を少なくしたり、全くなくしたりする支援が行われることが望ましい。
【0004】
開示の技術は、上記事情に鑑みて成されたものであり、外部のAIシステム(生成AIシステム等)を利用してプログラムの設定を支援することを目的としている。
【課題を解決するための手段】
【0005】
開示の技術は、端末装置及び生成AIシステムとネットワークを介して通信する情報処理装置であって、前記端末装置から、アプリケーションの識別情報を含む、前記アプリケーションのフィールドを他のアプリケーションのフィールドと対応づけるための設定画面の画面情報の取得要求を受信して、前記生成AIシステムからのレスポンスメッセージに応じて前記アプリケーションのフィールドを他のアプリケーションのフィールドと対応づける設定を行う設定用プログラムを含む前記画面情報を、前記端末装置に送信する通信部と、前記通信部が、前記端末装置から、前記端末装置に表示された前記設定画面に入力された、前記設定の設定内容を含むチャットメッセージを受信すると、前記チャットメッセージと、前記識別情報で特定される前記アプリケーションに関する情報と、前記設定内容を定義した関数を呼び出すための情報と、前記他のアプリケーションに関する情報とを前記生成AIシステムに送信し、前記生成AIシステムから、前記設定内容を定義した関数の呼び出しを含むレスポンスメッセージを受け付けるチャット制御部と、を有し、前記通信部は、さらに、前記チャット制御部が受け付けた、前記設定内容を定義した関数の呼び出しを含むレスポンスメッセージを前記端末装置に送信し、前記設定内容を定義した関数に基づく処理を実行させる、情報処理装置である。
【発明の効果】
【0006】
外部のAIシステム(生成AIシステム等)を利用してプログラムの設定を支援することができる。
【図面の簡単な説明】
【0007】
図1】第一の実施形態の設定システムのシステム構成の一例を説明する図である。
図2】設定システムの動作の概要を説明する図である。
図3】情報処理システム、ユーザ端末、及び、開発者端末の一例のハードウェア構成を示す図である。
図4】第一の実施形態の設定システムの有する各装置の機能を説明する図である。
図5A】第一の実施形態の設定システムの動作を説明する第一のシーケンス図である。
図5B】第一の実施形態の設定システムの動作を説明する第二のシーケンス図である。
図6】第二の実施形態の設定システムの有する各装置の機能を説明する図である。
図7A】第二の実施形態の設定システムの動作を説明する第一のシーケンス図である。
図7B】第二の実施形態の設定システムの動作を説明する第二のシーケンス図である。
図8】ユーザ端末の表示例を示す第一の図である。
図9】ユーザ端末の表示例を示す第二の図である。
図10】ユーザ端末の表示例を示す第三の図である。
図11】ユーザ端末の表示例を示す第四の図である。
図12】ユーザ端末の表示例を示す第五の図である。
図13】ユーザ端末の表示例を示す第六の図である。
図14】ユーザ端末の表示例を示す第七の図である。
図15】チャットメッセージが入力された場合のリクエストメッセージの一例を示す図である。
図16】情報処理システムから受信したレスポンスメッセージの一例を示す図である。。
図17】設定対象フィールドの削除を要求するリクエストメッセージの一例を示す図である。
図18】マスタフィールドと対応付けられた設定対象フィールドの追加を要求するリクエストメッセージの一例を示す図である。
【発明を実施するための形態】
【0008】
(第一の実施形態)
以下に図面を参照して、本実施形態について説明する。図1は、第一の実施形態の設定システムのシステム構成の一例を説明する図である。
【0009】
本実施形態の設定システム100は、情報処理システム20と、ユーザ端末10と、開発者端末60と、を有する。
【0010】
設定システム100において、情報処理システム20とユーザ端末10、及び、情報処理システム20と開発者端末60は、ネットワークN1、N2を介して通信可能に接続されている。また、情報処理システム20は、ネットワークN1を介して生成AIシステム50と通信できる。さらに、ユーザ端末10及び開発者端末60は、ネットワークN1、N2を介して生成AI(Artificial Intelligence)システム50及び外部システムであるアプリケーションサービス40と通信できる。なお、情報処理システム20は、ネットワークN1を介したアプリケーションサービス40と通信してもよい。
【0011】
本実施形態において、ネットワークN1は、インターネットやWAN等の広域的なネットワークであり、ネットワークN2は、LAN、Wi-Fi(登録商標)、広域イーサネット(登録商標)、4G、5G、6G等の携帯電話網等であってよい。
【0012】
ユーザ端末10は、主に、アプリケーションサービス40が提供するサービスを利用するユーザにより利用されるPC(Personal Computer)、スマートフォン、タブレット端末等の端末装置である。開発者端末60は、主に、情報処理システム20の開発者等によって利用される端末装置である。
【0013】
ユーザ端末10及び開発者端末60は、企業や自宅などの施設に配置されており、ネットワークN2に接続されている。なお、ユーザ端末10と開発者端末60は常にネットワークN2に接続されている必要はなく、情報処理システム20、生成AIシステム50又はアプリケーションサービス40を使用する際に接続されればよい。ユーザ端末10又は開発者端末60では、Webブラウザ又はネイティブアプリが動作する。また、ユーザ端末10又は開発者端末60は、情報処理システム20、生成AIシステム50又はアプリケーションサービス40が提供する各種のサービスを利用することができる。
【0014】
ユーザ端末10は、ユーザにより、アプリケーションサービス40が提供するアプリケーションのうち、あるアプリケーションで管理されるフィールドに、他のアプリケーションで管理されるフィールドを対応付けるためのチャットメッセージが入力される。
【0015】
開発者端末60は、開発者の操作により、設定情報が作成される。設定情報は情報処理システム20に格納される。設定情報の詳細は後述する。
【0016】
アプリケーションサービス40は、ユーザが実行するアプリケーションを提供する一台以上の情報処理装置である。アプリケーションサービス40が提供するアプリケーションは、例えばデータを表形式で管理するデータベース型のWebアプリケーションである。ユーザはアプリケーションのフィールドを任意に設定でき、自分の業務に関するデータを保存、読出、又は加工できるようにカスタマイズできる。
【0017】
また、ユーザは、アプリケーションで管理されるフィールドの値を入力する際に、他のアプリケーションに登録されているフィールドを参照し、他のアプリケーションにおいて登録されたフィールドの値を取得して入力するように設定することができる。
【0018】
言い換えれば、ユーザは、あるアプリケーションのフィールドを、参照先となる他のアプリケーションのフィールドと対応付け、参照先とされた他のアプリケーションのフィールドの値を取得して、アプリケーションのフィールドの値とする設定を行うことができる。
【0019】
以下の説明では、アプリケーションサービス40が提供するアプリケーションのうち、あるアプリケーションで管理されるフィールドの値に、他のアプリケーションで管理されるフィールドの値を入力する機能をルックアップ機能と呼ぶ。なお、アプリケーションで管理されるフィールドとは、アプリケーションで管理されるデータの項目である。
【0020】
また、以下の説明では、アプリケーションサービス40が提供するアプリケーションのうち、あるアプリケーションで管理されるフィールドに、参照先となる他のアプリケーションで管理されるフィールドを対応付けて、参照先となるフィールドの値を取得できるようにする設定をルックアップの設定と呼ぶ。本実施形態では、アプリケーションに対してルックアップの設定を行うことで、アプリケーションに対してルックアップ機能が追加される。
【0021】
アプリケーションサービス40は、例えば、クラウドサービス、ASP(Application Service Provider)、SaaS等があり、ネットワークを介して提供される各種のサービスが含まれてよい。例えば、サービスの一例としてデータベースの提供やストレージサービスがある。アプリケーションサービス40は、インターネット上に存在しても、オンプレミスに存在してもよい。
【0022】
生成AIシステム50は、ユーザが会話形式で人工知能(AI)と会話するサービスを提供する。このような生成AIシステム50としては、大規模言語モデル(LLM:Large Language Models)を使用したシステムが知られている。大規模言語モデルは、大量のテキストデータを使ってトレーニングされた自然言語処理のモデルである。
【0023】
生成AIシステム50は、予め膨大なテキストを取り込み、そこからディープラーニングや強化学習等で知識を学習している。生成AIシステム50は、この知識を利用することで、チャットメッセージに対し応答メッセージを与える。
【0024】
生成AIシステム50に対してユーザがチャットメッセージを入力するインターフェースをプロンプトと呼ぶ。プロンプトには、指示や質問等のチャットメッセージが入力される。チャットメッセージは、人間が話す自然言語で構成された会話文や言葉などでよい。また、画像をチャットメッセージとすることもできる。チャットメッセージに対し文章を生成する生成AIシステム50を生成AIという場合がある。
【0025】
また、生成AIシステム50の特徴としては、自然な流れで会話を進めることができる、ユーザが知見を持たない分野でもアイデアを膨らませて提案することができる、正確なプログラムコードを出力することができる等が挙げられる。
【0026】
本実施形態では、このような特徴を有する生成AIシステム50を利用することで、情報処理システム20はユーザとの会話を自然な流れで進めることができる。
【0027】
本実施形態では、生成AIシステム50としては、GPT-3、GPT-4、Transformer、BERT(いずれも登録商標)などのLLMを使用したシステムが知られている。本実施形態の設定システム100には一例としてGPT-3又はGPT-4を使用したChatCPTを使用可能であるが、その他のLLMを使用したシステムが使用されてもよい。
【0028】
本実施形態の情報処理システム20は、ユーザ端末10から、アプリケーションに対するルックアップの設定を行う操作を受け付けると、ユーザ端末10に対し、アプリケーションに対するルックアップの設定を実行するプログラムを出力する。
【0029】
より具体的には、情報処理システム20は、ユーザ端末10において起動しているアプリケーションに対して、ルックアップの設定を行う操作がされると、ユーザ端末10に対し、アプリケーションに対するルックアップの設定を実行するプログラムを出力する。以下の説明では、アプリケーションに対するルックアップの設定を実行するプログラムを、ルックアップ設定用プログラムと表現する場合がある。
【0030】
また、ルックアップの設定が行われるアプリケーションは、アプリケーションサービス40で管理されたアプリケーションの1つである。また、ルックアップの設定を行う操作には、参照先となるアプリケーションを選択する操作が含まれる。以下の説明では、ルックアップの設定が行われるアプリケーションを、設定対象のアプリケーションと表現する場合がある。また、以下の説明では、参照先として選択されたアプリケーションを、マスタアプリケーション又はマスタアプリと表現する場合がある。
【0031】
また、本実施形態では、情報処理システム20は、ユーザ端末10において、ルックアップの設定を指示するチャットメッセージを受け付けると、チャットメッセージをリクエストメッセージに含めて生成AIシステム50に送信する。情報処理システム20は、生成AIシステム50からのレスポンスメッセージを受け付けると、レスポンスメッセージをユーザ端末10へ送信する。
【0032】
ユーザ端末10は、レスポンスメッセージを受け付けると、情報処理システム20から出力されたルックアップ設定用プログラムにより、レスポンスメッセージに応じたルックアップの設定を、起動しているアプリケーションに対して行う。
【0033】
このように、本実施形態では、ユーザは、ユーザ端末10において、ルックアップの設定を行う操作し、チャットメッセージを入力することで、ノーコードでアプリケーションサービス40のアプリケーションに対してルックアップの設定を行うことができる。言い換えれば、本実施形態では、ユーザは、設定対象のアプリケーションを選択し、ルックアップの設定を指示するチャットメッセージを入力するだけで、選択したアプリケーションにルックアップの設定を行うことができる。
【0034】
なお、図1の例では、アプリケーションサービス40と情報処理システム20は別々に設けられるものとしたが、これに限定されず、情報処理システム20とアプリケーションサービス40と一体でもよい。すなわち、アプリケーションサービス40に情報処理システム20の機能が含まれてもよいし、情報処理システム20にアプリケーションサービス40の機能が含まれていてもよい。また、アプリケーションサービス40と生成AIシステム50が一体でもよい。また、生成AIシステム50と情報処理システム20は一体でもよい。また、情報処理システム20と、アプリケーションサービス40と、情報処理システム20とが一体でもよい。
【0035】
情報処理システム20は、クラウドコンピューティングにより実現されてもよいし、単一の情報処理装置によって実現されてもよい。クラウドコンピューティングとは、特定ハードウェア資源が意識されずにネットワーク上のリソースが利用される形態をいう。情報処理システム20は、インターネット上に存在しても、オンプレミスに存在してもよい。
【0036】
また、情報処理システム20は、複数の情報処理装置にその機能が分散されていてもよいし、複数の同じ機能を有する情報処理システム20が存在し、処理負荷に応じて、処理を実行する情報処理システムが増減されてもよい。
【0037】
また、ユーザ端末10は、例えば、主に、アプリケーションサービス40によってサービスが提供されるユーザにより利用されるPC(Personal Computer)、スマートフォン、タブレット端末等の端末装置である。
【0038】
また、ユーザ端末10は、情報処理装置であればよい。このような情報処理装置としては、例えば、電子黒板、デジタルサイネージ等の出力装置、HUD(Head Up Display)装置、産業機械、撮像装置、集音装置、医療機器、ネットワーク家電、携帯電話、スマートフォン、タブレット端末、ゲーム機、PDA(Personal Digital Assistant)、デジタルカメラ、ウェアラブルPC等がある。
【0039】
以下に、図2を参照して、本実施形態の設定システム100の動作の概要について説明する。図2は、設定システムの動作の概要を説明する図である。
【0040】
設定システム100において、ユーザ端末10は、設定対象のアプリケーションが起動された状態である。この状態において、ユーザ端末10は、参照先となるアプリケーションの選択を受け付けると、参照先となるアプリケーションを情報処理システム20に対して通知する(ステップS1)。
【0041】
続いて、ユーザ端末10は、ユーザが入力したチャットメッセージを情報処理システム20に送信する(ステップS2)。本実施形態の場合、チャットメッセージは例えば「社員名をキーにして」等のように、ルックアップの設定内容を指示するメッセージであってよい。なお、チャットメッセージは、具体的な設定内容を示すものだけでなく、「ルックアップを設定したい」等の願望を表すメッセージも含んでよい。
【0042】
情報処理システム20は、ユーザが入力したチャットメッセージを受信すると、受信したチャットメッセージをリクエストメッセージに含めて生成AIシステム50に送信する(ステップS3)。このとき、情報処理システム20は、生成AIシステム50が提供する、リクエストメッセージを受信するためのAPI(Application Programming Interface)経由でリクエストメッセージを生成AIシステム50に送信する。また、情報処理システム20は、リクエストメッセージにfunction(関数)の仕様の指定も含めて送信する。
【0043】
function(関数)とは、指定された引数で決まった処理を行い、結果として戻り値を戻すプログラムインターフェースである。本実施形態において指定される関数は、生成AIシステム50が、アプリケーションサービス40で利用されるアプリケーションのルックアップの設定を、情報処理システム20に対して要求できるようにするためのルックアップ設定関数である。
【0044】
情報処理システム20は、ルックアップ設定関数の仕様の設定を、リクエストメッセージに含めて生成AIシステム50に送信する。
【0045】
なお、このfunctionの呼び出しを生成AIシステム50が情報処理システム20に要求することを、function callと呼ぶ。また、情報処理システム20は設定対象のアプリケーションに関する情報、マスタアプリケーションに関する情報をリクエストメッセージに含めることができる。
【0046】
設定対象のアプリケーションに関する情報とは、設定対象のアプリケーションで管理されるパラメータを示す情報である。マスタアプリケーションに関する情報とは、参照先に選択されたアプリケーションで管理されるパラメータを示す情報である。アプリケーションで管理されるパラメータとは、例えば、アプリケーションが管理するフィールド名、フィールドの数、フィールド名を示す文字数等を含む。
【0047】
なお、情報処理システム20は、設定対象のアプリケーションに関する情報、マスタアプリケーションに関する情報、ルックアップ設定関数の仕様の設定を、受信したチャットメッセージと同じリクエストメッセージに含めなくてもよい。例えば、情報処理システム20は、受信したチャットメッセージを含むリクエストメッセージとは別のリクエストメッセージに、設定対象のアプリケーションに関する情報、マスタアプリケーションに関する情報、関数の仕様の設定を含めて生成AIシステム50に送信してもよい。
【0048】
また、情報処理システム20は、設定対象のアプリケーションに関する情報、マスタアプリケーションに関する情報、ルックアップ設定関数の仕様の設定も別々のリクエストメッセージに含めて生成AIシステム50に送信してもよい。
【0049】
また、情報処理システム20は、設定対象のアプリケーションに関する情報、マスタアプリケーションに関する情報、ルックアップ設定関数の仕様の設定を、受信したチャットメッセージをリクエストメッセージに含めて送信する都度に送信してもよく、最初に一度だけ送信してもよい。
【0050】
生成AIシステム50は、送信されたリクエストメッセージに含まれるチャットメッセージによる会話の履歴、ルックアップ設定関数の仕様の設定、設定対象のアプリケーションに関する情報、マスタアプリケーションに関する情報に基づいて、関数呼び出し要求(function call)を含むレスポンスメッセージを情報処理システム20に送信する(ステップS4)。
【0051】
ここで、生成AIシステム50は、関数の呼び出しを情報処理システム20に対して要求するだけである。なお、以下の説明では、生成AIシステム50からのレスポンスメッセージを、生成AIシステム50からの応答と表現する場合がある。
【0052】
情報処理システム20は、生成AIシステム50から受信したレスポンスメッセージをユーザ端末10に送信する(ステップS5)。
【0053】
ユーザ端末10は、レスポンスメッセージを受信すると、情報処理システム20から受け取ったルックアップ設定用プログラムにより、レスポンスメッセージが示す関数呼び出しを実行し、アプリケーションサービス40で管理されるアプリケーションに対するルックアップの設定を行う(ステップS6)。
【0054】
このように、本実施形態では、ユーザ端末10のユーザが、ローコード又はノーコードでアプリケーションに対するルックアップを設定できるようになる。
【0055】
次に、図3を参照して、本実施形態の設定システム100が有する各装置のハードウェア構成について説明する。
【0056】
図3は、情報処理システム、ユーザ端末、及び、開発者端末の一例のハードウェア構成を示す図である。図3に示されているように、情報処理システム20、ユーザ端末10、及び、開発者端末60はコンピュータ500によって構築されており、CPU501、ROM502、RAM503、HD(Hard Disk)504、HDD(Hard Disk Drive)コントローラ505、ディスプレイ506、外部機器接続I/F(Interface)508、ネットワークI/F509、バスライン510、キーボード511、ポインティングデバイス512、DVD-RW(Digital Versatile Disk Rewritable)ドライブ514、メディアI/F516を備えている。
【0057】
これらのうち、CPU501は、コンピュータ500全体の動作を制御する。ROM502は、IPL等のCPU501の駆動に用いられるプログラムを記憶する。RAM503は、CPU501のワークエリアとして使用される。HD504は、プログラム等の各種データを記憶する。HDDコントローラ505は、CPU501の制御にしたがってHD504に対する各種データの読み出し又は書き込みを制御する。ディスプレイ506は、カーソル、メニュー、ウィンドウ、文字、又は画像などの各種情報を表示する。外部機器接続I/F508は、各種の外部機器を接続するためのインターフェースである。この場合の外部機器は、例えば、USB(Universal Serial Bus)メモリやプリンタ等である。ネットワークI/F509は、ネットワークN2を利用してデータ通信をするためのインターフェースである。バスライン510は、図3に示されているCPU501等の各構成要素を電気的に接続するためのアドレスバスやデータバス等である。
【0058】
また、キーボード511は、文字、数値、又は各種指示などの入力に使用される複数のキーを備えた入力手段の一種である。ポインティングデバイス512は、各種指示の選択や実行、処理対象の選択、カーソルの移動などを行う入力手段の一種である。DVD-RWドライブ514は、着脱可能な記録媒体の一例としてのDVD-RW513に対する各種データの読み出し又は書き込みを制御する。なお、DVD-RWドライブ514は、DVD-RWに限らず、DVD-R等であってもよい。メディアI/F516は、フラッシュメモリ等の記録メディア515に対するデータの読み出し又は書き込み(記憶)を制御する。
【0059】
次に、図4を参照して、本実施形態の設定システム100の有する各装置の機能について説明する。図4は、第一の実施形態の設定システムの有する各装置の機能を説明する図である。
【0060】
はじめに、情報処理システム20の機能について説明する。本実施形態の情報処理システム20は、通信部21、画面生成部22、チャット制御部23、設定情報記憶部24、及び設定プログラム出力部25を有している。情報処理システム20が有する各機能部は、情報処理システム20にインストールされた1以上のプログラムに含まれる命令を図3に示したCPU501が実行することで実現される機能又は手段である。
【0061】
また、設定情報記憶部24は、図3に示したHD504やRAM503等に構築される。設定情報記憶部24は情報処理システム20が有していなくてもよく、情報処理システム20がアクセスできるネットワーク上にあればよい。
【0062】
通信部21は、ユーザ端末10と各種の情報を送受信する。通信部21は、アプリケーションに対するルックアップの設定を行うルックアップ設定画面の画面情報をユーザ端末10に送信する。通信部21は、ユーザ端末10からユーザがルックアップの設定のために入力したチャットメッセージを受信する。また、通信部21は、開発者端末60と各種の情報を送受信する。通信部21は、設定情報の入力画面の画面情報を開発者端末60に送信する。通信部21は、開発者端末60から開発者が入力した設定情報を受信し設定情報記憶部24に保存しておく。また、通信部21は、チャット制御部23が生成AIシステム50から受信したレスポンスメッセージ(応答)をユーザ端末10へ送信する。
【0063】
画面生成部22は、ユーザ端末10及び開発者端末60が表示する画面(Webページ)の画面情報を生成する。
【0064】
より具体的には、画面生成部22は、ユーザ端末10が表示するアプリケーションに対するルックアップの設定を行うルックアップ設定画面の画面情報を生成する。ルックアップ設定画面の画面情報には、ユーザ端末10において後述するルックアップ設定部14を実現するためのルックアップ設定用プログラムが含まれる。
【0065】
なお、WebページはWebアプリの一部として提供される。画面情報は、HTML、JSON、XML、スクリプト言語、及びCSS(Cascading Style Sheet)等で記述されたプログラムであり、主にHTMLによりWebページの構造が特定され、スクリプト言語によりWebページの動作が規定され、CSSによりWebページのスタイルが特定される。
【0066】
チャット制御部23は、第1API26を呼び出すことで、生成AIシステム50にリクエストメッセージを送信する。リクエストメッセージには、チャットメッセージ(過去の会話の履歴も含む)や関数を定義した情報が含まれる。
【0067】
第1API26は、生成AIシステム50が公開する1つ以上のAPIである。第1API26を呼び出した結果として、チャット制御部23は、リクエストメッセージに対するレスポンスメッセージを生成AIシステム50から受信する。レスポンスメッセージにはチャットメッセージに対する応答メッセージ、情報処理システム20に対する関数呼び出し要求、又は、作成若しくは開発したアプリケーションのURL(Uniform Resource Locator)等が含まれる。
【0068】
設定情報記憶部24は、設定情報を格納する。ここで、設定情報について説明する。
【0069】
本実施形態における設定情報とは、アプリケーションサービス40のアプリケーションら対するルックアップの設定に必要な知識を示す情報である。言い換えれば、設定情報は、生成AIシステム50がアプリケーションに対してルックアップを設定するための情報であり、ルックアップを設定する処理を規定した関数を含む。
【0070】
具体的には、ルックアップを設定する処理を規定した関数は、生成AIシステム50が、情報処理システム20に対し、設定対象のアプリケーションにおけるフィールドの値を、マスタアプリケーションにおけるフィールドの値とする処理を要求できるようにする関数である。
【0071】
以下の説明では、生成AIシステム50が情報処理システム20に対し、アプリケーションに対するルックアップの設定を要求できるようにする関数を、ルックアップ設定関数と呼ぶ場合がある。
【0072】
本実施形態では、開発者が、ユーザがルックアップの設定を開始する前に、設定情報を設定情報記憶部24に格納しておくことで、ユーザがチャットメッセージにアプリケーションのパラメータ等を含めなくてよくなる。
【0073】
また、本実施形態の設定情報は、生成AIシステム50がアプリケーションを編集するための情報であり、編集処理を規定した関数を含んでもよい。
【0074】
編集処理を規定した関数は、生成AIシステム50が、編集対象のアプリケーションにおけるフィールドの追加を、情報処理システム20に要求できるようにする関数である。また、編集処理を規定した関数は、生成AIシステム50が、編集対象のアプリケーションにおけるフィールドの削除を、情報処理システム20に要求できるようにする関数である。また、編集処理を規定した関数は、生成AIシステム50が、編集対象のアプリケーションの更新(アップデート)を、情報処理システム20に要求できるようにする関数である。
【0075】
情報処理システム20は、この設定情報を使用して、生成AIシステム50に送信するリクエストメッセージを作成する。このように、本実施形態では、開発者が設定情報を情報処理システム20に格納しておくことで、ユーザにアプリケーションの専門的な知識がなくても簡単なチャットメッセージでアプリケーションに対してルックアップ機能を追加できるようになる。
【0076】
なお、設定情報の設定は必ず必要なものではなく、アプリケーションによっては設定情報が不要な場合があってよい。
【0077】
設定プログラム出力部25は、通信部21がユーザ端末10から、編集対象のアプリケーションについて、編集画面の画面情報の取得要求を受け付けると、編集対象のアプリケーションを編集させるためのルックアップ設定用プログラムを画面生成部22に対して出力する。ルックアップ設定用プログラムは、JavaScript(登録商標。以下省略する。)で記述されたものであり、ユーザ端末10で実行されることで、ユーザ端末10に、生成AIシステム50からのレスポンスメッセージに従ったルックアップの設定を実行させる。
【0078】
次に、ユーザ端末10の機能について説明する。本実施形態のユーザ端末10は、Webブラウザ5を有し、Webブラウザ5は、通信部11と、表示制御部12と、操作受付部13とを有する。これら各機能部は、ユーザ端末10にインストールされた1以上のプログラムに含まれる命令を図3に示したCPU501が実行することで実現される機能又は手段である。
【0079】
なお、通信部11、表示制御部12、操作受付部13は、JavaScript(登録商標。以下省略する。)により実現されてもよい。
【0080】
通信部11は、情報処理システム20との間で各種の情報を送受信する。本実施形態では、通信部11は、ポータル画面の画面情報をアプリケーションサービス40から受信したり、チャットメッセージの入力が行われるルックアップ設定ページ等の画面情報を情報処理システム20から受信したりする。通信部11は、チャットメッセージやユーザ端末10に対する操作情報等を情報処理システム20に送信する。なお、通信部11が生成AIシステム50と直接通信することもできる。
【0081】
表示制御部12は、各種の画面の画面情報を解釈してディスプレイ506に表示する。操作受付部13は、ディスプレイ506に表示された各種画面におけるユーザの各種操作を受け付ける。
【0082】
また、本実施形態のユーザ端末10は、情報処理システム20からルックアップ設定用プログラムを含むルックアップ設定画面の画面情報を受け取る。
【0083】
ユーザ端末10は、ルックアップ設定画面の画面情報を受けとり、ルックアップ設定用プログラムを実行することで、ルックアップ設定部14の機能を実現する。つまり、ユーザ端末10のWebブラウザ5は、情報処理システム20から取得したルックアップ設定画面の画面情報に含まれるJavaScriptを実行することで、ルックアップ設定部14を有することになる。
【0084】
ルックアップ設定部14は、第2API27を呼び出すことで、アプリケーションサービス40にリクエストメッセージを送信する。リクエストメッセージは、アプリケーションに対するルックアップの設定を要求するものであり、アプリケーションに関するパラメータ(データベースのフィールド名、データ形式等)などが含まれる。
【0085】
第2API27は、アプリケーションサービス40が公開する1つ以上のAPIである。ルックアップ設定部14は、第2API27を呼び出した結果として、リクエストメッセージに対するレスポンスメッセージをアプリケーションサービス40から受信する。レスポンスメッセージにはルックアップの設定の要求に対する結果(成功、失敗)が含まれる。成功の場合はアプリケーションのURLが通知され、失敗の場合はエラーメッセージが通知される。ルックアップの設定の要求に対する結果は、表示制御部12によって表示されてよい。
【0086】
ここで、「ルックアップを設定する」とは、ルックアップ設定部14がアプリケーションサービス40に対し、設定対象のアプリケーションのフィールドと、マスタアプリケーションのフィールドとの対応付けを依頼して、アプリケーションサービス40が実際に、設定対象のアプリケーションのフィールドとマスタアプリケーションのフィールドとを対応付けることを含む。また、「ルックアップを設定する」とは、ルックアップ設定部14が、アプリケーションサービス40に対し、マスタアプリケーションのフィールドの値を、マスタアプリケーションのフィールドと対応付けられた設定対象のアプリケーションのフィールドの値とすることを依頼し、アプリケーションサービス40が実際に、マスタアプリケーションのフィールドの値を、設定対象のアプリケーションのフィールドの値として格納すること、を含む。
【0087】
なお、ユーザ端末10がネイティブアプリを実行する場合もある。ネイティブアプリとは、ユーザ端末10にインストールしなければ実行できないアプリケーションである。ネイティブアプリの場合、ルックアップ設定画面の画面情報はユーザ端末10が保持しており、表示される情報がJSONやXML等で送信される。
【0088】
次に、開発者端末60の機能について説明する。通信部61と、表示制御部62と、操作受付部63と、を有する。これら各機能部は、開発者端末60にインストールされた1以上のプログラムに含まれる命令を図3に示したCPU501が実行することで実現される機能又は手段である。例えば、通信部61、表示制御部62及び操作受付部63はWebブラウザ又はJavaScriptの少なくとも一方により実現されてよい。開発者端末60がネイティブアプリを実行する場合、これらはネイティブアプリにより実現されてよい。
【0089】
通信部61は、情報処理システム20との間で各種の情報を送受信する。本実施形態では、通信部61は、設定情報の入力に関する画面情報を情報処理システム20から受信する。通信部61は、設定情報や開発者端末60に対する操作情報等を情報処理システム20に送信する。なお、通信部21が生成AIシステム50やアプリケーションサービス40と通信することもできる。
【0090】
表示制御部62は、各種の画面の画面情報を解釈してディスプレイ506に表示する。操作受付部63は、ディスプレイ506に表示された各種画面におけるユーザの各種操作を受け付ける。
【0091】
次に、図5A図5Bを参照して、本実施形態の設定システム100の動作について説明する。図5Aは、第一の実施形態の設定システムの動作を説明する第一のシーケンス図であり、図5Bは、第一の実施形態の設定システムの動作を説明する第二のシーケンス図である。
【0092】
設定システム100において、ユーザ端末10のWebブラウザ5は、アプリケーションサービス40で管理されるアプリケーションの一覧画面を表示させる(ステップS501)。
【0093】
本実施形態におけるアプリケーションの一覧画面は、例えば、ユーザ端末10に表示された、アプリケーションサービス40のポータル画面において、アプリケーションの一覧を表示させる操作が行われた場合にユーザ端末10に表示されてよい。
【0094】
続いて、Webブラウザ5は、アプリケーションの一覧画面において、設定対象のアプリケーションを選択する操作を受け付ける(ステップS502)。
【0095】
続いて、Webブラウザ5は、アプリケーションサービス40に対して選択されたアプリケーションの起動を要求する(ステップS503)。
【0096】
具体的には、Webブラウザ5は、通信部11により、アプリケーションサービス40のURLに接続する。ここで、ユーザ端末10では、設定対象のアプリケーションが選択されているため、通信部11は、選択されたアプリケーションの画面のURLを含むHTTPリクエストを生成し、生成したHTTPリクエストをアプリケーションサービス40に送信する。以下の説明では、アプリケーション画面をアプリ画面と表現する場合がある。アプリ画面とは、アプリケーションに対する各種の操作を受け付けるアプリケーションのホーム画面であってよい。
【0097】
アプリケーションサービス40は、ユーザ端末10から上記のHTTPリクエストを受信すると、設定対象のアプリケーションのアプリ画面の画面情報をユーザ端末10に送信する(ステップS504)。具体的には、アプリケーションサービス40は、アプリ画面の画面情報(HTML、JavaScript、CSS等)をユーザ端末10に送信する。
【0098】
Webブラウザ5は、通信部11によりアプリ画面の画面情報を受信し、表示制御部12により、画面情報に基づいて、設定対象のアプリケーションのアプリ画面を表示させる(ステップS505)。続いて、Webブラウザ5は、操作受付部13により、アプリ画面から、設定対象のアプリケーションと生成AIシステム50との連携を指示する操作を受け付ける(ステップS506)。
【0099】
以下の説明では、Webブラウザ5において、生成AIシステム50から出力されたレスポンスメッセージを用いて、設定対象のアプリケーションが管理するフィールドに対する各種の処理を行うことを、AI連携と表現する場合がある。
【0100】
続いて、Webブラウザ5は、通信部11により、情報処理システム20に対して、AI連携画面の画面情報の取得要求を送信する(ステップS507)。なお、ここで情報処理システム20に送信される取得要求には、ステップS502で選択されたアプリケーションを特定する識別情報であるアプリIDが含まれてよい。
【0101】
なお、AI連携画面は、設定対象のアプリケーションと生成AIシステム50とを連携させるための画面の一例である。また、AI連携画面の画面情報は、ルックアップの設定を行うための設定画面の画面情報を含む。したがって、AI連携画面の画面情報の取得要求は、ルックアップの設定を行うための設定画面の画面情報の取得要求とも言える。
【0102】
本実施形態のAI連携画面の画面情報には、アプリケーションに対してルックアップの設定を行うルックアップ設定用プログラムを含む。また、本実施形態のAI連携画面の画面情報には、アプリケーションの編集を行うための編集処理用プログラムが含まれてもよい。アプリケーションの編集とは、アプリケーションが管理するフィールドの追加、削除、フィールド名の変更等を含んでよい。
【0103】
情報処理システム20は、AI連携画面の画面情報(HTML、JavaScript、CSS等)を生成する(ステップS508)。
【0104】
具体的には、情報処理システム20は、AI連携画面の画面情報の取得要求を受け付けると、設定プログラム出力部25により、選択されたアプリケーションに対してルックアップの設定を行うためのルックアップ設定用プログラムを画面生成部22に渡す。なお、設定プログラム出力部25では、アプリケーションサービス40で管理されるアプリケーション毎に、JavaScriptで記述されたルックアップ設定用プログラムが用意されていてよい。
【0105】
画面生成部22は、JavaScriptで記述されたルックアップ設定用プログラムをAI連携画面の画面情報に含める。
【0106】
なお、画面生成部22は、AI連携画面の画面情報には、ステップS502で選択されたアプリケーションが管理するフィールドの追加や削除、フィールドの更新を行うための編集用プログラムも含める。
【0107】
続いて、情報処理システム20は、通信部21によりユーザ端末10に、AI連携画面の画面情報を送信する(ステップS509)。
【0108】
Webブラウザ5は、通信部11によりAI連携画面の画面情報を受信し、表示制御部12により、画面情報に基づいてAI連携画面を表示させる(ステップS510)。続いて、Webブラウザ5は、操作受付部13により、AI連携画面において、ルックアップの設定を選択する操作を受け付ける(ステップS511)。
【0109】
Webブラウザ5は、ルックアップの設定が選択されると、表示制御部12により、マスタアプリケーションを指定するための指定画面を表示させる(ステップS512)。
【0110】
Webブラウザ5は、マスタアプリケーションを指定する操作を受け付けると(ステップS513)、アプリケーションサービス40に対して、設定対象のアプリケーションに関する情報の取得要求を送信する(ステップS514)。
【0111】
具体的には、Webブラウザ5は、第2API27を呼び出すことで、アプリケーションに関する情報を取得するリクエストメッセージをアプリケーションサービス40に対して送信する。この取得要求には、設定対象のアプリケーションのアプリIDが含まれる。
【0112】
なお、アプリケーションに関する情報とは、JSON形式で記述された情報であり、アプリケーションで管理されているフィールドを含む情報である。言い換えれば、アプリケーションに関する情報とは、アプリケーションにおいて管理されるデータの項目を示す情報である。
【0113】
アプリケーションサービス40は、この取得要求を受け付けて、アプリIDで特定されるアプリケーションに関する情報をユーザ端末10に送信する(ステップS515)。アプリケーションサービス40から送信されるアプリケーションに関する情報は、JSON形式で記述されるものとする。
【0114】
また、Webブラウザ5は、アプリケーションサービス40に対して、マスタとして指定されたマスタアプリケーションに関する情報の取得要求を送信する(ステップS516)。なお、この取得要求には、ステップS513で指定されたマスタアプリケーションを特定する情報が含まれてよい。具体的には、この取得要求には、マスタアプリケーションを特定するアプリIDや、マスタアプリケーションの名称等が含まれてよい。
【0115】
アプリケーションサービス40は、この取得要求を受け付けて、アプリIDで特定されるマスタアプリケーションに関する情報をユーザ端末10に送信する(ステップS517)。マスタアプリケーションに関する情報の取得の詳細は、アプリケーションに関する情報の取得と同様である。
【0116】
なお、図5Aの例では、先に設定対象のアプリケーションに関する情報を取得し、次にマスタアプリケーションに関する情報を取得するものとしたが、これに限定されない。本実施形態では、マスタアプリケーションに関する情報を先に取得し、次に、設定対象のアプリケーションに関する情報を取得してもよい。
【0117】
続いて、Webブラウザ5は、表示制御部12により、ルックアップの設定を行うためのルックアップ設定画面を表示させる(ステップS518)。
【0118】
続いて、Webブラウザ5は、操作受付部13により、ルックアップの設定を指示するチャットメッセージの入力を受け付ける(ステップS519)。
【0119】
続いて、Webブラウザ5は、ルックアップの設定を指示するチャットメッセージを含めたリクエストメッセージを生成し、通信部11により、生成したリクエストメッセージを情報処理システム20に送信する(ステップS520)。
【0120】
ここで、ユーザ端末10から送信されるリクエストメッセージは、チャットメッセージに加え、設定対象のアプリケーションのアプリIDと、マスタアプリケーションのアプリIDと、アプリケーションに関する情報と、マスタアプリケーションに関する情報と、過去の会話の履歴とを含めてよい。
【0121】
また、過去の会話の履歴は情報処理システム20が保持しておいてもよい。その場合、過去の会話の履歴は、例えば、設定対象のアプリケーションのアプリIDと紐付けられて保持されてもよいし、新規に会話が行われる度の付与される会話のセッションIDと紐付けられて保持されてもよい。過去の会話の履歴を情報処理システム20が保持している場合は、ユーザ端末10の通信部11は、リクエストメッセージに過去の会話の履歴を含めなくてもよい。
【0122】
情報処理システム20は、ユーザ端末10からリクエストメッセージを受信すると、生成AIシステム50に送信するリクエストメッセージを生成し、生成したリクエストメッセージを、第1API26を呼び出すことにより生成AIシステム50に送信する(ステップS521)。
【0123】
ここで、情報処理システム20の処理を説明する。
【0124】
情報処理システム20は、ユーザ端末10からリクエストメッセージを受信すると、リクエストメッセージに含まれるチャットメッセージと過去の会話の履歴と、アプリケーションに関する情報と、をチャット制御部23に渡す。
【0125】
また、チャット制御部23は、設定情報記憶部24を参照し、チャットメッセージに応じた関数を特定する。ここでは、チャットメッセージは、ルックアップの設定を指示するチャットメッセージである。したがって、チャット制御部23は、設定情報記憶部24を参照して、生成AIシステム50が情報処理システム20に対してルックアップの設定を要求できるようにするルックアップ設定関数を特定する。
【0126】
そして、チャット制御部23は、ルックアップの設定を指示するチャットメッセージ、過去の会話の履歴、アプリケーションに関する情報、マスタアプリケーションに関する情報、ルックアップ設定関数を含むリクエストメッセージを生成し、第1API26を呼び出すことにより生成AIシステム50に送信する。なお、ここで生成AIシステム50に送信されるリクエストメッセージには、過去の会話の履歴が含まれなくてもよい。
【0127】
続いて、生成AIシステム50は、情報処理システム20から送信されたリクエストメッセージに対して、レスポンスメッセージを情報処理システム20に送信する(ステップS522)。このレスポンスメッセージは、チャットメッセージに対する応答メッセージである場合と、関数呼び出し要求を含む場合とがある。
【0128】
以下に示すステップS523、524は、生成AIシステム50からのレスポンスメッセージが応答メッセージである場合の処理を示す。また、以下のステップS525からステップS535までの処理は、生成AIシステム50からのレスポンスメッセージが関数呼び出し要求である場合の処理を示す。
【0129】
情報処理システム20は、チャット制御部23により、レスポンスメッセージ(応答メッセージ)を受け付けると、通信部21により、ユーザ端末10のWebブラウザ5に対して応答メッセージを送信し(ステップS523)、Webブラウザ5の表示制御部12により、応答メッセージをルックアップ設定画面に表示させる(ステップS524)。
【0130】
ここで表示される応答メッセージは、生成AIシステム50から出力された文字列そのものである。
【0131】
情報処理システム20は、チャット制御部23により、関数呼び出し要求を含むレスポンスメッセージを受け付けると、このレスポンスメッセージを通信部21により、ユーザ端末10のWebブラウザ5に対して送信する(ステップS525)。
【0132】
ユーザ端末10のWebブラウザ5は、レスポンスメッセージを受け付けて、ルックアップ設定部14を実現するルックアップ設定用プログラムが実行されて、レスポンスメッセージに含まれる文字列から、ルックアップの設定内容を確認するためのテキストデータを生成する(ステップS526)。
【0133】
ルックアップの設定内容とは、設定対象のアプリケーションと、マスタアプリケーションとを含む。また、ルックアップの設定内容は、設定対象のアプリケーションが管理するフィールドのうち、マスタアプリケーションが管理するフィールドと対応付けられるフィールドを含む。以下の説明では、設定対象のアプリケーションが管理するフィールドのうち、マスタアプリケーションが管理するフィールドと対応付けられるフィールドを、設定対象フィールドと表現する場合がある。
【0134】
また、ルックアップの設定内容は、マスタアプリケーションが管理するフィールドのうち、設定対象フィールドと対応付けられるフィールドを含む。以下の説明では、マスタアプリケーションが管理するフィールドのうち、設定対象フィールドと対応付けられるフィールドを、マスタフィールドと表現する場合がある。
【0135】
また、ステップS526において生成されるテキストデータは、例えば、設定対象のアプリケーションの名称とマスタアプリケーションの名称、設定対象フィールドの名称と、マスタフィールドの名称を含んでよい。
【0136】
続いて、Webブラウザ5は、表示制御部12により、ステップS526で生成されたテキストデータを表示させる(ステップS527)。言い換えれば、Webブラウザ5は、表示制御部12により、ルックアップの設定内容を確認させるための確認画面を表示させる。
【0137】
ユーザ端末10のWebブラウザ5は、ユーザにより、確認画面に表示された設定内容の確認が行われたことを示す操作を受け付けると(ステップS528)、ルックアップ設定部14により、アプリケーションサービス40に対して、ルックアップの設定を要求する。
【0138】
具体的には、ルックアップ設定部14は、アプリケーションサービス40に対して、過去に設定されたルックアップの設定を元に戻す要求を送信する(ステップS529)。アプリケーションサービス40は、要求に対する結果をWebブラウザ5に対して送信する(ステップS530)。
【0139】
具体的には、アプリケーションサービス40は、設定対象のアプリケーションに対して過去にルックアップの設定が行われていた場合には、この設定を取り消して設定対象のアプリケーションに対してルックアップが設定されていない状態とし、その結果をWebブラウザ5へ通知する。また、アプリケーションサービス40は、設定対象のアプリケーションに対してルックアップが設定されていない場合には、その旨を結果としてWebブラウザ5に通知する。
【0140】
なお、設定対象のアプリケーションに対して過去にルックアップの設定が行われていた場合とは、設定対象のアプリケーションが管理するフィールドの何れかが、他のアプリケーションが管理するフィールドと対応付けられていた場合である。他のアプリケーションには、ステップS513で指定されたマスタアプリケーションも含む。
【0141】
本実施形態では、この処理を行うことで、例えば、ユーザ端末10のユーザが設定対象のアプリケーションに対して一度ルックアップの設定を行った後に、もう一度設定をやりなおす場合であっても、再設定のための操作を行う必要がなくなる。
【0142】
次に、ルックアップ設定部14は、設定対象フィールドの削除を要求するリクエストメッセージをアプリケーションサービス40に対して送信する(ステップS531)。アプリケーションサービス40は、リクエストメッセージを受信すると、リクエストメッセージに応じて設定対象のアプリケーションが管理するフィールドの中から、設定対象フィールドを削除する。そして、アプリケーションサービス40は、その結果を示すレスポンスメッセージをWebブラウザ5に対して送信する(ステップS532)。
【0143】
続いて、ルックアップ設定部14は、マスタフィールドと対応付けた設定対象フィールドの、設定対象のアプリケーションが管理するフィールドへの追加を要求するリクエストメッセージを、アプリケーションサービス40に対して送信する(ステップS533)。アプリケーションサービス40は、リクエストメッセージを受信すると、リクエストメッセージに応じて、マスタフィールドと対応付けられた設定対象フィールドを、設定対象のアプリケーションが管理するフィールドに追加する。そして、アプリケーションサービス40は、その結果を示すレスポンスメッセージをWebブラウザ5に通知する(ステップS534)。
【0144】
本実施形態では、このように、設定対象のアプリケーションが管理するフィールドとから、一度、設定対象フィールドを削除し、設定対象フィールドをマスタフィールドと対応付けた後に、新たに設定対象のアプリケーションが管理するフィールドに追加する。このようにすることで、マスタフィールドと対応付けられる前の設定対象フィールドの値を一括して削除し、マスタフィールドと対応付けられた後の設定対象フィールドの値を、マスタフィールドの値に書き換えることができる。
【0145】
Webブラウザ5は、アプリケーションサービス40から、マスタフィールドと設定対象フィールドとが対応付けられると、表示制御部12により、ルックアップの設定が完了したことを示すメッセージを表示させる(ステップS535)。
【0146】
本実施形態の設定システム100では、ステップS523からステップS535までの処理を、ユーザによるルックアップの設定が終了するまで繰り返す。
【0147】
なお、本実施形態では、設定対象フィールドを一度削除してから、マスタフィールドと対応付けた設定対象フィールドを新たに追加するものとしたが、これに限定されない。本実施形態では、設定対象フィールドを削除せずに、既存の設定対象フィールドに対してマスタフィールドを対応づけるようにしてもよい。この場合、既存の設定対象フィールドの値は、マスタフィールドの値が上書きされてもよい。
【0148】
本実施形態では、このようにすることで、ユーザ端末10のユーザは、マスタアプリケーションを指定して、ルックアップの設定に関するチャットメッセージを入力するだけで、所望のアプリケーションに対してルックアップを設定できる。言い換えれば、本実施形態では、ユーザ端末10のユーザが所望するアプリケーションと、他のアプリケーションと対応付けて、それぞれのアプリケーションが管理するフィールドの値を共有させることができる。
【0149】
(第二の実施形態)
以下に図面を参照して、第二の実施形態について説明する。第二の実施形態は、アプリケーションサービス40の管理者と、情報処理システム20の管理者とが異なり、ユーザ端末10において2つのWebブラウザが連携する点が、第一の実施形態と相違する。よって、以下の第二の実施形態では、第一の実施形態との相違点について説明し、第一の実施形態と同様の機能構成を有するものには、第一の実施形態の説明で用いた符号と同様の符号を付与し、その説明を省略する。
【0150】
図6は、第二の実施形態の設定システムの有する各装置の機能を説明する図である。
【0151】
本実施形態の設定システム100Aは、ユーザ端末10A、情報処理システム20、アプリケーションサービス40、生成AIシステム50、開発者端末60を含む。
【0152】
本実施形態のユーザ端末10Aは、Webブラウザ5A、Webブラウザ5Bを有する。本実施形態のWebブラウザ5Aは、アプリケーションサービス40の提供者によって提供される。Webブラウザ5Bは、情報処理システム20の提供者によって提供される。Webブラウザ5Aは、第一のWebブラウザの一例であり、Webブラウザ5Bは、第二のWebブラウザの一例である。
【0153】
Webブラウザ5Aは、通信部11A、表示制御部12、操作受付部13、ブラウザ間連携部15を有する。
【0154】
通信部11Aは、アプリケーションサービス40との間で情報の送受信を行う。通信部11Aは、アプリケーションの一覧画面の画面情報や、設定対象のアプリケーションに関する情報、マスタアプリケーションに関する情報等をアプリケーションサービス40から受信する。
【0155】
ブラウザ間連携部15は、Webブラウザ5Bとの間で情報の送受信を行う。例えば、ブラウザ間連携部15は、通信部11Aがアプリケーションサービス40から受信したアプリケーションに関する情報をWebブラウザ5Bに渡す。
【0156】
Webブラウザ5Bは、情報処理システム20を介して生成AIシステム50と通信するWebブラウザである。
【0157】
Webブラウザ5Bは、通信部16、表示制御部17、操作受付部18、ブラウザ間連携部19、ルックアップ設定部14を有する。
【0158】
通信部16は、情報処理システム20との間で情報の送受信を行う。通信部16は、例えば、Webブラウザ5Bにおいて入力されたチャットメッセージを情報処理システム20に送信する。また、通信部16は、情報処理システム20が生成AIシステム50から受け取ったレスポンスメッセージを、情報処理システム20から受信する。
【0159】
ブラウザ間連携部19は、Webブラウザ5Aとの間で情報の送受信を行う。例えば、ブラウザ間連携部19は、通信部16が情報処理システム20から受信した、生成AIシステム50からのレスポンスメッセージをWebブラウザ5Aに渡す。
【0160】
本実施形態では、このように、1つのユーザ端末10に、同時に複数のWebブラウザを実行させることができる。ブラウザ間連携部15は、Webブラウザ5Aから他方のWebブラウザ5Bに情報を通知できる。また。ブラウザ間連携部19は、Webブラウザ5Bから他方のWebブラウザ5Aに情報を通知できる。
【0161】
本実施形態では、このように複数のWebブラウザを連携させることで、一方のWebブラウザのみが特定のWebサイト(例えばアプリケーションサービス40)について認証情報を保持している場合、他方のWebブラウザは一方のWebブラウザと連携して、特定のWebサイトと通信できる。
【0162】
言い換えれば、本実施形態では、Webブラウザ5AとWebブラウザ5Bが通信を行うことで、Webブラウザ5Bは、アプリケーションサービス40の認証情報を保持しているWebブラウザ5Aと連携して、アプリケーションサービス40と通信できる。
【0163】
次に、図7A図7Bを参照して、本実施形態の設定システム100Aの動作について説明する。図7Aは、第二の実施形態のアプリ編集システムの動作を説明する第一のシーケンス図であり、図7Bは、第二の実施形態のアプリ編集システムの動作を説明する第二のシーケンス図である。
【0164】
図7Aにおける、ステップS701からステップS706まで処理は、Webブラウザ5の代わりにWebブラウザ5Aが処理を行うこと以外は、図5AのステップS501からステップS506までの処理と同様であるから、説明を省略する。
【0165】
ユーザ端末10のWebブラウザ5Aは、ステップS706において、設定対象のアプリケーションと生成AIシステム50との連携を指示する操作を受け付けると、ブラウザ間連携部15により、Webブラウザ5Bを起動させる(ステップS707)。
【0166】
このブラウザ間連携部15の処理により、Webブラウザ5Bがユーザ端末10にポップアップ表示される。また、このとき、ブラウザ間連携部15は、Webブラウザ5Bに対し、ステップS702で設定対象に選択されたアプリケーションのアプリIDをURL等で通知する。なお、Webブラウザ5Bの起動は、設定対象のアプリケーションのアプリ画面の画面情報に含まれるJavaScriptが行う。
【0167】
ユーザ端末10AのWebブラウザ5Bは、Webブラウザ5Aから通知された、アプリIDを使用して、情報処理システム20に対してAI連携画面の画面情報の取得要求を送信する(ステップS708)。ここで情報処理システム20に送信される取得要求には、設定対象のアプリケーションのアプリIDが含まれる。
【0168】
情報処理システム20は、AI連携画面の画面情報(HTML、JavaScript、CSS等)を生成し(ステップS709)、AI連携画面の画面情報をユーザ端末10のWebブラウザ5Bに送信する(ステップS710)。Webブラウザ5Bは、通信部16により、AI連携画面の画面情報を情報処理システム20から受信する。なお、AI連携画面に画面情報には、JavaScriptで記述されたルックアップ設定用プログラムが含まれる。
【0169】
ユーザ端末10のWebブラウザ5Bは、表示制御部17により、AI連携画面を表示させる(ステップS711)。
【0170】
図7AのステップS712からステップS714までの処理は、Webブラウザ5に代えてWebブラウザ5Bが処理を行うこと以外は、図5AのステップS511からステップS513までの処理と同様であるから、説明を省略する。
【0171】
Webブラウザ5Bは、ステップS714において、マスタアプリケーションを指定する操作を受け付けると、Webブラウザ5Aに対して、設定対象のアプリケーションに関する情報の取得要求を送信する(ステップS715)。この取得要求には、設定対象のアプリケーションのアプリIDが含まれてよい。Webブラウザ5Aは、この取得要求をアプリケーションサービス40に対して送信する(ステップS716)。
【0172】
アプリケーションサービス40は、Webブラウザ5Aからの取得要求に応じて、設定対象のアプリケーションに関する情報をWebブラウザ5Aに送信する(ステップS717)。Webブラウザ5Aは、アプリケーションサービス40から取得した、設定対象のアプリケーションに関する情報をWebブラウザ5Bに送信する(ステップS718)。
【0173】
また、Webブラウザ5Bは、マスタアプリケーションに関する情報の取得要求をWebブラウザ5Aに送信する(ステップS719)。この取得要求には、マスタアプリケーションのアプリIDが含まれてよい。Webブラウザ5Aは、この取得要求をアプリケーションサービス40に対して送信する(ステップS720)。
【0174】
アプリケーションサービス40は、Webブラウザ5Aからの取得要求に応じて、マスタアプリケーションに関する情報をWebブラウザ5Aに送信する(ステップS721)。Webブラウザ5Aは、アプリケーションサービス40から取得した、マスタアプリケーションに関する情報をWebブラウザ5Bに送信する(ステップS722)。
【0175】
Webブラウザ5は、設定対象のアプリケーションに関する情報と、マスタアプリケーションに関する情報とを取得すると、表示制御部17により、ルックアップ設定画面を表示させる(ステップS723)。
【0176】
ステップS724からステップS734まで処理は、Webブラウザ5に代えてWebブラウザ5Bが処理を行うこと以外は、図5AのステップS519からステップS528までの処理と同様であるから、説明を省略する。
【0177】
Webブラウザ5Bは、ステップS733において、設定内容の確認が行われたことを示す操作を受け付けると、Webブラウザ5Aに対して、設定内容に基づくルックアップの設定を要求する(ステップS735)。
【0178】
Webブラウザ5Aは、ルックアップの設定の要求を受け付けると、ルックアップの設定を要求するリクエストメッセージをアプリケーションサービス40に対して送信する。
【0179】
図7BのステップS736からステップS741までの処理は、Webブラウザ5に代えてWebブラウザ5Aが処理を行うこと以外は、図5BのステップS529からステップS534までの処理と同様であるから、説明を省略する。
【0180】
Webブラウザ5Aは、ステップS741において、マスタフィールドと設定対象フィールドとが対応付けられると、Webブラウザ5Bに対してルックアップの設定を行った結果の表示を要求する(ステップS742)。
【0181】
Webブラウザ5Bは、この要求を受け付けて、表示制御部17により、ルックアップの設定が完了したことを示すメッセージを表示させる(ステップS743)。
【0182】
本実施形態では、ユーザ端末10のユーザによるルックアップの設定の操作が終了するまで、ステップS728からステップS743までの処理を繰り返す。
【0183】
本実施形態では、このように、1つのユーザ端末10において、提供元の異なるWebブラウザ5AとWebブラウザ5Bとを連携させる。
【0184】
こうすることで、Webブラウザ5Bは、アプリケーションサービス40へアクセスするための認証情報を保持していなくても、アプリケーションサービス40へアクセスするための認証情報を保持するWebブラウザ5Aを介して、アプリケーションサービス40と通信することができる。
【0185】
したがって、アプリケーションサービス40の提供元と、情報処理システム20の提供元とが異なり、Webブラウザ5AとWebブラウザ5Bのドメインが異なる場合であっても、アプリケーションサービス40が提供するアプリケーションに、情報処理システム20が提供する機能を連携させることができる。
【0186】
以下に、図8乃至図13を参照して、本実施形態の設定システム100Aの動作をより具体的に説明する。
【0187】
図8は、ユーザ端末の表示例を示す第一の図である。図8に示す画面81は、例えば、図7AのステップS701において、Webブラウザ5Aがディスプレイに表示させるアプリケーション一覧画面の一例である。
【0188】
画面81は、表示領域82を含み、表示領域82には、アプリケーションサービス40が提供するアプリケーションのうち、ユーザ端末10のユーザによる利用が許容されたアプリケーションの一覧が表示される。
【0189】
本実施形態のWebブラウザ5Aは、表示領域82において、設定対象のアプリケーションが選択されると、アプリケーションサービス40から、選択されたアプリケーションのアプリ画面の画面情報を取得し、ディスプレイにアプリ画面を表示させる。
【0190】
図9は、ユーザ端末の表示例を示す第二の図である。図9に示す画面91は、例えば、図7AのステップS705において、Webブラウザ5Aがディスプレイに表示させるアプリ画面の一例である。図9に示す画面91は、図8に示す画面81において、ルックアップの設定対象のアプリケーションとして、「有給申請アプリケーション」が選択された場合のアプリ画面を示す。
【0191】
画面91は、操作ボタン92と、表示領域93とを含む。操作ボタン92は、Webブラウザ5Bを起動させてAI連携画面を表示させるための操作ボタンである。表示領域93には、「有給申請アプリケーション」において管理されるフィールドの一覧が表示される。
【0192】
本実施形態では、Webブラウザ5Aは、操作ボタン92が操作されると、設定対象のアプリケーションと生成AIシステム50との連携が指示されたものとして、Webブラウザ5Bの起動し、画面91上に、Webブラウザ5Bをポップアップ表示させる。
【0193】
図10は、ユーザ端末の表示例を示す第三の図である。図10に示す画面91Aは、例えば、図7AのステップS711において、ユーザ端末10に表示される画面の一例である。具体的には、画面91Aは、Webブラウザ5Bによりポップアップ表示されたAI連携画面を含む画面の一例を示す。
【0194】
画面91Aは、Webブラウザ5Bによって表示されるポップアップウィンドウ94を含む。ポップアップウィンドウ94は、AI連携画面の一例である。表示領域95を含み、表示領域95には、操作ボタン95a、95b、95cが表示されている。
【0195】
操作ボタン95a、95bは、ステップS702で選択されたアプリケーションを編集するための操作ボタンである。操作ボタン95aは、フィールドを追加とするための操作ボタンである。操作ボタン95aが操作されると、ポップアップウィンドウ94を表示させるための画面情報に含まれる編集処理用プログラムが実行されて、アプリケーションにフィールドを追加する処理が行われてもよい。
【0196】
操作ボタン95bは、アプリケーションで管理するレコードを追加するための操作ボタンである。
【0197】
また、操作ボタン95cは、ステップS702で選択されたアプリケーションに対してルックアップを設定するための操作ボタンである。言い換えれば、操作ボタン95cは、設定対象のアプリケーションに対してルックアップを設定するための操作ボタンである、以下の説明では、図10に示す画面91Aにおいて、操作ボタン95cが操作されたものとする。
【0198】
また、図10の例では、ポップアップウィンドウ94は、画面91A上に重ねて表示されているが、ポップアップウィンドウ94は、ユーザ端末10のディスプレイにおいて、画面91Aが表示された領域とは別の領域に表示されてもよい。
【0199】
また、ポップアップウィンドウ94には、アプリケーションが管理するフィールドを削除するための操作ボタンや、フィールドを更新するための操作ボタン等が表示されてもよい。また、これらの操作ボタンが操作されると、ポップアップウィンドウ94を表示させるための画面情報に含まれる、フィールドを削除するためのプログラムや、フィールドを更新するためのプログラムが実行されて、フィールドの削除や更新が行われてよい。
【0200】
図11は、ユーザ端末の表示例を示す第四の図である。図11に示す画面91Bは、例えば、図7AのステップS713において、ユーザ端末10に表示される画面の一例である。具体的には、画面91Bは、ポップアップウィンドウ94Aを含む。ポップアップウィンドウ94Aは、入力欄96a、操作ボタン96bを含む。入力欄96aは、マスタアプリケーションを指定する情報を入力するための入力欄である。図11の例では、入力欄96aには、マスタアプリケーションのアプリIDが入力される。
【0201】
なお、入力欄96aに入力される情報は、マスタアプリケーションのアプリIDに限定されない。入力欄96aには、例えば、マスタアプリケーションの名称等が入力されてもよい。また、入力欄96aには、検索キーとなるアプリケーションの名称が入力されてもよい。その場合、ポップアップウィンドウ94Aには、検索結果が表示されてよい。そして、検索結果において選択されたアプリケーションをマスタアプリケーションとされてもよい。
【0202】
操作ボタン96bは、入力欄96aにおいて指定されたアプリケーションをマスタアプリケーションとしたルックアップの設定画面を表示させるための操作ボタンである。
【0203】
図12は、ユーザ端末の表示例を示す第五の図である。図12では、画面91Bのポップアップウィンドウ94Aの入力欄96aにマスタアプリケーションのアプリIDが入力された状態を示す。
【0204】
Webブラウザ5Bは、図12に示す画面91Bにおいて操作ボタン96bが操作されると、ルックアップの設定画面を表示させる。
【0205】
図13は、ユーザ端末の表示例を示す第六の図である。図13に示す画面91Cは、例えば、図7AのステップS723において、ユーザ端末10に表示されるルックアップ設定画面の一例である。画面91Cは、ポップアップウィンドウ94Bを含む。ポップアップウィンドウ94Bは、表示領域97a、97b、97c、入力欄97d、操作ボタン97eを含む。
【0206】
表示領域97aは、ルックアップの設定に関する注意事項を示す情報が表示される。表示領域97bは、設定対象のアプリケーションの名称と、マスタアプリケーションの名称とが表示される。表示領域97cは、ルックアップの設定を促すメッセージが表示される。
【0207】
入力欄97dは、ルックアップの設定に関するチャットメッセージが入力される。また、入力欄97dは、操作ボタン97eを含む。Webブラウザ5Bは、入力欄97dにチャットメッセージが入力されて、操作ボタン97eが操作されると、入力されたチャットメッセージを情報処理システム20に送信する。
【0208】
図14は、ユーザ端末の表示例を示す第七の図である。図14に示す画面91Dは、例えば、図7BのステップS732において、ユーザ端末10に表示される設定内容の確認画面の一例である。
【0209】
図14に示す画面91Dは、図13に示す画面91Cの入力欄97dにおいて、「社員名をキーにルックアップを設定して。部署をコピーして。」というチャットメッセージが入力された場合を示す。
【0210】
画面91Dは、ポップアップウィンドウ94Cを含む。ポップアップウィンドウ94Cは、表示領域98a、98b、98c、98d、操作ボタン98e、98fを含む。
【0211】
表示領域98aは、ユーザ端末10のユーザと生成AIシステム50との対話に関する注意事項が表示される。表示領域98bは、設定対象のアプリケーションを特定する情報として、設定対象のアプリケーションのURLが表示される。表示領域98cは、図13に示す画面91Cにおいて、ユーザにより入力されたチャットメッセージが表示される。
【0212】
表示領域98dは、ルックアップの設定内容を示す情報が表示される。具体的には、表示領域98dは、設定対象フィールドの名称、マスタフィールドの名称が表示される。画面91Dの例では、設定対象フィールドは「社員名」であり、マスタフィールドは「氏名」となる。
【0213】
また、表示領域98dでは、マスタアプリケーションが管理するフィールドのうち「所属部署」の値が、設定対象のアプリケーションが管理するフィールド「所属部署」の値にコピーされることが表示される。
【0214】
また、表示領域98dは、操作ボタン98e、98fを含む。操作ボタン98eは、ポップアップウィンドウ94Cに表示された設定内容をキャンセルするための操作ボタンである。操作ボタン98fは、ポップアップウィンドウ94Cに表示された設定内容を確認したことを示す操作ボタンである。
【0215】
Webブラウザ5Bは、画面91Dにおいて、操作ボタン98fが操作されると、Webブラウザ5Aに対してルックアップの設定を要求する。
【0216】
次に、チャットメッセージが入力された場合に、Webブラウザ5Bから情報処理システム20に対して送信されるリクエストメッセージについて説明する。
【0217】
図15は、チャットメッセージが入力された場合のリクエストメッセージの一例を示す図である。
【0218】
図15に示す記述150は、図13に示す画面91Cにおいて、「社員名をキーにルックアップを設定して。部署をコピーして。」というチャットメッセージが入力された場合に、Webブラウザ5Bから情報処理システム20に送信されるリクエストメッセージを示す。言い換えれば、記述150が示すリクエストメッセージは、図7BのステップS725において、Webブラウザ5Bから情報処理システム20に送信されるリクエストメッセージである。
【0219】
情報処理システム20は、記述150で示されるリクエストメッセージを受信すると、生成AIシステム50に送信するリクエストメッセージを生成し、生成AIシステム50に送信する。また、情報処理システム20は、生成AIシステム50から、リクエストメッセージに対するレスポンスメッセージを受信すると、このレスポンスメッセージをWebブラウザ5Bに送信する。
【0220】
図16は、情報処理システムから受信したレスポンスメッセージの一例を示す図である。図16に示す記述160は、図15の記述150が示すリクエストメッセージに対すレスポンスメッセージを示す。記述160が示すレスポンスメッセージは、図7BのステップS728において、情報処理システム20からWebブラウザ5Bに送信されるレスポンスメッセージである。
【0221】
Webブラウザ5Bは、記述160で示すレスポンスメッセージを受信すると、このレスポンスメッセージをWebブラウザ5Aへ送信する。Webブラウザ5Aは、このレスポンスメッセージを受信すると、設定対象フィールドの削除と追加を行う。
【0222】
図17は、設定対象フィールドの削除を要求するリクエストメッセージの一例を示す図である。図17に示す記述170は、アプリケーションサービス40に対し、設定対象のアプリケーションである有給申請アプリケーションから、設定対象フィールドである「社員名」の削除を要求するリクエストメッセージを示す。なお、記述170では、設定対象のアプリケーションのアプリIDは「100」である。記述170が示すリクエストメッセージは、図7BのステップS738において、Webブラウザ5Aからアプリケーションサービス40に送信される。
【0223】
図18は、マスタフィールドと対応付けられた設定対象フィールドの追加を要求するリクエストメッセージの一例を示す図である。図18に示す記述180では、設定対象のアプリケーションが管理するフィールドに対し、マスタフィールド「氏名」と対応付けられた設定対象フィールド「社員名」の追加を要求するリクエストメッセージを示す。記述180が示すリクエストメッセージは、図7のステップS740において、Webブラウザ5Aからアプリケーションサービス40に送信される。
【0224】
記述180において、設定対象のアプリケーションのアプリIDは「100」であり、マスタアプリケーションのアプリIDは「1032」である。また、記述180においては、マスタアプリケーションのフィールド「所属部署」の値を、設定対象のアプリケーションのフィールド「所属部署」の値とする設定がされていることがわかる。
【0225】
なお、上記で説明した実施形態の各機能、一又は複数の処理回路によって実現することが可能である。ここで、本明細書における「処理回路」とは、電子回路により実装されるプロセッサのようにソフトウェアによって各機能を実行するようプログラミングされたプロセッサや、上記で説明した各機能を実行するよう設計されたASIC(Application Specific Integrated Circuit)、DSP(digital signal processor)、FPGA(field programmable gate array)や従来の回路モジュール等のデバイスを含むものとする。
【0226】
また、各実施形態に記載された装置群は、本明細書に開示された実施形態を実施するための複数のコンピューティング環境のうちの1つを示すものにすぎない。
【0227】
ある実施形態では、情報処理システム20を構成する情報処理装置は、サーバクラスタといった複数のコンピューティングデバイスを含む。複数のコンピューティングデバイスは、ネットワークや共有メモリなどを含む任意のタイプの通信リンクを介して互いに通信するように構成されており、本明細書に開示された処理を実施する。同様に、情報処理システム20を構成する情報処理装置とは、互いに通信するように構成された複数のコンピューティングデバイスを含むことができる。
【0228】
さらに、情報処理システム20を構成する情報処理装置は、開示された処理ステップ、を様々な組み合わせで共有するように構成できる。例えば、所定のユニットによって実行されるプロセスは、情報処理システム20を構成する情報処理装置によって実行され得る。同様に、所定のユニットの機能は情報処理システム20を構成する情報処理装置によって実行することができる。また、情報処理システム20を構成する情報処理装置において、それぞれが有する各要素は、1つのサーバ装置にまとめられていても良いし、複数の装置に分けられていても良い。
【0229】
なお、情報処理システム20を構成する情報処理装置は、通信機能を備えた装置であればよい。情報処理装置200は、例えば、PJ(Projector:プロジェクタ)、IWB(Interactive White Board:相互通信が可能な電子式の黒板機能を有する白板)、デジタルサイネージ等の出力装置、HUD(Head Up Display)装置、産業機械、撮像装置、集音装置、医療機器、ネットワーク家電、自動車(Connected Car)、ノートPC(Personal Computer)、携帯電話、スマートフォン、タブレット端末、ゲーム機、PDA(Personal Digital Assistant)、デジタルカメラ、ウェアラブルPCまたはデスクトップPC等であってもよい。
【0230】
本発明の態様は、例えば、以下のとおりである。
<1>
端末装置及び生成AIシステムとネットワークを介して通信する情報処理装置であって、
前記端末装置から、アプリケーションの識別情報を含む、前記アプリケーションのフィールドを他のアプリケーションのフィールドと対応づけるための設定画面の画面情報の取得要求を受信して、前記生成AIシステムからのレスポンスメッセージに応じて前記アプリケーションのフィールドを他のアプリケーションのフィールドと対応づける設定を行う設定用プログラムを含む前記画面情報を、前記端末装置に送信する通信部と、
前記通信部が、前記端末装置から、前記端末装置に表示された前記設定画面に入力された、前記設定の設定内容を含むチャットメッセージを受信すると、前記チャットメッセージと、前記識別情報で特定される前記アプリケーションに関する情報と、前記設定内容を定義した関数を呼び出すための情報と、前記他のアプリケーションに関する情報とを前記生成AIシステムに送信し、前記生成AIシステムから、前記設定内容を定義した関数の呼び出しを含むレスポンスメッセージを受け付けるチャット制御部と、を有し、
前記通信部は、さらに、
前記チャット制御部が受け付けた、前記設定内容を定義した関数の呼び出しを含むレスポンスメッセージを前記端末装置に送信し、前記設定内容を定義した関数に基づく処理を実行させる、情報処理装置。
<2>
前記端末装置は、前記アプリケーションを提供するアプリケーションサービスと通信を行う第一のWebブラウザと、前記第一のWebブラウザと通信を行う第二のWebブラウザとを有し、
前記通信部は、
前記第一のWebブラウザに対する操作に応じて前記第一のWebブラウザから前記第二のWebブラウザに送信された前記画面情報の取得要求を、前記第二のWebブラウザから受信し、前記画面情報を前記第二のWebブラウザに送信し、
前記チャット制御部は、
前記第二のWebブラウザが表示させた前記設定画面に入力された前記チャットメッセージを前記生成AIシステムの送信し、
前記通信部は、さらに、
前記チャット制御部が受け付けた前記生成AIシステムからの前記レスポンスメッセージを、前記第二のWebブラウザに対して送信する、<1>記載の情報処理装置。
<3>
前記アプリケーションに関する情報及び前記他のアプリケーションに関する情報は、
前記第一のWebブラウザによって前記アプリケーションサービスから取得される情報であって、
前記通信部は、
前記第二のWebブラウザを介して前記アプリケーションに関する情報及び前記他のアプリケーションに関する情報を受信する、<2>載の情報処理装置。
<4>
前記通信部は、
前記第二のWebブラウザから送信される前記チャットメッセージと共に、前記第二のWebブラウザから、前記アプリケーションに関する情報を受信する、<2>又は<3>記載の情報処理装置。
<5>
前記設定用プログラムは、
前記レスポンスメッセージに、前記設定内容を定義した関数の関数呼び出し要求が含まれる場合に、
前記端末装置に、
前記関数呼び出し要求に応じた前記アプリケーションのフィールドを他のアプリケーションのフィールドと対応づける処理を実行させる、<1>乃至<4>の何れか一項に記載の情報処理装置。
<6>
前記チャット制御部は、前記生成AIシステムに対して、過去の会話履歴を示す情報を送信する、<1>乃至<5>の何れか一項記載の情報処理装置。
<7>
前記画面情報は、
前記生成AIシステムからのレスポンスメッセージに応じてアプリケーションの編集を行うプログラムを含む、<1>乃至<6>の何れか一項に記載の情報処理装置。
<8>
前記設定画面は、
前記アプリケーションのフィールドの値に前記アプリケーションのフィールドと対応付けられた前記他のアプリケーションのフィールドの値を入力するルックアップ機能を、前記アプリケーションに追加するための設定画面である、<1>乃至<7>の何れか一項記載の情報処理装置。
<9>
端末装置、及び、生成AIシステムと情報処理装置がネットワークを介して通信する設定システムであって、
前記情報処理装置は、
前記端末装置から、アプリケーションの識別情報を含む、前記アプリケーションのフィールドを他のアプリケーションのフィールドと対応づけるための設定画面の画面情報の取得要求を受信して、前記生成AIシステムからのレスポンスメッセージに応じて前記アプリケーションのフィールドを他のアプリケーションのフィールドと対応づける設定を行う設定用プログラムを含む前記画面情報を、前記端末装置に送信する通信部と、
前記通信部が、前記端末装置から、前記端末装置に表示された前記設定画面に入力された、前記設定の設定内容を含むチャットメッセージを受信すると、前記チャットメッセージと、前記識別情報で特定される前記アプリケーションに関する情報と、前記設定内容を定義した関数を呼び出すための情報と、前記他のアプリケーションに関する情報とを前記生成AIシステムに送信し、前記生成AIシステムから、前記設定内容を定義した関数の呼び出しを含むレスポンスメッセージを受け付けるチャット制御部と、を有し、
前記通信部は、さらに、
前記チャット制御部が受け付けた、前記設定内容を定義した関数の呼び出しを含むレスポンスメッセージを前記端末装置に送信し、
前記端末装置は、
Webブラウザを有し、
前記Webブラウザは、前記レスポンスメッセージに、前記設定内容を定義した関数の関数呼び出し要求が含まれる場合に、前記設定用プログラムを前記端末装置に実行させる、設定システム。
<10>
端末装置及び生成AIシステムとネットワークを介して通信する情報処理装置に、
前記端末装置から、アプリケーションの識別情報を含む、前記アプリケーションのフィールドを他のアプリケーションのフィールドと対応づけるための設定画面の画面情報の取得要求を受信して、前記生成AIシステムからのレスポンスメッセージに応じて前記アプリケーションのフィールドを他のアプリケーションのフィールドと対応づける設定を行う設定用プログラムを含む前記画面情報を、前記端末装置に送信する処理と、
前記端末装置から、前記端末装置に表示された前記設定画面に入力された、前記設定の設定内容を含むチャットメッセージを受信すると、前記チャットメッセージと、前記識別情報で特定される前記アプリケーションに関する情報と、前記設定内容を定義した関数を呼び出すための情報と、前記他のアプリケーションに関する情報とを前記生成AIシステムに送信し、前記生成AIシステムから、前記設定内容を定義した関数の呼び出しを含むレスポンスメッセージを受け付ける処理と、
前記生成AIシステムから受け付けた、前記設定内容を定義した関数の呼び出しを含むレスポンスメッセージを前記端末装置に送信し、前記設定内容を定義した関数に基づく処理を実行させる処理と、を実行させる、プログラム。
<11>
端末装置及び生成AIシステムとネットワークを介して通信する情報処理装置が、
前記端末装置から、アプリケーションの識別情報を含む、前記アプリケーションのフィールドを他のアプリケーションのフィールドと対応づけるための設定画面の画面情報の取得要求を受信して、前記生成AIシステムからのレスポンスメッセージに応じて前記アプリケーションのフィールドを他のアプリケーションのフィールドと対応づける設定を行う設定用プログラムを含む前記画面情報を、前記端末装置に送信し、
前記端末装置から、前記端末装置に表示された前記設定画面に入力された、前記設定の設定内容を含むチャットメッセージを受信すると、前記チャットメッセージと、前記識別情報で特定される前記アプリケーションに関する情報と、前記設定内容を定義した関数を呼び出すための情報と、前記他のアプリケーションに関する情報とを前記生成AIシステムに送信し、前記生成AIシステムから、前記設定内容を定義した関数の呼び出しを含むレスポンスメッセージを受け付け、
前記生成AIシステムから受け付けた、前記設定内容を定義した関数の呼び出しを含むレスポンスメッセージを前記端末装置に送信し、前記設定内容を定義した関数に基づく処理を実行させる、情報処理方法。
以上、各実施形態に基づき本発明の説明を行ってきたが、上記実施形態に示した要件に本発明が限定されるものではない。これらの点に関しては、本発明の主旨をそこなわない範囲で変更することができ、その応用形態に応じて適切に定めることができる。
【符号の説明】
【0231】
5、5A、5B Webブラウザ
10 ユーザ端末
14 ルックアップ設定部
15、19 ブラウザ間連携部
20 情報処理システム
22 画面生成部
23 チャット制御部
24 設定情報記憶部
25 設定プログラム出力部
40 アプリケーションサービス
50 生成AIシステム
100 設定システム
【先行技術文献】
【特許文献】
【0232】
【特許文献1】特開2023-018851号公報
図1
図2
図3
図4
図5A
図5B
図6
図7A
図7B
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18