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

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

▶ 有限会社アイ・アール・ディーの特許一覧

特許7591212情報処理装置、情報処理方法、およびプログラム
<>
  • 特許-情報処理装置、情報処理方法、およびプログラム 図1
  • 特許-情報処理装置、情報処理方法、およびプログラム 図2
  • 特許-情報処理装置、情報処理方法、およびプログラム 図3
  • 特許-情報処理装置、情報処理方法、およびプログラム 図4
  • 特許-情報処理装置、情報処理方法、およびプログラム 図5
  • 特許-情報処理装置、情報処理方法、およびプログラム 図6
  • 特許-情報処理装置、情報処理方法、およびプログラム 図7
  • 特許-情報処理装置、情報処理方法、およびプログラム 図8
  • 特許-情報処理装置、情報処理方法、およびプログラム 図9
  • 特許-情報処理装置、情報処理方法、およびプログラム 図10
  • 特許-情報処理装置、情報処理方法、およびプログラム 図11
  • 特許-情報処理装置、情報処理方法、およびプログラム 図12
  • 特許-情報処理装置、情報処理方法、およびプログラム 図13
  • 特許-情報処理装置、情報処理方法、およびプログラム 図14
  • 特許-情報処理装置、情報処理方法、およびプログラム 図15
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B1)
(11)【特許番号】
(24)【登録日】2024-11-20
(45)【発行日】2024-11-28
(54)【発明の名称】情報処理装置、情報処理方法、およびプログラム
(51)【国際特許分類】
   G06F 40/186 20200101AFI20241121BHJP
   G06F 40/56 20200101ALI20241121BHJP
【FI】
G06F40/186
G06F40/56
【請求項の数】 11
(21)【出願番号】P 2023200683
(22)【出願日】2023-11-28
(62)【分割の表示】P 2023200524の分割
【原出願日】2023-11-28
【審査請求日】2023-11-29
【早期審査対象出願】
(73)【特許権者】
【識別番号】502384842
【氏名又は名称】株式会社アイ・アール・ディー
(74)【代理人】
【識別番号】100115749
【弁理士】
【氏名又は名称】谷川 英和
(72)【発明者】
【氏名】谷川 英和
【審査官】長 由紀子
(56)【参考文献】
【文献】中国特許出願公開第116741178(CN,A)
【文献】特許第7370118(JP,B1)
【文献】中国特許出願公開第116884559(CN,A)
【文献】中国特許出願公開第116856855(CN,A)
【文献】Tokkyo.Ai社、ChatGPT APIを活用した特許出願のための特許明細書と請求範囲のTokkyo生成AI(旧TokkyoGPT)を公開,[ONLINE],2023年09月06日,[検索日 2024.03.01] URL:https://prtimes.jp/main/html/rd/p/000000138.000042056.html
(58)【調査した分野】(Int.Cl.,DB名)
G06F 40/00-58
(57)【特許請求の範囲】
【請求項1】
文字列のクラスに関する条件であり、受付情報の中のタグの条件または受付情報の中の文字列の言語的特性の条件のうちの1種類または2種類の条件を含む2以上の各クラス条件に対応付けてプロンプト雛形情報が格納される雛形管理部と、
受付情報を受け付ける受付部と、
前記受付情報に含まれる情報であり、前記2以上の各クラス条件に合致する文字列であり、生成AIへの問合せに使用する文字列である問合情報を取得する問合取得部と、
前記問合取得部が取得した前記問合情報が合致したクラス条件と対になるプロンプト雛形情報を前記雛形管理部から取得する雛形取得部と、
前記雛形取得部が取得した前記プロンプト雛形情報と前記問合取得部が取得した前記問合情報とを用いて、プロンプトを作成するプロンプト作成部と、
前記プロンプト作成部が作成した前記プロンプトを生成AIに渡し、当該生成AIからの回答を取得する回答取得部と、
前記回答取得部が取得した前記回答を用いて、出力情報を取得する出力取得部と、
前記出力情報を出力する出力部とを具備する情報処理装置。
【請求項2】
前記受付情報は、発明に関係する情報であり、
前記出力情報は、特許明細書または特許請求の範囲または要約書を構成する情報である請求項1記載の情報処理装置。
【請求項3】
前記問合取得部は、
少なくとも一のクラス条件について、前記受付情報から2つ以上の前記問合情報を取得し、
前記プロンプト作成部は、
前記一のクラス条件について、前記2つ以上の各問合情報を、前記一のクラス条件に対して取得されたプロンプト雛形情報に配置して、プロンプトを作成する請求項1記載の情報処理装置。
【請求項4】
前記出力取得部は、
出力情報を構成するための雛形である出力雛形情報に、前記回答の一部または全部を配置し、前記出力情報を取得する請求項1記載の情報処理装置。
【請求項5】
前記言語的特性は、「文」、「段落」、「単語」、発明を特定する「構成要素」、または「技術用語」である請求項1記載の情報処理装置。
【請求項6】
前記受付情報が「質問」であるか否かを決定するクラス決定部をさらに具備し、
前記雛形取得部は、
前記クラス決定部が前記受付情報が「質問」であると決定し場合、前記プロンプト雛形情報を取得せず、
前記プロンプト作成部は、
前記受付情報を含むプロンプトを作成する請求項記載の情報処理装置。
【請求項7】
前記受付情報は、ドキュメントであり、
前記クラスは、前記ドキュメントの種類を含む請求項1記載の情報処理装置。
【請求項8】
2以上の生成AIから、前記雛形取得部が取得した前記プロンプト雛形情報に応じた生成AIを決定する生成AI決定部をさらに具備し、
前記回答取得部は、
前記プロンプト作成部が作成した前記プロンプトを前記生成AI決定部が決定した前記生成AIに渡し、当該生成AIからの回答を取得する請求項1記載の情報処理装置。
【請求項9】
前記雛形管理部の前記2以上の各プロンプト雛形情報には、前記出力情報に対する処理の種類を特定する処理種類が対応付いており、
前記処理種類は、「追加」および「変更」を含み、
前記出力取得部は、
前記回答取得部が取得した前記回答が取得されるために使用されたプロンプト雛形情報と対になる前記処理種類が「追加」である場合は、前記回答または前記回答の一部を前記回答の元になる問合情報に対して予め決められた位置に前記回答または前記回答の一部を配置し、
前記回答取得部が取得した前記回答が取得されるために使用されたプロンプト雛形情報と対になる前記処理種類が「変更」である場合は、前記回答または前記回答の一部を前記回答の元になる問合情報を前記回答または回答の一部に更新する、請求項1記載の情報処理装置。
【請求項10】
文字列のクラスに関する条件であり、受付情報の中のタグの条件または受付情報の中の文字列の言語的特性の条件のうちの1種類または2種類の条件を含む2以上の各クラス条件に対応付けてプロンプト雛形情報が格納される雛形管理部と、受付部と、問合取得部と、雛形取得部と、プロンプト作成部と、回答取得部と、出力取得部と、出力部とにより実現される情報処理方法であって、
前記受付部が、受付情報を受け付ける受付ステップと、
前記問合取得部が、前記受付情報に含まれる情報であり、前記2以上の各クラス条件に合致する文字列であり、生成AIへの問合せに使用する文字列である問合情報を取得する問合取得ステップと、
前記雛形取得部が、前記問合取得部が取得した前記問合情報のクラスが満たすクラス条件に対応するプロンプト雛形情報を前記雛形管理部から取得する雛形取得ステップと、
前記プロンプト作成部が、前記雛形取得部が取得した前記プロンプト雛形情報と前記問合取得部が取得した前記問合情報とを用いて、プロンプトを作成するプロンプト作成ステップと、
前記回答取得部が、前記プロンプト作成部が作成した前記プロンプトを生成AIに渡し、当該生成AIからの回答を取得する回答取得ステップと、
前記出力取得部が、前記回答取得部が取得した前記回答を用いて、出力情報を取得する出力情報取得ステップと、
前記出力部が、前記出力情報を出力する出力ステップとを具備する情報処理方法。
【請求項11】
文字列のクラスに関する条件であり、受付情報の中のタグの条件または受付情報の中の文字列の言語的特性の条件のうちの1種類または2種類の条件を含む2以上の各クラス条件に対応付けてプロンプト雛形情報が格納される雛形管理部にアクセス可能なコンピュータを、
受付情報を受け付ける受付部と、
前記受付情報に含まれる情報であり、前記2以上の各クラス条件に合致する文字列であり、生成AIへの問合せに使用する文字列である問合情報を取得する問合取得部と、
前記問合取得部が取得した前記問合情報のクラスが満たすクラス条件に対応するプロンプト雛形情報を前記雛形管理部から取得する雛形取得部と、
前記雛形取得部が取得した前記プロンプト雛形情報と前記問合取得部が取得した前記問合情報とを用いて、プロンプトを作成するプロンプト作成部と、
前記プロンプト作成部が作成した前記プロンプトを生成AIに渡し、当該生成AIからの回答を取得する回答取得部と、
前記回答取得部が取得した前記回答を用いて、出力情報を取得する出力取得部と、
前記出力情報を出力する出力部として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、生成AIを用いて情報を取得し、出力する情報処理装置等に関するものである。
【背景技術】
【0002】
昨今、生成AIが普及し出している(特許文献1参照)。
【先行技術文献】
【非特許文献】
【0003】
【文献】“ChatGPT”、[online]、[令和5年11月19日検索]、インターネット[URL:https://openai.com/chatgpt]
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、従来技術においては、適切なプロンプトを生成AIに与えることは容易ではなかった。さらに具体的には、問合情報のクラスに応じた適切なプロンプトを用いて、生成AIを利用することが容易ではなかった。なお、ここでの生成AIは、テキストを生成するAIである。
【課題を解決するための手段】
【0005】
本第一の発明の情報処理装置は、文字列のクラスに関する条件である1または2以上の各クラス条件に対応付けてプロンプト雛形情報が格納される雛形管理部と、ユーザからの受付情報を受け付ける受付部と、受付情報に含まれる情報であり、生成AIへの問合せに使用する情報である問合情報を取得する問合取得部と、問合取得部が取得した問合情報のクラスが満たすクラス条件に対応するプロンプト雛形情報を雛形管理部から取得する雛形取得部と、雛形取得部が取得したプロンプト雛形情報と問合取得部が取得した問合情報とを用いて、プロンプトを作成するプロンプト作成部と、プロンプト作成部が作成したプロンプトを生成AIに渡し、生成AIからの回答を取得する回答取得部と、回答取得部が取得した回答を用いて、出力情報を取得する出力取得部と、出力情報を出力する出力部とを具備する情報処理装置である。
【0006】
かかる構成により、問合情報のクラスに応じた適切なプロンプトを用いて、生成AIを利用できる。
【0007】
また、本第二の発明の情報処理装置は、第一の発明に対して、受付情報は、発明に関係する情報であり、出力情報は、特許明細書または特許請求の範囲または要約書を構成する情報である情報処理装置である。
【0008】
かかる構成により、発明の情報のクラスに応じた適切なプロンプトを用いて、生成AIを利用し、特許書類の作成を支援できる。
【0009】
また、本第三の発明の情報処理装置は、第一または第二の発明に対して、問合取得部は、受付情報から少なくとも2つの問合情報を取得し、プロンプト作成部は、2つの各問合情報を用いて、プロンプトを作成する情報処理装置である。
【0010】
かかる構成により、問合情報のクラスに応じた適切なプロンプトを用いて、生成AIを利用できる。
【0011】
また、本第四の発明の情報処理装置は、第一から第三いずれか1つの発明に対して、出力取得部は、出力情報を構成するための雛形である出力雛形情報に、回答の一部または全部を配置し、出力情報を取得する情報処理装置である。
【0012】
かかる構成により、問合情報のクラスに応じた適切なプロンプトを用いて、生成AIを利用し、適切な出力情報を取得できる。
【0013】
また、本第五の発明の情報処理装置は、第一から第四いずれか1つの発明に対して、クラスは、問合情報の言語的特性である情報処理装置である。
【0014】
かかる構成により、問合情報の適切なクラスを決定でき、当該クラスに応じた適切なプロンプトを用いて、生成AIを利用できる。
【0015】
また、本第六の発明の情報処理装置は、第五の発明に対して、クラスは「質問」を採り得、雛形取得部は、クラス決定部が決定したクラスが「質問」である場合、プロンプト雛形情報を取得せず、プロンプト作成部は、問合取得部が取得した問合情報を用いたプロンプトを作成する情報処理装置である。
【0016】
かかる構成により、問合情報の適切なクラスを決定でき、当該クラスに応じた適切なプロンプトを用いて、生成AIを利用できる。
【0017】
また、本第七の発明の情報処理装置は、第一から第六いずれか1つの発明に対して、クラスは、受付情報に含まれるタグであり、問合情報が対応するタグである情報処理装置である。
【0018】
かかる構成により、問合情報の適切なクラスを決定でき、当該クラスに応じた適切なプロンプトを用いて、生成AIを利用できる。
【0019】
また、本第八の発明の情報処理装置は、第一から第七いずれか1つの発明に対して、受付情報は、ドキュメントであり、クラスは、ドキュメントの種類である情報処理装置である。
【0020】
かかる構成により、問合情報の適切なクラスを決定でき、当該クラスに応じた適切なプロンプトを用いて、生成AIを利用できる。
【0021】
また、本第九の発明の情報処理装置は、第一から第八いずれか1つの発明に対して、2以上の生成AIから、雛形取得部が取得したプロンプト雛形情報に応じた生成AIを決定する生成AI決定部をさらに具備し、回答取得部は、プロンプト作成部が作成したプロンプトを生成AI決定部が決定した生成AIに渡し、当該生成AIからの回答を取得する請求項1から請求項8いずれか一項に記載の情報処理装置である。
【0022】
かかる構成により、生成AIを生かす生成AI制御エンジンを提供できる。
【発明の効果】
【0023】
本発明による情報処理装置によれば、問合情報のクラスに応じた適切なプロンプトを用いて、生成AIを利用できる。
【図面の簡単な説明】
【0024】
図1】実施の形態1における情報システムAの概念図
図2】同情報システムAのブロック図
図3】同情報処理装置1の動作例について説明するフローチャート
図4】同受付情報処理の例について説明するフローチャート
図5】同クラス条件処理の例について説明するフローチャート
図6】同出力取得処理の例について説明するフローチャート
図7】同雛形管理表を示す図
図8】同受付情報の例を示す図
図9】同回答の例を示す図
図10】同受付情報の例を示す図
図11】同回答の例を示す図
図12】同受付情報の例を示す図
図13】同回答の例を示す図
図14】同コンピュータシステムの概観図
図15】同コンピュータシステムのブロック図
【発明を実施するための形態】
【0025】
以下、情報処理装置等の実施形態について図面を参照して説明する。なお、実施の形態において同じ符号を付した構成要素は同様の動作を行うので、再度の説明を省略する場合がある。
【0026】
(実施の形態1)
本実施の形態において、問合情報のクラスを決定し、当該クラスに応じたプロンプト雛形情報を取得し、当該プロンプト雛形情報を用いて、プロンプトを作成し、当該プロンプトを生成AIに与え、回答を取得し、当該回答を用いた出力情報を出力する情報処理装置について説明する。特に、発明に関する問合情報を用いて、特許書類の一部を出力する情報処理装置について説明する。クラスは、例えば、文字列の言語的特性による、または文字列に対応するタグによる、または受け付けられたドキュメントの種類による情報である。なお、プロンプトは、生成AIに与える質問である。
【0027】
また、本実施の形態において、受付情報から2以上の問合情報を取得し、当該2以上の各問合情報を用いてプロンプトを作成する情報処理装置について説明する。
【0028】
また、本実施の形態において、生成AIから取得した回答を出力雛形情報に与え、出力情報を取得する情報処理装置について説明する。
【0029】
さらに、本実施の形態において、クラスに応じた生成AIを決定し、当該生成AIからの回答を用いて、出力情報を取得する情報処理装置について説明する。
【0030】
なお、本明細書において、情報Xが情報Yに対応付いていることは、情報Xから情報Yを取得できること、または情報Yから情報Xを取得できることであり、その対応付けの方法は問わない。情報Xと情報Yとがリンク付いていても良いし、同じバッファに存在していても良いし、情報Xが情報Yに含まれていても良いし、情報Yが情報Xに含まれている等でも良い。
【0031】
また、本明細書において、情報Zを選択したり、決定したりすることは、情報Zを取得すること、情報Zへのポインタを取得すること、情報ZのIDを取得すること、情報Zにフラグを立てること等であり、情報Zにアクセスできれば良い。
【0032】
図1は、本実施の形態における情報システムAの概念図である。情報システムAは、情報処理装置1、1または2以上の端末装置2、および1または2以上の生成AI装置3を備える。
【0033】
情報処理装置1は、受付情報を受け付け、生成AIを用いて、回答を取得し、当該回答を用いた出力情報を出力する装置である。情報処理装置1は、例えば、クラウドサーバ、ASPサーバであるが、その種類は問わない。情報処理装置1は、端末でも良い。情報処理装置1が端末である場合、情報システムAに端末装置2は不要である、または情報処理装置1が端末装置2を兼ねる、と考えて良い。情報処理装置1は、生成AIを含んでも良い。
【0034】
端末装置2は、受付情報を入力するユーザが使用する端末である。端末装置2は、例えば、いわゆるパソコン、スマートフォン、タブレット端末であるが、その種類は問わない。
【0035】
生成AI装置3は、プロンプトを受け付け、回答を出力する生成AIを有する装置である。情報処理装置1が生成AIを含む場合、生成AI装置3は無くても良い。
【0036】
図2は、本実施の形態における情報システムAのブロック図である。情報処理装置1は、格納部11、受付部12、処理部13、および出力部14を備える。格納部11は、雛形管理部111を備える。処理部13は、問合取得部131、クラス決定部132、生成AI決定部133、雛形取得部134、プロンプト作成部135、回答取得部136、および出力取得部137を備える。
【0037】
端末装置2は、端末格納部21、端末受付部22、端末処理部23、端末送信部24、端末受信部25、および端末出力部26を備える。
【0038】
情報処理装置1を構成する格納部11には、各種の情報が格納される。各種の情報は、例えば、後述するプロンプト雛形情報である。
【0039】
雛形管理部111には、2以上のプロンプト雛形情報が格納される。2以上の各プロンプト雛形情報には、クラス条件が対応付いている。
【0040】
プロンプト雛形情報とは、プロンプトを作成するための雛形となる情報である。プロンプト雛形情報は、通常、文字列である。プロンプト雛形情報は、1または2以上の変数を有する。変数は、後述する問合情報が代入される変数である。プロンプト雛形情報は、例えば、質問を特定する文字列と1以上の変数を有する。なお、例えば、プロンプト雛形情報の中の変数の箇所に、問合情報が配置され、プロンプトが作成される。
【0041】
雛形管理部111には、出力雛形情報が格納されても良い。出力雛形情報とは、出力情報を作成するための雛形となる情報である。出力雛形情報は、通常、文字列である。出力雛形情報は、1または2以上の変数を有する。変数は、後述する回答の一部または全部が代入される変数である。なお、例えば、出力雛形情報報の中の変数の箇所に、回答または回答の一部が配置され、出力情報が作成される。
【0042】
クラス条件とは、後述するクラスに関する条件である。クラス条件は、1または2以上のクラスに関する条件である。クラスは、文字列に関する。クラスは、分類、種類と言っても良い。
【0043】
受付部12は、受付情報を受け付ける。受付部12は、通常、ユーザからの受付情報を受け付ける。ユーザからの受付情報とは、ユーザが与えた受付情報である。受付部12は、通常、端末装置2から受付情報を受信する。
【0044】
ここでは、受け付けとは、通常、有線もしくは無線の通信回線を介して送信された情報の受信であるが、キーボードやマウス、タッチパネルなどの入力デバイスから入力された情報の受け付け、光ディスクや磁気ディスク、半導体メモリなどの記録媒体から読み出された情報の受け付けなどを含む概念であっても良い。
【0045】
受付情報は、通常、ユーザが入力した情報である。ただし、受付情報は、ファイルやデータベースから取得された情報でも良い。受付情報は、例えば、発明に関係する情報である。受付情報は、例えば、発明を特定する情報である。受付情報は、例えば、特許請求の範囲、明細書、要約書である。受付情報は、例えば、ドキュメントである。受付情報は、例えば、ファイルである。受付情報は、例えば、文章、1または2以上の文、または文字列である。
【0046】
処理部13は、各種の処理を行う。各種の処理とは、例えば、問合取得部131、クラス決定部132、生成AI決定部133、雛形取得部134、プロンプト作成部135、回答取得部136、または出力取得部137が行う処理である。
【0047】
問合取得部131は、受付部12が受け付けた受付情報から問合情報を取得する。問合情報とは、生成AIへの問合せに使用する情報である。問合情報は、受付情報に含まれる情報である。問合情報は、受付情報でも良い。問合情報は、文字列である。問合情報は、例えば、1または2以上の文、単語、特定の品詞(例えば、名詞)の単語である。
【0048】
問合取得部131は、例えば、受付部12が受け付けた受付情報から少なくとも2つの問合情報を取得する。
【0049】
問合取得部131が受付情報から取得する1または2以上の問合情報は、通常、予め決まっている。
【0050】
問合取得部131は、例えば、クラス条件に合致するクラスに分類される1または2以上の問合情報を受付情報から取得する。
【0051】
クラス決定部132は、問合情報のクラスを決定する。クラス決定部132は、受付情報のクラスを決定しても良い。クラス決定部132は、例えば、問合取得部131が取得した1以上の各問合情報のクラスを決定する。
【0052】
クラスは、種類、分類等と言っても良い。クラスは、例えば、言語的特性に基づく情報、問合情報が対応するタグに基づく情報、問合情報が含まれるドキュメントの種類に基づく情報である。
【0053】
言語的特性は、文字列に対する言語の属性値と言っても良い。言語的特性に基づくクラスは、例えば、「質問」または「非質問」である。言語的特性に基づくクラスは、例えば、「文」または「単語」である。言語的特性に基づくクラスは、例えば、「文」、「段落」、または「単語」である。言語的特性に基づくクラスは、例えば、単語の品詞である。言語的特性に基づくクラスは、例えば、発明を特定する「構成要素」、「技術用語」である。「技術用語」は、「専門用語」でも良い。
【0054】
問合情報が対応するタグは、例えば、明細書の中のタグ、特許請求の中の範囲のタグ、要約書の中のタグである。タグに基づくクラスは、例えば、「発明が解決しようとする課題」「課題を解決するための手段」「発明の効果」「発明を実施するための形態」「符号の説明」「請求項1」である。問合情報が対応するタグは、例えば、HTMLのタグ、またはXMLのタグである。
【0055】
ドキュメントの種類に基づくクラスとは、ファイルである受付情報の種類に基づくクラスである。ドキュメントの種類に基づくクラスは、例えば、「明細書」「特許請求の範囲」「要約書」「発明リスト」である。
【0056】
クラス決定部132は、例えば、問合情報の言語的特性を取得し、当該言語的特性に対応するクラスを決定する。
【0057】
クラス決定部132は、例えば、受付情報に含まれるタグであり、問合情報が対応するタグを受付情報から取得し、当該タグに対応するクラスを決定する。
【0058】
クラス決定部132は、例えば、受付情報であるドキュメントの種類を取得し、当該種類に対応するクラスを決定する。
【0059】
生成AI決定部133は、例えば、2以上の生成AIから、クラスに応じた生成AIを決定する。かかる場合、2以上の各生成AIには、クラス条件が対応付いている。生成AI決定部133は、例えば、クラス条件と対になる生成AIを決定する。生成AIを決定することは、例えば、当該生成AIを使用するためのAPIを取得することである。かかる場合、クラス条件には、例えば、生成AIにプロンプトを渡すためのAPIが対応付いている。生成AIを決定することは、例えば、当該生成AIを格納している生成AI装置3の識別子(例えば、IPアドレス)を取得することである。かかる場合、クラス条件に生成AI装置3の識別子が対応付いている。
【0060】
雛形取得部134は、クラスに対応するプロンプト雛形情報を雛形管理部111から取得する。雛形取得部134は、例えば、クラス条件に対応するプロンプト雛形情報を雛形管理部111から取得する。
【0061】
雛形取得部134は、受け付けられた受付情報のクラスが「質問」である場合、プロンプト雛形情報を取得しないことは好適である。
【0062】
プロンプト作成部135は、雛形取得部134が取得したプロンプト雛形情報と問合取得部131が取得した問合情報とを用いて、プロンプトを作成する。プロンプト作成部135は、通常、雛形取得部134が取得したプロンプト雛形情報の変数の箇所に、取得された問合情報を配置し、プロンプトを作成する。
【0063】
プロンプト作成部135は、2つの各問合情報を用いて、プロンプトを作成しても良い。ここでのプロンプトは、1つでも良いし、2つでも良い。
【0064】
問合取得部131が取得した問合情報のクラスが「質問」である場合、プロンプト作成部135は、当該問合情報を含むプロンプトを作成する。プロンプトは、問合情報でも良い。
【0065】
回答取得部136は、プロンプト作成部135が作成したプロンプトを生成AIに渡し、当該生成AIからの回答を取得する。生成AIに渡すことは、例えば、生成AI装置3に渡すことであるが、情報処理装置1が有する生成AIに渡すことでも良い。
【0066】
回答取得部136は、プロンプト作成部135が作成したプロンプトを、例えば、生成AIのAPIを用いて当該生成AIに渡す。
【0067】
回答取得部136は、プロンプト作成部135が作成したプロンプトを生成AI決定部133が決定した生成AIに渡し、当該生成AIからの回答を取得することは好適である。
【0068】
出力取得部137は、回答取得部136が取得した回答を用いて、出力情報を取得する。出力取得部137は、例えば、受付情報と回答取得部136が取得した回答とを用いて、出力情報を取得する。出力取得部137は、例えば、受付情報の中に、回答を配置し、出力情報を取得する。出力取得部137は、例えば、受付情報の中の一部または全部を回答に置き換え、出力情報を取得する。
【0069】
出力取得部137は、出力雛形情報の変数の箇所に、回答の一部または全部を配置し、出力情報を取得することは好適である。
【0070】
出力情報は、例えば、特許明細書または特許請求の範囲または要約書を構成する情報である。
【0071】
出力部14は、出力取得部137が取得した出力情報を出力する。出力部14は、例えば、出力情報を端末装置2に送信する。
【0072】
ここで、出力とは、通常、端末装置2への送信であるが、ディスプレイへの表示、プロジェクターを用いた投影、プリンタでの印字、音出力、他の外部の装置への送信、記録媒体への蓄積、他の処理装置や他のプログラムなどへの処理結果の引渡しなどを含む概念であっても良い。
【0073】
端末装置2を構成する端末格納部21には、各種の情報が格納される。各種の情報とは、例えば、受付情報、ユーザ識別子である。
【0074】
端末受付部22は、各種の情報や指示等を受け付ける。各種の情報や指示等とは、例えば、受付情報である。
【0075】
各種の情報や指示の入力手段は、タッチパネルやキーボードやマウスやメニュー画面によるもの等、何でも良い。
【0076】
端末処理部23は、各種の処理を行う。各種の処理は、例えば、受け付けられた情報や指示等を、送信する構造の情報や指示等にする処理である。各種の処理は、例えば、受信された情報を出力する構造の情報にする処理である。
【0077】
端末送信部24は、各種の情報や指示等を情報処理装置1に送信する。各種の情報や指示等は、例えば、受付情報である。
【0078】
端末受信部25は、各種の情報を情報処理装置1から受信する。各種の情報は、例えば、出力情報である。
【0079】
端末出力部26は、各種の情報を出力する。各種の情報は、例えば、出力情報である。
【0080】
格納部11、雛形管理部111、および端末格納部21は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。
【0081】
格納部11等に情報が記憶される過程は問わない。例えば、記録媒体を介して情報が格納部11等で記憶されるようになってもよく、通信回線等を介して送信された情報が格納部11等で記憶されるようになってもよく、あるいは、入力デバイスを介して入力された情報が格納部11等で記憶されるようになってもよい。
【0082】
受付部12は、無線または有線の通信手段で実現されることが好適であるが、放送を受信する手段、タッチパネルやキーボード等の入力手段のデバイスドライバーや、メニュー画面の制御ソフトウェア等で実現されても良い。
【0083】
処理部13、問合取得部131、クラス決定部132、生成AI決定部133、雛形取得部134、プロンプト作成部135、回答取得部136、出力取得部137、および端末処理部23は、通常、プロセッサやメモリ等から実現され得る。処理部13等の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現しても良い。なお、プロセッサは、CPU、MPU、GPU等であり、その種類は問わない。
【0084】
出力部14は、通常、無線または有線の通信手段で実現されるが、放送手段で実現されても良い。また、出力部14は、ディスプレイやスピーカー等の出力デバイスのドライバーソフトまたは、出力デバイスのドライバーソフトと出力デバイス等で実現されても良い。
【0085】
端末受付部22は、タッチパネルやキーボード等の入力手段のデバイスドライバーや、メニュー画面の制御ソフトウェア等で実現され得る。
【0086】
端末送信部24は、通常、無線または有線の通信手段で実現されるが、放送手段で実現されても良い。
【0087】
端末受信部25は、通常、無線または有線の通信手段で実現されるが、放送を受信する手段で実現されても良い。
【0088】
端末出力部26は、ディスプレイやスピーカー等の出力デバイスを含むと考えても含まないと考えても良い。端末出力部26は、出力デバイスのドライバーソフトまたは、出力デバイスのドライバーソフトと出力デバイス等で実現され得る。
【0089】
次に、情報処理装置1の動作例について、図3のフローチャートを用いて説明する。
【0090】
(ステップS301)受付部12は、ユーザからの受付情報を受け付けたか否かを判断する。受付情報を受け付けた場合はステップS302に行き、受け付けなかった場合はステップS301に戻る。なお、ここで、受付部12は、例えば、端末装置2から受付情報を受信したから否かを判断する。
【0091】
(ステップS302)問合取得部131は、ステップS301で受け付けられた受付情報のクラスが「質問」であるか、「非質問」であるかを判断する。「質問」であればステップS303に行き、「質問」でなければステップS308に行く。なお、受付情報の全体が「質問」であることは、例えば、「~であるか?」「~であるか。」等の予め決められた文字列からなることである。また、文字列が「質問」であるか「非質問」であるかは、機械学習の予測処理(公知技術)により判断可能である。
【0092】
(ステップS303)プロンプト作成部135は、ステップS301で受け付けられた受付情報を含むプロンプトを構成する。なお、プロンプトは、例えば、受付情報である。
【0093】
(ステップS304)回答取得部136は、ステップS303で構成されたプロンプトを生成AIに渡す。ここで、回答取得部136は、例えば、プロンプトを生成AIのAPIの引数に代入し、当該APIを実行する。
【0094】
(ステップS305)回答取得部136は、生成AIから回答を取得したか否かを判断する。回答を取得した場合はステップS306に行き、回答を取得しなかった場合はステップS305に戻る。ここで、回答取得部136は、例えば、実行したAPIのリターン値である回答を取得する。
【0095】
(ステップS306)出力取得部137は、ステップS305で取得された回答の全部または一部を含む出力情報を構成する。出力取得部137が回答の一部を取得する場合は、例えば、取得する部分を判断するための情報(例えば、「箇所書きの部分を特定する情報」)を管理しており、かかる情報を用いて、回答の一部を取得する。
【0096】
(ステップS307)出力部14は、ステップS306で構成された出力情報を出力する。ステップS301に戻る。
【0097】
(ステップS308)問合取得部131等は、ステップS301で受け付けられた受付情報に対する処理を行い、出力情報を出力する。ステップS301に戻る。かかる受付情報処理の例について、図4のフローチャートを用いて説明する。
【0098】
なお、図3のフローチャートにおいて、電源オフや処理終了の割り込みにより処理は終了する。
【0099】
次に、ステップS308の受付情報処理の例について、図4のフローチャートを用いて説明する。
【0100】
(ステップS401)クラス決定部132は、受付情報であるドキュメントの種類を取得する。なお、ここで、クラス決定部132は、ドキュメントの種類を取得できない場合もある。ドキュメントの種類は、「クラス」でも良い。クラス決定部132は、例えば、受付情報のファイル名からドキュメントの種類を決定する。クラス決定部132は、例えば、受付情報の中の特定のタグ(例えば、[書類名])に対応する文字列からドキュメントの種類を決定する。
【0101】
クラス決定部132は、例えば、受付情報と学習モデルとを機械学習の予測モジュールに与え、当該予測モジュールを実行し、ドキュメントの種類を取得する。学習モデルとは、機械学習の学習処理により構成された情報であり、機械学習の予測処理に使用される情報である。学習モデルは、学習器、分類器、分類モデル等と言っても良い。本明細書において、機械学習のアルゴリズムは、深層学習、ランダムフォレスト、決定木、SVM等、問わない。また、機械学習には、例えば、TensorFlow(登録商標)のライブラリ、R言語のrandom forestのモジュール、fastText、TinySVM等の各種の機械学習の関数や、種々の既存のライブラリを用いることができる。
【0102】
(ステップS402)クラス決定部132は、ステップS401で取得した種類に合致する1または2以上のクラス条件を雛形管理部111から取得する。なお、ステップS401でドキュメントの種類を取得できなかった場合、クラス決定部132は、いずれのドキュメントに種類にも対応付かない1または2以上のクラス条件を雛形管理部111から取得する。
【0103】
(ステップS403)クラス決定部132は、カウンタiに1を代入する。
【0104】
(ステップS404)クラス決定部132は、ステップS402で取得したクラス条件の中に、i番目のクラス条件が存在するか否かを判断する。i番目のクラス条件が存在する場合はステップS405に行き、存在しない場合は上位処理にリターンする。
【0105】
(ステップS405)処理部13は、i番目のクラス条件を用いて、受付情報に対する処理を行う。かかるクラス条件処理の例について、図5のフローチャートを用いて説明する。
【0106】
(ステップS406)クラス決定部132は、カウンタiを1、インクリメントする。ステップS404に戻る。
【0107】
次に、ステップS405のクラス条件処理の例について、図5のフローチャートを用いて説明する。
【0108】
(ステップS501)雛形取得部134は、ステップS404のi番目のクラス条件と対になるプロンプト雛形情報を雛形管理部111から取得する。
【0109】
(ステップS502)問合取得部131は、i番目のクラス条件の中に、タグが存在するか否かを判断する。タグが存在する場合はステップS503に行き、存在しない場合はステップS505に行く。なお、クラス条件の中にタグが存在することは、タグが条件になっていることである。
【0110】
(ステップS503)問合取得部131は、i番目のクラス条件の中のタグを取得する。
【0111】
(ステップS504)問合取得部131は、受付情報から、ステップS503で取得したタグに対応する情報であるタグ内容を取得する。タグ内容は、通常、タグに対応する文字列である。
【0112】
(ステップS505)問合取得部131は、i番目のクラス条件の中に、言語的特性が存在するか否かを判断する。言語的特性が存在する場合はステップS504に行き、存在しない場合はステップS508に行く。なお、クラス条件の中に言語的特性が存在することは、言語的特性が条件になっていることである。
【0113】
(ステップS506)問合取得部131は、i番目のクラス条件の言語的特性を取得する。
【0114】
(ステップS507)問合取得部131は、i番目のクラス条件の中のタグを取得した場合は、ステップS504で取得したタグ内容の中の情報であり、ステップS506で取得した言語的特性に合致する1以上の問合情報を取得する。問合取得部131は、i番目のクラス条件の中のタグを取得しなかった場合は、受け付けられた受付情報の中の情報であり、ステップS506で取得した言語的特性に合致する1以上の問合情報を取得する。ステップS509に行く。
【0115】
(ステップS508)問合取得部131は、i番目のクラス条件の中にタグが存在する場合は、ステップS504で取得したタグ内容を問合情報として取得する。問合取得部131は、i番目のクラス条件の中にタグが存在しない場合は、受け付けられた受付情報を問合情報として取得する。
【0116】
(ステップS509)プロンプト作成部135は、カウンタiに1を代入する。
【0117】
(ステップS510)プロンプト作成部135は、ステップS507またはステップS508で取得された問合情報の中に、i番目の問合情報が存在するか否かを判断する。i番目の問合情報が存在する場合はステップS510に行き、存在しない場合は上位処理にリターンする。
【0118】
(ステップS511)プロンプト作成部135は、ステップS507またはステップS508で取得された問合情報の中のi番目の問合情報を取得する。プロンプト作成部135は、ステップS501で取得されたプロンプト雛形情報の変数部分に、i番目の問合情報を配置し、プロンプトを作成する。
【0119】
(ステップS512)回答取得部136は、ステップS511で作成されたプロンプトを生成AIに渡す。
【0120】
(ステップS513)回答取得部136は、生成AIから回答を取得したか否かを判断する。回答を取得した場合はステップS514に行き、回答を取得しなかった場合はステップS513に戻る.
【0121】
(ステップS514)出力取得部137は、出力情報を取得する。かかる出力取得処理の例について、図6のフローチャートを用いて説明する。
【0122】
(ステップS515)プロンプト作成部135は、カウンタiを1、インクリメントする。ステップS510に戻る。
【0123】
次に、ステップS514の出力取得処理の例について、図6のフローチャートを用いて説明する。
【0124】
(ステップS601)出力取得部137は、クラス条件と対になる処理種類を雛形管理部111から取得する。
【0125】
(ステップS602)出力取得部137は、ステップS601で取得した処理種類が「追加」であるか否かを判断する。「追加」であればステップS603に行き、「追加」でなければステップS604に行く。
【0126】
(ステップS603)出力取得部137は、問合情報に対して、予め決められた位置に取得された回答または回答の一部を配置する。上位処理にリターンする。
【0127】
(ステップS604)出力取得部137は、ステップS601で取得した処理種類が「変更」であるか否かを判断する。「変更」であればステップS605に行き、「変更」でなければステップS606に行く。
【0128】
(ステップS605)出力取得部137は、回答または回答の一部に問合情報を更新する。上位処理にリターンする。
【0129】
(ステップS606)出力取得部137は、ステップS601で取得した処理種類が「チェック」であるか否かを判断する。「チェック」であればステップS607に行き、「チェック」でなければ上位処理にリターンする。なお、「チェック」は、「検査」と言っても良い。
【0130】
(ステップS607)出力取得部137は、回答または回答の一部を問合情報に対応付ける。上位処理にリターンする。
【0131】
以下、本実施の形態における情報システムAの具体的な動作例について説明する。
【0132】
今、情報処理装置1の雛形管理部111には、図7に示す雛形管理表が格納されている。雛形管理表は、「ID」「クラス条件」「プロンプト雛形情報」「処理種類」を有する。「クラス条件」は、「タグ」「言語的特性」を有する。なお、「プロンプト雛形情報」に対応付けて、生成AI装置3の識別子が対応付いており、使用するプロンプト雛形情報と対になる生成AI装置3を使用して、回答が取得されても良い。
【0133】
図7において、「ID」は、レコードを識別する情報である。「タグ」は、受付情報の中に含まれ得るタグである。発明リストの中に含まれるタグは、例えば、[発明1]である。明細書の中に含まれるタグは、例えば、[発明を実施するための形態]である。「言語的特性」は、例えば、「文」「段落」「構成要素」「技術用語」である。「プロンプト雛形情報」において、<問合情報>は変数であり、<問合情報>は問合取得部131が取得した問合情報に置き換えられる。
【0134】
「処理種類」とは、回答を付加する場合の処理の種類を示す情報である。「処理種類」は、ここでは、受付情報に対して回答を付加する場合の処理の種類を示す情報である。「処理種類」は、ここでは「追加」「チェック」または「変更」である。また、ここでは、「処理種類」の違いにより、出力される回答の文字列の属性値が異なる。文字列の属性値は、例えば、フォント、色、サイズ、下線の有無等である。
【0135】
図7において、処理種類が「追加」である場合、出力取得部137が回答を受付情報に追加することを示す。処理種類が「追加」である場合、ここでは、出力取得部137が、問合情報を有する文(問合情報である文も含まれる)の直後に、回答を追加することを示す。また、処理種類が「チェック」である場合、出力取得部137が回答を、チェック対象の問合情報に対応付けて、受付情報に追加することを示す。処理種類が「変更」である場合、出力取得部137が受付情報の中の問合情報を、回答に置き換えることを示す。
【0136】
以上の状況において、3つの具体例について説明する。具体例1は、ドキュメントが発明リストの場合である。具体例2は、ドキュメントが明細書の場合である。具体例3は、ドキュメントが要約書の場合である。
【0137】
(具体例1)
ユーザは、情報処理装置1に、図8に示す文字列が格納されたファイル「発明リスト20231125.docx」を入力した、とする。
【0138】
次に、情報処理装置1の受付部12は、ユーザからの受付情報「発明リスト20231125.docx」を受け付ける。次に、問合取得部131は、ファイル「発明リスト20231125.docx」をオープンし、その内容を取得し、「?」で終わっていないことを検知し、受け付けられた受付情報が「質問」ではない(「非質問」である)、と判断する。
【0139】
次に、問合取得部131等は、以下のように、受け付けられた受付情報に対する処理を行い、出力情報を出力する。
【0140】
まず、クラス決定部132は、受付情報「発明リスト20231125.docx」のファイル名から、ドキュメントの種類「発明リスト」を取得する。
【0141】
次に、クラス決定部132は、種類「発明リスト」に合致する「ID=1」および「ID=4」のクラス条件を取得する。なお、「ID=4」のドキュメントの種類「*」は、いかなるドキュメントの種類にも合致することを示す。
【0142】
次に、クラス決定部132は、「ID=1」のクラス条件「<タグ>発明1 <言語的特性>-」を雛形管理表(図7)から取得する。
【0143】
また、雛形取得部134は、「ID=1」のクラス条件と対になるプロンプト雛形情報「以下の発明の下位概念を教えて! 発明「<問合情報>」」を雛形管理表(図7)から取得する。
【0144】
次に、問合取得部131は、当該クラス条件の中のタグ「発明1」を雛形管理表(図7)から取得する。次に、問合取得部131は、受付情報(図8)から、取得したタグ「発明1」に対応する情報であるタグ内容「人の存在を検知し、広告の出力を変更する電気機器」を取得する。次に、問合取得部131は、当該クラス条件の中に、言語的特性が存在しないと判断する。次に、問合取得部131は、取得したタグ内容「人の存在を検知し、広告の出力を変更する電気機器」を問合情報とする。
【0145】
次に、プロンプト作成部135は、取得されているプロンプト雛形情報の変数<問合情報>を「人の存在を検知し、広告の出力を変更する電気機器」に置き換え、プロンプト「以下の発明の下位概念を教えて! 発明「人の存在を検知し、広告の出力を変更する電気機器」」を取得する。
【0146】
次に、回答取得部136は、作成されたプロンプトを生成AIに渡す。そして、回答取得部136は、生成AIから回答を取得する。なお、回答は、例えば、図9の901の文章であった、とする。
【0147】
次に、出力取得部137は、以下のように出力情報を取得する。つまり、出力取得部137は、「ID=1」のクラス条件と対になる処理種類「追加」を雛形管理表から取得する。
【0148】
次に、出力取得部137は、問合情報に対して、予め決められた位置(ここでは、発明1のタグの文(問合情報)の直後)に取得された回答を配置し、図9の情報を得る。
【0149】
次に、クラス決定部132は、「ID=4」のクラス条件「<タグ>- <言語的特性>文」を雛形管理表(図7)から取得する。そして、情報処理装置1は、上記と同様の処理を「ID=4」のクラス条件に対して行うが、ここでは、出力取得部137は、出力情報を取得しない。
【0150】
(具体例2)
ユーザは、情報処理装置1に、図10に示す文字列が格納されたファイル「明細書20231125.docx」を入力した、とする。
【0151】
次に、情報処理装置1の受付部12は、ユーザからの受付情報「明細書20231125.docx」を受け付ける。次に、問合取得部131は、受け付けられたファイル「明細書20231125.docx」の内容から、受付情報が「質問」ではない、と判断する。
【0152】
次に、問合取得部131等は、以下のように、受け付けられた受付情報に対する処理を行い、出力情報を出力する。
【0153】
まず、クラス決定部132は、受付情報「明細書20231125.docx」のファイルの中のタグ[書類名]と対になる文字列「明細書」を取得し、当該文字列からドキュメントの種類「明細書」を取得する。
【0154】
次に、クラス決定部132は、種類「明細書」に合致する「ID=2」および「ID=4」のクラス条件を取得する。
【0155】
次に、クラス決定部132は、「ID=2」のクラス条件「<タグ>- <言語的特性>文」「<タグ>- <言語的特性>段落」「<タグ>発明を実施するための形態 <言語的特性>構成要素」「<タグ>発明を実施するための形態 <言語的特性>技術用語」を雛形管理表(図7)から取得する。また、クラス決定部132は、「ID=4」のクラス条件「<タグ>- <言語的特性>文」を雛形管理表(図7)から取得する。
【0156】
また、雛形取得部134は、「ID=2」の各クラス条件と対になるプロンプト雛形情報を、各クラス条件に対応付けて雛形管理表(図7)から取得する。
【0157】
次に、問合取得部131は、「ID=2」のクラス条件「<タグ>- <言語的特性>文」に基づき、ファイル「明細書20231125.docx」から、順次、文を取得する。かかる各文は、問合情報である。
【0158】
次に、プロンプト作成部135は、プロンプト雛形情報「以下の文に主語があるか否か、YES/NOで教えて下さい。 文「<問合情報>」の<問合情報>の箇所に、各文を配置する。その結果、プロンプト作成部135は、例えば、プロンプト「以下の文に主語があるか否か、YES/NOで教えて下さい。 文「問合取得部131は、受付情報に含まれる情報であり、生成AIへの問合せに使用する情報である問合情報を取得する。」」、およびプロンプト「以下の文に主語があるか否か、YES/NOで教えて下さい。 文「受付情報から少なくとも2つの問合情報を取得する。」等を構成する。
【0159】
次に、回答取得部136は、作成された各プロンプトを生成AIに渡す。そして、回答取得部136は、プロンプトごとに、生成AIから回答(「YES」または「NO」)を取得する。なお、問合情報「受付情報に含まれる情報であり、生成AIへの問合せに使用する情報である問合情報を取得する。」に対する回答は「YES」であり、問合情報「受付情報から少なくとも2つの問合情報を取得する。」に対する回答は「NO」であった。
【0160】
また、問合取得部131は、「ID=2」のクラス条件「<タグ>- <言語的特性>段落」に基づき、ファイル「明細書20231125.docx」から、順次、各段落番号ごとに、段落に対応する段落の中の文の全部を取得する。かかる段落の中の文の全部は、問合情報である。
【0161】
次に、プロンプト作成部135は、段落ごとに、当該クラス条件と対になるプロンプト雛形情報「以下の文章群の文字数が500文字以内か否かYES/NOで教えて下さい。 文章群「<問合情報>」」の<問合情報>に、段落の中の文の全部を配置し、プロンプトを作成する。プロンプト作成部135は、例えば、「以下の文章群の文字数が500文字以内か否かYES/NOで教えて下さい。 文章群「本第一の発明の情報処理装置は、・・・・・・を具備する情報処理装置である。 かかる構成により、問合情報のクラスに応じた適切なプロンプトを用いて、生成AIを利用できる。 また、本第二の発明の情報処理装置は、第一の発明に対して、・・・・である情報処理装置である。 かかる構成により、発明の情報のクラスに応じた適切なプロンプトを用いて、生成AIを利用し、特許書類の作成を支援できる。」」を作成する。
【0162】
次に、回答取得部136は、作成された各プロンプトを生成AIに渡す。そして、回答取得部136は、プロンプトごとに、生成AIから回答(「YES」または「NO」)を取得する。なお、問合情報「本第一の発明の情報処理装置は、・・・・・・を具備する情報処理装置である。 かかる構成により、問合情報のクラスに応じた適切なプロンプトを用いて、生成AIを利用できる。 また、本第二の発明の情報処理装置は、第一の発明に対して、・・・・である情報処理装置である。 かかる構成により、発明の情報のクラスに応じた適切なプロンプトを用いて、生成AIを利用し、特許書類の作成を支援できる。」に対する回答は「NO」であった。
【0163】
また、問合取得部131は、「ID=2」のクラス条件「<タグ>発明を実施するための形態 <言語的特性>構成要素」に基づき、ファイル「明細書20231125.docx」のタグ[発明を実施するための形態]に対応する文章から、構成要素を取得する。ここでは、問合取得部131は、符号(数字列)が直後に付いた名詞句(受付部、問合取得部、端末格納部等)を構成要素として取得する。
【0164】
次に、プロンプト作成部135は、構成要素ごとに、当該クラス条件と対になるプロンプト雛形情報「<問合情報>の下位概念の用語を箇条書きで答えて!」の<問合情報>に、各構成要素を配置し、プロンプトを作成する。プロンプト作成部135は、例えば、「受付部の下位概念の用語を箇条書きで答えて!」を作成する。
【0165】
次に、回答取得部136は、作成された各プロンプトを生成AIに渡す。そして、回答取得部136は、プロンプトごとに、生成AIから回答を取得する。なお、問合情報「受付部」に対する回答は「一般的な「受付部」の下位概念についての情報を提供します。受付部の下位概念には、以下のような機能や要素が含まれることがあります: ・受付デスク ・インフォメーションカウンター ・ゲスト管理 ・訪問者登録 ・アポイントメント調整 ・セキュリティチェックイン ・電話応対 ・案内サービス」であった、とする。
【0166】
また、問合取得部131は、「ID=2」のクラス条件「<タグ>発明を実施するための形態 <言語的特性>技術用語」に基づき、ファイル「明細書20231125.docx」のタグ[発明を実施するための形態]に対応する文章から、技術用語を取得する。なお、文章から技術用語を取得する技術は、例えば、「termextract」(URL:http://gensen.dl.itc.u-tokyo.ac.jp/pytermextract/)等の公知技術により可能である。
ここでは、問合取得部131は、例えば、タグ[発明を実施するための形態]の中の文「問合取得部131は、受付情報に含まれる情報であり、生成AIへの問合せに使用する情報である問合情報を取得する。」から技術用語「生成AI」を取得する。
【0167】
次に、プロンプト作成部135は、技術用語ごとに、当該クラス条件と対になるプロンプト雛形情報「<問合情報>の定義と具体例とを教えて!」の<問合情報>に、各技術用語を配置し、プロンプトを作成する。プロンプト作成部135は、例えば、「生成AIの定義と具体例とを教えて!」を作成する。
【0168】
次に、回答取得部136は、作成された各プロンプトを生成AIに渡す。そして、回答取得部136は、プロンプトごとに、生成AIから回答を取得する。なお、問合情報「生成AI」に対する回答は「「生成AI」とは、人工知能の一種で、入力データに基づいて新しいコンテンツを生成するシステムを指します。具体例としては以下のようなものがあります:テキスト生成: GPTシリーズのようなAIは、与えられたプロンプトから物語や記事を作成することができます。画像生成: DALL-EやこのAIシステムは、・・・できます。音楽生成: AIVAのようなAIは、・・・ことが可能です。音声合成: ・・・ができます。」であった、とする。
【0169】
また、問合取得部131は、「ID=4」のクラス条件「<タグ>- <言語的特性>文」に基づき、ファイル「明細書20231125.docx」から、順次、文を取得する。かかる各文は、問合情報である。
【0170】
次に、プロンプト作成部135は、プロンプト雛形情報「以下の文が複文である場合、主語のある複数の単文に変更して! 文「<問合情報>」」の<問合情報>の箇所に、各文を配置する。その結果、プロンプト作成部135は、例えば、プロンプト「以下の文が複文である場合、主語のある複数の単文に変更して! 文「端末格納部21は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能であり、端末格納部21に情報が記憶される過程は問わない。」」」等を構成する。
【0171】
次に、回答取得部136は、作成された各プロンプトを生成AIに渡す。そして、回答取得部136は、プロンプトごとに、生成AIから回答を取得する。なお、問合情報「端末格納部21は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能であり、端末格納部21に情報が記憶される過程は問わない。」に対する回答は「端末格納部21は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。端末格納部21に情報が記憶される過程は問わない。」であった。
【0172】
次に、出力取得部137は、以下のように出力情報を取得する。つまり、出力取得部137は、雛形管理表の「ID=2」および「ID=4」の各クラス条件と対になる処理種類を雛形管理表から取得する。
【0173】
次に、出力取得部137は、処理種類「チェック」に対応する回答は、問合情報に対するコメントとして、受付情報「明細書20231125.docx」に付加する。プロンプト雛形情報「以下の文に主語があるか否か、YES/NOで教えて下さい。 文「<問合情報>」の回答が「NO」であった場合、出力取得部137は、当該問合情報(文)に対するコメントとして、「この文の主語がありません。」を付加する、とする。かかるコメントの例は、図11の1101である。
【0174】
また、プロンプト雛形情報「以下の文章群の文字数が500文字以内か否かYES/NOで教えて下さい。 文章群「<問合情報>」」の回答が「NO」であった場合、出力取得部137は、当該問合情報(段落)に対するコメントとして、「この段落は500文字を超えています。」を付加する、とする。かかるコメントの例は、図11の1102である。
【0175】
また、出力取得部137は、処理種類「追加」に対応する回答は、問合情報である文、問合情報である段落、または問合情報を含む文の直後に、回答を配置する。例えば、問合情報「受付部」に対する回答は、問合情報「受付部」を含む文「受付部12は、ユーザからの受付情報を受け付ける。」の直後に配置する。かかる回答は、図11の1103である。
【0176】
また、出力取得部137は、例えば、問合情報「生成AI」に対する回答は、生成AIを含む文「問合取得部131は、受付情報に含まれる情報であり、生成AIへの問合せに使用する情報である問合情報を取得する。」の直後に配置する。かかる回答は、図11の1104である。
【0177】
また、出力取得部137は、処理種類「変更」に対応する回答は、問合情報を回答に置き換える。出力取得部137は、例えば、複文である問合情報「端末格納部21は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能であり、端末格納部21に情報が記憶される過程は問わない。」を、当該問合情報に対する回答「端末格納部21は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。端末格納部21に情報が記憶される過程は問わない。」に置き換える。
【0178】
次に、出力部14は、生成AIの回答を用いて修正された「明細書20231125.docx」を出力する。かかる出力例は、図11である。
【0179】
(具体例3)
ユーザは、情報処理装置1に、図11に示す文字列が格納されたファイル「要約書20231125.docx」を入力した、とする。
【0180】
次に、情報処理装置1の受付部12は、ユーザからの受付情報「要約書20231125.docx」を受け付ける。次に、問合取得部131は、受け付けられたファイル「要約書20231125.docx」の内容から、受付情報が「質問」ではない、と判断する。
【0181】
次に、問合取得部131等は、以下のように、受け付けられた受付情報に対する処理を行い、出力情報を出力する。
【0182】
まず、クラス決定部132は、受付情報「要約書20231125.docx」のファイルの中のタグ[書類名]と対になる文字列「要約書」を取得し、当該文字列からドキュメントの種類「要約書」を取得する。
【0183】
次に、クラス決定部132は、種類「要約書」に合致する「ID=3」および「ID=4」のクラス条件を取得する。なお、説明の都合上、以下、「ID=3」のクラス条件のみを適用した場合を説明する。
【0184】
次に、クラス決定部132は、「ID=3」のクラス条件「<タグ>- <言語的特性>-」を雛形管理表(図7)から取得する。また、クラス決定部132は、「ID=4」のクラス条件「<タグ>- <言語的特性>文」を雛形管理表(図7)から取得する。
【0185】
また、雛形取得部134は、「ID=3」のクラス条件と対になるプロンプト雛形情報を、各クラス条件に対応付けて雛形管理表(図7)から取得する。
【0186】
次に、問合取得部131は、クラス条件「<タグ>- <言語的特性>-」から、受付情報(図12の要約書全体)を、問合情報として、取得する。
【0187】
次に、プロンプト作成部135は、プロンプト雛形情報「以下の文書が400時を超える場合は、400字以内に要約して! 文書「<問合情報>」の<問合情報>を、要約書全体(図12)に置き換えて、プロンプトを作成する。
【0188】
次に、回答取得部136は、作成された各プロンプトを生成AIに渡す。そして、回答取得部136は、400字以内の要約書を得る。
【0189】
次に、出力取得部137は、以下のように出力情報を取得する。つまり、出力取得部137は、雛形管理表の「ID=3」のクラス条件と対になる処理種類「変更」を雛形管理表から取得する。
【0190】
また、出力取得部137は、処理種類「変更」に対応する回答は、問合情報を回答に置き換える。つまり、出力取得部137は、取得された回答を要約書として取得する。
【0191】
次に、出力部14は、生成AIの回答を用いて取得された要約書を出力する。かかる出力例は、図13である。
【0192】
以上、本実施の形態によれば、問合情報のクラスに応じた適切なプロンプトを作成し、当該プロンプトを用いて、生成AIを利用できる。
【0193】
また、本実施の形態によれば、発明の情報のクラスに応じた適切なプロンプトを作成し、当該プロンプトを用いて、生成AIを利用し、特許書類の作成を支援できる。
【0194】
また、本実施の形態によれば、生成AIを生かす生成AI制御エンジンを提供できる。
【0195】
なお、本実施の形態における処理は、ソフトウェアで実現しても良い。そして、このソフトウェアをソフトウェアダウンロード等により配布しても良い。また、このソフトウェアをCD-ROMなどの記録媒体に記録して流布しても良い。なお、このことは、本明細書における他の実施の形態においても該当する。なお、本実施の形態における情報システムAを実現するソフトウェアは、以下のようなプログラムである。つまり、このプログラムは、文字列のクラスに関する条件である1または2以上の各クラス条件に対応付けてプロンプト雛形情報が格納される雛形管理部にアクセス可能なコンピュータを、ユーザからの受付情報を受け付ける受付部と、前記受付情報に含まれる情報であり、生成AIへの問合せに使用する情報である問合情報を取得する問合取得部と、前記問合取得部が取得した前記問合情報のクラスが満たすクラス条件に対応するプロンプト雛形情報を前記雛形管理部から取得する雛形取得部と、前記雛形取得部が取得した前記プロンプト雛形情報と前記問合取得部が取得した前記問合情報とを用いて、プロンプトを作成するプロンプト作成部と、前記プロンプト作成部が作成した前記プロンプトを生成AIに渡し、当該生成AIからの回答を取得する回答取得部と、前記回答取得部が取得した前記回答を用いて、出力情報を取得する出力取得部と、前記出力情報を出力する出力部として機能させるためのプログラムである。
【0196】
また、図14は、本明細書で述べたプログラムを実行して、上述した種々の実施の形態の情報処理装置1等を実現するコンピュータの外観を示す。上述の実施の形態は、コンピュータハードウェア及びその上で実行されるコンピュータプログラムで実現され得る。図14は、このコンピュータシステム300の概観図であり、図15は、システム300のブロック図である。
【0197】
図14において、コンピュータシステム300は、CD-ROMドライブを含むコンピュータ301と、キーボード302と、マウス303と、モニタ304とを含む。
【0198】
図15において、コンピュータ301は、CD-ROMドライブ3012に加えて、MPU3013と、CD-ROMドライブ3012等に接続されたバス3014と、ブートアッププログラム等のプログラムを記憶するためのROM3015と、MPU3013に接続され、アプリケーションプログラムの命令を一時的に記憶するとともに一時記憶空間を提供するためのRAM3016と、アプリケーションプログラム、システムプログラム、及びデータを記憶するためのハードディスク3017とを含む。ここでは、図示しないが、コンピュータ301は、さらに、LANへの接続を提供するネットワークカードを含んでも良い。
【0199】
コンピュータシステム300に、上述した実施の形態の情報処理装置1等の機能を実行させるプログラムは、CD-ROM3101に記憶されて、CD-ROMドライブ3012に挿入され、さらにハードディスク3017に転送されても良い。これに代えて、プログラムは、図示しないネットワークを介してコンピュータ301に送信され、ハードディスク3017に記憶されても良い。プログラムは実行の際にRAM3016にロードされる。プログラムは、CD-ROM3101またはネットワークから直接、ロードされても良い。
【0200】
プログラムは、コンピュータ301に、上述した実施の形態の情報処理装置1等の機能を実行させるオペレーティングシステム(OS)、またはサードパーティープログラム等は、必ずしも含まなくても良い。プログラムは、制御された態様で適切な機能(モジュール)を呼び出し、所望の結果が得られるようにする命令の部分のみを含んでいれば良い。コンピュータシステム300がどのように動作するかは周知であり、詳細な説明は省略する。
【0201】
なお、上記プログラムにおいて、情報を送信するステップや、情報を受信するステップなどでは、ハードウェアによって行われる処理、例えば、送信ステップにおけるモデムやインターフェースカードなどで行われる処理(ハードウェアでしか行われない処理)は含まれない。
【0202】
また、上記プログラムを実行するコンピュータは、単数であってもよく、複数であってもよい。すなわち、集中処理を行ってもよく、あるいは分散処理を行ってもよい。
【0203】
また、上記各実施の形態において、一の装置に存在する2以上の通信手段は、物理的に一の媒体で実現されても良いことは言うまでもない。
【0204】
また、上記各実施の形態において、各処理は、単一の装置によって集中処理されることによって実現されてもよく、あるいは、複数の装置によって分散処理されることによって実現されてもよい。
【0205】
本発明は、以上の実施の形態に限定されることなく、種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。
【産業上の利用可能性】
【0206】
以上のように、本発明にかかる情報処理装置1は、問合情報のクラスに応じた適切なプロンプトを用いて、生成AIを利用できるという効果を有し、明細書作成支援装置、または文書作成支援装置等として有用である。
【符号の説明】
【0207】
1 情報処理装置
2 端末装置
3 生成AI装置
11 格納部
12 受付部
13 処理部
14 出力部
21 端末格納部
22 端末受付部
23 端末処理部
24 端末送信部
25 端末受信部
26 端末出力部
111 雛形管理部
131 問合取得部
132 クラス決定部
133 生成AI決定部
134 雛形取得部
135 プロンプト作成部
136 回答取得部
137 出力取得部
【要約】
【課題】従来、問合情報のクラスに応じた適切なプロンプトを用いて、生成AIを利用することが容易ではなかった。
【解決手段】文字列の1または2以上の各クラス条件に対応付けてプロンプト雛形情報が格納される雛形管理部111と、生成AIへの問合せに使用する情報である問合情報を受付情報から取得する問合取得部131と、当該問合情報のクラスが満たすクラス条件に対応するプロンプト雛形情報を雛形管理部111から取得する雛形取得部134と、当該プロンプト雛形情報と問合情報とを用いて、プロンプトを作成するプロンプト作成部135と、当該プロンプトを生成AIに渡し、生成AIからの回答を取得する回答取得部136と、当該回答を用いて、出力情報を取得する出力取得部137と、出力情報を出力する出力部14とを具備する情報処理装置1により、問合情報のクラスに応じた適切なプロンプトを用いて、生成AIを利用できる。
【選択図】図2
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15