(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B1)
(11)【特許番号】
(24)【登録日】
(45)【発行日】
(54)【発明の名称】AIエージェントサービスを提供するための装置、方法、及びプログラム
(51)【国際特許分類】
【FI】
(21)【出願番号】
(22)【出願日】
【審査請求日】
【早期審査対象出願】
(73)【特許権者】
【識別番号】399037405
【氏名又は名称】楽天グループ株式会社
(74)【代理人】
【識別番号】100207837
【氏名又は名称】小松原 寿美
(72)【発明者】
【氏名】高 韵涛
(72)【発明者】
【氏名】▲馬▼ 元
【審査官】田中 慎太郎
(56)【参考文献】
【文献】FireFoxのAIチャットボットをローカルLLMで使用する,日本,あわしろいくや,2026年03月04日,https://gihyo.jp/admin/serial/01/ubuntu-recipe/0902
【文献】OllamaのLLMを選択してみた,日本,hkane8,2025年08月08日,https://hkane8.hatenablog.com/entry/2025/08/08/105557
【文献】ローカルとクラウドLLMのハイブリッドAI活用~セキュリティとプライバシー保護の観点から~,日本,しろくま(Hiroki, Nomura),2025年12月08日,https://zenn.dev/nomhiro/articles/hybrid-ai-local-azure-security
(58)【調査した分野】(Int.Cl.,DB名)
G06F 3/0481
G06F 9/451
(57)【特許請求の範囲】
【請求項】
1以上のプロセッサと、
前記1以上のプロセッサにより実行されるプログラムコードを格納する1以上のメモリと、を備える装置であって、前記プログラムコードが、
ディスプレイの画面上に表示されたアイコンオブジェクトに対する規定のアクションを検知するように構成されるアクション検知コードと、
前記規定のアクションの検知に応答して、前記ディスプレイに操作メニューを表示させるように構成されるメニュー表示コードと、を含み、
前記操作メニューの表示位置は、前記アイコンオブジェクトの現在位置を基準とした相対位置であり、
前記操作メニューは、前記装置外にある1以上の外部学習モデルを利用するクラウドモードと、前記装置に含まれる1以上の内部学習モデルを利用するデバイスモードと、を選択するためのモード選択部を含
み、
前記クラウドモードと前記デバイスモードとは択一的に選択される処理モードであり、
前記操作メニューは、複数のタスクに対応する複数の選択要素を含み、
前記プログラムコードが、前記複数の選択要素のうちの1つが選択されることに応答して、選択要素の選択を通じて選択されたタスクに対応する入力画面を前記画面に表示させるように構成される表示制御コードを含み、
前記入力画面が現在の処理モードを示すモード表示を含む、装置。
【請求項】
1以上のプロセッサと、
前記1以上のプロセッサにより実行されるプログラムコードを格納する1以上のメモリと、を備える装置であって、前記プログラムコードが、
ディスプレイの画面上に表示されたアイコンオブジェクトに対する規定のアクションを検知するように構成されるアクション検知コードと、
前記規定のアクションの検知に応答して、前記ディスプレイに操作メニューを表示させるように構成されるメニュー表示コードと、を含み、
前記操作メニューの表示位置は、前記アイコンオブジェクトの現在位置を基準とした相対位置であり、
前記操作メニューは、前記装置外にある1以上の外部学習モデルを利用するクラウドモードと、前記装置に含まれる1以上の内部学習モデルを利用するデバイスモードと、を選択するためのモード選択部を含
み、
前記クラウドモードと前記デバイスモードとは択一的に選択される処理モードであり、
前記メニュー表示コードが、現在の処理モードに応じて、前記操作メニューの表示を切り替えるように構成され、
前記現在の処理モードが前記デバイスモードの場合、前記操作メニューは、複数のタスクに対応する複数の選択要素を含み、
前記現在の処理モードが前記クラウドモードの場合、前記操作メニューは、前記複数の選択要素と、前記複数のタスクとは別のタスクに対応する1以上の追加の選択要素と、を含む、装置。
【請求項】
1以上のプロセッサと、
前記1以上のプロセッサにより実行されるプログラムコードを格納する1以上のメモリと、を備える装置であって、前記プログラムコードが、
ディスプレイの画面上に表示されたアイコンオブジェクトに対する規定のアクションを検知するように構成されるアクション検知コードと、
前記規定のアクションの検知に応答して、前記ディスプレイに操作メニューを表示させるように構成されるメニュー表示コードと、
入力画面を前記画面に表示させるように構成される表示制御コードと、
前記入力画面を介して取得した入力データが1以上の設定条件のうち少なくとも1つに該当するか否かを判断するように構成される判断コードと、
前記入力データが1以上の設定条件のうち少なくとも1つに該当する場合に、前記入力データを前記1以上の内部学習モデルのうち何れかに入力するように構成される入力コードと、を含み、
前記操作メニューの表示位置は、前記アイコンオブジェクトの現在位置を基準とした相対位置であり、
前記操作メニューは、前記装置外にある1以上の外部学習モデルを利用するクラウドモードと、前記装置に含まれる1以上の内部学習モデルを利用するデバイスモードと、を選択するためのモード選択部を含
み、
前記1以上の内部学習モデルが判断モデルを含み、前記判断モデルが、前記入力データが入力された場合に、前記入力データが前記1以上の設定条件のうち少なくとも1つに該当するか否かの判断結果を出力するように構成されており、
前記判断コードは、前記判断モデルが出力した前記判断結果に基づいて判断を行うように構成される、装置。
【請求項】
1以上のプロセッサと、
前記1以上のプロセッサにより実行されるプログラムコードを格納する1以上のメモリと、を備える装置であって、前記プログラムコードが、
ディスプレイの画面上に表示されたアイコンオブジェクトに対する規定のアクションを検知するように構成されるアクション検知コードと、
前記規定のアクションの検知に応答して、前記ディスプレイに操作メニューを表示させるように構成されるメニュー表示コードと、を含み、
前記操作メニューの表示位置は、前記アイコンオブジェクトの現在位置を基準とした相対位置であり、
前記操作メニューは、前記装置外にある1以上の外部学習モデルを利用するクラウドモードと、前記装置に含まれる1以上の内部学習モデルを利用するデバイスモードと、を選択するためのモード選択部を含
み、
前記メニュー表示コードが、前記操作メニューの前記表示位置を決定するように構成され、前記表示位置を決定することは、
前記現在位置として前記アイコンオブジェクトの絶対座標を取得することと、
前記画面の有効領域を取得することと、
前記操作メニューの基準座標と前記絶対座標との規定相対距離範囲を取得することと、
複数の位置条件に基づいて前記基準座標を決定することと、を含み、
前記複数の位置条件が、
前記操作メニューが前記有効領域内に収まることと、
前記基準座標の前記絶対座標からの離間距離が前記規定相対距離範囲内にあることと、を含む、装置。
【請求項】
前記クラウドモードと前記デバイスモードとは前記操作メニューにおいて択一的に選択される処理モードである、
請求項1
~4のうち何れか一項に記載の装置。
【請求項】
前記プログラムコードが、
前記1以上の外部学習モデルの何れかに入力する入力データを、ネットワークを通じて外部サーバに送信するように構成される送信コードと、
ネットワークの通信状態を検知するように構成される通信検知コードと、
前記ネットワークの通信不全が検知された後に、前記操作メニューにおいて前記1以上の外部学習モデルを利用するタスクが選択された場合に、エラー通知を表示させるように構成されるエラー表示コードと、
をさらに含む、
請求項1
~4のうち何れか一項に記載の装置。
【請求項】
前記クラウドモードと前記デバイスモードとは択一的に選択される処理モードであり、
前記操作メニューは、複数のタスクに対応する複数の選択要素を含み、
前記プログラムコードが、前記複数の選択要素のうちの1つが選択されることに応答して、選択要素の選択を通じて選択されたタスクに対応する入力画面を前記画面に表示させるように構成される表示制御コードを含み、
前記入力画面が現在の処理モードを示すモード表示を含む、
請求項
2~4のうち何れか一項に記載の装置。
【請求項】
前記クラウドモードと前記デバイスモードとは択一的に選択される処理モードであり、
前記メニュー表示コードが、現在の処理モードに応じて、前記操作メニューの表示を切り替えるように構成され、
前記現在の処理モードが前記デバイスモードの場合、前記操作メニューは、複数のタスクに対応する複数の選択要素を含み、
前記現在の処理モードが前記クラウドモードの場合、前記操作メニューは、前記複数の選択要素と、前記複数のタスクとは別のタスクに対応する1以上の追加の選択要素と、を含む、
請求項1
、3、4のうち何れか一項に記載の装置。
【請求項】
前記プログラムコードが、
入力画面を前記画面に表示させるように構成される表示制御コードと、
前記入力画面を介して取得した入力データが1以上の設定条件のうち少なくとも1つに該当するか否かを判断するように構成される判断コードと、
前記入力データが1以上の設定条件のうち少なくとも1つに該当する場合に、前記入力データを前記1以上の内部学習モデルのうち何れかに入力するように構成される入力コードと、
を含む、
請求項1
、2、4のうち何れか一項に記載の装置。
【請求項】
前記1以上の内部学習モデルが判断モデルを含み、前記判断モデルが、前記入力データが入力された場合に、前記入力データが前記1以上の設定条件のうち少なくとも1つに該当するか否かの判断結果を出力するように構成されており、
前記判断コードは、前記判断モデルが出力した前記判断結果に基づいて判断を行うように構成される、
請求項
9に記載の装置。
【請求項】
前記1以上の設定条件が、前記入力データが要保護情報を含むこと、を含む、
請求項
9に記載の装置。
【請求項】
前記メニュー表示コードが、前記操作メニューの前記表示位置を決定するように構成され、前記表示位置を決定することは、
前記現在位置として前記アイコンオブジェクトの絶対座標を取得することと、
前記画面の有効領域を取得することと、
前記操作メニューの基準座標と前記絶対座標との規定相対距離範囲を取得することと、
複数の位置条件に基づいて前記基準座標を決定することであって、前記複数の位置条件が、
前記操作メニューが前記有効領域内に収まることと、
前記基準座標の前記絶対座標からの離間距離が前記規定相対距離範囲内にあることと、を含む、
請求項1~
3のうち何れか一項に記載の装置。
【請求項】
1以上のプロセッサが、
ディスプレイの画面上に表示されたアイコンオブジェクトに対する規定のアクションを検知することと、
前記規定のアクションの検知に応答して、前記ディスプレイに操作メニューを表示させることと、を含み、
前記操作メニューの表示位置は、前記アイコンオブジェクトの現在位置を基準とした相対位置であり、
前記操作メニューは、ネットワークを通じて1以上の外部学習モデルを利用するクラウドモードと、1以上の内部学習モデルを利用するデバイスモードと、を選択するためのモード選択部を含
み、
前記クラウドモードと前記デバイスモードとは択一的に選択される処理モードであり、
前記操作メニューは、複数のタスクに対応する複数の選択要素を含み、
前記1以上のプロセッサが、前記複数の選択要素のうちの1つが選択されることに応答して、選択要素の選択を通じて選択されたタスクに対応する入力画面を前記画面に表示させることをさらに含み、
前記入力画面が現在の処理モードを示すモード表示を含む、
方法。
【請求項】
1以上のプロセッサが、
ディスプレイの画面上に表示されたアイコンオブジェクトに対する規定のアクションを検知することと、
前記規定のアクションの検知に応答して、前記ディスプレイに操作メニューを表示させることと、を含み、
前記操作メニューの表示位置は、前記アイコンオブジェクトの現在位置を基準とした相対位置であり、
前記操作メニューは、ネットワークを通じて1以上の外部学習モデルを利用するクラウドモードと、1以上の内部学習モデルを利用するデバイスモードと、を選択するためのモード選択部を含
み、
前記クラウドモードと前記デバイスモードとは択一的に選択される処理モードであり、
前記1以上のプロセッサが、現在の処理モードに応じて、前記操作メニューの表示を切り替えることをさらに含み、
前記現在の処理モードが前記デバイスモードの場合、前記操作メニューは、複数のタスクに対応する複数の選択要素を含み、
前記現在の処理モードが前記クラウドモードの場合、前記操作メニューは、前記複数の選択要素と、前記複数のタスクとは別のタスクに対応する1以上の追加の選択要素と、を含む、
方法。
【請求項】
1以上のプロセッサが、
ディスプレイの画面上に表示されたアイコンオブジェクトに対する規定のアクションを検知することと、
前記規定のアクションの検知に応答して、前記ディスプレイに操作メニューを表示させることと、
入力画面を前記画面に表示させることと、
前記入力画面を介して取得した入力データが1以上の設定条件のうち少なくとも1つに該当するか否かの判断を行うことと、
前記入力データが1以上の設定条件のうち少なくとも1つに該当する場合に、前記入力データを前記1以上の内部学習モデルのうち何れかに入力することと、を含み、
前記操作メニューの表示位置は、前記アイコンオブジェクトの現在位置を基準とした相対位置であり、
前記操作メニューは、ネットワークを通じて1以上の外部学習モデルを利用するクラウドモードと、1以上の内部学習モデルを利用するデバイスモードと、を選択するためのモード選択部を含
み、
前記1以上の内部学習モデルが判断モデルを含み、前記判断モデルが、前記入力データが入力された場合に、前記入力データが前記1以上の設定条件のうち少なくとも1つに該当するか否かの判断結果を出力するように構成されており、
前記1以上のプロセッサが、前記判断モデルが出力した前記判断結果に基づいて前記判断を行うことをさらに含む、
方法。
【請求項】
1以上のプロセッサが、
ディスプレイの画面上に表示されたアイコンオブジェクトに対する規定のアクションを検知することと、
前記規定のアクションの検知に応答して、前記ディスプレイに操作メニューを表示させることと、を含み、
前記操作メニューの表示位置は、前記アイコンオブジェクトの現在位置を基準とした相対位置であり、
前記操作メニューは、ネットワークを通じて1以上の外部学習モデルを利用するクラウドモードと、1以上の内部学習モデルを利用するデバイスモードと、を選択するためのモード選択部を含
み、
前記1以上のプロセッサが、前記操作メニューの前記表示位置を決定することをさらに含み、前記表示位置を決定することは、
前記現在位置として前記アイコンオブジェクトの絶対座標を取得することと、
前記画面の有効領域を取得することと、
前記操作メニューの基準座標と前記絶対座標との規定相対距離範囲を取得することと、
複数の位置条件に基づいて前記基準座標を決定することと、を含み、
前記複数の位置条件が、
前記操作メニューが前記有効領域内に収まることと、
前記基準座標の前記絶対座標からの離間距離が前記規定相対距離範囲内にあることと、を含む、
方法。
【請求項】
請求項13~16のうちいずれか一項に記載の方法を、1以上のプロセッサにより実行さ
せるためのプログラム。
【発明の詳細な説明】
【技術分野】
【】
本開示は、AIエージェントサービスを提供するための装置、方法、及びプログラムに関する。
【背景技術】
【】
特許文献1は、生成AIを利用したチャットボットにより、ユーザの入力に対して自動応答を行う情報処理システムを開示している。このシステムでは、ユーザはクライアント端末のウェブブラウザに表示されるチャット画面を通じてユーザ入力を入力する。すると、クライアント端末からユーザ入力がネットワークを通じて回答生成装置に送信される。
【先行技術文献】
【特許文献】
【】
【発明の概要】
【発明が解決しようとする課題】
【】
例えば、チャットボットを文章の翻訳に利用する場合、ユーザは、チャット画面を表示するウェブブラウザと共に文章作成のためのアプリケーションを開いて作業することが多い。例えば、ユーザは、チャットボットが出力した翻訳文をコピーし、その翻訳文を文書作成用アプリケーションの作業ファイルにペーストする、というように、チャット画面と作業ファイルとを行き来しながら、翻訳作業を進める。
【】
こうした作業の間、チャット画面と作業ファイルのアプリケーションとは、作業中の一方がアクティブ状態となり、他方がアイドル状態となる。そのため、ユーザが作業ファイルでの作業に没頭してチャット画面を放置したとしても、端末装置のシステムリソースがチャット画面の維持に割かれ続けることになる。このように、従来のウェブブラウザを通じた生成AIサービスの提供は、システムリソースの不連続な占有をもたらすことがある。
【課題を解決するための手段】
【】
本開示の一態様に係る装置は、1以上のプロセッサと、前記1以上のプロセッサにより実行されるプログラムコードを格納する1以上のメモリと、を備え、前記プログラムコードが、ディスプレイの画面上に表示されたアイコンオブジェクトに対する規定のアクションを検知するように構成されるアクション検知コードと、前記規定のアクションの検知に応答して、前記ディスプレイに操作メニューを表示させるように構成されるメニュー表示コードと、を含み、前記操作メニューの表示位置は、前記アイコンオブジェクトの現在位置を基準とした相対位置であり、前記操作メニューは、前記装置外にある1以上の外部学習モデルを利用するクラウドモードと、前記装置に含まれる1以上の内部学習モデルを利用するデバイスモードと、を選択するためのモード選択部を含む。
【】
本開示の一態様に係る方法は、1以上のプロセッサが、ディスプレイの画面上に表示されたアイコンオブジェクトに対する規定のアクションを検知することと、前記規定のアクションの検知に応答して、前記ディスプレイに操作メニューを表示させることと、を含み、前記操作メニューの表示位置は、前記アイコンオブジェクトの現在位置を基準とした相対位置であり、前記操作メニューは、ネットワークを通じて1以上の外部学習モデルを利用するクラウドモードと、1以上の内部学習モデルを利用するデバイスモードと、を選択するためのモード選択部を含む。
【】
本開示の一態様に係るプログラムは、1以上のプロセッサにより実行され、ディスプレイの画面上に表示されたアイコンオブジェクトに対する規定のアクションを検知するように構成されるアクション検知コードと、前記規定のアクションの検知に応答して、前記ディスプレイに操作メニューを表示させるように構成されるメニュー表示コードと、を含み、前記操作メニューの表示位置は、前記アイコンオブジェクトの現在位置を基準とした相対位置であり、前記操作メニューは、ネットワークを通じて1以上の外部学習モデルを利用するクラウドモードと、1以上の内部学習モデルを利用するデバイスモードと、を選択するためのモード選択部を含む。
【図面の簡単な説明】
【】
【図
】
図1は、実施形態に係るAIエージェントを提供するためのシステム及び関連するシステムの模式図である。
【図
】
図2は、AIアプリの複数の表示モードを例示する表である。
【図
】
図3は、AIアプリのフルウインドウを例示する模式図である。
【図
】
図4は、アイコンオブジェクトに対するクイックアクションにより表示された操作メニューを例示する模式図である。
【図
】
図5は、AIアプリの音声画面を例示する模式図である。
【図
】
図6は、クイックモードで表示される文章生成タスクの入力画面を例示する模式図である。
【図
】
図7は、クイックモードで表示される翻訳タスクの入力画面を例示する模式図である。
【図
】
図8は、クイックモードで表示されるチャット画面を例示する模式図である。
【図
】
図9は、AIアプリのフローティングバーを例示する模式図である。
【図
】
図10は、アドオンモードで表示される出力画面を例示する模式図である。
【図
】
図11は、AIアプリのノーマルモードでの動作を説明するフロー図である。
【図
】
図12は、AIアプリのクイックモードでの動作を説明するフロー図である。
【図
】
図13は、AIアプリのアドオンモードでの動作を説明するフロー図である。
【発明を実施するための形態】
【】
以下、図面を参照して、本開示に係る装置、方法、及びプログラムの例を説明する。本発明はこれらの例示に限定されるものではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味及び範囲内でのすべての変更が含まれることが意図される。
【】
[システムの概要]
図1に示すシステム11は、生成AIを利用したAIエージェントサービスの提供に係るデータ処理を実行するように構成される。システム11は、サービスサーバ20を備えてもよい。AIエージェントサービスは、サービスサーバ20又はデータ処理装置30のうち少なくとも一方を介して提供されてもよい。データ処理装置30は、サービスの利用者が使用するユーザ端末又は端末装置であってもよい。
【】
AIエージェントサービスは、データ処理装置30にインストールされたウェブブラウザ(以下、単に「ブラウザ」という)を介してウェブアプリとして提供されてもよいし、データ処理装置30にインストールされたAIエージェントアプリとして提供されてもよい。以下、ブラウザを介して提供されるウェブアプリ版のAIエージェントを「ウェブAI」という。一方、データ処理装置30にインストールされるAIエージェントアプリを「AIアプリ」という。AIアプリは、データ処理装置30に接続されたディスプレイに、状況に応じて各種の操作画面を表示させるように構成されてもよい。
【】
サービスサーバ20は、ウェブAIを提供するように構成されてもよい。サービスサーバ20は、例えば、1以上のプロセッサ21、1以上のメモリ22、及び通信IF(インターフェース)23を備えるコンピュータにより実現されてもよい。以下では、便宜上、サービスサーバ20が1つのプロセッサ21及び1以上のメモリ22を備える事例を説明する。プロセッサ21はサーバプロセッサともいう。通信IF23は、ネットワークを介した他の装置(例えば、データ処理装置30)との通信を可能とする。
【】
1以上のメモリ22のうち少なくとも1つには、プロセッサ21によって実行されるプログラム24が格納されていてもよい。プログラム24は、1以上のアプリケーション及びオペレーティングシステム(OS)を含んでもよい。プロセッサ21は、プログラム24に含まれるプログラムコードを実行することにより、各種の機能を実現する。
【】
ある機能を実現するプログラムコード及びプロセッサ21は、その機能を実現する機能部となり得る。プロセッサ31がウェブAIを提供するためのプログラムコードの実行により特定の処理をする場合、サービスサーバ20は、その処理に対応する名称を付した機能部(例えば、送信処理を実行する送信部)を備えるといえる。
【】
1以上のメモリ22のうち少なくとも1つには、データベース25が格納されていてもよい。データベース25は、複数の登録ユーザの各々についてのユーザデータが格納されていてもよい。登録ユーザは、AIエージェントサービスに対して利用登録したユーザであってもよいし、関連する他のサービスに利用登録したユーザであってもよい。
【】
ユーザデータは、例えば、各ユーザのユーザID、氏名、年齢、住所、電話番号、メールアドレス、職業、年収、家族構成、興味、関心、及びサービスサーバ20が提供するサービスの利用履歴を含んでもよいが、これらには限られない。
【】
システム11は、1以上のデータ処理装置30を備えてもよい。以下、システム11が1のデータ処理装置30を備える例を説明する。データ処理装置30は、1以上のプロセッサ31、1以上のメモリ32、及び通信IF33を備えるコンピュータにより実現されてもよい。
【】
データ処理装置30は、パーソナルコンピュータであってもよいし、タブレットのような携帯端末であってもよいが、これらには限られない。以下では、便宜上、データ処理装置30が1つのプロセッサ31及び1以上のメモリ32を備える事例を説明する。プロセッサ31は端末プロセッサともいう。
【】
1以上のメモリ32のうち少なくとも1つには、プロセッサ31によって実行されるプログラムが格納されていてもよい。プログラムは、データ処理装置30にインストールされた1以上のアプリケーション及びオペレーティングシステムを含んでもよい。
【】
1以上のアプリケーションは、第1アプリケーションであるAIアプリを含んでもよい。1以上のアプリケーションは、1以上の第2アプリケーションを含んでもよい。「第1アプリケーション」及び「第2アプリケーション」の呼び名は、単に、AIアプリ(第1アプリケーション)を他のアプリケーション(第2アプリケーション)と区別するために用いる。1以上の第2アプリケーションは、例えば、ブラウザ、文書作成アプリケーション、表計算アプリケーション、プレゼンテーション用アプリケーション、画像表示アプリケーション、又は画像編集アプリケーションのうち1以上を含んでもよいが、これらには限られない。
【】
AIアプリは、複数の処理を実行するためのプログラムコードを含んでもよい。プログラムコードは、対応する処理の名称により区別されてもよい。例えば、データ処理装置30を介して入力された入力データを、データ処理装置30からサービスサーバ20に送信する送信処理は、「送信コード」により実現されてもよい。
【】
プロセッサ31がAIアプリに含まれるプログラムコードの実行により特定の処理をする場合、データ処理装置30は、その処理に対応する名称を付した機能部(例えば、送信処理を実行する送信部)を備えるといえる。以下、プロセッサ31がプログラムコードを実行して行う処理のうち、AIアプリにより実現される処理については、AIアプリ又は対応する機能部が実行するものとして説明することがある。
【】
通信IF33は、ネットワークを介した他の装置(例えば、サービスサーバ20)との通信を可能とする。データ処理装置30には、出力装置34及び入力装置が含まれているか、あるいは、外付けで又はネットワーク経由で接続されていてもよい。出力装置34は、例えばディスプレイであってもよい。入力装置は、マウス又はキーボードのうち少なくとも一方を含んでもよいが、これらには限らない。例えば、データ処理装置30は入出力装置であるタッチパネルを備えてもよい。
【】
[ウェブAI]
サービスサーバ20は、ウェブAIの機能の一部として、操作画面を表示させるための表示データをデータ処理装置30に送信したり、ブラウザに表示される操作画面を介してユーザの入力を取得したり、ユーザの入力に対する応答を出力したりするように構成される。
【】
操作画面は、メイン画面であるチャット画面と、サイドバーとを含んでもよい。チャット画面は、自由入力式の入力欄を含んでもよい。入力欄には、文字(テキスト)の他、音声及び画像を入力可能であってもよい。
【】
チャット画面は、ユーザがログインするためのログインボタンを含んでもよい。ユーザがサービスに登録すると、登録内容がそのユーザのユーザデータとしてデータベース25に格納される。これにより、ユーザはウェブAIへのログインが可能になる。ユーザがログインした場合、ウェブAIはそのユーザのチャット履歴をユーザデータとして保存したり、入力データへの応答に際してユーザデータを参照したりすることがある。
【】
ウェブAIは、予め規定された複数のタスクを提供するように構成されてもよい。ウェブAIは、対応するタスクを実行するためのプログラムコードを含んでもよい。1以上のメモリ22のうち少なくとも1つは、複数の規定タスクを実行するためのプログラムコードとして、タスク定義データを格納していてもよい。タスク定義データは、複数の規定タスクの各々に対応するタスクプロンプトのテンプレート(以下、「プロンプトテンプレート」という)を含んでもよい。プロンプトテンプレートは、処理についての指示(タスクの内容)と、データ処理装置30から受信した入力データを挿入するためのプレースホルダーとを含んでもよい。
【】
サイドバーは、ウェブタスクリストを含んでもよい。ウェブタスクリストは、例えば、複数のタスクにそれぞれ対応する複数の選択要素を含んでもよい。複数の選択要素は択一的に選択可能であってもよい。複数の選択要素のうちの1つが選択されると、対応するタスクに応じてチャット画面の表示が変更されてもよい。
【】
複数のタスクの実行には、サービスサーバ20又は他の1以上のサーバに保持された1以上の機械学習モデル13を利用してもよい。1以上の機械学習モデル13は、1以上の外部学習モデル13ともいう。他の1以上のサーバは、システム11に含まれる1以上のAIサーバ12を含んでもよいし、システム11に含まれない1以上のAIサーバ12を含んでもよい。
【】
1以上のAIサーバ12は、処理要求を受信するように構成される1以上のモデルAPI(Application Programming Interface)を提供してもよい。サービスサーバ20がプロンプトを含む処理要求を入力としてモデルAPI(AIサーバ12)に送信すると、モデルAPIが1以上の外部学習モデル13のうちの1の外部学習モデル13にプロンプトを入力する。1の外部学習モデル13がプロンプトに基づいて生成したデータを出力すると、モデルAPIが生成されたデータを出力としてサービスサーバ20に返信する。
【】
サービスサーバ20は出力を受信することにより、1の外部学習モデル13が生成した各種のデータを取得する。ウェブAIは、モデルAPIと連携して1以上の外部学習モデル13を利用することにより、生成AIとして挙動する。
【】
1以上の外部学習モデル13は、正解データを含む学習データによって訓練された学習済みモデルを含んでもよいし、汎用的な用途に用いられる生成AIを含んでもよい。生成AIは、自然言語が音声又はテキストで入力される言語モデルであってもよい。言語モデルは、言語に加えて画像も入力することのできるVLM(Vision-Language Model)であってもよい。
【】
言語モデルは、大規模言語モデル(LLM:Large language Model)であってもよいし、小規模言語モデル(SLM:Small Language Model)であってもよい。大規模言語モデルは、大量のテキストデータを使ってトレーニングされた言語モデルである。小規模言語モデルは、大規模言語モデルよりも規模が小さい(例えば、パラメータ数が少ない)言語モデルである。1以上の外部学習モデル13は、入力であるプロンプトに応じて、情報抽出、文章要約、テキスト生成、又は質疑応答といった、さまざまな自然言語処理タスクに適応できる汎用的な自然言語処理(NLP:Natural Language Processing)モデルを含んでもよい。
【】
[AIアプリの概要]
AIアプリをインストールするためのインストールファイルは、管理サーバ14を介してデータ処理装置30に提供されてもよい。管理サーバ14は、例えば、1以上のプロセッサ15、1以上のメモリ16、及び通信IF17を備えるコンピュータにより実現されてもよい。以下では、便宜上、管理サーバ14が1つのプロセッサ15及び1以上のメモリ16を備える事例を説明する。
【】
管理サーバ14は、例えば、データ処理装置30からの配信要求に応じて、インストールファイルをデータ処理装置30に送信してもよい。これに代えて、インストールファイルは、他のサーバ(例えば、サービスサーバ20)からデータ処理装置30に提供されてもよい。あるいは、インストールファイルは、非一時的コンピュータ可読媒体(non-transitory computer readable medium)を介してデータ処理装置30を使用するユーザに提供されてもよいし、予めAIアプリがインストールされた状態でデータ処理装置30が提供されてもよい。
【】
AIアプリのインストールファイルは、1以上の機械学習モデル18を含んでもよい。これに代えて、1以上の機械学習モデル18はインストールファイルとは別に、追加でデータ処理装置30に導入されるように構成されてもよい。1以上の機械学習モデル18を追加インストールするための追加ファイルは、1以上の機械学習モデル18と、1以上の機械学習モデル18を利用するための関連ファイルとを含んでもよい。
【】
データ処理装置30にインストールされた1以上の機械学習モデル18を1以上の内部学習モデル18という。1以上の内部学習モデル18及び関連ファイルは、1以上のメモリ32のうちの少なくとも1つに格納されてもよい。関連ファイルは、タスク定義データを含んでもよい。タスク定義データは、インストールファイルに含まれてもよい。
【】
タスク定義データは、複数の規定タスクの各々に対応するプロンプトテンプレートを含んでもよい。各プロンプトテンプレートは、処理についての指示(タスクの内容)と、ユーザがデータ処理装置30に入力した入力データを挿入するためのプレースホルダーとを含んでもよい。AIアプリは、複数の規定タスクを実行するためのプログラムコードを含んでもよい。
【】
AIアプリは、サービスサーバ20を介して1以上の外部学習モデル13を利用するAIエージェント(「クラウドAI」という)と、データ処理装置30にインストールされた1以上の内部学習モデル18を利用するAIエージェント(「デバイス上AI」という)とを切り替え可能に提供してもよい。ウェブAIとクラウドAIとのサービス内容は、操作画面を含めて、少なくとも一部が同じであってもよいし、少なくとも一部が異なっていてもよい。
【】
デバイス上AIとクラウドAIとの切り替え機能は、1以上の内部学習モデル18及び関連ファイルをデータ処理装置30にインストールすることにより、利用可能となってもよい。1以上の内部学習モデル18がインストールされていないがAIアプリがインストールされているデータ処理装置30では、クラウドAIは使用可能であるが、デバイス上AIは使用できない。
【】
1以上の内部学習モデル18は、外部学習モデル13よりも規模が小さい学習モデルであってもよい。外部学習モデル13を「大規模モデル」とすると、内部学習モデル18は「小規模モデル」であってもよい。小規模モデルは、大規模モデルよりも、パラメータ数及びモデル容量が小さく、実行に必要なプロセッサのスペック及びメモリ使用量が低くて済む。大規模モデルは、一般に、小規模モデルよりも推論能力又は汎用性に優れていたり、よりデータ量の多い入力データ(例えば、長文)に対する理解力に優れていたりする。小規模モデルでは、大規模モデルよりも、汎用性が限定的であったり、推論又は理解の精度が低かったりすることがある。
【】
1以上の内部学習モデル18は、大規模モデルに対する蒸留モデル又は量子化モデルのうち少なくとも一方を含んでもよい。蒸留モデルは、例えば、大規模モデルの出力を使って学習されたモデルであってもよい。量子化モデルは、例えば、大規模モデルの重み又は計算精度を低ビット表現に変換することにより、軽量化又は高速化したモデルであってもよい。1以上の内部学習モデル18は、大規模モデルを蒸留したモデルを、さらに量子化した小規模モデルを含んでもよい。1以上の内部学習モデル18のうち少なくとも1つは、予め小規模モデルとして設計及び生成されてもよい。
【】
1以上の内部学習モデル18は、外部学習モデル13と同じタスクを実行するように訓練された1以上の小規模モデルを含んでもよい。例えば、クラウドAIが翻訳及び文章作成に対応する2つのタスクを提供する場合に、1以上の内部学習モデル18が、翻訳及び文章作成にそれぞれ特化した2つの小規模モデルを含んでもよい。1以上の内部学習モデル18は、クラウドAIが提供しないタスク(例えば、要約タスク)に特化した1以上の小規模モデルを含んでもよい。あるいは、デバイス上AIで提供しないタスクをクラウドAIが提供してもよい。
【】
[AIアプリが提供するマルチモード]
AIアプリは、マルチモードを提供してもよい。AIアプリは、マルチモードの一例として、複数の表示モード(マルチ表示モード)を提供してもよい。AIアプリは、複数の表示モードの各々に応じて、機能、構成、GUI(Graphical User Interface)、表示タイミング又は大きさのうち少なくとも一方が異なる複数の操作オブジェクトをディスプレイに表示させてもよい。
【】
AIアプリは、複数の操作オブジェクトの表示を制御するための表示制御コード(表示制御部)を含んでもよい。複数の操作オブジェクトは、1以上のウインドウ、1以上のメニュー、又は1以上のタスクバーのうち1以上を含んでもよいが、これらには限られない。AIアプリは、複数の表示モードを切替可能であってもよい。AIアプリは、表示モードの切替に伴って、対応する操作オブジェクトを起動又は表示させてもよい。
【】
複数の操作オブジェクトは、例えば、フルウインドウ40と、操作メニュー50(
図4参照)と、フローティングバー80(
図9参照)と、を含んでもよいが、これらには限られない。フルウインドウ40は、デスクトップに対して全画面表示が可能であってもよい。操作メニュー50及びフローティングバー80は、デスクトップに対する全画面表示が不能な操作オブジェクトであってもよい。操作メニュー50は、ポップアップウインドウ又はポップアップメニューであってもよい。フローティングバー80は、フロート表示されるタスクバー又はポップアップメニューであってもよい。
【】
図2は、複数の表示モードと、各表示モードに対応する操作オブジェクト及びトリガーイベントと、を例示する。複数の表示モードは、例えば、ノーマルモード、クイックモード、及びアドオンモードを含んでもよい。フルウインドウ40、操作メニュー50、及びフローティングバー80は、それぞれノーマルモード、クイックモード、及びアドオンモードの起動時に表示される初期オブジェクトである。
【】
複数のトリガーアクションは、起動アクション、クイックアクション、及び選択アクションを含んでもよい。起動アクション、クイックアクション、及び選択アクションは、それぞれノーマルモード、クイックモード、及びアドオンモードに対応する。フルウインドウ40、操作メニュー50、及びフローティングバー80の各々は、対応する表示モードの起動時、又は、対応する表示モードへの切替時に、ディスプレイに表示されてもよい。
【】
AIアプリは、各初期オブジェクトの起動の契機となる1以上のトリガーアクションを検知するように構成されるアクション検知コード(アクション検知部)を含んでもよい。表示制御部は、複数のトリガーアクションのうち1のトリガーアクションの検知に応答して、複数の操作オブジェクトのうち1のトリガーアクションに対応する1の初期オブジェクトをディスプレイに表示させてもよい。
【】
これに加えて、表示制御部は、1の操作オブジェクトを表示させる際に、その前に表示されていた別の操作オブジェクトの表示を停止させてもよい。例えば、表示モードを切り替える場合、表示制御部は、切替後の操作オブジェクトを表示させる際に、切替前の操作オブジェクトの表示を停止させてもよい。
【】
デバイス上AIとクラウドAIは、AIアプリが提供する、複数の処理モード(マルチ処理モード)であり、マルチ処理モードはマルチモードの例である。複数の処理モードは、択一的に設定されてもよい。この場合、処理モードの変更は、処理モードの切替を意味する。AIアプリのモード切替は、処理モード切替を含んでもよい。
【】
アクション検知部は、処理モードの設定又は切替に関するトリガーアクションとして、操作オブジェクトに含まれるモード選択部の操作を検知してもよい。
図1,
図3,
図4,
図9に例示するように、モード選択部46,56は、現在の処理モードを表示するモード表示を兼ねてもよい。図示の例では、モード選択部46,56は2つの処理モードに対応して2つが選択可能に設けられた切り替えボタンであって、外枠が太線の方が現在の処理モードを示す。
【】
複数の表示モードのうち1以上において、AIアプリは、複数の処理モードを提供してもよい。複数の処理モードは、デバイス上AIを提供するデバイスモードと、クラウドAIを提供するクラウドモードとを含んでもよい。すなわち、複数の表示モードは、複数の処理モードと組み合わせて提供されてもよい。AIアプリは、クラウドモード又はデバイスモードのうち一方を処理モードとして設定するように構成されるモード設定コード(モード設定部)を含んでもよい。
【】
AIアプリは、クラウドモードが設定されている場合に、データ処理装置30外にある1以上の外部学習モデル13に入力するためのタスクプロンプトを、ネットワークを通じて外部サーバ(例えば、サービスサーバ20)に送信するように構成される送信コード(送信部)を含んでもよい。このタスクプロンプトは、入力データと、入力データに対する処理内容を示す処理指示(タスク内容)とを含む、実行用プロンプトであってもよい。
【】
これに代えて、送信部が入力データをサービスサーバ20に送った後に、サービスサーバ20がメモリ22に保存されたプロンプトテンプレートのプレースホルダーに入力データを組み込むことにより、実行用プロンプトを生成してもよい。本開示では、これら両方のケースを含めて、「送信部がタスクプロンプトを外部サーバに送信する」という。
【】
サービスサーバ20は、入力データを含む実行用プロンプトをモデルAPI(AIサーバ12)に送信してもよい。いずれにしても、クラウドモードでは、サービスサーバ20が1以上の外部学習モデル13を利用して入力データに対する応答を生成する。
【】
AIアプリは、デバイスモードが設定されている場合に、実行用プロンプトを1以上の内部学習モデル18のうち何れかに入力するように構成される入力コード(入力部)を含んでもよい。すなわち、AIアプリがタスクの処理をする場合、クラウドモードでは送信部がタスクプロンプトをデータ処理装置30外に送信し、デバイスモードでは入力部がタスクプロンプトをデータ処理装置30内の内部学習モデル18に入力する。
【】
デバイスモードでは、AIアプリがデータ処理装置30にインストールされた内部学習モデル18が入力データに対する応答を生成する。AIアプリは、外部学習モデル13又は内部学習モデル18が出力した出力結果を取得する出力取得コード(出力取得部)を含んでもよい。
【】
[処理モードの自動設定]
モード選択部46,56の操作に起因して処理モードを設定することを手動設定又はユーザ設定といい、モード設定部による自動的な処理モードの設定を自動設定という。自動設定は、手動設定よりも優先して設定される排他的設定であってもよい。例えば、モード選択部46の操作によりクラウドモードが設定されている場合でも、判断部の判断結果に基づいて、モード設定部が強制的に処理モードをデバイスモードに設定してもよい。
【】
AIアプリは、タスクの実行に係る一連の処理が1以上の設定条件に該当するか否かを判断するように構成される判断コード(判断部)を含んでもよい。判断部は、この判断を、入力データを取得した後であって、対応するタスクの実行を開始する前に実行してもよい。判断部は、実行用プロンプトに含まれる入力データ又はタスク内容の少なくとも一方に基づいて判断を行ってもよいし、それ以外のデータに基づいて判断を行ってもよい。
【】
1以上の設定条件は、1以上のローカルリソース選択条件と、1以上の外部リソース選択条件と、のうちの少なくとも1つを含んでもよい。モード設定部は、1以上のローカルリソース選択条件のうち少なくとも1つに該当する場合に、処理モードを強制的にデバイスモードに設定してもよい。また、モード設定部は、1以上の外部リソース選択条件のうち少なくとも1つに該当する場合に、処理モードを強制的にクラウドモードに設定してもよい。
【】
1以上のローカルリソース選択条件は、外部学習モデル13が利用できないという外部リソース非到達条件(External Resource Unreachability Condition)を含んでもよい。外部リソース非到達条件は、ネットワークの通信不全を含んでもよいし、サービスサーバ20又はAIサーバ12の不調(サーバエラー)を含んでもよい。外部リソース非到達条件は、物理的にクラウドモードが利用できない環境条件であるともいえる。
【】
AIアプリは、ネットワークの通信状態を検知するように構成される通信検知コード(通信検知部)を含んでもよい。AIアプリは、通信検知部がネットワークの通信不全を検知した場合に、通信エラーを示すエラー通知を表示させるように構成されるエラー表示コード(エラー表示部)を含んでもよい。
【】
エラー表示部は、ディスプレイ又はAIアプリの操作画面(例えば、フルウインドウ40、操作メニュー50、又はフローティングバー80)に、エラー通知を表示させてもよい。あるいは、通信検知部がネットワークの通信不全を検知し、かつ、何れかの初期オブジェクト(フルウインドウ40、操作メニュー50、又はフローティングバー80)において外部学習モデル13を利用するタスクが選択された場合に、エラー表示部がディスプレイにエラー通知を表示させてもよい。
【】
1以上の外部リソース選択条件は、例えば、以下の事例[E1]~[E5]を含んでもよいが、これらには限られない。1以上のローカルリソース選択条件又は1以上の外部リソース選択条件のうち少なくとも1つは、ユーザ又はデータ処理装置30の管理者によって設定されてもよい。
【】
[E1]入力データの情報量が規定量以上であること。
[E2]データ処理装置30のハードウェア能力が規定要件に満たないこと。
[E3]内部学習モデル18が利用できないこと(内部学習モデル18のエラー又は未インストールを含む)。
[E4]内部学習モデル18で対応できない複雑なタスクであること(例えば、マルチモーダル分析、又は複雑な推論)。
[E5]ネットワーク通信が有効であること。この外部リソース選択条件は、ユーザ操作による処理モードの設定が不能な場合に採用されてもよい。
【】
1以上の内部学習モデル18は判断モデルを含んでもよい。判断モデルは、判断用データが入力された場合に、入力されたデータが1以上の設定条件のうち少なくとも1つに該当するか否かの判断結果を出力するように構成されてもよい。判断用データは、例えば、入力データ、プロンプトテンプレート、又は実行用プロンプトであってもよいが、これらには限られない。判断モデルは、言語モデルであってもよい。判断部は、判断モデルが出力した判断結果に基づいて、1以上の設定条件のうち少なくとも1つに該当するか否かの判断を行うように構成されてもよい。
【】
判断モデルは、1以上の外部リソース選択条件のうち少なくとも1つに該当するか否かの判断結果を出力するように構成されてもよい。これに代えて、あるいはこれに加えて、判断モデルは、1以上のローカルリソース選択条件のうち少なくとも1つに該当するか否かの判断結果を出力するように構成されてもよい。
【】
判断部、判断モデルを使わずに判断を行ってもよい。例えば、判断部は、通信検知部が検知したネットワークの通信不全に基づいて、ローカルリソース選択条件に該当すると判断してもよい。そして、ネットワーク通信が不全である場合に、モード設定部が強制的に処理モードをデバイスモードに設定してもよい。設定条件が環境条件(外部リソース非到達条件)である場合、エラー表示部が、通信エラーを操作画面又はディスプレイに表示させてもよい。
【】
[セキュリティモード]
AIアプリは、処理モードの自動設定又は排他的設定として、セキュリティモードを提供してもよい。セキュリティモード設定の有効化あるいは無効化は、図示しないセキュリティ設定画面において設定できてもよい。セキュリティモード設定が有効になっていることを、「セキュリティ設定がされている」という。
【】
セキュリティモード設定は、セキュリティポリシーに基づく1以上のポリシー適合条件に基づいて、処理モードをデバイスモードに設定することであってもよい。ポリシー適合条件は、設定条件の一例である。セキュリティモード設定は、3つの表示モード(ノーマルモード、クイックモード、又はアドオンモード)のうち1以上に適用されてもよい。
【】
1以上のポリシー適合条件は、物理的な制約である環境条件とは異なり、セキュリティポリシーに基づいて、入力データ(タスクプロンプト)をデータ処理装置30外に流出させないことを目的として設定されてもよい。1以上のポリシー適合条件は、その条件に該当する場合にデバイスモードが設定される、ローカルリソース選択条件である。
【】
1以上のポリシー適合条件は、例えば、以下の事例を含んでもよいが、これらには限られない。各表示モードにおいてどのポリシー適合条件を適用するかは、セキュリティ設定画面においてユーザ又はデータ処理装置30の管理者により設定可能であってもよい。
【】
[P1]入力データが要保護情報(例えば、個人情報、営業秘密、企業秘密、未公開情報、又は認証情報)を含むこと。
[P2]入力データが規定のファイル形式(例えば、マクロ付きファイル、ソースコード、設定ファイル、実行ファイル、データベース、ログファイル、認証キー、又は証明書)であること。
[P3]入力データを含むファイルの保存場所が規定のフォルダ(例えば、アクセス制限が設定されたフォルダ)内であること。
[P4]入力データ又は入力データを含むファイルに保護設定がされていること。
[P5]タスクプロンプト(プロンプトテンプレート)に含まれる処理指示(タスク内容)が規定の禁止タスク(例えば、経営判断、金融情報分析、人事評価、又はリーガルチェック)に関すること。
【】
判断部は、タスクプロンプト(入力データ又はタスク内容のうち少なくとも一方)が1以上のポリシー適合条件のうち何れかに該当するか否かを判断してもよい。判断部がポリシー適合に係る判断をすることを「セキュリティチェック」という。
【】
判断部は、以下に例示する確認事項[C1]~[C5]をルールベースでパターンマッチングすることにより、セキュリティチェックを行ってもよい。確認事項[C1]~[C5]のうち1以上は、ユーザ又はデータ処理装置30の管理者により予め規定されてもよい。
【】
[C1]タスクプロンプトに含まれる、正規化された特定の書式(例えば、電話番号、メールアドレス、クレジットカード番号、パスワード、IPアドレス、又はマイナンバーの書式)。
[C2]タスクプロンプトに含まれる、機密キーワードリスト(例えば、入力データに含まれる「親展」「社外秘」「Confidential」又は「プロジェクト名」、あるいは、「弁護士として判断して下さい」との指示に含まれる「弁護士」のような禁止タスクに係る人物設定又は役割設定)。
[C3]入力データを含むファイルの形式。
[C4]入力データを含むファイルの保存場所。
[C5]入力データ又は入力データを含むファイルのメタデータに含まれるメタデータ(機密フラグ)。
【】
判断部は、上記確認事項[C3]~[C5]を確認するために、例えばファイル選択ボタン44の操作に伴ってAIアプリがファイル入力リクエストを行った場合に、そのファイル入力リクエストをインターセプト(遮断)することにより、当該リクエストのコンテキストを解析してもよい。コンテキストは、ファイルのメタデータ、ファイルの保存先又はアクセス先のフルパス、実行主体(実行アプリケーション)、アクセス権限、又はユーザID(ユーザ属性)を含んでもよいが、これらには限られない。
【】
パターンマッチングに代えて、あるいはこれに加えて、判断部は、内部学習モデル18である判断モデルが出力した判断結果に基づいて、セキュリティチェックを行ってもよい。判断モデルは、実行用プロンプトを入力すると、その入力が1以上のポリシー適合条件のうちの少なくとも1つに該当するか否か(あるいは、1以上のポリシー適合条件のうちの何れに該当するか)の判断結果を出力するように構成されてもよい。判断モデルは、1以上のポリシー適合条件として、パターンマッチングで用いられる確認事項[C1]~[C5]についての判断を行うように構成されてもよい。
【】
実行用プロンプト(入力データ)が1以上のポリシー適合条件のうち少なくとも1つに該当する場合、モード設定部が、処理モードをデバイスモードに設定する。すると、入力部は、入力データを含む実行用プロンプトを1以上の内部学習モデル18のうち何れかに入力する。この場合、出力取得部が1以上の内部学習モデル18が出力した規定タスクの実行結果を取得して、表示制御部がその実行結果を含む画面をディスプレイに表示させる。
【】
タスクプロンプトが1以上のポリシー適合条件のうち何れかに該当することは、セキュリティポリシーへの抵触を意味する。セキュリティポリシーへの抵触によりモード設定部が強制的に処理モードをデバイスモードに設定することを、セキュリティモードが発動する、という。
【】
セキュリティポリシーに抵触した場合、エラー表示部がセキュリティモードの発動をAIアプリの操作画面に表示させてもよい。あるいは、セキュリティモードの発動により処理モードがデバイスモードに切り替えられた場合、エラー表示部が、実行結果を含む画面に、デバイスモードでタスクが処理されたことを表示してもよい。セキュリティポリシーに抵触したタスクがデバイスモードで実行不能である場合、エラー表示はデバイスモードで実行不能である旨のエラーメッセージを含んでもよい。
【】
[ノーマルモードのGUI]
ノーマルモードに対応するフルウインドウ40の起動アクションは、ディスプレイに表示されるデスクトップ35又はタスクバー36に配置されたアプリアイコンの操作(例えば、シングルクリック又はダブルクリック)であってもよい。アプリアイコンは、AIアプリの実行ファイルへのパスを保持したファイルであってもよい。
【】
図1に示すように、フルウインドウ40は、チャット画面41及びサイドバー42を含んでもよい。フルウインドウ40のGUIは、ウェブAIと同様に(又は類似するように)に設計されてもよい。
【】
サイドバー42は、サイドバー42の表示と非表示とを切り替えるためのトグルボタン47を含んでもよい。チャット画面41は、設定画面の一つであるモデル管理画面(図示略)を表示するための設定ボタン48を含んでもよい。モデル管理画面は、1以上の機械学習モデル18を追加インストールするための操作部を含んでもよい。
【】
チャット画面41は、自由入力式の入力欄43を含んでもよい。入力欄43には、文字(テキスト)の他、任意のファイル、音声及び画像を入力可能であってもよい。入力欄43は、データ処理装置30のメモリ32に格納されているファイルを入力欄43に入力するためのファイル選択ボタン44を含んでもよい。
【】
サイドバー42は、ノーマルタスクリストを含んでもよい。ノーマルタスクリストは、例えば、複数のタスクにそれぞれ対応する複数の選択要素45(45a,45b,45c)を含んでもよい。複数の選択要素45は、縦長のサイドバー42の長手方向に沿って縦に配列されてもよい。複数の選択要素45は択一的に選択可能であってもよい。
【】
複数の選択要素45のうちの1つが選択されると、対応するタスクに応じてチャット画面41の表示が変更されてもよい。例えば、チャット画面41において、選択されたタスクに応じて、操作案内のメッセージ又は操作要素のうち少なくとも一方が変更されてもよい。
【】
複数のタスクは、任意の質問を受け付ける応答タスクと、専門的な回答をするように設計された複数の専門タスクとを含んでもよい。
図1では「AIエージェント」と表示された選択要素45aが応答タスクに対応し、応答タスクの上にリストされた複数の選択要素45bが複数の専門タスクに対応する。複数の専門タスクは、例えば、動画生成、会話メモ、翻訳、又は文章作成といった複数の規定タスクを含んでもよいが、規定タスクはこれらには限られない。
【】
ノーマルタスクリストは、複数のサイトタスクを含んでもよい。複数のサイトタスクは複数の選択要素45cに対応してもよい。複数のサイトタスクは、例えば、ウェブ経由でサービスを提供する複数のウェブサイトにそれぞれ関連するAIエージェントであってもよい。複数のサイトタスクは、対応するウェブサイトが提供するサービスに関連するタスク(例えば、検索)を実行してもよい。
【】
複数のウェブサイトは、例えば、ショッピングサイト(
図1では「ショッピング」と表記)、宿泊予約サイト(
図1では「トラベル」と表記)、個人間取引サイト(個人同士が不要品又はハンドメイド作品といった物品を売買するためのプラットフォーム、
図1では「フリーマーケット」と表記)、ファッション用品販売サイト(
図1では「ファッション」と表記)、音楽コンテンツの提供サイト(
図1では「ミュージック」と表記)、又はモバイル通信サービスの提供サイト(
図1では「モバイル」と表記)を含んでもよいが、これらには限られない。
【】
AIアプリは、チャット画面41を介して、ユーザとの対話(チャット)を行ってもよい。AIアプリは、汎用的な用途に用いられる自然言語処理モデルとの連携により、自由入力式のテキスト、ファイル、音声、画像、又は動画といった種々のデータ形式の入力データに対して、自律的に応答を生成するように構成されてもよい。
【】
対話の履歴は、入力欄43を介してユーザが入力した入力データと、AIアプリの出力とを含んでもよい。対話の履歴は、チャット履歴として1以上のメモリ32のうちの少なくとも1つに格納されてもよい。過去のチャット履歴は、サイドバー42に表示されてもよい。ユーザは、チャット履歴を選択することにより、過去のチャット履歴を呼び出して、その対話を継続することができてもよい。
【】
クラウドモードでは、チャット履歴の少なくとも一部がサービスサーバ20のメモリ22に格納されてもよい。例えば、複数のサイトタスクについてのチャット履歴がサービスサーバ20のメモリ22に格納される一方で、応答タスク及び複数の専門タスクのチャット履歴がデータ処理装置30のメモリ32に格納されてもよい。これに代えて、全てのチャット履歴がメモリ22又はメモリ32に格納されてもよい。
【】
AIアプリは、タスク処理コード(タスク処理部)を含んでもよい。タスク処理コードは、複数の選択要素45のうちの何れかが選択されたことに応答して、選択された選択要素45に対応するタスクを実行するように構成されてもよい。
【】
サイドバー42は、デバイス上AI(デバイスモード)とクラウドAI(クラウドモード)とを切り替えるためのモード選択部46を含んでもよい。AIアプリは、クラウドモードではデータ処理装置30外にある1以上の外部学習モデル13を利用し、デバイスモードではデータ処理装置30に含まれる1以上の内部学習モデル18を利用する。クラウドモードとデバイスモードとは、モード選択部46により択一的に選択されてもよい。
【】
図1のフルウインドウ40は、モード選択部46においてクラウドAIが選択されたクラウドモードを例示している。通信検知部は、モード選択部46を介してクラウドモードが選択された場合に、ネットワークの通信状態を検知してもよい。通信検知部の検知結果が通信不能であった場合、モード設定部が処理モードを強制的にデバイスモードに変更してもよい。
【】
これに加えて、あるいはこれに代えて、通信検知部の検知結果が通信不能であった場合、エラー表示部が、通信エラーをフルウインドウ40上に表示させてもよい。通信エラーを示すエラー通知は、クラウドAIを示すモード選択部46の非表示又は非アクティブ化(例えば、操作不能にグレーアウトされる)であってもよいし、エラーマークの表示であってもよいが、これらには限られない。
【】
図3は、デバイスモードのフルウインドウ40を例示している。デバイスモードでは、例えばサイトタスクが利用できないなど、クラウドAIとは異なる機能あるいは制限された機能が提供されてもよい。例えば、デバイスモードのサイドバー42は、応答タスクに対応する選択要素45a及び複数の専門タスクに対応する複数の選択要素45bを含む一方で、サイトタスクに対応する選択要素45cは含まなくてもよい。
【】
デバイスモードにおいても、複数の選択要素45は択一的に選択可能であってもよい。また、複数の選択要素45のうちの1つが選択されると、対応するAIタスクに応じてチャット画面41の表示が変更されてもよい。
【】
クラウドモードとデバイスモードでは、同じタスク名(例えば、翻訳)であっても、そのタスクの出力を行う機械学習モデルが異なる。例えば、デバイスモードで使用される内部学習モデル18は、クラウドモードで使用される外部学習モデル13よりも小規模であり得る。そのため、クラウドモードとデバイスモードで同じタスク名であっても、その機能及び出力内容は異なってもよい。
【】
例えば、デバイスモードでの翻訳タスクで対応可能な言語数が、クラウドモードでの翻訳タスクで対応可能な言語数よりも少なくてもよい。これに伴って、クラウドモードとデバイスモードで同じタスク名であっても、チャット画面41に表示される表示要素が互いに異なってもよい。
【】
[クイックモードのGUI]
図4は、ディスプレイの描画領域(例えば、デスクトップ35)に配置されたアイコンオブジェクト49を例示する。アイコンオブジェクト49は、AIアプリのインストールによりデスクトップ35上に配置されてもよい。アイコンオブジェクト49の位置は、ユーザ操作によりデスクトップ35上の任意の位置に変更可能であってもよい。
【】
アイコンオブジェクト49は、1以上の第2アプリケーションの実行画面上又はデスクトップ35上で常に最前面、又は自由な位置に浮いて(フローティングして)表示されるフローティングアイコンであってもよい。アイコンオブジェクト49は、AIアプリのフルウインドウ40又は第2アプリケーションを起動するためにデスクトップ35上に配置される通常のアプリアイコン(例えば、ショートカット、実行ファイル、アプリの実体ファイル、又はファイルそのもの)とは異なる。
【】
例えば、通常のアプリアイコンに対する第1アクション(例えば、ダブルクリック)により対応する第2アプリケーションが起動され、そのアプリアイコンに対する第2アクション(例えば、右クリック)によりコンテキストメニューが表示されるとする。これに対して、アイコンオブジェクト49に対しては、通常のアプリアイコンに対する第1アクション及び第2アクションに加えて、あるいはこれらに代えて、第3アクションにより操作メニュー50が起動されてもよい。第3アクションは、AIアプリのために設計された操作メニュー50(操作オブジェクト)を表示させるためのアクションである。
【】
例えば、アイコンオブジェクト49に対する第1アクション(例えば、ダブルクリック)が、フルウインドウ40の起動アクションであってもよい。また、アイコンオブジェクト49に対する第2アクション(例えば、右クリック)により、コンテキストメニューが表示されてもよい。さらに、アイコンオブジェクト49に対する第3アクション(例えば、マウスカーソルをアイコンオブジェクト49に重ねる「ホバー」)が、操作メニュー50を起動させるためのクイックアクションであってもよい。ただし、アイコンオブジェクト49に対しては、第1アクション(例えば、ダブルクリックによるフルウインドウ40の起動)又は第2アクション(コンテキストメニューの表示)のうち少なくとも一方が設定されていなくてもよい。
【】
クイックアクションは、ホバーに限らず、例えばアイコンオブジェクト49の左クリック(シングルクリック)、ジェスチャ付きクリック(例えば、Shift+クリック又はCtrl+クリック)、トリプルクリック、又は長押しであってもよいが、これらには限られない。
【】
ホバーによるクイックアクションは、アイコンオブジェクト49上に加えて、アイコンオブジェクト49を基準とする規定範囲をトリガーアクションの検出範囲としてもよい。規定範囲は、例えば、アイコンオブジェクト49を含む円形又は矩形の領域であってもよい。規定範囲は、アイコンオブジェクト49の中心点とする領域であってもよい。クイックアクションが停止される(例えば、ホバーしていたマウスポインタが検出範囲外に出ること。ホバーアウト)と、操作メニュー50の表示が停止されてもよい。
【】
操作メニュー50が最初に表示される位置を初期位置という。操作メニュー50は、ユーザの操作又は設定により、初期位置から別の位置に変更可能であってもよい。操作メニュー50の初期位置(表示位置又は表示方向の一方又は両方)は、デスクトップ35上におけるアイコンオブジェクト49の位置に応じて変化する相対位置であってもよい。
【】
例えば、操作メニュー50の基準座標(例えば、中心点、又は外縁が有する複数の角のうちの何れか)は、アイコンオブジェクト49の現在位置(例えば、中心点の絶対座標)から第1距離以上であって第2距離以内の規定相対距離範囲内に表示されてもよい。このとき、操作メニュー50は、デスクトップ35の中心に向かう方向に表示されてもよい。
【】
アクション検知部は、アイコンオブジェクト49に対する規定のアクション(例えば、第1~第3アクション)を検知するように構成されてもよい。AIアプリは、アイコンオブジェクト49に対する規定のアクション(例えば、第3アクション)が検知されたことに応答して、ディスプレイに操作メニュー50を表示させるように構成されるメニュー表示コード(メニュー表示部)を含んでもよい。
【】
メニュー表示部は、操作メニュー50の初期位置を決定するように構成されてもよい。メニュー表示部は、初期位置を決定するために、以下の処理を行ってもよい。
・現在位置としてアイコンオブジェクト49の絶対座標を取得する。
・画面(例えば、デスクトップ35)の有効描画領域を取得する。
・操作メニュー50の基準座標とアイコンオブジェクト49の絶対座標との規定相対距離範囲を取得する。
・複数の位置条件に基づいて基準座標を決定する。複数の位置条件は、例えば、操作メニュー50が有効領域内に収まることと、基準座標の絶対座標からの離間距離が規定相対距離範囲内にあることと、を含んでもよい。
【】
操作メニュー50は、自由入力式のテキスト欄51を含んでもよい。テキスト欄51には、文字(テキスト)を入力可能であってもよい。テキスト欄51には、例えば「クイックアスク」の文字が表示されてもよい。テキスト欄51は、任意の質問を受け付ける応答タスクに対する入力欄であってもよい。
【】
操作メニュー50は、クイックタスクリストを含んでもよい。クイックタスクリストは、複数の専門タスクを含んでもよい。複数の専門タスクは、複数の選択要素52(52a,52b)に対応してもよい。複数の選択要素52は、縦長の操作メニュー50の長手方向に沿って縦に配列されてもよい。複数の選択要素52aは、例えば、検索、要約、翻訳、又は文章作成といった規定タスクに対応してもよいが、これらには限られない。
【】
選択要素52bは、音声を入力データとして受け付けるための音声入力タスクに対応してもよい。選択要素52bは、データ処理装置30に入力装置としてマイクが接続されている場合に選択可能(アクティブ)になってもよい。この場合、AIアプリは、データ処理装置30へのマイクの接続状態を検出するためのマイク検出コード(マイク検出部)を含んでもよい。
【】
マイク検出部がマイクの非接続を検出した場合、選択要素52bが非表示又は非アクティブになってもよい。あるいは、選択要素52bの選択を契機としてマイク検出部がマイクの非接続を検出した場合、エラー表示部が接続エラーをディスプレイに表示させてもよい。
【】
表示制御部は、操作メニュー50に含まれる複数の選択要素52のうちの1つが選択されることに応答して、選択要素52の選択を通じて選択されたタスクに対応する入力画面を表示させてもよい。テキスト欄51へのテキストの入力は、応答タスクの選択となる。すなわち、テキスト欄51への入力は、選択要素の選択の一例であってもよい。
【】
表示制御部は、入力画面の表示と入れ替わりに、操作メニュー50の表示を停止させてもよい。操作メニュー50は、クイックアクションの停止又は操作メニューの操作により、表示が停止されてもよい。言い換えると、操作メニュー50は、クイックアクションの検知から選択要素52(タスク)が選択されるまでの間だけ、ディスプレイに表示されてもよい。
【】
操作メニュー50は、デバイス上AI(
図4では「D」の表示のデバイスモード)とクラウドAI(
図4では「C」の表示のクラウドモード)とを切り替えるためのモード選択部56を含んでもよい。モード選択部56の選択は、処理モード切替のトリガーアクションであってもよい。モード選択部56は、現在の処理モードを表示するモード表示を兼ねてもよい。
図4では、外枠が太線の方が現在の処理モードである。
【】
クイックモードにおいても、AIアプリは、クラウドモードではデータ処理装置30外にある1以上の外部学習モデル13を利用し、デバイスモードではデータ処理装置30に含まれる1以上の内部学習モデル18を利用する。クラウドモードとデバイスモードとは、モード選択部56により択一的に選択されてもよい。
【】
操作メニュー50は、ホームボタン57を含んでもよい。ホームボタン57の操作は、起動アクションであってもよい。アクション検知部が起動アクションを検知すると、表示制御部が操作メニュー50の表示を停止させると共に、フルウインドウ40を表示させてもよい。ホームボタン57は、表示制御部が操作オブジェクト(フルウインドウ40)を表示させるための選択要素の一例である。
【】
ノーマルモードの選択要素45bとクイックモードの選択要素52とは、少なくとも一部が一致していてもよいし、少なくとも一部が異なっていてもよい。メニュー表示部は、現在の処理モードに応じて、操作メニュー50のタスクリストを切り替えるように構成されてもよい。例えば、クイックモードのクラウドモードとデバイスモードとで、クイックタスクリストに含まれる複数の選択要素52のうち少なくとも一部が異なっていてもよいし、何れか一方でテキスト欄51が表示されなくてもよい。
【】
現在の処理モードがクラウドモードである場合、操作メニュー50は、デバイスモードで表示される複数の選択要素52aと、それらに対応する複数のタスクとは別のタスクに対応する1以上の追加の選択要素52bと、を含んでもよい。1以上の追加の選択要素52bは、デバイスモード(デバイス上AI)では処理不能なタスクに対応してもよい。1以上の追加の選択要素52bは、音声入力タスクに対応してもよいし、その他のタスク(例えば、ウェブ検索タスク)に対応してもよい。
【】
図5は、音声入力タスクの選択要素52bが選択された場合に表示制御部がディスプレイに表示させる音声画面53を例示する。音声画面53は、入力画面の一例である。表示制御部は、音声画面53を操作メニュー50に代えて表示させてもよいし、操作メニュー50よりも上位の(表側の、又は、前面側の)表示階層に音声画面53を重畳表示させてもよい。
【】
音声画面53は、音声の入力状況を表示するステータス表示54と、マイクの接続状況を表示するためのマイクマーク55と、音声入力を停止するための停止ボタン58とを含んでもよい。停止ボタン58が操作されると、AIアプリは、入力された音声データの文字おこしをすることにより、テキストデータを生成してもよい。テキストデータは、何れかのタスクへの入力欄(例えば、テキスト欄51,61)に入力されてもよい。
【】
図6は、文章作成タスクに対応する選択要素52aが選択された場合に表示制御部がディスプレイに表示させる入力画面60を例示する。入力画面60は、デスクトップに対する全画面表示が不能な操作オブジェクトであってもよい。表示制御部は、入力画面60を操作メニュー50に代えて表示させてもよいし、操作メニュー50よりも上位の(表側の、又は、前面側の)表示階層に入力画面60を重畳表示させてもよい。入力画面60は、自由入力式のテキスト欄61を含んでもよい。入力画面60は、選択された選択要素52aに対応するタスク名62を含んでもよい。
【】
入力画面60は、現在の処理モードを表示するモード表示63を含んでもよい。入力画面60は、テキスト欄61に入力されたテキストを送信するための送信ボタン64を含んでもよい。入力画面60の構成は、対応するタスクに応じて変更されてもよい。入力データ(例えば、テキスト)の送信は、送信ボタン64のような表示要素を介した操作に限らず、例えば、データ処理装置30に接続された入力装置を介した操作(例えば、キーボードのエンターキーの操作)により実行されてもよい。
【】
図7は、翻訳タスクに対応する選択要素52aが選択された場合に表示制御部がディスプレイに表示させる入力画面60を例示する。翻訳タスクの入力画面60は、翻訳するための文字列を入力する自由入力式のテキスト欄61を含んでもよい。翻訳タスクの入力画面60は、タスク名62及びモード表示63に加えて、入力文の言語を指定する第1言語指定部65と、翻訳先の言語を指定する第2言語指定部66とを含んでもよい。
【】
言語指定部65,66は、例えば「英語」又は「日本語」のような複数の言語を含む言語リストから1つを選択可能なドロップダウンリストであってもよい。第1言語指定部65は、「英語」又は「日本語」のような言語に加えて、「自動検出」の選択肢を含んでもよい。クラウドモードでは、デバイスモードよりも多くの言語が選択可能であってもよい。あるいは、デバイスモードでは、予め規定の言語間(例えば、英語と日本語の間)での翻訳タスクのみが実行可能であってもよい。この場合、デバイスモードの入力画面60は言語指定部65,66を含まなくてもよい。
【】
図8は、
図6のテキスト欄61にテキストが入力され、さらに送信ボタン64が操作された場合に表示制御部がディスプレイに表示させるチャット画面70を例示する。すなわち、送信ボタン64の操作(テキスト欄61への入力の完了)はチャット画面70を起動するためのトリガーアクションであってもよい。チャット画面70は、デスクトップに対する全画面表示が不能な操作オブジェクトであってもよいし、全画面表示が可能な操作オブジェクトであってもよい。
【】
表示制御部は、チャット画面70の表示と入れ替わりに、入力画面60の表示を停止させてもよい。チャット画面70は入力画面60よりも画面の専有面積が広くてもよい。フルウインドウ40を大ウインドウとすると、操作メニュー50及び入力画面60は小ウインドウ、チャット画面70は中ウインドウであってもよい。
【】
チャット画面70は、追加のテキストを入力するためのテキスト欄71を含んでもよい。チャット画面70は、タスク名72と、現在の処理モードを表示するモード表示73とを含んでもよい。チャット画面70は、テキスト欄71に入力されたテキストを送信するための送信ボタン74を含んでもよい。チャット画面70には、テキスト欄61を介して入力された入力データ75と、入力データ75に対するAIアプリの応答文76とが表示されてもよい。
【】
応答文76は、例えば文章生成タスクであれば機械学習モデル13,18が生成した文章であってもよい。操作メニュー50のテキスト欄51に入力データが入力された場合、表示制御部は、入力画面60の表示を省略して、チャット画面70をディスプレイに表示させてもよい。
【】
[アドオンモードのGUI]
図9は、アクション検知部が選択アクションを検知した場合に、表示制御部がディスプレイに表示させるフローティングバー80を例示する。アクション検知部は、1以上の第2アプリケーションの実行画面が表示されているときに、その中でアクティブな実行画面を検知してもよい。アクション検知部は、ディスプレイに少なくとも1つの第2アプリケーションの実行画面が表示されている間に、アクティブな実行画面に含まれるコンテンツが選択される選択アクションを検知してもよい。
【】
図9は、ブラウザ37に表示されるコンテンツ(例えば、ウェブ記事の一部である網掛けされた文字列)を選択コンテンツとして選択する選択アクションを例示している。ブラウザ37は、第2アプリケーションの一例である。選択アクションでは、ユーザが選択した部分のみでなく、内容のまとまりのある周囲も含めて選択コンテンツとしてもよい。
【】
フローティングバー80は、選択アクションの実行前にはディスプレイ(ブラウザ37上)に表示されていない。表示されたフローティングバー80の位置は、ユーザの操作(例えば、ドラッグ)により変更可能であってもよい。選択コンテンツの選択解除により、表示制御部はフローティングバー80の表示を停止させてもよい。すなわち、フローティングバー80は、コンテンツが選択されている間(選択アクションの実行中)だけ、そのコンテンツを含む実行画面上に表示されてもよい。
【】
表示制御部は、フローティングバー80の初期位置を以下のように決定してもよい。
・選択コンテンツから規定距離範囲内であること。
・選択コンテンツと重ならない位置であること。
・選択コンテンツを含む実行画面上であること。
・選択コンテンツの上側への配置を優先するが、上側にスペースがない場合は選択コンテンツの下側に配置する。
【】
表示制御部は、選択アクションに応答して、第2アプリケーションの実行画面よりも上位の(表側の、又は、前面側の)表示階層に、AIアプリケーションのフローティングバー80を重畳表示させてもよい。選択アクションにより選択されるコンテンツは、ブラウザ37に表示される文字列に限らず、例えば、実行画面(ブラウザ37)に表示される画像であってもよいし、デスクトップ上に開かれた文書ファイルに含まれる文字列であってもよい。
【】
アドオンモードのトリガーアクションである選択アクションは、実行画面に表示されたコンテンツの選択の他、以下の事例のうち1以上を含んでもよい。
[T1]ファイルの選択、起動、又は開くこと。
[T2]規定のアプリケーションの起動。
[T3]スクリーンショットの実行(画像の取得)。
[T4]画像オブジェクトに対する規定のアクション(例えば、ホバー又は右クリック)。
[T5]アイコンオブジェクトに対する規定のアクション(例えば、ホバー又は右クリック)。
【】
フローティングバー80は、フローティングタスクリストを含んでもよい。フローティングタスクリストは、複数のタスクに対応する複数の選択要素81(81a,81b)を含んでもよい。複数の選択要素81は、横長のフローティングバー80の長手方向に沿って横一列に配列されてもよい。1以上の選択要素81aは、機械学習モデル13,18が実行する1以上の規定タスクに対応してもよい。1以上の規定タスクは、例えば、検索、翻訳、又は要約のうち1以上を含んでもよい。選択要素81bは、選択された文字列のコピータスク(機械学習モデル13,18の処理を要しないタスク)に対応してもよい。
【】
フローティングバー80は、デバイス上AI(
図9では「D」の表示)とクラウドAI(
図9では「C」の表示)とを切り替えるためのモード選択部56を含んでもよい。モード選択部56の選択は、処理モードの選択又は切替に関するトリガーアクションであってもよい。モード選択部56は、現在の処理モードを表示するモード表示を兼ねてもよい。
図9では、外枠が太線の方(「D」の表示のボタン)が現在の処理モードである。
【】
フローティングバー80は、ホームボタン(図示略)を含んでもよい。ホームボタンの操作は、起動アクションであってもよい。ホームボタンが操作されると、フローティングバー80に代えてフルウインドウ40が表示されてもよい。
【】
ノーマルタスクリスト(ノーマルモードの選択要素45b)と、クイックタスクリスト(クイックモードの選択要素52)と、フローティングタスクリスト(アドオンモードの選択要素81a)とは、少なくとも一部が一致していてもよいし、少なくとも一部が異なっていてもよい。アドオンモードにおいて、クラウドモードとデバイスモードとで、複数の選択要素81のうち少なくとも一部が異なっていてもよい。
【】
フローティングタスクリストは、選択されるコンテンツの種類(例えば、文字列、画像、あるいは、文字列及び画像の組み合わせ)又は選択アクションの種類に応じて、異なるタスクを含んでもよい。すなわち、選択コンテンツ又は選択アクションに応じて、互いに異なる選択要素81aがフローティングバー80に表示されてもよい。例えば、選択されたコンテンツが画像のみの場合には、画像処理タスクの選択要素81aがフローティングバー80に表示される一方で、翻訳タスクの選択要素81aの表示が停止されてもよい。
【】
図10は、翻訳タスクに対応する選択要素81aが選択された場合に、表示制御部がディスプレイに表示させる出力画面84を例示する。表示制御部は、選択要素81を介して選択された規定タスクの実行結果を得ることに応答して、実行結果を含む出力画面84を第2アプリケーションの実行画面よりも上位の(表側の、又は、前面側の)表示階層に重畳表示させてもよい。
【】
表示制御部は、出力画面84の表示と入れ替わりに、フローティングバー80の表示を停止させてもよい。言い換えると、フローティングバー80は、選択アクションの検知から選択要素81a(規定タスク)が選択されるまでの間だけ、ディスプレイに表示されてもよい。
【】
出力画面84は、選択された選択要素81aに対応するタスク名82と、現在の処理モードを示すモード表示83とを含んでもよい。出力画面84は、フローティングバー80において選択要素81aの操作をする前に選択要素81bが操作された場合(選択コンテンツがコピーされた場合)に、その操作時に選択されていたコンテンツ(ここでは文字列)を入力データ87として含んでもよい。これに代えて、選択アクション(トリガーアクション)で選択されたコンテンツが出力画面84に入力データ87として表示されてもよい。
【】
翻訳タスクの出力画面84は、入力文の言語を指定する第1言語指定部85と、翻訳先の言語を指定する第2言語指定部86とを含んでもよい。出力画面84には、選択コンテンツ(文字列)が入力データ87として表示されてもよい。
【】
出力画面84には、入力データ87に対するAIアプリの応答文88(
図11では、入力データ87を英訳した英文)が表示されてもよい。応答文88は、外部学習モデル13又は内部学習モデル18の出力結果であってもよい。表示制御部は、選択要素81を介して選択された規定タスクの実行結果を得ることに応答して、実行結果である応答文88を含む出力画面84を表示させてもよい。出力画面84のモード表示83は、選択されたタスクを実行した処理モードを示してもよい。
【】
ユーザは、出力画面84に応答文88が出力された後に、第1言語指定部85又は第2言語指定部86のうち少なくとも一方を操作してもよい。例えば、第2言語指定部86で翻訳先の言語を変更した場合、AIアプリは、変更された言語への翻訳文を新たな応答文として出力画面84に表示させてもよい。
【】
言語指定部85,86は、実行結果に対して実行可能な1以上の追加の処理メニューの例である。言語指定部85,86に限らず、出力画面84は、タスクに応じた1以上の追加の処理メニューを含んでもよい。タスク処理部は、1以上の追加の処理メニューのうちの何れかが選択されたことに応答して、選択された追加の処理を実行してもよい。アドオンモードでは、入力データが手入力されない分、出力画面84で追加の処理をすることにより、ユーザが所望する出力を得ることができる。
【】
一例では、文章生成タスクの出力画面84は、追加の処理メニューとして、「再生成(書き直し)」「丁寧に」「カジュアルに」といった、文章を再生成させるための1以上の再生成ボタンを含んでもよい。「再生成(書き直し)」は、同じ文体での別の文章の作成指示であり、「丁寧に」又は「カジュアルに」は文体を変更した文章の作成指示である。
【】
別の例では、検索タスクの出力画面84は、追加の処理メニューとして、別の検索エンジンを選択するための検索エンジン指定欄を含んでもよいし、検索条件を変更するための条件入力欄を含んでもよい。検索エンジン指定欄に対する操作は、別の検索エンジンで再検索させるための指示に該当し、条件入力欄に対する操作は、別の検索方法で再検索させるための指示に該当する。
【】
出力画面84は、閉じるボタン89を含んでもよい。閉じるボタン89が操作されると、出力画面84は閉じられ、それによりアドオンモードが終了してもよい。これに代えて、閉じるボタン89の操作は、フローティングバー80を再表示させるためのトリガーアクションであってもよい。この場合、アクション検知部が閉じるボタン89の操作を検知すると、表示制御部が出力画面84の表示を停止させて、フローティングバー80を表示させてもよい。
【】
[タスクリストの編集と新規タスクの追加]
AIアプリは、各表示モードの代表的な操作オブジェクトに含まれるタスクリストを変更するように構成される変更コード(変更部)を含んでもよい。タスクリストは、フルウインドウ40のノーマルタスクリスト(選択要素45)、操作メニュー50のクイックタスクリスト(選択要素52)、又はフローティングバー80のフローティングタスクリスト(選択要素81)であってもよい。タスクリストの変更は、例えば、タスク(選択要素45,52,81)の削除、新規タスクの追加、タスク名の変更、又は並び順の変更を含んでもよいが、これらには限られない。
【】
変更部は、ユーザにより操作される変更インターフェースを介して取得した変更信号に基づいて、操作オブジェクト(例えば、フルウインドウ40、操作メニュー50、又はフローティングバー80)に含まれる選択要素45,52,81を変更してもよい。クラウドモードでは、変更信号は、データ処理装置30からサービスサーバ20に送信されてもよい。
【】
変更インターフェースは、例えば、AIアプリのメニュー設定画面(図示略)としてユーザに提供されてもよい。あるいは、操作オブジェクト(フルウインドウ40、操作メニュー50、又はフローティングバー80)において、対応する選択要素45,52,81を操作することにより、タスクリストの編集が可能であってもよい。この場合は、編集可能な操作オブジェクト自体が変更インターフェースとなる。
【】
AIアプリは、タスク追加コード(タスク追加部)を含んでもよい。タスク追加部は、追加インターフェースを介して取得した新規の命令セットを、1以上の機械学習モデル13,18に対する新たなタスクプロンプトのテンプレートとしてタスク定義データに追加するように構成されてもよい。デバイスモードでは、追加された新たなプロンプトテンプレートは、メモリ32に格納されたタスク定義データの一部となる。
【】
クラウドモードでも、新たなプロンプトテンプレートは、メモリ32に格納されたタスク定義データの一部となってもよい。これに代えて、クラウドモードでは、新規の命令セットは、データ処理装置30からサービスサーバ20に送信されてもよい。この場合、新たなプロンプトテンプレートは、メモリ22に格納されたタスク定義データの一部となってもよい。
【】
追加インターフェースは、規定の操作に応じてデータ処理装置30のディスプレイに表示される、AIアプリのタスク設定画面(図示略)の1つであってもよい。タスク設定画面は、ユーザが自作したプロンプトテンプレートを登録するための登録欄を含んでもよい。登録欄は、ユーザが登録した新規タスクのタスク名をいれる名称欄を含んでもよい。タスク名は、新規の命令セットと共に、新たなプロンプトテンプレートとして、対応するメモリ22,32に格納されてもよい。
【】
タスク設定画面は、ユーザが登録欄を通じて登録した新規タスクを、サイドバー42、操作メニュー50、又はフローティングバー80に追加するための追加操作要素(例えば、追加ボタン)を含んでもよい。追加操作要素の操作に応答して、変更信号には新規タスクの追加要求が含まれてもよい。
【】
変更部は、追加要求を含む変更信号に基づいて、対応するタスクリストに、新規の命令セットで規定される新規タスクの選択要素を追加してもよい。操作オブジェクトにおいて新規タスクに対応する選択要素が選択された場合、対応する新たなタスクプロンプト(実行用プロンプト)が機械学習モデル13,18に入力される。これにより、ユーザは、自作した新規タスクをノーマルモード、クイックモード、又はアドオンモードにて使用することが可能になる。
【】
[ノーマルモードの動作]
図11は、ノーマルモードの起動から出力までの処理を例示する。
ステップS10にて、アクション検知部が起動アクションを検知すると、ステップS11にて、表示制御部がフルウインドウ40をディスプレイに表示させる。
【】
フルウインドウ40のサイドバー42において1の選択要素45が選択されることに応答して、ステップS12にて、タスク処理部が実行すべきタスクを決定する。タスク処理部は、ステップS13にて、入力欄43を介して入力された入力データを取得する。
【】
セキュリティ設定がされている場合、判断部がセキュリティチェックを行う。ここでは、入力データに基づいてセキュリティチェックをする例を説明するが、これに代えて、実行用プロンプト又はプロンプトテンプレートに基づいてセキュリティチェックを行ってもよい。
【】
ステップS14にて、判断部が入力データを判断モデルに入力する。判断モデルが判断結果を出力すると、ステップS15にて、判断部が判断結果を取得する。判断部は、判断結果に基づいて、入力データが1以上のポリシー適合条件のうちの何れかに該当するかを判断する。
【】
ステップS16にて、モード設定部は、判断部の判断結果及び手動設定に基づいて、処理モードを設定する。より詳細には、入力データが少なくとも1つのポリシー適合条件に該当する場合、モード設定部が処理モードをデバイスモードに設定する(排他的設定)。一方、入力データがポリシー適合条件に該当しない場合、モード設定部は、モード選択部46,56の操作による手動設定に従って、処理モードをデバイスモード又はクラウドモードに設定する。
【】
ステップS17にて、タスク処理部が、実行用プロンプトを少なくとも1つの機械学習モデル13,18に入力する。より詳細には、デバイスモードでは入力部が実行用プロンプトを1以上の内部学習モデル18のうち何れかに入力する一方、クラウドモードでは送信部がタスクプロンプトをサービスサーバ20に送信する。
【】
ステップS18にて、外部学習モデル13又は内部学習モデル18が出力した出力結果を出力取得部が取得する。ステップS19にて、表示制御部が、フルウインドウ40のチャット画面41に出力結果を表示させる。
【】
[クイックモードの動作]
図12は、クイックモードの起動から出力までの処理を例示する。
ステップS20にて、アクション検知部がクイックアクションを検知すると、ステップS21にて、表示制御部が操作メニュー50をディスプレイに表示させる。
【】
操作メニュー50において1の選択要素52が選択されることに応答して、ステップS22にて、タスク処理部が実行すべきタスクを決定する。ステップS23にて、表示制御部は、実行すべきタスクに対応する入力画面60をディスプレイに表示させる。ステップS24にて、タスク処理部は、入力画面60のテキスト欄61を介して入力された入力データを取得する。ステップS24の後に、判断部がノーマルモードと同様にセキュリティチェックを行ってもよいが、ここでは説明を省略する。
【】
ステップS25にて、モード設定部は、判断部の判断結果又は手動設定のうち少なくとも一方に基づいて、処理モードを設定する。ステップS26にて、タスク処理部が、実行用プロンプトを少なくとも1つの機械学習モデル13,18に入力する。より詳細には、デバイスモードでは入力部が実行用プロンプトを1以上の内部学習モデル18のうち何れかに入力する一方、クラウドモードでは送信部がタスクプロンプトをサービスサーバ20に送信する。
【】
ステップS27にて、外部学習モデル13又は内部学習モデル18が出力した出力結果を出力取得部が取得する。ステップS28にて、表示制御部が、出力結果(応答文76)を含むチャット画面70をディスプレイに表示させる。
【】
[アドオンモードの動作]
図13は、アドオンモードの起動から出力までの処理を例示する。
ステップS30にて、アクション検知部が、ディスプレイに表示されている1以上の第2アプリケーションの実行画面のうち、アクティブな実行画面を検知する。ステップS31にて、アクション検知部は、アクティブな実行画面において選択アクションを検知する。選択アクションの検知に応答して(さらに、選択コンテンツのコピーにより)、タスク処理部は、選択コンテンツを取得する。
【】
選択アクションの検知に応答して、ステップS32にて、表示制御部がフローティングバー80をアクティブな実行画面上に重畳表示させる。フローティングバー80において1の選択要素81が選択されることに応答して、ステップS33にて、タスク処理部が実行すべきタスクを決定する。ステップS33の後に、判断部がノーマルモードと同様にセキュリティチェックを行ってもよいが、ここでは説明を省略する。
【】
ステップS34にて、モード設定部は、判断部の判断結果又は手動設定のうち少なくとも一方に基づいて、処理モードを設定する。ステップS35にて、タスク処理部が、選択コンテンツを含む実行用プロンプトを少なくとも1つの機械学習モデル13,18に入力する。より詳細には、デバイスモードでは入力部が実行用プロンプトを1以上の内部学習モデル18のうち何れかに入力する一方、クラウドモードでは送信部がタスクプロンプトをサービスサーバ20に送信する。
【】
ステップS36にて、外部学習モデル13又は内部学習モデル18が出力した出力結果を出力取得部が取得する。ステップS37にて、表示制御部が、出力結果(応答文88)を含む出力画面84をディスプレイに表示させる。
【】
[本開示の作用]
AIアプリは、ノーマルモードでは、ウェブAIと同様のGUIのフルウインドウ40をディスプレイに表示する。そのため、例えばユーザがインストール版のAIアプリに先んじてウェブAIを使っている場合、あるいは、ユーザがAIアプリとウェブAIを併用している場合に、フルウインドウ40はシームレスな操作性を提供できる。ユーザは、ノーマルモードのフルウインドウ40ではAIアプリをメインアプリケーションとして使用することができる。
【】
AIアプリは、クイックモードでは、小さなアイコンオブジェクト49から起動される操作メニュー50を提供する。ユーザは、第2アプリケーション(例えば、文章作成アプリケーション)の実行画面を開いて作業をしているときに、デスクトップ35上または第2アプリケーションの実行画面上に配置されるアイコンオブジェクト49から操作メニュー50を呼び出すことができる。
【】
ユーザは、続いて、操作メニュー50にて所望のタスクを選択した後、入力画面60を介して入力データを入力する。すると、入力画面60より大きいチャット画面70が開いて、生成AIの出力(応答文76)がチャット画面70に表示される。
【】
クイックモードでは、このように順次に大きな操作オブジェクトが表示されるので、ユーザは、第2アプリケーションの実行画面を大きく開いたままで、AIアプリを補助的に使用することができる。ユーザは、クイックモードでは、第2アプリケーションをメインアプリケーションとしつつ、AIアプリのタスクを操作メニュー50から必要に応じて呼び出して、補助ツールのように使用することができる。
【】
アドオンモードでは、ユーザが第2アプリケーションの実行画面においてコンテンツを選択するだけでフローティングバー80が表示される。そして、ユーザは、選択要素81の操作のみで、選択コンテンツを機械学習モデル13,18に入力することができる。アドオンモードでは、選択アクション又は選択コンテンツのコピーにより、入力データが取得される。そのため、アドオンモードでは入力画面がなく、ユーザが入力欄に入力データを手入力する必要がない。
【】
アドオンモードでは、ユーザは、機械学習モデル13,18が出力した出力結果を出力画面84で閲覧できる。さらに、ユーザは、出力画面84で追加の処理メニューを操作して、追加の処理を実行させることができる。ユーザは、出力画面84での作業が終わると、出力画面84を閉じて、元の実行画面に戻ることができる。したがって、ユーザは、AIアプリを任意の第2アプリケーションのアドオンツールであるかのように使用することができる。
【】
AIアプリが提供する3つの表示モードは、上述のように互いにサイズ及びトリガーアクションが異なる操作オブジェクト(フルウインドウ40、操作メニュー50及びフローティングバー80)を提供する。何れにしても、ユーザは、ウェブAIのようにウェブブラウザを起動することなく、クラウドAI又はデバイス上AIのうち少なくとも一方を利用することができる。
【】
そのため、AIアプリの利用により、常時にウェブAIをブラウザに表示させておくことによる、計算リソースの不連続な占有を低減できる。また、ディスプレイ上にウェブAIのブラウザを表示させなくて済む分、ユーザはディスプレイ上において第2アプリケーションの実行画面を広く表示させることができる。そのため、AIアプリを補助ツールとして使用する場合の作業性が向上する。
【】
例えば、ユーザは、第2アプリケーションの実行画面での作業をしながら、必要に応じて操作メニュー50又はフローティングバー80を表示させて、所望のタスクを実行させることができる。このように、トリガーアクションに応じて操作オブジェクトを表示させることにより、システムリソースのオンデマンドな割り当てを実現する。これにより、データ処理装置30のより高度なリソース管理を実現できる。
【】
操作メニュー50はフルウインドウ40よりも画面の占有面積が小さく、フローティングバー80はフルウインドウ40及び操作メニュー50の両方よりもさらに画面の占有面積が小さい。そのため、操作メニュー50及びフローティングバー80は第2アプリケーションの実行画面の表示を妨げにくい。特に、フローティングバー80は実行画面に重畳表示されるので、ユーザは実行画面から目を離すことなく、作業ができる。
【】
操作メニュー50はクイックアクションの停止(例えば、ホバーアウト)により表示が停止されてもよく、フローティングバー80は選択コンテンツの選択解除により表示が停止されてもよい。すなわち、操作メニュー50及びフローティングバー80は、閉じるボタンの操作のような、閉じるための専用のユーザ操作によらず、自動的に非表示にできてもよい。これにより、ユーザは、第2アプリケーションの実行画面での操作に集中できる。
【】
操作メニュー50及びフローティングバー80はAIアプリの出力(タスクの実行結果)を含まないため、自動的に非表示にされてもよい。これに対して、フルウインドウ40は、閉じるボタン(図示略)又は第1アプリケーションの終了操作により表示が停止されてもよい。フルウインドウ40はチャット画面41にタスクの実行結果を含むため、ユーザが意図しないタイミングで閉じられることが好ましくないためである。
【】
フルウインドウ40は操作メニュー50に対応する表示要素をサイドバー42に含み、そのサイドバー42と並んで表示されるチャット画面41で入出力を確認できる。これに対して、操作メニュー50はテキスト欄51を含むがチャット画面を含まない。さらに、フローティングバー80は入力欄もチャット画面も含まない。このように、異なる表示モードの操作オブジェクトは、互いに機能が異なるため、ユーザは状況に応じて所望の操作オブジェクトを使い分けることができる。
【】
AIアプリは、複数の表示モードと組み合わせて、セキュリティモードを提供できる。例えば、判断部は、各表示モードにおける以下の入力データに基づいて、セキュリティチェックを行う。
・ノーマルモードでは、入力欄43への入力データ。
・クイックモードでは、テキスト欄51,61,71に入力された入力データ、又は、音声画面53で入力が確認される音声データ(音声データを文字興ししたテキストデータであってもよい)。
・アドオンモードでは、選択アクションにより選択された選択コンテンツ。
【】
セキュリティモードでは、入力データが要保護情報を含む場合には、入力データをサービスサーバ20に送信することなく、データ処理装置30内で処理を実行する。これにより、要保護情報のデータ処理装置30外への流出が抑制される。
【】
ウェブAIでは、仮にユーザがチャット履歴を削除したとしても、サービスサーバ20のバックアップ又はログとして、関連するデータが長期間残存する可能性がある。また、外部学習モデル13に入力されたデータは、性能向上のための再学習に利用される可能性がある。仮に、データ処理装置30外に出たデータが外部利用されないとしても、データの外部送信自体が、データ管理又はデータ保護に係る法的又は契約的なコンプライアンス違反になる虞がある。
【】
各表示モードにおいて、モード選択部46,56によりデバイスモードが設定可能であるとしても、ユーザが設定ミスをすることがあり得る。その点、セキュリティ設定によりAIアプリが強制的にデバイスモードに設定することにより、データの外部流出のリスクを低減できる。これにより、データセキュリティ上の脆弱性を管理することができる。
【】
[本開示の効果]
本開示によれば、以下の効果を奏することができる。
(1-1)クイックモードでは、アイコンオブジェクト49に対するトリガーアクションにより、操作メニュー50が表示される。そのため、ユーザは、第2アプリケーションの実行画面での作業中に、操作メニュー50から必要なタスクを実行することができる。
【】
(1-2)ユーザは、フルウインドウ40、操作メニュー50又はフローティングバー80に含まれるモード選択部46,56を操作することにより、クラウドモードとデバイスモードとを容易に切り替えることができる。
【】
(1-3)ネットワークが通信不全の時に、操作メニュー50において外部学習モデル13を利用するタスクが選択された場合には、エラー通知が表示される。これにより、クラウドモードが使用できない状態であることをユーザに通知することができる。
【】
(1-4)入力画面60がモード表示63を含むことにより、タスクを実行するのが外部学習モデル13又は内部学習モデル18のうちどちらであるかをユーザに通知することができる。
【】
(1-5)デバイス上AIで対応可能なタスクを、クラウドAIで対応可能なタスクよりも限定的にすることにより、内部学習モデル18のデータサイズを小さく抑えることができる。これにより、データ処理装置30に内部学習モデル18をインストールするために必要なスペックを低減できる。
【】
(1-6)外部リソース非到達条件に該当する場合には、モード設定部が処理モードをデバイスモードに設定する。これにより、ネットワークの通信不全のような物理的なエラーが生じている場合にも、処理エラーを回避して、対応するタスクをデバイス上AIにより処理することが可能になる。
【】
(1-7)内部学習モデル18である判断モデルを用いることにより、多様な形式の入力データに対して、処理モード設定に係る設定条件に該当するか否かを判断することができる。これにより、要保護情報のデータ処理装置30外への流出を抑制できる。
【】
(1-8)複数の設定条件に応じて処理モードを設定することにより、処理エラーを回避しつつ、データセキュリティ上の脆弱性を管理することができる。
【】
(1-9)操作メニュー50の初期表示位置をアイコンオブジェクト49の現在位置に応じて決定することにより、操作メニュー50の視認性と操作性を向上させることができる。
【】
(2-1)アクティブな第2アプリケーションの実行画面上での選択アクションを検知することに応答して、フローティングバー80が表示される。これにより、AIアプリはアドオンモードで起動される。フローティングバー80は第2アプリケーションの実行画面上に重畳表示されるので、実行画面をメイン画面として、補助的にAIアプリを利用することができる。
【】
(2-2)フローティングバー80に対する操作により規定タスクが実行されると、フローティングバー80に代えて出力画面84が表示される。このように、ユーザは、選択アクションによりフローティングバー80を呼び出して、出力画面84を通じてAIアプリの出力結果を確認することができる。
【】
(2-3)ユーザは、フルウインドウ40、操作メニュー50又はフローティングバー80に含まれるタスクリストを編集することができる。ユーザが操作オブジェクトをカスタマイズすることにより、ユーザアクセシビリティの確保による作業効率の向上が見込まれる。
【】
(2-4)ユーザは、自作のタスクに対応する選択要素をフルウインドウ40、操作メニュー50又はフローティングバー80のタスクリストに追加することができる。これにより、ユーザがよく行う作業がタスクとして定型化されるので、ユーザの利便性が向上する。また、都度に指示を手入力することによるゆらぎが排除されるため、AIの回答精度が安定する。その結果、最適な回答を得るまでの再試行の回数を減らすことができる。
【】
(2-5)モード設定部は、ネットワークが通信不全の時には、処理モードをデバイスモードに自動的に設定する。こうしたフォールバック制御により、通信エラーによる作業の中断を回避し、作業の継続性を確保することができる。また、通信が悪化(低速化)又は不安定な状態で外部通信をしようとすると、応答待ち時間が発生したり、再試行が繰り返されたりする。したがって、通信不全のような環境条件に基づいてデバイスモードに自動設定することにより、ユーザに応答待ちのストレスを感じさせることを回避したり、ネットワーク資源の効率的な利用を実現したりすることができる。
【】
(2-6)出力画面84がモード表示を含むことにより、タスクを実行した処理モードを通知することができる。特に、何らかの設定条件により自動的に処理モードの切替が生じ得る場合には、ユーザは、モード表示を通じて、セキュリティポリシーに基づく強制設定が正しく動作していることを視覚的に確認できる。また、クラウドモードとデバイスモードとで処理時間が異なる場合には、処理待ち状況をユーザが把握し易い。
【】
(2-7)選択コンテンツがローカルリソース選択条件に該当する場合には、モード設定部が処理モードをデバイスモードに設定する。そのため、ユーザは第2アプリケーションで選択アクションを行う都度に、処理モードを決定したり変更したりする必要がない。
【】
(2-8)内部学習モデル18である判断モデルを利用することにより、選択コンテンツのセキュリティチェックを効率よく行うことができる。
【】
(3-1)入力データがローカルリソース選択条件に該当する場合には、モード設定部が処理モードをデバイスモードに設定する。そのため、ユーザは、AIアプリにデータを入力する都度に、処理モードを決定したり変更したりする必要がない。
【】
(3-2)セキュリティ設定がされている場合、入力データが要保護情報を含むと、モード設定部が処理モードをデバイスモードに設定する。そのため、要保護情報のデータ処理装置30外への流出を抑制できる。
【】
(3-3)1以上の設定条件は、入力データのファイル形式、保存場所、又は保護設定の有無に基づいて設定される。多様なパターンの入力データに対して、セキュリティチェックを行うことができる。
【】
(3-4)ポリシー適合条件は、データ処理装置30の管理者により設定することができる。これにより、ユーザ個人のリテラシーに依存することなく、管理者がセキュリティガバナンスを均一に保つことが可能になる。特に、コンプライアンスに関する複雑なルールが頻繁に変更される場合には、管理者がリアルタイムでポリシー適合条件を設定することにより、コンプライアンスの自動的な遵守を実現できる。
【】
(3-5)内部学習モデル18である判断モデルを用いることにより、多様な形式の入力データに対して、セキュリティチェックを行うことができる。特に、判断モデルが言語モデルである場合には、入力データに含まれる文字情報から、要保護情報を検出することができる。
【】
(3-6)出力画面84がモード表示を含むことにより、ユーザに現在の処理モードを通知することができる。
【】
(3-7)表示制御部は、トリガーアクションに応じて複数の操作オブジェクト(フルウインドウ40、操作メニュー50又はフローティングバー80のうち2以上)をディスプレイに表示させる。これにより、ノーマルモードでは広いフルウインドウ40で高い作業性を提供する一方で、操作メニュー50又はフローティングバー80は第2アプリケーションの実行画面を隠さないように表示することができる。
【】
(3-8)フルウインドウ40は全画面表示することにより、メインの作業画面として使用することができる。操作メニュー50及びフローティングバー80はフルウインドウ40より小さく、全画面表示されないため、実行中の第2アプリケーションの補助ツールとして使用することができる。
【】
(3-9)複数のトリガーアクション(例えば、ファイルの選択、コンテンツの選択、規定のアプリケーションの起動、スクリーンショットの実行、又はアイコンオブジェクトに対する規定のアクション)を設定することにより、トリガーアクションに対応する選択コンテンツの種類(ファイル形式)を特定することができる。これにより、ファイル形式に応じたタスクをフローティングバー80のフローティングタスクリストに含めることができる。
【】
本実施形態は、以下のように変更して実施することができる。本実施形態及び以下の変更例は、技術的に矛盾しない範囲で互いに組み合わせて実施することができる。
【】
[モード表示の変更例]
モード表示の切替は、操作オブジェクトの少なくとも一部(例えば、枠、選択要素、文字、ボタン、罫線、背景、又は入力欄)の視覚効果又は表示属性の変更を伴ってもよい。また、こうした視覚効果又は表示属性の変更は、ユーザにより設定されてもよい。例えば、操作オブジェクトの少なくとも一部の色がデバイスモードとクラウドモードとで変更されてもよい。あるいは、自動設定で処理モードが切り替えられた場合には、モード表示の文字が点滅したり、別の色に変わったりしてもよい。これにより、ユーザは現在の処理モード又は処理モードの変化を視認しやすくなる。その結果、ユーザは、入力データ又は処理内容に応じて適切な処理モードを選択できる。
【】
[操作メニューの変更例]
操作メニュー50はテキスト欄51を含まなくてもよい。あるいは、選択要素52の選択に応じて、テキスト欄51に初期表示されるメッセージが対応するタスクに応じて変化してもよい。例えば、翻訳タスクの選択要素を選択した場合に、翻訳用の原文を入力するようにテキスト欄51に「翻訳したい文章を入力」といったメッセージが表示されてもよい。こうしたテキスト欄51に入力データを入力する場合、入力画面60の表示は省略されてもよい。あるいは、選択要素52の選択に応じて、対応するタスクのチャット画面70が表示されてもよい。この場合も、入力画面60の表示は省略されてもよい。
【】
[プログラムコードの変更例]
機能部に対応するプログラムコードは、必要に応じて、複数のプログラムコードの組み合わせであってもよい。例えば、アクション検知コードは、起動アクションを検知するように構成される起動検知コード(起動検知部)と、クイックアクションを検知するように構成される近接検知コード(近接検知部)と、アクティブな実行画面を検知するように構成される画面検知コード(画面検知部)と、選択アクションを検知するように構成される選択検知コード(選択検知部)と、のうち1以上を含んでもよい。同様に、表示制御コードは、表示する操作オブジェクトごとに別個のコードを含んでもよい。また、タスク処理コードは、処理のステップごとに別個のコードを含んでもよい。
【】
[フロー図及び構成図の変更例]
本開示のフロー図及び構成図は、本開示の実施形態に係る装置、システム、方法、及びプログラムのアーキテクチャ、機能、及び動作を示す。これらフロー図に含まれる各ステップ及び構成図に含まれる構成要素は、論理的な機能部を実現するための1以上の命令を含むプログラムの一部に相当し得る。他の実施形態では、図示されたステップの一部が省略されてもよいし、他のステップを含んでもよいし、ステップの順序が異なっていてもよいし、いくつかのステップが同時に実行されてもよい。さらに、一連のアクションとして説明しているフロー図がいくつかに分割して実行されてもよいし、複数のフロー図が連続して、又は相互に関連して実行されてもよい。また、他の実施形態では、図示された構成要素の一部が省略されてもよいし、他の構成要素を含んでもよいし、構成要素の配置が変更されてもよい。さらに、これらステップ及び構成要素で実現される機能は、ハードウェア、ソフトウェア、又はハードウェアとソフトウェアとの組合せで実現されてもよい。
【】
[システムの変更例]
サービスサーバ20が実行する各種の処理は、それらの処理を実行する複数のサーバにより分散処理されてもよい。すなわち、システム11は、単一のサーバ(例えば、コンピュータ)として実現されてもよいし、協働してプログラムを実行する複数の装置(例えば、コンピュータ)又はサブシステムに分散していてもよい。例えば、サービスサーバ20が外部学習モデル13を保持していてもよいし、サービスサーバ20がAIアプリのインストールファイルをデータ処理装置30に提供してもよい。
【】
「1以上のプロセッサがプログラムコードを実行して規定の動作を行う」という記載は、システム11が複数のサーバを備える場合には、それらサーバのうち少なくとも一つのプロセッサが対応するプログラムコード又は命令を実行することを指す。また、システム11が単一のサーバにより実現される場合には、そのサーバが備える1以上のプロセッサが対応するプログラムコード又は命令を実行することを指す。すなわち、「1以上のプロセッサ」は、互いに異なるサーバが備える複数のサーバプロセッサであってもよいし、何れか1つのサーバが備える1以上のサーバプロセッサであってもよい。同様に、データ処理装置30がプログラムコード又は命令の一部を実行する場合には、「1以上のプロセッサ」がデータ処理装置30のプロセッサ(端末プロセッサ)を含んでもよい。1以上のプロセッサが実行するプログラムコード又は命令は、実行するプロセッサを備えるコンピュータが有するメモリに格納されていてもよい。
【】
[機能部の変更例]
機能部は、特定の処理を実行するための中心的なプログラムであってもよく、モジュール、ユニット、又はエンジンと言い換えてもよい。モジュールとは、例えば、特定の機能を担当する複数のプログラムコードのまとまりであってもよい。モジュールは、例えば、システム内のプログラムに含まれる1つのファイル、複数のファイルのまとまり、ライブラリ、又は関数群であってもよいが、これらには限られない。エンジンは、例えば、APIを介する外部装置との通信により、その外部装置が提供するサービス又は機能(例えば、機械学習モデルの出力)を利用するための1以上のプログラムコード(例えば、APIにデータを送信する送信コード及びAPIから返信されたデータを解析する解析コード)を含んでもよい。
【】
[メモリの変更例]
本開示の装置に含まれるメモリは、コンピュータ可読記憶媒体であり、非一時的コンピュータ可読媒体(non-transitory computer readable medium)を含む。メモリは、例えば、ROM、ハードディスク、ストレージ、取り外し可能媒体、フラッシュメモリ、メモリスティック、光媒体、光磁気媒体、CD-ROMを含み得るが、これらには限られない。
【】
[プロセッサの変更例]
本開示の装置に含まれる1以上のプロセッサは、CPU(central processing unit)、GPU(graphics processing unit)、APU(accelerated processing unit)、NPU(Neural network Processing Unit)、マイクロプロセッサ、マイクロコントローラ、DSP(digital signal processor)、FPGA(field programmable gate array)、CPLD(Complex Programmable Logic Device)、特定用途向け集積回路(ASIC:application-specific integrated circuit)、汎用プロセッサを含む他のプロセッサ、又は本明細書に記載の機能を実行するように設計されたそれらの任意の組み合わせを含み得るが、これらには限られない。
【】
[ネットワークの変更例]
複数の装置又はシステムの間の通信は、1又は複数の通信ネットワークを介して、周知の通信プロトコルに従って実行されてもよい。通信ネットワークは、例えば、イントラネット、インターネット、ローカルエリアネットワーク、広域ネットワーク、ワイヤレスネットワーク、有線ネットワーク、仮想ネットワーク、ソフトウェア定義ネットワーク、又はその他の任意のタイプのネットワーク、又はそれらネットワークの組合せであってもよいが、これらには限られない。
【】
[通信IF(インターフェース)の変更例]
通信IFは、1の装置が通信ネットワークを介して他の装置と通信する機能を実現する。通信IFは、例えば、LAN(Local Area Network)、Wi-Fi(登録商標)、Bluetooth(登録商標)、NFC(Near Field Communication)、又は他の無線通信IFであってもよいが、これらには限られない。
【】
上記実施形態及び変更例に基づいて把握される態様を以下に列記する。
[1-1]1以上のプロセッサと、
前記1以上のプロセッサにより実行されるプログラムコードを格納する1以上のメモリと、を備える装置であって、前記プログラムコードが、
ディスプレイの画面上に表示されたアイコンオブジェクトに対する規定のアクションを検知するように構成されるアクション検知コードと、
前記規定のアクションの検知に応答して、前記ディスプレイに操作メニューを表示させるように構成されるメニュー表示コードと、を含み、
前記操作メニューの表示位置は、前記アイコンオブジェクトの現在位置を基準とした相対位置であり、
前記操作メニューは、前記装置外にある1以上の外部学習モデルを利用するクラウドモードと、前記装置に含まれる1以上の内部学習モデルを利用するデバイスモードと、を選択するためのモード選択部を含む、装置。
【】
[1-2]前記クラウドモードと前記デバイスモードとは前記操作メニューにおいて択一的に選択される処理モードである、
上記[1-1]に記載のデータ処理装置。
【】
[1-3]前記プログラムコードが、
前記1以上の外部学習モデルの何れかに入力する入力データを、ネットワークを通じて外部サーバに送信するように構成される送信コードと、
ネットワークの通信状態を検知するように構成される通信検知コードと、
前記ネットワークの通信不全が検知された後に、前記操作メニューにおいて前記1以上の外部学習モデルを利用するタスクが選択された場合に、エラー通知を表示させるように構成されるエラー表示コードと、
をさらに含む、
上記[1-1]又は[1-2]に記載のデータ処理装置。
【】
[1-4]前記クラウドモードと前記デバイスモードとは択一的に選択される処理モードであり、
前記操作メニューは、複数のタスクに対応する複数の選択要素を含み、
前記プログラムコードが、前記複数の選択要素のうちの1つが選択されることに応答して、選択要素の選択を通じて選択されたタスクに対応する入力画面を前記画面に表示させるように構成される表示制御コードを含み、
前記入力画面が現在の処理モードを示すモード表示を含む、
上記[1-1]~[1-3]のうち何れかに記載のデータ処理装置。
【】
[1-5]前記クラウドモードと前記デバイスモードとは択一的に選択される処理モードであり、
前記メニュー表示コードが、現在の処理モードに応じて、前記操作メニューの表示を切り替えるように構成され、
前記現在の処理モードが前記デバイスモードの場合、前記操作メニューは、複数のタスクに対応する複数の選択要素を含み、
前記現在の処理モードが前記クラウドモードの場合、前記操作メニューは、前記複数の選択要素と、前記複数のタスクとは別のタスクに対応する1以上の追加の選択要素と、を含む、
上記[1-1]~[1-4]のうち何れかに記載のデータ処理装置。
【】
[1-6]前記プログラムコードが、
入力画面を前記画面に表示させるように構成される表示制御コードと、
前記入力画面を介して取得した入力データが1以上の設定条件のうち少なくとも1つに該当するか否かを判断するように構成される判断コードと、
前記入力データが1以上の設定条件のうち少なくとも1つに該当する場合に、前記入力データを前記1以上の内部学習モデルのうち何れかに入力するように構成される入力コードと、
を含む、
上記[1-1]~[1-5]のうち何れかに記載のデータ処理装置。
【】
[1-7]前記1以上の内部学習モデルが判断モデルを含み、前記判断モデルが、前記入力データが入力された場合に、前記入力データが前記1以上の設定条件のうち少なくとも1つに該当するか否かの判断結果を出力するように構成されており、
前記判断コードは、前記判断モデルが出力した前記判断結果に基づいて判断を行うように構成される、
上記[1-1]~[1-6]のうち何れかに記載のデータ処理装置。
【】
[1-8]前記1以上の設定条件が、前記入力データが要保護情報を含むこと、を含む、
上記[1-1]~[1-7]のうち何れかに記載のデータ処理装置。
【】
[1-9]前記メニュー表示コードが、前記操作メニューの前記表示位置を決定するように構成され、前記表示位置を決定することは、
前記現在位置として前記アイコンオブジェクトの絶対座標を取得することと、
前記画面の有効領域を取得することと、
前記操作メニューの基準座標と前記絶対座標との規定相対距離範囲を取得することと、
複数の位置条件に基づいて前記基準座標を決定することであって、前記複数の位置条件が、
前記操作メニューが前記有効領域内に収まることと、
前記基準座標の前記絶対座標からの離間距離が前記規定相対距離範囲内にあることと、を含む、
上記[1-1]~[1-8]のうち何れかに記載のデータ処理装置。
【】
[1-10]1以上のプロセッサが、
ディスプレイの画面上に表示されたアイコンオブジェクトに対する規定のアクションを検知することと、
前記規定のアクションの検知に応答して、前記ディスプレイに操作メニューを表示させることと、を含み、
前記操作メニューの表示位置は、前記アイコンオブジェクトの現在位置を基準とした相対位置であり、
前記操作メニューは、ネットワークを通じて1以上の外部学習モデルを利用するクラウドモードと、1以上の内部学習モデルを利用するデバイスモードと、を選択するためのモード選択部を含む、
方法。
【】
[1-11]1以上のプロセッサにより実行されるプログラムであって、
ディスプレイの画面上に表示されたアイコンオブジェクトに対する規定のアクションを検知するように構成されるアクション検知コードと、
前記規定のアクションの検知に応答して、前記ディスプレイに操作メニューを表示させるように構成されるメニュー表示コードと、を含み、
前記操作メニューの表示位置は、前記アイコンオブジェクトの現在位置を基準とした相対位置であり、
前記操作メニューは、ネットワークを通じて1以上の外部学習モデルを利用するクラウドモードと、1以上の内部学習モデルを利用するデバイスモードと、を選択するためのモード選択部を含む、
プログラム。
【】
[2-1]1以上のプロセッサと、
前記1以上のプロセッサにより実行される第1アプリケーションのプログラムコードを格納する1以上のメモリと、を備える装置であって、前記プログラムコードが、
ディスプレイに第2アプリケーションの実行画面が表示されている間、前記実行画面に含まれるコンテンツが選択される選択アクションを検知するように構成されるアクション検知コードと、
前記選択アクションの検知に応答して、前記実行画面よりも上位の表示階層に、前記第1アプリケーションの操作オブジェクトを重畳表示させるように構成される表示制御コードであって、前記操作オブジェクトがタスクリストを含み、前記タスクリストが、1以上の機械学習モデルを利用して実行される複数の規定タスクに対応する複数の選択要素を含む、表示制御コードと、
前記複数の選択要素のうちの何れかが選択されたことに応答して、前記選択アクションにより選択された選択コンテンツに対して、選択された選択要素に対応する選択された規定タスクを実行するように構成されるタスク処理コードと、
を含む、装置。
【】
[2-2]前記選択された規定タスクの実行結果を得ることに応答して、前記表示制御コードが、前記実行結果を含む出力画面を前記実行画面よりも上位の表示階層に重畳表示させるように構成され、
前記出力画面は、前記実行結果に対して実行可能な1以上の追加の処理メニューを含み、
前記タスク処理コードが、前記1以上の追加の処理メニューのうちの何れかが選択されたことに応答して、選択された追加の処理を実行するように構成される、
上記[2-1]に記載の装置。
【】
[2-3]前記プログラムコードが、変更インターフェースを介して取得した変更信号に基づいて、前記操作オブジェクトに含まれる前記タスクリストを変更するように構成される変更コードを含む、
上記[2-1]又は[2-2]に記載の装置。
【】
[2-4]前記1以上のメモリは、前記複数の規定タスクの各々に対応するタスクプロンプトを含むタスク定義データを格納しており、
前記プログラムコードが、追加インターフェースを介して取得した新規の命令セットを、前記1以上の機械学習モデルに対する新たなタスクプロンプトのテンプレートとして前記タスク定義データに追加するように構成されるタスク追加コードを含み、
前記新規の命令セットに対応する新規タスクを前記タスクリストに追加するように構成される変更コードと、を含む、
上記[2-1]~[2-3]のうち何れかに記載の装置。
【】
[2-5]1以上の機械学習モデルは、前記装置外にある1以上の外部学習モデルと、前記1以上のメモリに格納された1以上の内部学習モデルと、を含み、
前記プログラムコードが、
クラウドモード又はデバイスモードのうち一方を処理モードとして設定するように構成されるモード設定コードと、
前記クラウドモードが設定されている場合に、前記1以上の外部学習モデルの何れかに入力するための前記選択コンテンツを、ネットワークを通じて外部サーバに送信するように構成される送信コードと、
前記デバイスモードが設定されている場合に、前記選択コンテンツを前記1以上の内部学習モデルのうち何れかに入力するように構成される入力コードと、
ネットワークの通信状態を検知するように構成される通信検知コードと、
を含み、
前記モード設定コードは、ネットワークの通信不全が検知された場合に、前記処理モードを前記デバイスモードに設定するように構成される、
上記[2-1]~[2-4]のうち何れかに記載の装置。
【】
[2-6]前記選択された規定タスクの実行結果を得ることに応答して、前記表示制御コードが、前記実行結果を含む出力画面を前記実行画面よりも上位の表示階層に重畳表示させるように構成され、
前記出力画面が、前記選択された規定タスクを実行した処理モードを示すモード表示を含む、
上記[2-1]~[2-5]のうち何れかに記載の装置。
【】
[2-7]1以上の機械学習モデルは、前記装置外にある1以上の外部学習モデルと、前記1以上のメモリに格納された1以上の内部学習モデルと、を含み、
前記プログラムコードが、
クラウドモード又はデバイスモードのうち一方を処理モードとして設定するように構成されるモード設定コードと、
前記クラウドモードが設定されている場合に、前記1以上の外部学習モデルの何れかに入力するための前記選択コンテンツを、ネットワークを通じて外部サーバに送信するように構成される送信コードと、
前記デバイスモードが設定されている場合に、前記選択コンテンツを前記1以上の内部学習モデルのうち何れかに入力するように構成される入力コードと、
前記選択コンテンツが1以上の設定条件に該当するか否かを判断するように構成される判断コードと、を含み、
前記1以上の設定条件に該当する場合に、前記モード設定コードが前記処理モードを前記デバイスモードに設定するように構成される、
上記[2-1]~[2-6]のうち何れかに記載の装置。
【】
[2-8]前記1以上の内部学習モデルが判断モデルを含み、前記判断モデルが、前記選択コンテンツが入力された場合に、前記選択コンテンツが前記1以上の設定条件のうち少なくとも1つに該当するか否かの判断結果を出力するように構成されており、
前記判断コードは、前記判断モデルが出力した前記判断結果に基づいて判断を行うように構成される、
上記[2-1]~[2-7]のうち何れかに記載の装置。
【】
[2-9]1以上のプロセッサが、
ディスプレイにアプリケーションの実行画面が表示されている間、前記実行画面に含まれるコンテンツが選択される選択アクションを検知することと、
前記選択アクションの検知に応答して、前記実行画面よりも上位の表示階層に操作オブジェクトを重畳表示させることであって、前記操作オブジェクトがタスクリストを含み、前記タスクリストが、1以上の機械学習モデルを利用して実行される複数の規定タスクに対応する複数の選択要素を含む、ことと、
前記複数の選択要素のうちの何れかが選択されたことに応答して、前記選択アクションにより選択された選択コンテンツに対して、選択された選択要素に対応する選択された規定タスクを実行することと、
を含む、方法。
【】
[2-10]1以上のプロセッサにより実行されるプログラムであって、前記プログラムが、
ディスプレイにアプリケーションの実行画面が表示されている間、前記実行画面に含まれるコンテンツが選択される選択アクションを検知するように構成されるアクション検知コードと、
前記選択アクションの検知に応答して、前記実行画面よりも上位の表示階層に操作オブジェクトを重畳表示させるように構成される表示制御コードであって、前記操作オブジェクトがタスクリストを含み、前記タスクリストが、1以上の機械学習モデルを利用して実行される複数の規定タスクに対応する複数の選択要素を含む、表示制御コードと、
前記複数の選択要素のうちの何れかが選択されたことに応答して、前記選択アクションにより選択された選択コンテンツに対して、選択された選択要素に対応する選択された規定タスクを実行するように構成されるタスク処理コードと、
を含む、プログラム。
【】
[3-1]1以上のプロセッサと、
1以上のメモリと、を備える装置であって、
前記1以上のメモリが、前記1以上のプロセッサにより実行されるプログラムコードと、1以上の内部学習モデルとを格納しており、
前記プログラムコードが、
デバイスモード又はクラウドモードのうち一方を処理モードとして設定するように構成されるモード設定コードと、
前記デバイスモードが設定されている場合に、タスクプロンプトを前記1以上のメモリに格納された1以上の内部学習モデルのうち何れかに入力するように構成される入力コードであって、前記タスクプロンプトが、入力データと、前記入力データに対する処理内容を示す処理指示と、を含む、入力コードと、
前記クラウドモードが設定されている場合に、前記装置外にある1以上の外部学習モデルに入力するための前記入力データを、ネットワークを通じて外部サーバに送信するように構成される送信コードと、
前記入力データ又は前記タスクプロンプトが1以上の設定条件に該当するか否かを判断するように構成される判断コードと、を含み、
前記1以上の設定条件に該当する場合に、前記モード設定コードが前記処理モードを前記デバイスモードに設定するように構成される、
を含む、装置。
【】
[3-2]前記1以上の設定条件が、前記入力データが要保護情報を含むことを含む、
上記[3-1]に記載の装置。
【】
[3-3]前記1以上の設定条件が、
前記入力データが規定のファイル形式であること、
前記入力データの保存場所が規定のフォルダ内であること、又は
前記入力データに保護設定がされていること、
のうち1以上を含む、
上記[3-1]又は[3-2]に記載の装置。
【】
[3-4]前記1以上の設定条件のうち少なくとも1つが、前記装置の管理者により予め規定されている、
上記[3-1]~[3-3]のうち何れかに記載の装置。
【】
[3-5]前記1以上の内部学習モデルが判断モデルを含み、前記判断モデルが、前記入力データが入力された場合に、前記入力データが前記1以上の設定条件のうち少なくとも1つに該当するか否かの判断結果を出力するように構成されており、
前記判断コードは、前記判断モデルが出力した前記判断結果に基づいて判断を行うように構成される、
上記[3-1]~[3-4]のうち何れかに記載の装置。
【】
[3-6]前記プログラムコードが、
前記1以上の内部学習モデル又は前記1以上の外部学習モデルが出力した出力結果を取得する出力取得コードと、
前記出力結果を含む出力画面を、ディスプレイに表示させるように構成される表示制御コードと、を含み、
前記出力画面が、現在の処理モードを示すモード表示を含む、
上記[3-1]~[3-5]のうち何れかに記載の装置。
【】
[3-7]前記プログラムコードが、
複数のトリガーアクションを検知するように構成されるアクション検知コードと、
前記複数のトリガーアクションのうち1のトリガーアクションの検知に応答して、複数の操作オブジェクトのうち前記1のトリガーアクションに対応する1の操作オブジェクトをディスプレイに表示させるように構成される表示制御コードと、
含み、
前記操作オブジェクトは、前記入力データを入力するための入力欄又は前記入力欄を呼び出すための選択要素を含む、
上記[3-1]~[3-6]のうち何れかに記載の装置。
【】
[3-8]前記複数の操作オブジェクトは、デスクトップに対して全画面表示が可能なフルウインドウと、前記全画面表示が不能な操作メニュー又はフローティングバーと、を含む、
上記[3-1]~[3-7]のうち何れかに記載の装置。
【】
[3-9]前記複数のトリガーアクションは、ファイルの選択、コンテンツの選択、規定のアプリケーションの起動、スクリーンショットの実行、又はアイコンオブジェクトに対する規定のアクションのうち1以上を含む、
上記[3-1]~[3-8]のうち何れかに記載の装置。
【】
[3-10]1以上のプロセッサが、
クラウドモード又はデバイスモードのうち一方を処理モードとして設定することと、
前記デバイスモードが設定されている場合に、タスクプロンプトを1以上の内部学習モデルのうち何れかに入力することであって、前記タスクプロンプトが、入力データと、前記入力データに対する処理内容を示す処理指示と、を含む、ことと、
前記クラウドモードが設定されている場合に、1以上の外部学習モデルに入力するための前記入力データを、ネットワークを通じて外部サーバに送信することと、
前記入力データ又は前記タスクプロンプトが1以上の設定条件に該当するか否かを判断することと、
前記1以上の設定条件に該当する場合に、前記処理モードを前記デバイスモードに設定することと、
を含む、方法。
【】
[3-11]1以上のプロセッサにより実行されるプログラムであって、
クラウドモード又はデバイスモードのうち一方を処理モードとして設定するように構成されるモード設定コードと、
前記デバイスモードが設定されている場合に、タスクプロンプトを1以上の内部学習モデルのうち何れかに入力するように構成される入力コードであって、前記タスクプロンプトが、入力データと、前記入力データに対する処理内容を示す処理指示と、を含む、入力コードと、
前記クラウドモードが設定されている場合に、1以上の外部学習モデルに入力するための前記入力データを、ネットワークを通じて外部サーバに送信するように構成される送信コードと、
前記入力データ又は前記タスクプロンプトが1以上の設定条件に該当するか否かを判断するように構成される判断コードと、を含み、
前記1以上の設定条件に該当する場合に、前記モード設定コードが前記処理モードを前記デバイスモードに設定するように構成される、
プログラム。
【符号の説明】
【】
11…システム。12…AIサーバ、13…外部学習モデル(機械学習モデル)、14…管理サーバ、15…プロセッサ、16…メモリ、17…通信IF、18…内部学習モデル(機械学習モデル)、20…サービスサーバ、21…プロセッサ、22…メモリ、23…通信IF、24…プログラム、25…データベース、30…データ処理装置、31…プロセッサ、32…メモリ、33…通信IF、34…出力装置、35…デスクトップ、36…タスクバー、37…ブラウザ、40…フルウインドウ、41…チャット画面、42…サイドバー、43…入力欄、44…ファイル選択ボタン、45,45a,45b,45c…選択要素、46…モード選択部、48…設定ボタン、49…アイコンオブジェクト、50…操作メニュー、51…テキスト欄、52,52a,52b…選択要素、53…音声画面、54…ステータス表示、55…マイクマーク、56…モード選択部、57…ホームボタン、58…停止ボタン、60…入力画面、61…テキスト欄、62…タスク名、63…モード表示、64…送信ボタン、65…第1言語指定部、66…第2言語指定部、70…チャット画面、71…テキスト欄、72…タスク名、73…モード表示、74…送信ボタン、75…入力データ、76…応答文、80…フローティングバー、81,81a,81b…選択要素、82…タスク名、83…モード表示、84…出力画面、85…第1言語指定部、86…第2言語指定部、87…入力データ、88…応答文、89…ボタン。
【要約】
【課題】AIエージェントサービスを提供するための装置、方法、及びプログラムを提供する。
【解決手段】装置は、1以上のプロセッサと、1以上のプロセッサにより実行されるプログラムコードを格納する1以上のメモリと、を備える。プログラムコードは、ディスプレイの画面上に表示されたアイコンオブジェクトに対する規定のアクションを検知するように構成されるアクション検知コードと、規定のアクションが検知されたことに応答して、ディスプレイに操作メニューを表示させるように構成されるメニュー表示コードと、を含む。操作メニューの表示位置は、アイコンオブジェクトの現在位置を基準とした相対位置であり、操作メニューは、装置外にある1以上の外部学習モデルを利用するクラウドモードと、装置に含まれる1以上の内部学習モデルを利用するデバイスモードと、を選択するためのモード選択部を含む。
【選択図】
図1
【図】
【図】
【図】
【図】
【図】
【図】
【図】
【図】
【図】
【図】
【図】
【図】
【図】