(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2025105016
(43)【公開日】2025-07-10
(54)【発明の名称】コンピュータプログラム、印刷制御方法、及びシステム
(51)【国際特許分類】
G06F 3/12 20060101AFI20250703BHJP
G06F 3/04812 20220101ALI20250703BHJP
H04L 67/1001 20220101ALI20250703BHJP
【FI】
G06F3/12 326
G06F3/12 305
G06F3/12 322
G06F3/12 325
G06F3/12 332
G06F3/12 347
G06F3/12 353
G06F3/12 356
G06F3/12 387
G06F3/04812
H04L67/1001
【審査請求】未請求
【請求項の数】15
【出願形態】OL
(21)【出願番号】P 2023223264
(22)【出願日】2023-12-28
(71)【出願人】
【識別番号】000001007
【氏名又は名称】キヤノン株式会社
(74)【代理人】
【識別番号】110003281
【氏名又は名称】弁理士法人大塚国際特許事務所
(72)【発明者】
【氏名】杉田 光
【テーマコード(参考)】
5E555
【Fターム(参考)】
5E555AA04
5E555AA13
5E555AA44
5E555BA09
5E555BB05
5E555BB06
5E555BC02
5E555BC13
5E555CC03
5E555EA27
(57)【要約】
【課題】本発明は、例えば生成AIからの出力を画像形成装置で好適に印刷させる仕組みを提供する。
【解決手段】本発明は、生成AIサービスを機能拡張するコンピュータプログラムに関するものである。本コンピュータプログラムは、情報処理装置のコンピュータを、生成AIサービスを介して印刷要求を受け付けると、ユーザに関わる認証情報を取得するように機能させる。また、本コンピュータプログラムは、上記コンピュータを、取得したユーザに関わる認証情報を用いて、利用可能な画像形成装置に関わる装置情報を印刷サーバから取得し、装置情報に基づいて、印刷を実行する画像形成装置を特定するように機能させる。
【選択図】
図8
【特許請求の範囲】
【請求項1】
生成AIサービスを機能拡張するコンピュータプログラムであって、情報処理装置のコンピュータを、
前記生成AIサービスを介して印刷要求を受け付けると、ユーザに関わる認証情報を取得する第1の取得手段と、
前記取得したユーザに関わる認証情報を用いて、利用可能な画像形成装置に関わる装置情報を印刷サーバから取得する第2の取得手段と、
前記装置情報に基づいて、印刷を実行する画像形成装置を特定する特定手段と
として機能させることを特徴とするコンピュータプログラム。
【請求項2】
前記特定手段は、前記生成AIサービスを介して、前記ユーザに対して前記装置情報に基づく問い合わせを行い、印刷を実行する画像形成装置を特定することを特徴とする請求項1に記載のコンピュータプログラム。
【請求項3】
前記特定手段は、前記装置情報に複数の画像形成装置に関わる情報が含まれる場合は、前記生成AIサービスを介して前記ユーザに前記複数の画像形成装置の中から印刷を実行する画像形成装置を選択させる問い合わせを行うことを特徴とする請求項2に記載のコンピュータプログラム。
【請求項4】
前記情報処理装置のコンピュータを、さらに、
前記印刷要求に基づいて印刷ジョブを生成する生成手段と、
前記生成AIサービスを介して前記生成した印刷ジョブに関する情報をユーザに提示する提示手段と
として機能させることを特徴とする請求項1乃至3の何れか1項に記載のコンピュータプログラム。
【請求項5】
前記生成手段は、前記印刷サーバから前記印刷ジョブを実行する場合のプレビュー画像を取得し、
前記提示手段は、前記印刷ジョブに関する情報として、前記印刷ジョブを実行する際の印刷設定と、前記プレビュー画像とを提示することを特徴とする請求項4に記載のコンピュータプログラム。
【請求項6】
前記情報処理装置のコンピュータを、さらに、
前記生成AIサービスを介して、前記ユーザに提示した前記印刷ジョブの設定を変更する要求を受け付けると、変更内容に応じて前記印刷ジョブを更新する更新手段
として機能させることを特徴とする請求項5に記載のコンピュータプログラム。
【請求項7】
前記生成手段は、前記印刷ジョブを生成する際に固有の識別情報を割り当てることを特徴とする請求項4に記載のコンピュータプログラム。
【請求項8】
前記生成手段は、前記生成AIサービスを介して受け付けた前記印刷要求に含まれるテキストデータを、前記印刷サーバで受け付け可能なフォーマットに変換して印刷データを生成することを特徴とする請求項7に記載のコンピュータプログラム。
【請求項9】
前記生成手段は、前記生成した印刷ジョブに予め定められた印刷設定を設定することを特徴とする請求項8に記載のコンピュータプログラム。
【請求項10】
前記生成手段は、前記印刷要求に含まれるテキストデータに基づいて、前記生成した印刷ジョブに印刷設定を設定することを特徴とする請求項8に記載のコンピュータプログラム。
【請求項11】
前記ユーザに提示した前記印刷ジョブに関する情報に対するユーザによる印刷指示を前記生成AIサービスを介して受けると、前記印刷サーバから画像形成装置へ前記印刷ジョブを投入させ、該印刷ジョブが実行されることを特徴とする請求項4に記載のコンピュータプログラム。
【請求項12】
前記コンピュータプログラムは、前記生成AIサービスのプラグインとして前記情報処理装置に実装されることを特徴とする請求項4に記載のコンピュータプログラム。
【請求項13】
印刷制御方法であって、
第1の取得手段が、情報処理装置が提供する生成AIサービスを介して印刷要求を受け付けると、ユーザに関わる認証情報を取得する第1の取得工程と、
第2の取得手段が、前記取得したユーザに関わる認証情報を用いて、利用可能な画像形成装置に関わる装置情報を印刷サーバから取得する第2の取得工程と、
特定手段が、前記装置情報に基づいて、印刷を実行する画像形成装置を特定する特定工程と
を含むことを特徴とする印刷制御方法。
【請求項14】
ユーザ端末に生成AIサービスを提供する情報処理装置、印刷サーバ、及び画像形成装置を含む印刷システムであって、
前記情報処理装置は、前記生成AIサービスを機能拡張するコンピュータプログラムを実装することによって、
前記生成AIサービスを介して印刷要求を受け付けると、ユーザに関わる認証情報を取得する第1の取得手段と、
前記取得したユーザに関わる認証情報を用いて、利用可能な画像形成装置に関わる装置情報を印刷サーバから取得する第2の取得手段と、
前記装置情報に基づいて、印刷を実行する画像形成装置を特定する特定手段と
として機能し、
前記印刷サーバは、
前記ユーザに関わる認証情報に紐付いた前記装置情報を提供する提供手段と、
前記生成AIサービスを介して印刷の実行が指示されると、特定された画像形成装置へ前記印刷要求に基づく印刷ジョブを投入する実行手段と
を備えることを特徴とする印刷システム。
【請求項15】
前記印刷サーバはクラウドプリントサーバであることを特徴とする請求項14に記載の印刷システム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、人工知能システムの機能を拡張するコンピュータプログラム、印刷制御方法、及びシステムに関する。
【背景技術】
【0002】
生成AIと呼ばれる、プロンプトに応答してテキスト、画像、又は他のメディアを生成することができる人工知能システムが知られている。ChatGPT(登録商標)などの生成AIではプラグインによる機能拡張が可能である。例えば、生成AIに指示として「印刷」というキーワードを含む文章が入力されると印刷に関わるプラグインが選択され、生成AIでは応答できない処理をプラグインが代替で行うことで機能拡張が可能になる。
【0003】
一方、画像形成装置ではクラウドサーバから印刷データを投入して印刷を行うことができる。例えば、特許文献1には、クラウドサーバで管理する文書をチャットの会話形式で印刷可能とする技術が提案されている。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、生成AIが生成したテキストなどの出力を画像形成装置で印刷する場合、ユーザ等がファイル等にコピーを行い、印刷ドライバなどから印刷を実行する必要がある。つまり、ユーザは印刷を実行するために生成AIによって生成された出力のコピーを行う必要があり、手間となっていた。
【0006】
本発明は、上述の課題の少なくとも一つに鑑みて成されたものであり、生成AIからの出力を画像形成装置で好適に印刷させる仕組みを提供する。
【課題を解決するための手段】
【0007】
本発明は、例えば、生成AIサービスを機能拡張するコンピュータプログラムであって、情報処理装置のコンピュータを、前記生成AIサービスを介して印刷要求を受け付けると、ユーザに関わる認証情報を取得する第1の取得手段と、前記取得したユーザに関わる認証情報を用いて、利用可能な画像形成装置に関わる装置情報を印刷サーバから取得する第2の取得手段と、前記装置情報に基づいて、印刷を実行する画像形成装置を特定する特定手段ととして機能させることを特徴とする。
【0008】
また、本発明は、例えば、ユーザ端末に生成AIサービスを提供する情報処理装置、印刷サーバ、及び画像形成装置を含む印刷システムであって、前記情報処理装置は、前記生成AIサービスを機能拡張するコンピュータプログラムを実装することによって、前記生成AIサービスを介して印刷要求を受け付けると、ユーザに関わる認証情報を取得する第1の取得手段と、前記取得したユーザに関わる認証情報を用いて、利用可能な画像形成装置に関わる装置情報を印刷サーバから取得する第2の取得手段と、前記装置情報に基づいて、印刷を実行する画像形成装置を特定する特定手段ととして機能し、前記印刷サーバは、前記ユーザに関わる認証情報に紐付いた前記装置情報を提供する提供手段と、前記生成AIサービスを介して印刷の実行が指示されると、特定された画像形成装置へ前記印刷要求に基づく印刷ジョブを投入する実行手段とを備えることを特徴とする。
【発明の効果】
【0009】
本発明によれば、生成AIからの出力を画像形成装置で好適に印刷させることができる。また、本発明によれば、ユーザは生成AIサービスへ入力を行うのみで画像形成装置での印刷が可能となる。
【図面の簡単な説明】
【0010】
【
図3】一実施形態に係るユーザ端末の構成を示す図。
【
図4】一実施形態に係る生成AIサーバの構成を示す図。
【
図5】一実施形態に係る拡張アプリケーションサーバの構成を示す図。
【
図6】一実施形態に係るクラウドプリントサーバの構成を示す図。
【
図7】一実施形態に係るユーザ端末に表示される生成AIとのやり取りを示す画面例を示す図。
【
図9】一実施形態に係るユーザ端末に表示される生成AIとのやり取りで設定変更を行う画面例を示す図。
【
図10】一実施形態に係る拡張アプリケーションサーバに関するフローチャート。
【発明を実施するための形態】
【0011】
以下、添付図面を参照して実施形態を詳しく説明する。なお、以下の実施形態は特許請求の範囲に係る発明を限定するものではない。実施形態には複数の特徴が記載されているが、これらの複数の特徴の全てが発明に必須のものとは限らず、また、複数の特徴は任意に組み合わせられてもよい。さらに、添付図面においては、同一若しくは同様の構成に同一の参照番号を付し、重複した説明は省略する。
【0012】
<第1の実施形態>
<システム構成>
以下では、本発明の第1の実施形態について説明する。本実施形態では、画像処理装置として、プリントやスキャン、FAX機能を有する複合機(MFP:Multi Function Peripheral)を例に説明する。
図1は、本発明における生成AIサービスを介した印刷サービスを提供する印刷システムの全体構成図の一例を示す。本印刷システムは、印刷装置等のMFP10、ユーザ端末20、生成AIサーバ30、拡張アプリケーションサーバ40、及びクラウドプリントサーバ50を含んで構成される。それぞれはネットワーク70を介して相互に通信可能に接続されている。ネットワーク70はWANやLANで構成される無線、又は有線のネットワークである。
【0013】
MFP10は、クラウドプリントサーバ50より通知された画像を印刷する機能を有する印刷装置を示す。ユーザ端末20は、ChatGPTなどの生成AIサービスをユーザが利用する際の、スマートフォンやタブレット端末、パーソナルコンピュータ等の情報端末を示す。ユーザは、ユーザ端末20を操作してクラウド上の生成AIサーバ30にアクセスし、生成AIアプリケーションの実行を行う。ユーザ端末20と生成AIサーバ30は有線又は無線の通信ネットワークに接続されており、各々でデータ送受信が可能となっている。本実施形態では通信ネットワークの一例としてインターネット上の公衆回線を想定しているが、専用回線を用いるものであってもよい。
【0014】
生成AIサーバ30は、テキスト生成AIであるChatGPTなどの生成AIを提供する、クラウド60上に配置されたクラウドサーバ(情報処理装置)である。生成AIサーバ30は、拡張アプリケーションサーバ40と連携してサービスを提供する。生成AIサーバ30は、ユーザ端末20から送信されたメッセージを解釈して、適切な回答の生成を行い、それを応答としてユーザ端末20の画面に表示する。さらに、生成AIサーバ30は、拡張アプリケーションサーバ40と通信を行うことで機能の拡張が可能となっている。
【0015】
拡張アプリケーションサーバ40は、クラウド60上に配置されたクラウドサーバ(情報処理装置)であり、生成AIサーバ30に追加機能(プラグイン)を提供する機能を有する。生成AIサーバ30は拡張アプリケーションサーバ40と連携して、コンピュータプログラムである所定のプラグインを実装することにより単体ではできなかった処理が可能になる。クラウドプリントサーバ50は、ユーザ端末20からの印刷要求を受けて、MFP10に対して印刷ジョブが届いたことを通知する印刷サーバである。MFP10は、クラウドプリントサーバ50からの通知に従って、クラウドプリントサーバ50から印刷ジョブを受信し印刷を実行する。なお、ここでは各種サーバが個別に設けられる例を説明するが、他のサーバと一体化して設けられてもよい。例えば、生成AIサーバ30及び拡張アプリケーションサーバ40は一体化して設けられてもよい。
【0016】
<画像形成装置のハードウェア構成>
図2を参照して、本実施形態に係るMFP10のハードウェア構成例を説明する。MFP10は、制御部110、操作部116、読取部118、印刷部120、無線通信部122、FAX通信部124、及び通信部126を備える。制御部110は、CPU111、ROM112、RAM113、HDD114、操作部I/F115、読取部I/F117、印刷部I/F119、無線通信部I/F121、FAX部I/F123、及び通信部I/F125を備える。
【0017】
CPU111を含む制御部110は、MFP10全体の動作を制御する。CPU111は、ROM112又はHDD114に記憶された制御プログラムをRAM113に読み出して、読取制御や印刷制御などの各種制御を行う。ROM112は、CPU111で実行可能な制御プログラムを格納する。また、ROM112は、ブートプログラムやフォントデータなども格納する。RAM113は、主記憶メモリであり、ワークエリア、ROM112及びHDD114に格納された各種制御プログラムを展開するための一時記憶領域として用いられる。HDD114は、画像データ、印刷データ、各種プログラム、各種アドレス、及び各種設定情報を記憶する。HDD114はストレージ媒体であり、HDDでなくともSSD(Solid State Drive)、eMMC(embedded Multi Media Card)などでもよい。
【0018】
なお、本実施形態のMFP10は、1つのCPU111が1つのメモリ(RAM113)を用いて後述するフローチャートに示す各処理を実行するものとするが、これに限るものではない。例えば複数のCPU、RAM、ROM、及びHDDを協働させて各処理を実行することもできる。また、ASICやFPGA等のハードウェア回路を用いて一部の処理を実行するようにしてもよい。
【0019】
操作部I/F115は、例えばタッチパネルのような表示部やハードキーを含む操作部116と制御部110とを接続する。操作部116は、ユーザに対して情報を表示したり、ユーザからの入力を検出したりする。読取部I/F117は、例えばスキャナのような読取部118と制御部110とを接続する。読取部118は原稿の画像を読み取って、CPU111がその画像をバイナリーデータなどの画像データに変換する。読取部118によって読み取られた画像に基づき生成された画像データは、外部装置に送信されたり、記録紙上に印刷されたりする。印刷部I/F119は、例えばプリンタのような印刷部120と制御部110とを接続する。CPU111は、RAM113に記憶された画像データ(印刷データ)を印刷部I/F119を介して印刷部120に転送する。印刷部120は、転送された画像データに基づく画像を給紙カセットから給送された記録紙に印刷する。
【0020】
無線通信部I/F121は、無線通信部122を制御するためのI/Fであり、制御部110と無線経由で外部の無線機器と接続する。FAX部I/F123は、FAX通信部124を制御することで公衆回線網80に接続される。FAX部I/F123は、FAX通信部124を制御するためのI/Fであり、ファクシミリ通信用のモデム、NCUを制御することで公衆回線網への接続、ファクシミリ通信プロトコルの制御などを行うことが可能となる。
【0021】
通信部I/F125は、制御部110とネットワーク70とを接続する。通信部I/F125は、通信部126がネットワーク70上の外部装置に画像データや装置内部の各種情報を送信したり、ネットワーク70上の外部装置から印刷データやネットワーク70上の情報を受信したりする。ネットワーク70を介した送受信の方法としては、電子メール(Eメール)を用いての送受信や、その他のプロトコル(例えば、FTPやSMB、WEBDAV等)を用いたファイル送信を行うことができる。また、ユーザ端末20及び生成AIサーバ30からのHTTP通信によるアクセスにより、画像データやメッセージデータをネットワーク70で送受信することもできる。さらに、ユーザ端末20のウェブブラウザーからネットワーク経由でMFP10にアクセスし、MFP10の各種設定を行うこと(リモートUI機能)が可能になっている。
【0022】
<ユーザ端末のハードウェア構成>
図3を参照して、本実施形態に係るユーザ端末20のハードウェア構成例を説明する。なお、本実施形態のユーザ端末20はスマートフォンやタブレットPC等の装置を想定しているが、Wi-Fi通信などを用いてネットワーク70に接続が可能な情報処理装置であれば他の装置であってもよい。ユーザ端末20は、操作パネル201、カメラ204、NFC通信部205、Bluetooth(登録商標)通信部206、CPU207、ROM208、RAM209、HDD210、及び無線LAN通信部を備える。
【0023】
CPU207はROM208が記憶している制御プログラムを読み出して、ユーザ端末20の動作を制御するための様々な処理を実行する。ROM208は、上記制御プログラムを記憶している。RAM209は、CPU207の主メモリ、ワークエリア等の一時記憶領域として用いられる。HDD210は、写真や電子文書等の様々なデータを記憶する。
【0024】
操作パネル201は、ユーザのタッチ操作を検出可能なタッチパネル機能を備え、OSや電子メール送信アプリケーションが提供する各種画面を表示する。また、操作パネル201は、生成AIサーバ30に記憶されている情報を確認するために使用される。ユーザは操作パネル201にタッチ操作を入力することで、ユーザ端末20に所望の操作指示を入力することができる。なお、ユーザ端末20は不図示のハードウェアキーを備えており、ユーザはこのハードウェアキーを用いてユーザ端末20に操作指示を入力することもできる。
【0025】
カメラ204はユーザの撮像指示に応じて撮像する。カメラ204で撮像された写真は、HDD210の所定の領域に記憶される。また、QRコード(登録商標)解析が可能なプログラムを用いて、カメラ204で読み取ったQRコードから情報を取得することも可能である。
【0026】
ユーザ端末20はNFC通信部205、Bluetooth通信部206、及び無線LAN通信部211を介して各種周辺機器とデータの授受を行うことができる。ユーザ端末20のBluetooth通信部206はBluetooth Low Energy(BLE)に対応していてもよい。
【0027】
<生成AIサーバのハードウェア構成>
図4を参照して、本実施形態に係る生成AIサーバ30のハードウェア構成の一例を説明する。生成AIサーバ30は、CPU301、ROM302、RAM303、通信部304、及びHDD305を備える。
【0028】
CPU301はROM302が記憶している制御プログラムやHDD305が記憶している学習モデルを利用して適切な応答を生成する動作を制御するための処理を実行する。ROM302は、上記制御プログラムを記憶している。RAM303は、CPU301の主メモリ、ワークエリア等の一時記憶領域として用いられる。HDD305は、学習モデル、生成AIアプリケーションなど様々なデータを記憶する。
【0029】
通信部304を介してユーザ端末20、MFP10、及び拡張アプリケーションサーバ40など各種機器とデータの授受を行うことができる。なお、通信部304はEthernet(登録商標)を用いた有線の通信を行ってもいいし、Wi-Fiのような無線通信を行ってもよい。
【0030】
<拡張アプリケーションサーバのハードウェア構成>
図5を参照して、拡張アプリケーションサーバ40のハードウェア構成の一例を示す図である。拡張アプリケーションサーバ40は、CPU401、ROM402、RAM403、通信部404、及びHDD405を備える。
【0031】
CPU401はROM402が記憶している制御プログラムを読み出して、生成AIサーバ30から受け取ったメッセージに従い処理を実行する。ROM402は、上記制御プログラムを記憶している。RAM403は、CPU401の主メモリ、ワークエリア等の一時記憶領域として用いられる。HDD405は、生成AIサーバ30から受け取ったメッセージ内容やその一部などを記憶する。通信部404を介して生成AIサーバ30など各機種とデータの送受信を行うことができる。
【0032】
<クラウドプリントサーバのハードウェア構成>
図6はクラウドプリントサーバ50のハードウェア構成の一例を示す図である。クラウドプリントサーバ50は、CPU501、ROM502、RAM503、通信部504、及びHDD505を備える。
【0033】
CPU501はROM502が記憶している制御プログラムを読み出して、ユーザ端末20から印刷ジョブの受信、保存された印刷ジョブの取得を可能にする。ROM502は、上記制御プログラムを記憶している。RAM503は、CPU501の主メモリ、ワークエリア等の一時記憶領域として用いられる。HDD505は、ユーザ端末20から受信した印刷ジョブなどを記憶する。通信部504を介して生成AIサーバ30など各機種とデータの送受信を行うことができる。
【0034】
<印刷指示>
図7を参照して、本実施形態に係る生成AIサーバ30に印刷を指示する際のユーザ端末20と生成AIサーバ30との対話について説明する。
図7は印刷指示を行う際の対話の画面例を示す。画面600は、ユーザ端末20上で動作するブラウザから生成AIサーバ30にアクセスすることで、操作パネル201上に表示される。
【0035】
プロンプト入力欄601は、ユーザが生成AIサーバ30に対する指示文(プロンプト)を入力するための入力欄である。ユーザは、ユーザ端末20の操作パネル201から自然言語のテキスト形式で入力を行う。音声入力による音声認識結果をテキスト入力として扱ってもよい。送信ボタン602は、プロンプト入力欄601に入力したプロンプトを生成AIサーバ30に送信するためのトリガとなるボタンである。
【0036】
印刷要求プロンプト603は、生成AIサーバ30に印刷を指示するためのプロンプトの一例である。生成AIサーバ30に生成させる文章の指針と、それを印刷する指示が含まれている必要がある。レスポンス604は、生成AIサーバ30が拡張アプリケーションサーバ40と連携して生成したクラウドプリントIDをユーザに問い合わせるための印刷要求プロンプト603に対するレスポンスである。
図7の例では、ユーザからの返答として”4567”のクラウドプリントIDが返されている様子を示す。
【0037】
クラウドプリントIDとは、クラウド上で管理されているプリンタを利用する際の当該ユーザに関わる認証情報を示す。ここでは、クラウドプリントIDを問い合わせる例について説明したが、本発明を限定する意図はない。ユーザを識別する情報であって、クラウドプリントサーバ50で管理されている情報であればよい。つまり、当該ユーザがクラウドプリントサーバ50を介して利用するMFPを特定するために有効な情報であれば、どのような情報であってもよい。また、クラウドプリントIDなどの情報は、ユーザごとに割り当てられてもよいし、グループに対して割り当てられてもよい。
【0038】
クラウドプリントサーバ50では、クラウドプリントIDごとに、例えば、クラウドサービスを受ける範囲の権限や使用履歴等が管理されている。以降、ユーザと生成AIサーバ30のインタラクティブなやり取りはプロンプトとレスポンスという組み合わせで時系列順に並んでいく。
【0039】
生成AIサーバ30は、ユーザ端末20からのメッセージ内容を解析し適した応答を返却する。生成AIサーバ30のみで応答を作成可能なメッセージ内容である場合、応答を作成してレスポンス604に表示する。メッセージの内容から拡張アプリケーションサーバ40による処理を行うべきメッセージであると判断した場合、拡張アプリケーションサーバ40へ処理依頼を実行する。さらに拡張アプリケーションサーバ40からの応答内容からユーザ端末20への応答を作成する。
【0040】
例えば、ユーザ端末20からのメッセージに「印刷」というキーワードが含まれていれば、印刷に関する拡張アプリケーションサーバを選択し処理依頼を実行する。そうすることで生成AIサーバ30単体では実現できないMFP10での印刷処理が可能となる。なお、生成AIサーバ30と拡張アプリケーションサーバ40は一体化して設けられてもよく、その場合においては拡張アプリケーションサーバ40の処理が1つのモジュールとして動作するように構成してもよい。
【0041】
本実施形態ではユーザ端末20でプロンプト入力欄601に印刷を行うメッセージを入力してから生成AIサーバ30との対話を行いMFP10で印刷が実行されるまでの例を示している。処理の詳細は
図8を用いて後述する。レスポンス605は、これから行う印刷の設定と、プレビュー画像606とが含まれる印刷要求のレスポンスを示す。ユーザは印刷設定やプレビュー画像606を確認し、設定変更を望む場合はプロンプト入力欄601に指示することにより行うことができる。
【0042】
<シーケンス>
図8を参照して、本実施形態に係るユーザが生成AIサーバ30に印刷を指示してから実際にMFP10に印刷ジョブが投入されるまでの印刷システムにおける各装置間のシーケンスを説明する。なお、以下で説明するシーケンスでは、生成AIサーバ30及び拡張アプリケーションサーバ40が一体化されて設けられる場合は2つの装置の制御が統合されるものである。
【0043】
S701でユーザ端末20は、ブラウザを介したユーザ操作に従って、印刷要求プロンプト603の内容を生成AIサーバ30に送信する。続いてS702で生成AIサーバ30は、印刷する文章(テキストデータ)を生成し、S703で拡張アプリケーションサーバ40にMFPの取得要求を送信する。このとき、生成AIサーバ30は、S702で生成したテキストデータと生成AIサーバ30へのログインIDも合わせて送信する。
【0044】
次にS704で拡張アプリケーションサーバ40は、JobIDを生成して保存する。JobIDは、今後扱う各種データを関連付けて管理するための固有の識別情報である。さらに、拡張アプリケーションサーバ40は、生成AIサーバ30から受信したテキストデータをクラウドプリントサーバ50が受け付けられるフォーマット(例えばPDF)に変換する。クラウドプリントサーバ50がテキストデータを受け付けられる場合はこの処理はスキップしてよい。その後、拡張アプリケーションサーバ40はデフォルトの印刷設定を現在の印刷設定として保存する。続いて、拡張アプリケーションサーバ40は生成AIサーバ30へのログインIDに紐づけて保存されたクラウドプリントIDが保存されているか確認する。保存されていればS705からS708の処理はスキップしてよい。
【0045】
S705で拡張アプリケーションサーバ40は、生成AIサーバ30にクラウドプリントIDの取得要求を行う。以降の生成AIサーバ30と拡張アプリケーションサーバ40との間ではどのジョブに対するやり取りであるかを明確にするためJobIDを含めてメッセージのやり取りを行う。S706で生成AIサーバ30は、S701のレスポンスとしてクラウドプリントIDの入力要求をユーザ端末20に返す。
【0046】
S707でユーザ端末20は、ブラウザを介したユーザ操作に従って、プロンプト入力欄601へのクラウドプリントID(
図7の例では”4567”)の入力を受け付け、生成AIサーバ30に送信する。S708で生成AIサーバ30は、拡張アプリケーションサーバ40にS707で受信したクラウドプリントIDを送信する。S709で拡張アプリケーションサーバ40は、S703で受信した生成AIサーバ30へのログインIDとS708で受信したクラウドプリントIDを紐づけて保存する。S710で拡張アプリケーションサーバ40は、クラウドプリントサーバ50にMFP取得要求をクラウドプリントIDと共に送信する。
【0047】
S711でクラウドプリントサーバ50は、S710で受信したクラウドプリントIDの使用履歴があるMFP情報を拡張アプリケーションサーバ40へ送信する。ここで、MFP情報とはMFPの名称、使用履歴等が含まれた利用可能な画像形成装置に関わる装置情報である。なお、本発明を限定する意図はなく、当該MFP情報には所定のMFPを識別するための情報が含まれればよい。また、ここで送信されるMFP情報には、1つ以上のMFPに対応する情報が含まれる。つまり、S711においてクラウドプリントサーバ50は、ユーザに関わる認証情報(クラウドプリントID)に紐付いた装置情報(MFP情報)を提供するように動作する。
【0048】
S712で拡張アプリケーションサーバ40は、S711で受信したMFP情報から印刷を行うMFPの選択を行う。複数の選択候補がある場合の処理は
図10を用いて後述する。S713で拡張アプリケーションサーバ40は、生成AIサーバ30へS712で選択したMFP情報を送信する。
【0049】
S714で生成AIサーバ30は、S713で受信したMFP情報からレスポンスメッセージの作成を行う。S715で生成AIサーバ30は、S707のレスポンスとしてS714で作成した印刷を実行するMFPの選択応答を促すメッセージをユーザ端末20に返す。当該メッセージは、
図7の例の「MFPAで良いですか?」に対応し、選択されたMFPの名称「MFPA」で印刷を実行して問題ないかをユーザに問い合わせている。
【0050】
S716でユーザ端末20は、ブラウザを介したユーザ操作に従って、プロンプト入力欄601にS715のMFPで問題ない旨の入力を受け付け、生成AIサーバ30に送信する。S717で生成AIサーバ30は、S716の応答で問題ない旨を拡張アプリケーションサーバ40へ送信する。S718で拡張アプリケーションサーバ40は、クラウドプリントサーバ50へ印刷プレビュー画像作成要求を送信する。このとき、拡張アプリケーションサーバ40はS704で生成した変換済みデータと現在の印刷設定とを送信する。
【0051】
S719でクラウドプリントサーバ50は、出力物のイメージであるプレビュー画像606を作成する。S720でクラウドプリントサーバ50は、S719で作成したプレビュー画像606を拡張アプリケーションサーバ40へ送信する。S721で拡張アプリケーションサーバ40は、S720で受信したプレビュー画像と印刷設定を生成AIサーバ30へ送信する。S722で生成AIサーバ30は、S721で受信したプレビュー画像と印刷設定からレスポンスメッセージの作成を行う。S723で生成AIサーバ30は、S716のレスポンスとしてS722で作成した印刷物に問題ないか確認するレスポンス(メッセージ)605を、ユーザに提示する情報としてユーザ端末20に返す。上述したように、レスポンス605にはS719で作成されたプレビュー画像606が含まれる。ユーザ端末20は受信した情報に従って情報をブラウザを介してユーザに提示する。
【0052】
S724でユーザ端末20は、ブラウザを介したユーザ操作に従って、プロンプト入力欄601にS723の内容で問題ない旨の入力を受け付け、生成AIサーバ30に送信する。ここで印刷設定を変更する場合の処理は
図9及び
図10を用いて後述する。S725で生成AIサーバ30は、S724の応答で問題ない旨を拡張アプリケーションサーバ40へ送信する。S726で拡張アプリケーションサーバ40は、クラウドプリントサーバ50へ印刷要求を行う。このとき、拡張アプリケーションサーバ40はS704で生成した変換済みデータと現在の印刷設定と印刷を実行するMFPの情報とをクラウドプリントサーバ50へ送信する。
【0053】
S727でクラウドプリントサーバ50は、S726で受信した印刷設定と印刷文書からMFPで印刷実行するための印刷ジョブを作成する。S728でクラウドプリントサーバ50は、S726で受信した印刷を実行するMFPへS727で作成した印刷ジョブを投入する。印刷ジョブの投入はクラウドプリントサーバ50から対象のMFPへ印刷データを送信し、MFPで印刷を行ってもよいし、印刷ジョブが投入された旨をMFPに通知し、印刷データをMFPがクラウドプリントサーバ50へ取りに行く構成としてもよい。
【0054】
S729でクラウドプリントサーバ50は、MFPへの印刷ジョブ投入が完了した旨を拡張アプリケーションサーバ40へ送信する。S730で拡張アプリケーションサーバ40は、MFPへの印刷ジョブ投入が完了した旨を生成AIサーバ30へ送信する。S731で生成AIサーバ30は、S724のレスポンスとしてMFPへの印刷ジョブ投入が完了した旨をユーザ端末20に返す。ユーザ端末20では、「印刷を実行しました。」のメッセージがレスポンスとして表示される。S732でMFP10は、S728で受信した印刷ジョブの印刷を実行する。本実施形態では、当該MFPは、印刷ジョブを受信したことに基づいて自動的にジョブを実行するが、印刷ジョブを受信した後にユーザによる実行指示を受け付けたことに基づいて印刷ジョブを実行してもよい。
【0055】
<印刷設定の変更>
図9を参照して、本実施形態に係る印刷設定を変更する場合に、生成AIサーバ30に印刷を指示する際のユーザと生成AIサーバ30との対話の一例について説明する。ここでは
図7と同様の部分の説明は省略する。画面900は、ユーザ端末20上で動作するブラウザから生成AIサーバ30にアクセスすることで、操作パネル201上に表示される。
【0056】
MFP選択のレスポンス801は、603の「いつものMFP」というプロンプトに対して生成AIサーバ30が拡張アプリケーションサーバ40と連携し、MFPを検索した結果、複数の候補が見つかった場合のレスポンスである。複数の候補が見つかった場合、ユーザ端末20に選択を行う旨のレスポンスを生成する。レスポンス801は、2つの候補「MFPA」と「MFPB」とが見つかった場合のレスポンスを示す。MFP選択プロンプト802は、ユーザが、MFPの選択を行うためのプロンプトである。
【0057】
印刷設定変更プロンプト803は、ユーザが、印刷要求レスポンス605で確認した印刷設定を変更したい場合に、生成AIサーバ30に設定変更を指示するためのプロンプトの一例である。本実施例では部数を2部に変更する指示となっているが、他の設定(例えば用紙サイズの変更や、レイアウトを2in1にする等)の変更指示でもよい。また、複数の設定変更の指示が含まれていてもよい。
【0058】
印刷設定変更レスポンス804は、生成AIサーバ30が拡張アプリケーションサーバ40と連携して生成した印刷設定変更プロンプト803に対するレスポンスである。基本的な内容は印刷要求レスポンス605と変わらないが、印刷設定には指示された変更内容が反映され印刷ジョブが更新される。また、カラーモードやレイアウト等、プレビュー画像が変わるような設定が変更された場合には合わせてプレビュー画像606も差し替えられる。
【0059】
<拡張アプリケーションサーバの処理手順>
図10を参照して、本実施形態に係る拡張アプリケーションサーバ40の処理手順を説明する。以下で説明する処理は、例えばCPU401がROM402に記憶されたプログラムをRAM403に読み出し、実行することで実現される。また、以下の処理は、生成AIサーバ30を機能拡張するプラグインを実行することによって実現される。本実施形態では、当該プラグイン(プログラム)は拡張アプリケーションサーバ40によって管理され、実行されるものとして説明するが、本発明を限定する意図はない。例えば、拡張アプリケーションサーバ40が管理するプラグインを生成AIサーバ30にインストールして、生成AIサーバ30で実行するようにしてもよい。或いは、生成AIサーバ30及び拡張アプリケーションサーバ40を一体化して設けてもよく、その場合には一体化されたサーバがプラグインの管理、インストール、実行を制御することとなる。
【0060】
S901でCPU401は、生成AIサーバ30からMFP取得要求を受信したかどうかを判断する。ここで、MFP取得要求には、例えば、テキストデータと生成AIサーバ30へのログインIDデータとが含まれる。MFP取得要求を受信した場合はS902へ進み、そうでない場合はS901の判定を繰り返す。
【0061】
S902でCPU401は、JobIDを生成する。S903でCPU401は、S901で受信したテキストデータを、クラウドプリントサーバ50で受け付け可能な印刷文書用のデータフォーマットに変換する。S904でCPU401は、S901で受信した生成AIサーバ30へのログインIDに紐づいたクラウドプリントIDがHDD405に保存されているかどうかを判断する。保存されている場合はS908へ進み、保存されていない場合はS905へ進む。
【0062】
S905でCPU401は、生成AIサーバ30へクラウドプリントID要求を送信する。S906でCPU401は、生成AIサーバ30からクラウドプリントIDの応答があったかを判断する。応答があればS907へ進み、そうでない場合はS907の判定を繰り返す。S907でCPU401は、生成AIサーバ30からから受信した生成AIサーバ30へのログインIDとクラウドプリントIDを紐づけてHDD405に保存し、S908に進む。
【0063】
S908でCPU401は、クラウドプリントサーバ50へMFP取得要求を送信する。MFP取得要求には、少なくともクラウドプリントIDが含まれる。S909でCPU401は、クラウドプリントサーバ50からMFP情報(利用可能な画像形成装置に関わる装置情報)の応答があったか判断する。応答があればS910へ進み、そうでない場合はS909の判定を繰り返す。
【0064】
S910でCPU401は、生成AIサーバ30へ送信するMFPの選択を行う。ここで、複数のMFP情報がある場合は、使用履歴からどのMFPで印刷を行うか判断する。例えば、使用回数が最も多いもの、又は直近で使用されたものを選択する。S911でCPU401は、MFPの候補が一台であるか否かを判断する。例えば使用履歴が同じ回数のMFPが複数台存在する場合などは候補が複数であると判断する。一台であると判断した場合S912へ進み、複数台存在すると判断した場合はS913へ進む。
【0065】
S912でCPU401は、生成AIサーバ30へ使用するMFPに対応するMFP情報を送信し、S914へ進む。一方、S913でCPU401は、生成AIサーバ30へMFP選択のレスポンス801の送信要求を行い、S914へ進む。S914でCPU401は、生成AIサーバ30からMFP選択の応答を受信したか否かを判断する。受信した場合はS915へ進み、そうでない場合はS914の判定を繰り返す。
【0066】
S915でCPU401は、クラウドプリントサーバ50へプレビュー画像作成要求(印刷文書、印刷設定を含む)を送信する。S916でCPU401は、クラウドプリントサーバ50からプレビュー画像を受信したか否かを判断する。受信したと判断した場合S917へ進み、そうでない場合はS916の判定を繰り返す。
【0067】
S917でCPU401は、生成AIサーバ30へS916で受信したプレビュー画像と印刷設定とを送信する。S918でCPU401は、生成AIサーバ30から印刷設定変更プロンプト803による設定変更が行われたか否かを判断する。設定変更が行われたと判断した場合はS919へ進み、設定変更がないと判断した場合はS920へ進む。
【0068】
S919でCPU401は、S918で受信した設定変更要求の内容に従って設定の変更を行い、HDD405に保存し、処理をS915へ戻す。一方、S920でCPU401は、生成AIサーバ30から印刷設定に問題がない旨の応答を受信したか否かを判断する。問題がないと判断した場合はS921へ進み、そうでない場合はS918の判断を繰り返す。S921でCPU401は、クラウドプリントサーバ50へ印刷要求(印刷文書、印刷設定、MFP情報を含む)を送信し、本フローチャートの処理を終了する。
【0069】
以上説明したように、本実施形態に係るコンピュータプログラム(プラグイン)は、生成AIサービスを機能拡張するコンピュータプログラムである。本コンピュータプログラムは、情報処理装置のコンピュータを、生成AIサービスを介して印刷要求を受け付けると、ユーザに関わる認証情報を取得するように機能させる。また、本コンピュータプログラムは、上記コンピュータを、取得したユーザに関わる認証情報を用いて、利用可能な画像形成装置に関わる装置情報を印刷サーバから取得し、装置情報に基づいて、印刷を実行する画像形成装置を特定するように機能させる。本実施形態によれば、生成AIからの出力を画像形成装置で好適に印刷させることができる。また、ユーザは生成AIサービスへ入力を行うのみで画像形成装置での印刷が可能となる。
【0070】
本明細書の開示は、以下のコンピュータプログラム、印刷制御方法、及びシステムを含む。
(項目1)
生成AIサービスを機能拡張するコンピュータプログラムであって、情報処理装置のコンピュータを、
前記生成AIサービスを介して印刷要求を受け付けると、ユーザに関わる認証情報を取得する第1の取得手段と、
前記取得したユーザに関わる認証情報を用いて、利用可能な画像形成装置に関わる装置情報を印刷サーバから取得する第2の取得手段と、
前記装置情報に基づいて、印刷を実行する画像形成装置を特定する特定手段と
として機能させることを特徴とするコンピュータプログラム。
(項目2)
前記特定手段は、前記生成AIサービスを介して、前記ユーザに対して前記装置情報に基づく問い合わせを行い、印刷を実行する画像形成装置を特定することを特徴とする項目1に記載のコンピュータプログラム。
(項目3)
前記特定手段は、前記装置情報に複数の画像形成装置に関わる情報が含まれる場合は、前記生成AIサービスを介して前記ユーザに前記複数の画像形成装置の中から印刷を実行する画像形成装置を選択させる問い合わせを行うことを特徴とする項目1又は2に記載のコンピュータプログラム。
(項目4)
前記情報処理装置のコンピュータを、さらに、
前記印刷要求に基づいて印刷ジョブを生成する生成手段と、
前記生成AIサービスを介して前記生成した印刷ジョブに関する情報をユーザに提示する提示手段と
として機能させることを特徴とする項目1乃至3の何れか1項に記載のコンピュータプログラム。
(項目5)
前記生成手段は、前記印刷サーバから前記印刷ジョブを実行する場合のプレビュー画像を取得し、
前記提示手段は、前記印刷ジョブに関する情報として、前記印刷ジョブを実行する際の印刷設定と、前記プレビュー画像とを提示することを特徴とする項目4に記載のコンピュータプログラム。
(項目6)
前記情報処理装置のコンピュータを、さらに、
前記生成AIサービスを介して、前記ユーザに提示した前記印刷ジョブの設定を変更する要求を受け付けると、変更内容に応じて前記印刷ジョブを更新する更新手段
として機能させることを特徴とする項目4又は5に記載のコンピュータプログラム。
(項目7)
前記生成手段は、前記印刷ジョブを生成する際に固有の識別情報を割り当てることを特徴とする項目4乃至6の何れか1項に記載のコンピュータプログラム。
(項目8)
前記生成手段は、前記生成AIサービスを介して受け付けた前記印刷要求に含まれるテキストデータを、前記印刷サーバで受け付け可能なフォーマットに変換して印刷データを生成することを特徴とする項目4乃至7の何れか1項に記載のコンピュータプログラム。
(項目9)
前記生成手段は、前記生成した印刷ジョブに予め定められた印刷設定を設定することを特徴とする項目4乃至8の何れか1項に記載のコンピュータプログラム。
(項目10)
前記生成手段は、前記印刷要求に含まれるテキストデータに基づいて、前記生成した印刷ジョブに印刷設定を設定することを特徴とする項目4乃至8の何れか1項に記載のコンピュータプログラム。
(項目11)
前記ユーザに提示した前記印刷ジョブに関する情報に対するユーザによる印刷指示を前記生成AIサービスを介して受けると、前記印刷サーバから画像形成装置へ前記印刷ジョブを投入させ、該印刷ジョブが実行されることを特徴とする項目4乃至10の何れか1項に記載のコンピュータプログラム。
(項目12)
前記コンピュータプログラムは、前記生成AIサービスのプラグインとして前記情報処理装置に実装されることを特徴とする項目4乃至11の何れか1項に記載のコンピュータプログラム。
(項目13)
印刷制御方法であって、
第1の取得手段が、情報処理装置が提供する生成AIサービスを介して印刷要求を受け付けると、ユーザに関わる認証情報を取得する第1の取得工程と、
第2の取得手段が、前記取得したユーザに関わる認証情報を用いて、利用可能な画像形成装置に関わる装置情報を印刷サーバから取得する第2の取得工程と、
特定手段が、前記装置情報に基づいて、印刷を実行する画像形成装置を特定する特定工程と
を含むことを特徴とする印刷制御方法。
(項目14)
ユーザ端末に生成AIサービスを提供する情報処理装置、印刷サーバ、及び画像形成装置を含む印刷システムであって、
前記情報処理装置は、前記生成AIサービスを機能拡張するコンピュータプログラムを実装することによって、
前記生成AIサービスを介して印刷要求を受け付けると、ユーザに関わる認証情報を取得する第1の取得手段と、
前記取得したユーザに関わる認証情報を用いて、利用可能な画像形成装置に関わる装置情報を印刷サーバから取得する第2の取得手段と、
前記装置情報に基づいて、印刷を実行する画像形成装置を特定する特定手段と
として機能し、
前記印刷サーバは、
前記ユーザに関わる認証情報に紐付いた前記装置情報を提供する提供手段と、
前記生成AIサービスを介して印刷の実行が指示されると、特定された画像形成装置へ前記印刷要求に基づく印刷ジョブを投入する実行手段と
を備えることを特徴とする印刷システム。
(項目15)
前記印刷サーバはクラウドプリントサーバであることを特徴とする項目14に記載の印刷システム。
【0071】
<その他の実施形態>
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
【0072】
発明は上記実施形態に制限されるものではなく、発明の精神及び範囲から離脱することなく、様々な変更及び変形が可能である。従って、発明の範囲を公にするために請求項を添付する。
【符号の説明】
【0073】
10:MFP、20:ユーザ端末、30:生成AIサーバ、40:拡張アプリケーションサーバ、50:クラウドプリントサーバ、60:クラウド、70:ネットワーク