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

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

▶ 楽天株式会社の特許一覧

特許7741263情報処理装置、情報処理方法、ならびに、プログラム
<>
  • 特許-情報処理装置、情報処理方法、ならびに、プログラム 図1
  • 特許-情報処理装置、情報処理方法、ならびに、プログラム 図2
  • 特許-情報処理装置、情報処理方法、ならびに、プログラム 図3
  • 特許-情報処理装置、情報処理方法、ならびに、プログラム 図4
  • 特許-情報処理装置、情報処理方法、ならびに、プログラム 図5
  • 特許-情報処理装置、情報処理方法、ならびに、プログラム 図6
  • 特許-情報処理装置、情報処理方法、ならびに、プログラム 図7
  • 特許-情報処理装置、情報処理方法、ならびに、プログラム 図8
  • 特許-情報処理装置、情報処理方法、ならびに、プログラム 図9
  • 特許-情報処理装置、情報処理方法、ならびに、プログラム 図10
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B1)
(11)【特許番号】
(24)【登録日】2025-09-08
(45)【発行日】2025-09-17
(54)【発明の名称】情報処理装置、情報処理方法、ならびに、プログラム
(51)【国際特許分類】
   G06F 16/84 20190101AFI20250909BHJP
【FI】
G06F16/84
【請求項の数】 9
(21)【出願番号】P 2024148139
(22)【出願日】2024-08-30
【審査請求日】2024-08-30
(73)【特許権者】
【識別番号】399037405
【氏名又は名称】楽天グループ株式会社
(74)【代理人】
【識別番号】100110135
【弁理士】
【氏名又は名称】石井 裕一郎
(74)【代理人】
【識別番号】100132883
【弁理士】
【氏名又は名称】森川 泰司
(74)【代理人】
【識別番号】100148633
【弁理士】
【氏名又は名称】桜田 圭
(74)【代理人】
【識別番号】100163452
【弁理士】
【氏名又は名称】南郷 邦臣
(74)【代理人】
【識別番号】100180312
【弁理士】
【氏名又は名称】早川 牧子
(72)【発明者】
【氏名】ニコ ファイバ アン ヤウ シン
【審査官】甲斐 哲雄
(56)【参考文献】
【文献】特開2000-348061(JP,A)
【文献】特開2022-091530(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 16/00-16/958
(57)【特許請求の範囲】
【請求項1】
複数のクエリ式に基づいて、複数の要素を、構造化ドキュメントから、それぞれ抽出する抽出部、
生成モデルへ、前記抽出された複数の要素のそれぞれに係る内部テキストを入力データとして与えて、複数の項目名に複数の項目テキストをそれぞれ対応付けて整理すべき旨を指示するプロンプトにより、出力データを出力させる整理部
を備える情報処理装置。
【請求項2】
前記構造化ドキュメントは、SGML文書、XML文書、もしくは、HTML文書であり、
前記複数のクエリ式のそれぞれは、XPathにより表現され、
前記複数の要素のそれぞれに係るtextContent属性もしくはinnerText属性を、当該それぞれに係る内部テキストとし、
前記生成モデルは、大規模言語モデルである
請求項1に記載の情報処理装置。
【請求項3】
前記複数の項目名の各項目名について、当該各項目名に対応付けられる項目テキストが、前記構造化ドキュメントの内部テキストに含まれるか否かを検査する検査部、
前記検査部により含まれないとされた項目テキストを警告する警告情報を出力する警告部
をさらに備える請求項1に記載の情報処理装置。
【請求項4】
前記整理部は、前記生成モデルに、前記複数の項目名の各項目名について、当該各項目名に対応付けられる項目テキストが、前記構造化ドキュメントの内部テキストに含まれるか否かを検査させ、該検査により含まれないとされた項目テキストを警告する警告情報を、前記出力データにおける所定の警告項目名に埋め込ませる
請求項1に記載の情報処理装置。
【請求項5】
前記抽出部による抽出に先立って、取得源の指定を受け付け、前記指定された取得源から前記構造化ドキュメントを取得する取得部
をさらに備え、
前記抽出部は、前記指定された取得源に応じて、前記複数のクエリ式を切り換える
請求項1に記載の情報処理装置。
【請求項6】
前記複数のクエリ式のそれぞれには枠名が対応付けられ、
前記入力データは、前記それぞれに係る内部テキストに、当該内部テキストを抽出するために使用したクエリ式に対応付けられる枠名を対応付ける情報を含む
請求項1に記載の情報処理装置。
【請求項7】
前記プロンプトは、前記入力データに含まれ得る用語同士の、類義関係ならびに非類義関係を、さらに定義する
請求項1に記載の情報処理装置。
【請求項8】
情報処理装置が、
複数のクエリ式に基づいて、複数の要素を、構造化ドキュメントから、それぞれ抽出し、
生成モデルへ、前記抽出された複数の要素のそれぞれに係る内部テキストを入力データとして与えて、複数の項目名に複数の項目テキストをそれぞれ対応付けて整理すべき旨を指示するプロンプトにより、出力データを出力させる
情報処理方法。
【請求項9】
コンピュータを、
複数のクエリ式に基づいて、複数の要素を、構造化ドキュメントから、それぞれ抽出する抽出部、
生成モデルへ、前記抽出された複数の要素のそれぞれに係る内部テキストを入力データとして与えて、複数の項目名に複数の項目テキストをそれぞれ対応付けて整理すべき旨を指示するプロンプトにより、出力データを出力させる整理部
として機能させるプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置、情報処理方法、ならびに、プログラムに関する。
【背景技術】
【0002】
ウェブページからデータを収集し、収集したデータから所定の情報を抽出する技術が提案されている(例えば特許文献1)。
【先行技術文献】
【特許文献】
【0003】
【文献】特開2008-226235号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
ところで、近年生成AI(Artificial Intelligence)が台頭しており、生成AIを利用して所定のデータを整理することが考えられる。しかしながら、所定のデータをそのまま生成AIに入力した場合、望んだ出力結果が得られない場合等があり、出力結果の精度に課題があった。
【0005】
本発明は、上記実情に鑑みて成されたものであり、生成モデルを利用してデータの整理を行う場合の精度を向上させる情報処理装置等を提供することを目的とする。
【課題を解決するための手段】
【0006】
上記目的を達成するため、本発明の情報処理装置は、
複数のクエリ式に基づいて、複数の要素を、構造化ドキュメントから、それぞれ抽出する抽出部、
生成モデルへ、前記抽出された複数の要素のそれぞれに係る内部テキストを入力データとして与えて、複数の項目名に複数の項目テキストをそれぞれ対応付けて整理すべき旨を指示するプロンプトにより、出力データを出力させる整理部
を備える。
【発明の効果】
【0007】
本発明によれば、生成モデルを利用してデータの整理を行う場合の精度を向上させることができる。
【図面の簡単な説明】
【0008】
図1】本実施の形態に係る情報処理装置の機能ブロック図である。
図2】本実施の形態に係る情報処理装置のハードウェア構成例を示す図である。
図3】メタデータ取得処理の一例を示すフローチャートである。
図4】ウェブサイト別のXPath情報の一例を示す図である。
図5】ウェブページにおいてXPathに基づき抽出される項目の位置の一例を示す図である。
図6】ウェブページから抽出された内部テキストの一例を示す図である。
図7】生成AIサーバに対するプロンプトの一例を示す図である。
図8】(A)、(B)は、ウェブブラウザにおける表示例を示す図である。
図9】(A)、(B)は、ウェブブラウザにおける表示例を示す図である。
図10】ウェブブラウザにおける表示例を示す図である。
【発明を実施するための形態】
【0009】
以下、本発明の実施の形態の情報処理装置10について、図面を参照しながら説明する。なお、図中同一または対応する部分には同一符号を付す。
【0010】
特定のアイテムに関する構造化ドキュメント(例えば、特定のアイテムに関するウェブページや文書)から、特定のアイテムに係る複数の要素を抽出する場合、人が手動で抽出することもできる。しかしながら、作業時間や抽出の正確性を考慮すると、抽出を自動化することが望まれる。また、抽出した要素を他で流用する場合には、抽出した要素を一覧化し、各要素に項目名を付ける等、抽出した要素を整理する必要がある。本実施の形態の情報処理装置10は、そのような構造化ドキュメントからの要素の抽出と、抽出した要素の整理を自動で行うものである。また、抽出した要素の整理については、生成AIを利用する。
【0011】
図1は本実施の形態に係る情報処理装置10の機能構成を示す機能ブロック図である。本実施の形態に係る情報処理装置10は、生成AIサーバ20とともに、情報処理システム100を構成する。情報処理装置10は、インターネット、移動体通信網といった通信ネットワークに接続されており、該通信ネットワークを介して各種の情報を送受信する。また、情報処理装置10と生成AIサーバ20とは、通信ネットワークを介して接続され、通信ネットワークを介して互いに各種の情報を送受信する。
【0012】
情報処理装置10は、構造化ドキュメントを処理する装置である。構造化ドキュメントを取得し、所定のクエリ式に基づいて、構造化ドキュメントから複数の要素を抽出する。そして、情報処理装置10は、生成AIサーバ20へ、抽出した複数の要素に係る内部テキストを入力データとして与えて、複数の項目名に複数の項目テキストをそれぞれ対応付けて整理すべき旨を指示するプロンプトにより、複数の項目テキストで構成される出力データを出力させる。
【0013】
生成AIサーバ20は、生成AIを搭載したサーバである。生成AIサーバ20は、例えば、生成モデルとして、ChatGPT(Generative Pre-trained Transformer)等の大規模言語モデル(Large Language Models、LLM)を搭載し、入力された自然言語からなる文字列の処理を実行するコンピュータである。情報処理装置10は、例えば、生成AIサーバ20が提供するAPI(Application Programming Interface)を利用して、生成AIサーバ20にアクセスする。
【0014】
この実施の形態では、生成AIサーバ20は、内部テキストのテキストデータと、当該テキストデータに対する処理を指示するプロンプトと、を情報処理装置10から受信する。そして、生成AIサーバ20は、プロンプトに基づいてテキストデータから項目テキストを収集して整理し、整理したデータを出力データとして情報処理装置10に返信する。
【0015】
構造化ドキュメントから抽出される要素は、構造化ドキュメントに含まれる項目に対応するデータであり、例えば、単語のテキストデータである。この構造化ドキュメントから抽出されたテキストデータが、生成AIサーバ20への入力データとなる。この実施の形態では、生成AIサーバ20への入力データとなるテキストデータを内部テキストという。また、その内部テキストを入力データとして、生成AIサーバ20から出力される出力データは、内部テキストを整理したものであり、項目名と当該項目名に対応するテキストデータで構成される。この実施の形態では、そのような項目名に対応するテキストデータを項目テキストという。なお、構造化ドキュメントに含まれるおける要素と項目とは略同義であるが、生成AIサーバ20により整理前のものを要素、整理後のものを項目という場合がある。
【0016】
また、構造化ドキュメントに含まれる複数の要素、項目に関するデータ、あるいは、生成AIサーバ20により整理されて出力されたテキストデータ(項目テキスト)を、メタデータともいう。この実施の形態の情報処理装置10は、構造化ドキュメントから最終的にメタデータを得ることを目的とする。さらに、複数の構造化ドキュメントからメタデータを収集して、他のシステム等で、整理された情報として利用可能とすることを目的としている。
【0017】
情報処理装置10は、機能的には例えば図1に示すように、ドキュメント取得部101と、抽出部102と、整理部103と、検査部104と、警告部105と、出力部106と、から構成される。
【0018】
ドキュメント取得部101は、通信ネットワークや記録媒体等を介して、情報処理装置10の外部から構造化ドキュメントを取得する。構造化ドキュメントは、例えばSGML(Standard Generalized Markup Language)文書、XML(Extensible Markup Language)文書、もしくは、HTML(HyperText Markup Language)文書である。なお、構造化ドキュメントは、文書と文書の構造を示すタグとで構成される他の構造化ドキュメントでもよく、マークアップドキュメントでもよい。
【0019】
ドキュメント取得部101は、例えば、ユーザから、構造化ドキュメントの取得源となるウェブページのURL(Uniform Resource Locator)の入力を受け付け、入力されたURLのウェブページの構造化ドキュメントを取得する。ドキュメント取得部101は、通信ネットワークや記録媒体を介して、情報処理装置10に直接入力された構造化ドキュメントを取得するようにしてもよい。
【0020】
抽出部102は、ドキュメント取得部101が取得した構造化ドキュメントから、複数の要素を抽出することを指示する複数のクエリ式に基づいて、複数の要素をそれぞれ抽出する。複数のクエリ式のそれぞれは、この実施の形態では、複数の要素の位置を示すXPath(XML Path Language)により表現される。そして、抽出部102は、構造化ドキュメントから、XPathが示す位置にある複数の要素を抽出する。
【0021】
XPathは、XML文章中の要素、属性値等、文書の特定の部分を指定するための言語であり、URLのようなパス表記で表される。また、XPathは、HTML文書等の他の構造化ドキュメントにも応用できる。
【0022】
この実施の形態では、構造化ドキュメントの取得源となるウェブサイトにおいて、複数の要素が記載されている部分(パス)を示すXPath情報が予め用意される。具体的には、構造化ドキュメントの取得源となるウェブサイト毎の、各要素の記載位置を示すXPathが情報処理装置10に予め記憶される。なお、この実施の形態では、インターネット上の特定ドメイン下等において、所定のサービス情報等をコンテンツとして提供するウェブページの集まりをウェブサイトという。ウェブサイトにおいて個別のコンテンツ等が記載される個別ページをウェブページという。
【0023】
この実施の形態では、構造化ドキュメントの取得源となるウェブサイトは、各種データベースサイト、カタログサイト等の多種のコンテンツの情報を提供するウェブサイトを想定している。同一のウェブサイトにおいては、複数のコンテンツの情報を提供する場合、見やすさやページの作成のしやすさ等の観点から、個別ページは同一のフォーマットとなりやすい。よって、ウェブサイトに応じて、個別ページにおける各要素の記載位置が定まりやすい。そのため、そのようなウェブサイトであれば、構造化ドキュメントの取得源となるウェブサイト毎の、各要素の記載位置を示すXPathを予め定義することが可能である。
【0024】
抽出部102は、ドキュメント取得部101が取得した構造化ドキュメントから、このようなXPathに基づいて、複数の要素に係る内部テキストを抽出する。抽出部102は、例えば、複数の要素にそれぞれに係るtextContent属性(単純なテキスト)もしくはinnerText属性(エスケープ文字を反映したテキスト)を、当該それぞれに係る内部テキストとして抽出する。
【0025】
抽出部102により抽出した内部テキストは、構造化ドキュメントに含まれる複数の要素であるので、構造化ドキュメントに含まれるメタデータといえる。しかしながら、ウェブページ等の構造化ドキュメントでは、関連する複数の要素がある程度まとめられて表示される。そして、抽出部102はそのまとめられた要素を、XPathに基づいてある程度の塊として抽出する。このように抽出部102が抽出した塊としてのメタデータである内部テキストをさらに整理するため、抽出部102は、構造化ドキュメントから抽出した内部テキストを整理部103に渡す。
【0026】
整理部103は、生成AIサーバ20へ、抽出部102により抽出された複数の要素のそれぞれに係る内部テキストを入力データとして与える。そして、整理部103は、内部テキストとともに、複数の項目名に複数の項目テキストをそれぞれ対応付けて整理すべき旨を指示するプロンプトを与えることより、生成AIサーバ20に内部テキストを整理させ、出力させる。そして、整理部103は、生成AIサーバ20から、プロンプトに基づいて整理された項目テキストを出力データとして得る。また、整理部103は、出力データを受け取ると、当該出力データ(項目テキスト)を出力部106による出力形式に整形する。
【0027】
検査部104は、生成AIサーバ20に対する入力データと生成AIサーバ20からの出力データとを比較することで、出力データにエラーが無いかを検査する。具体的には、検査部104は、生成AIサーバ20からの出力データにおける複数の項目名に対応付けられる項目テキストが、構造化ドキュメントの内部テキスト、即ち、生成AIサーバ20への入力データに含まれるか否かを検査する。生成AIサーバ20が、入力データに含まれない項目テキストを出力した場合、生成AIサーバ20によるハルシネーションが考えられる。これにより、検査部104は、生成AIサーバ20による不具合や、ハルシネーションが起きていないかを検査、判定する。検査部104は、このように入出力データの整合性についての検査を行う。なお、検査部104は、他の検査方法で出力データの検査を行ってもよいし、入出力データの整合性についての検査以外の検査項目があってもよい。
【0028】
警告部105は、検査部104により、入力データに含まれない項目テキストがあると判定された場合、当該含まれないとされた項目テキストを警告する警告情報を生成し、出力する。
【0029】
出力部106は、整理部103から整形された出力データを受け取り、メタデータとして外部に出力する。また、出力部106は、警告部105が生成した警告情報を受け取り、警告情報を外部に出力する。例えば、出力部106は、整理部103が整理したメタデータと、警告部105が生成した警告情報と、を情報処理装置10が備える表示装置、もしくは、情報処理装置10と接続された表示装置に出力する。また、例えば、出力部106は、整理部103が整理したメタデータと、警告部105が生成した警告情報と、に対応したデータ(ファイル)を、ユーザが指定する端末装置等にダウンロード可能に出力する。
【0030】
情報処理装置10は、物理的には、例えば、パーソナルコンピュータ(PC)、ワークステーション等で構成される。なお、情報処理装置10は専用の装置であってもよい。図2は、情報処理装置10のハードウェア構成例を示す図である。情報処理装置10は、CPU(Central Processing Unit)、GPU(Graphical Processing Unit)等のプロセッサ11、メモリ、HDD(Hard Disk Drive)及び/又はSSD(Solid State Drive)等の記憶装置12、有線又は無線通信を行う通信インターフェース13、入力操作を受け付ける入力デバイス14、及び情報の出力を行う出力デバイス15を有する。入力デバイス14は、例えば、キーボード、タッチパネル、カメラ、マウス及び/又はマイク等である。出力デバイス15は、例えば、ディスプレイ及び/又はスピーカ等である。
【0031】
情報処理装置10のプロセッサ11が記憶装置12に記憶されるプログラムを読み込むことで、図1に示す各種機能部として動作する。
【0032】
この実施の形態では、ユーザがスマートフォン、タブレット、PC等の端末装置を使用し、通信ネットワークを介して情報処理装置10に接続して、情報処理装置10の機能を利用することを想定している。端末装置から情報処理装置10の機能の利用は、専用アプリケーションにより行うものでもよいし、汎用のウェブブラウザにより行うものでもよい。なお、これに限定されず、ユーザが情報処理装置10を直接操作して、情報処理装置10の機能を利用するものであってもよい。
【0033】
続いて、情報処理装置10の動作について説明する。図3は、情報処理装置10が実行するメタデータ取得処理の一例を示すフローチャートである。メタデータ取得処理は、情報処理装置10のプロセッサ11が記憶装置12に記憶されるプログラムを読み込むことにより実行される。メタデータ取得処理は、例えば、ユーザのメタデータ取得操作に基づいて開始される。
【0034】
メタデータ取得処理において、まず、情報処理装置10のドキュメント取得部101が、構造化ドキュメントのURLを取得する(ステップS101)。URLは、情報処理装置10に個別に入力されるものでもよいし、複数のURLのリストが入力されるものでもよい。
【0035】
続いて、ドキュメント取得部101が、インターネットを介して、取得したURLのウェブページにアクセスする(ステップS102)。
【0036】
そして、抽出部102が、アクセスするウェブページのウェブサイト名(ドメイン等)に応じたXPath情報を取得する(ステップS103)。図4は、ウェブサイト別のXPath情報の一例を示している。図4に示すように、ウェブサイト別のXPathは、ウェブサイト名、該ウェブサイトにおけるウェブページの構造化ドキュメントから複数の要素の記載箇所に対応した要素名(枠名)、該ウェブサイトにおいて要素名で示す要素の記載位置を示すXPathを対応付けた情報である。構造化ドキュメントの取得源となるウェブページを提供するウェブサイト毎のXPath情報が、情報処理装置10の記憶装置12に予め記憶される。そして、抽出部102は、取得したURLに基づき構造化ドキュメントの取得源となるウェブサイトを特定し、構造化ドキュメントの取得源となるウェブサイトに応じたXPath情報を取得する。言い換えると、抽出部102は、構造化ドキュメントの取得源となるウェブサイトに応じて、内部テキストを抽出するためのクエリ式を切り替える。これにより、構造化ドキュメントの取得源に応じて、好適に内部テキストを抽出可能となる。
【0037】
図5は、ウェブページにおいてXPathに基づき抽出される項目の位置の一例を示す図である。図5は、図4におけるウェブサイト名「AAA」にて提供されるウェブページの一例を示す。ウェブサイト名「AAA」は、映画情報を提供するウェブサイトであり、図4に示すように、要素名として「movie info」、「staff info」、「cast info」、「movie spec」が定義され、それらのXPathが定義されている。図5に示すウェブページにおいて、関連する複数の要素がある程度まとまっており、そのまとまっている部分を枠と捉えて、要素名を定義し、その位置をXPathにより定義している。図4に示す「AAA」のXPathは、図5に示すような「AAA」のウェブページにおいて、各要素「movie info」、「staff info」、「cast info」、「movie info」の位置(枠)f1~f4を示している。
【0038】
ステップS103の処理の後、抽出部102は、このようなXPath情報に基づき、ウェブページの構造化ドキュメントから、各要素名に対応する内部テキストを抽出する(ステップS104)。
【0039】
なお、ステップS101~S104は、情報処理装置10のドキュメント取得部101が構造化ドキュメントを取得し、抽出部102により内部テキストを抽出する処理をする部分に相当し、構造化ドキュメントがウェブページである場合の例を示している。これ以外の場合、例えば、構造化ドキュメントが直接入力される場合は、ステップS101、S102の処理を省略すればよい。また、構造化ドキュメントがウェブページ以外である場合、ステップS103にて構造化ドキュメントに応じた複数のクエリ式を取得し、ステップS104にて複数のクエリ式に基づいて構造化ドキュメントから内部テキストを抽出すればよい。
【0040】
そして、抽出部102は、抽出した内部テキストをクレンジングする(ステップS105)。具体的には、抽出部102は、抽出した内部テキストに、要素名(枠名)を付加して整理し、生成AIサーバ20への入力データを用意する。なお、内部テキストのクレンジングとして、誤ったデータ、重複データ等を検出し、削除、修正を行うようにしてもよい。
【0041】
図6は、映画情報を提供する「AAA」のウェブサイト内のウェブページから抽出され内部テキストに、要素名(枠名)を付加して整理された内部テキストの一例を示している。図6に示すように、抽出された内部テキストの一覧に、抽出に使用したXPathに対応付けられた項目名、ラベルを付加することで、内部テキストの識別性を高めているので、生成AIサーバ20による情報の理解の精度向上が図れる。
【0042】
続いて、整理部103が、ステップS105にてクレンジングした内部テキストを、生成AIサーバ20への指示内容を示すプロンプトと共に入力データとして、生成AIサーバ20に送信する(ステップS106)。なお、内部テキストのみを入力データと呼んでもよい。
【0043】
図7は、生成AIサーバ20に対するプロンプト200の一例を示す。プロンプト200は、生成AIサーバ20への命令文、指示文である。具体的には、図7に示すプロンプト200は、#タスクに記載されるように、入力データである内部テキスト(図7では**テキスト**)から、#メタデータテンプレート201で指定される項目名のメタデータ(項目テキスト)を抽出することを指示するものである。また、具体的な処理手順は、#指示の各ステップに定義される。#指示の記載は、#タスクの内容が好適に実行できるものであればよい。
【0044】
図7では、#指示の各ステップとして、**メタデータテンプレート**を使用することの指示(step1)、**テキスト**から**メタデータテンプレート**に記載された項目を抽出することの指示(step2)、抽出時のルールを理解することの指示(step3)、関連情報を抽出することの指示(step4)、抽出結果をレビューすることの指示(step5)、抽出結果を出力することの指示(step6)が含まれる。これら以外のステップが含まれていてもよい。
【0045】
なお、#等の記号は、生成AIサーバ20がプロンプトを理解しやすくするためのもので、見出し等を示すものである。説明においては、これらの記号をそのまま記す。なお、プロンプト200の記載方法、記号の使用方法はこれに限定されず、生成AIサーバ20の搭載する大規模言語モデルに適した記載であればよい。
【0046】
#メタデータテンプレート201で指定される項目名は、入力データに応じた項目名であり、入力データの取得源である構造化ドキュメント(ウェブページ)から収集したいメタデータの項目名が記載される。よって、#メタデータテンプレート201には、入力データの取得源に応じた項目名が記載されればよい。図7の#メタデータテンプレート201は、図6に示す映画情報の内部テキストが入力データである場合の例を示しており、映画情報に含まれる項目、即ち、メタデータに応じた項目名が記載されている。情報処理装置10においては、#メタデータテンプレート201を書き換えることで、プロンプト全体を書き換えることなく、情報源(入力データの取得源)に応じたメタデータを取得できる。
【0047】
プロンプト200の#指示におけるstep3には、生成AIサーバ20がメタデータを抽出する際に理解すべきルールが定義される。当該ルールとして、この実施の形態では、入力データに含まれ得る用語同士の、類義関係ならびに非類義関係を定義したニュアンスリスト202が含まれる。ニュアンスリスト202における類義関係は、例えば、「原作者」と「Creator」、「監督」と「チーフディレクター」と「シリーズディレクター」と、いった用語(項目名)の言い換え表現を含む。また、ニュアンスリスト202における非類義関係は、「製作年」は「公開日」と必ずしも同一でないので、「製作年は公開日から抽出してはならない」といったルールを含む。#ニュアンスリスト202には、入力データの取得源に応じた、用語同士の類義関係及び非類義関係の少なくともいずれか等が記載されればよい。このようなニュアンスリスト202により、入力データに含まれ得る用語同士の、類義関係ならびに非類義関係を定義するので、生成AIサーバ20によるメタデータの抽出精度の向上を期待できる。また、情報処理装置10においては、ニュアンスリスト202を書き換えることで、プロンプト全体を書き換えることなく、情報源に応じたメタデータを取得できる。
【0048】
また、生成AIサーバ20が理解すべき抽出する際のルールとしては、文字の変換、年月日の変換、姓名間の「・」やスペースの追加、削除等、表記の統一等が挙げられる。
【0049】
また、プロンプト200のstep4の指示における関連情報には、例えば、メタデータ抽出時のエラー情報が含まれる。例えば、step4の指示には、項目名に対応するメタデータ(項目テキスト)を抽出できなかったこと、プロンプト200の指示内容が理解できず実行できなかったこと等をエラー情報として抽出するような指示が記載される。
【0050】
また、プロンプト200のstep6の抽出結果を出力することの指示には、例えば、#メタデータテンプレート201に含まれる項目名と内部テキストから抽出された項目テキストとを対応付けて出力することの指示が含まれる。また、step6の抽出結果を出力することの指示には、メタデータの出力形式の指定が含まれていればよい。メタデータの出力形式としては、プレーンテキスト、CSV(Comma-Separated Values)、JSON(JavaScript Object Notation)等が挙げられる。
【0051】
生成AIサーバ20は、ステップS106にて情報処理装置10から送信された内部テキスト(例えば図6)と、プロンプト(例えば図7)と、を受信すると、プロンプトに従って、内部テキストを処理してメタデータ(項目名に対応する項目テキスト)を抽出し、指定された出力形式で項目テキストを出力データとして情報処理装置10に返信する。
【0052】
その後、整理部103は、生成AIサーバ20から、入力データとなる内部テキストとプロンプトに応じた出力データの受信を待機する(ステップS107)。
【0053】
生成AIサーバ20から出力データを受信すると(ステップS107;Yes)、検査部104は、出力データが入力データに含まれているか否かを検査する(ステップS108)。検査部104は、生成AIサーバ20から出力データとなる各項目名の項目テキスト(メタデータ)が、整理部103がステップS106で生成AIサーバ20に送信した入力データとなる内部テキストに含まれているか否かを検査する。
【0054】
なお、検査部104は、他の検査として、例えば、項目名と項目テキストを比較して、項目名の誤認がないかを検査するようにしてもよい。例えば、項目名として、スタッフ及びキャストがある場合、キャストをスタッフと誤認していないか、または、その逆がないかを確認するようにしてもよい。
【0055】
なお、検査部104が、出力データに入力データに含まれていない項目テキストがあると判定した場合、出力データである項目テキストの該当箇所を指定して、生成AIサーバ20に訂正させるように指示してもよい。
【0056】
ステップS108の後、整理部103は、生成AIサーバ20からの出力データである項目テキスト(メタデータ)を、所定の出力形式に整形する(ステップS109)。出力形式は例えばTSV(Tab-Separated Values)、CSV等である。ユーザが出力形式を指定できようにしてもよい。なお、出力形式への整形についても生成AIサーバ20に実行させるようにしてもよいし、所定の出力形式が生成AIサーバ20から出力可能な形式であれば、当該所定の出力形式で生成AIサーバ20から出力データを出力させるようにしてもよい。
【0057】
そして、出力部106は、整形した出力データとなるメタデータ(項目テキストの一覧等)を出力する(ステップS110)。また、ステップS108における検査において、出力データに入力データに含まれていない項目テキストがあると判定された場合、警告部105は、入力データに含まれていない項目テキストを警告する等の警告情報を生成する。そして、ステップS110では、出力部106は、警告情報を出力データと共に出力する。ステップS110の処理の後は、メタデータ取得処理を終了する。このような警告情報を出力することで、誤って生成されたメタデータを警告することができ、誤って生成されたメタデータが他で利用されることを防止できる。また、情報処理装置10におけるXpath情報やプロンプトの改善、改良にも繋がり、メタデータ取得時のエラーの低減や、生成AIサーバ20におけるハルシネーションの発生低減も期待できる。
【0058】
ステップS110では、出力部106は、例えば、情報処理装置10と直接接続された表示装置、通信ネットワークを介して接続された端末装置等に表示出力する。また、出力部106は、例えば、通信ネットワークを介して接続された端末装置にファイルとしてダウンロード可能に出力する。出力データとなるメタデータの出力方法、出力先は、情報処理装置10のユーザやオペレータ等により指定されたものであればよい。そして、ユーザやオペレータにより、出力データとなるメタデータが利用可能であればよい。これにより、ユーザやオペレータに対して好適に出力データとなるメタデータを抽出し、出力できる。
【0059】
また、ステップS101にてなお、複数のURLのリストと入力された場合には、各URLに応じたウェブサイトについてステップS102~S110の処理を実行する。これにより、複数の構造化ドキュメントから自動的にメタデータを収集でき、収集したメタデータを活用することができる。また、複数の構造化ドキュメントからメタデータを収集する際の人的コストや時間を大幅に低減できる。
【0060】
続いて、ユーザが端末装置により情報処理装置10を利用してメタデータを取得する場合の表示例を説明する。ユーザがパーソナルコンピュータ、スマートフォン、タブレット等の通信可能な端末装置により、ウェブブラウザ110を介して情報処理装置10に接続すると、例えば図8(A)に示すようなメタデータを取得するためのウェブサイトのトップページが表示される。当該トップページのサイドバー120には、メタデータの取得源となるウェブページのURLを追加するためのURL追加ボタン121、メタデータの取得源となるウェブページのURLのリストを追加するためのリスト追加ボタン122、入力されたURLのウェブページからメタデータの取得を開始するための開始ボタン123が表示される。
【0061】
URL追加ボタン121がポインタ140により選択操作されると、個別のURLのテキストを入力可能となる。リスト追加ボタン122がポインタ140により選択操作されると、例えばCSV、TSV形式等でURLのリストをアップロード可能となり、これによりURLリストを入力可能となる。メインコンテンツ部130には、入力されたURL一覧131が表示される。URL一覧131には、例えば、入力されたURLに含まれるコンテンツを識別するためのコンテンツIDとコンテンツ名とが含まれる。コンテンツID、コンテンツ名は、手動または自動で入力されればよい。
【0062】
メタデータの取得源となるウェブページのURLが入力された状態で開始ボタン123がポインタ140により選択操作されると、情報処理装置10が、図3のメタデータ取得処理を実行することにより、入力されたURLのウェブページからメタデータを取得するための処理が開始され、図8(B)に示すように、メインコンテンツ部130には、メタデータを取得するための処理の進行状況を示すステータス表示132が表示され、取得済みのメタデータのプレビューを表示するためのプレビュー表示133が表示される。また、URL一覧131にもメタデータを取得するための処理の進行状況を示す項目が追加される。図8(B)ではコンテンツ名「name1」のメタデータの取得が完了し、コンテンツ名「name2」のメタデータの取得中であることに対応した表示となっている。
【0063】
入力されたURLのウェブページからメタデータの取得が完了すると、図9(A)に示すように、メインコンテンツ部130では、URL一覧131、ステータス表示132及びプレビュー表示133が取得完了に対応した表示となり、取得した全てのメタデータをダウンロードするためのダウンロードボタン134が表示される。ダウンロードボタン134が操作されると、ユーザの端末装置に取得した全てのメタデータをダウンロード可能となる。
【0064】
図9(A)に示すプレビュー表示133におけるコンテンツ名「name1」の項目がポインタ140により選択操作されると、図9(B)に示すように、コンテンツ名「name1」のメタデータプレビュー133Aが表示される。メタデータプレビュー133Aには、コンテンツ名、取得源のURL、コンテンツ名「name1」のメタデータを個別にダウンロードするためのダウンロードボタン135、メタデータ一覧136、取得源のURLのウェブページから抽出した内部テキスト137が含まれる。ダウンロードボタン135が操作されると、ユーザの端末装置に取得したコンテンツ名「name1」のメタデータをダウンロード可能となる。メタデータ一覧136には、内部テキスト137から抽出した項目テキストと項目名とが対応付けて表示される。メタデータ一覧136には項目名に番号が付される。内部テキスト137は、図6に示すような、取得源のウェブページから抽出された内部テキストが表示される。このようにして、ユーザは入力したウェブページからメタデータを取得し、表示、ダウンロードできる。
【0065】
入力されたURLのウェブページからメタデータの取得した後、検査部104により出力データ(メタデータ)に入力データ(内部テキスト)に含まれていない項目テキストがあると判定された場合、図10に示すように、メインコンテンツ部130では、URL一覧131、ステータス表示132がタスクは終了したが、エラーがあったことを示す表示となる。また、対象のコンテンツ名「name3」のメタデータプレビュー133Bには、警告情報138が表示される。警告情報138には、内部テキストに含まれていない項目テキストの情報等が表示されればよい。
【0066】
また、図10の場合、コンテンツ名「name3」のメタデータをダウンロードするためのダウンロードボタンは表示されない。これにより、不正確に抽出されたメタデータをユーザに提供してしまうことを防止できる。
【0067】
図8図10では、汎用のウェブブラウザ110を介して情報処理装置10に接続し、メタデータを取得するためのウェブサイトの画面が表示される例を示したが、専用のアプリケーションにより情報処理装置10に接続し、メタデータを取得するための画面が表示されるようにしてもよい。
【0068】
以上説明したように、情報処理装置10の抽出部102が、複数のクエリ式に基づいて、複数の要素を、構造化ドキュメントから、それぞれ抽出し、整理部103が、生成モデルを搭載した生成AIサーバ20へ、抽出された複数の要素のそれぞれに係る内部テキストを入力データとして与えて、複数の項目名に複数の項目テキストをそれぞれ対応付けて整理すべき旨を指示するプロンプトにより、出力データを出力させる。これにより、生成モデルを利用してデータの整理を行う場合の精度を向上させることができる。
【0069】
(変形例)
なお、この発明は、上記実施の形態に限定されず、様々な変形及び応用が可能である。例えば、上記実施の形態の一部の省略、置き換え、任意の構成の追加等が可能である。
【0070】
上記実施の形態の情報処理装置10では、検査部104が、複数の項目名の各項目名について、当該各項目名に対応付けられる項目テキストが、構造化ドキュメントの内部テキストに含まれるか否かを検査し、警告部105が、検査部104により含まれないとされた項目テキストを警告する警告情報を出力するようになっていた。これに限定されず、当該検査と警告情報の出力を生成AIサーバ20に行わせるようにしてもよい。例えば、情報処理装置10の整理部103が、生成AIサーバ20に、複数の項目名の各項目名について、当該各項目名に対応付けられる項目テキストが、構造化ドキュメントの内部テキストに含まれるか否かを検査させ、該検査により含まれないとされた項目テキストを警告する警告情報を、出力データにおける所定の警告項目名に埋め込ませるように、プロンプトにより指示するようにしてもよい。
【0071】
上記実施の形態では、情報処理装置10は、構造化ドキュメントの取得源となるウェブページのURL(Uniform Resource Locator)の入力を受け付けることで、当該ウェブページから構造化ドキュメントを取得し、構造化ドキュメントからメタデータ(項目テキスト)を取得していた。これに限定されず、情報処理装置10は、所定のコンテンツについて、複数のウェブページ、複数のウェブサイトから構造化ドキュメントを取得し、複数の構造化ドキュメントからメタデータを取得するようにしてもよい。この場合、情報処理装置10は、メタデータのうち一の項目を第1のウェブサイトから取得し、メタデータのうち他の項目を第2のウェブサイトから取得するようにしてもよい。また、特定のメタデータについて、いずれのウェブサイトから取得するかを選択できるようにしてよい。
【0072】
上記実施の形態では、情報処理装置10が、外部の生成AIサーバ20を利用して構造化ドキュメントからメタデータ(項目テキスト)を取得していたが、情報処理装置10が、生成モデルを備え、当該生成モデルにより構造化ドキュメントからメタデータ(項目テキスト)を取得するようにしてもよい。
【0073】
上記実施の形態では、抽出部102が抽出した内部テキストに、要素名(枠名)を付加して整理し、生成AIサーバ20への入力データを用意するようにしていたが、抽出部102が抽出した内部テキストをそのまま生成AIサーバ20へ入力するようにしてもよい。
【0074】
上記実施の形態では、情報処理装置10が、映画情報を提供するウェブサイトからメタデータ(項目テキスト)を抽出、取得する例について説明したが、構造化ドキュメントの取得源は任意でよい。取得源がウェブサイトの場合、対象のウェブサイトは、所定の分野(例えば映画、音楽、スポーツ、ゲーム等)において各種の情報を提供するウェブサイト等であればよい。
【0075】
情報処理装置10は、専用の装置によらず、通常のコンピュータを用いて実現可能である。例えば、コンピュータに上述の機能を実行するためのプログラムを格納した記録媒体から該プログラムをコンピュータにインストールすることにより、上述の処理を実行する情報処理装置10を構成してもよい。また、複数のコンピュータが協同して動作することによって、1つの情報処理装置10を構成しても良い。
【0076】
また、コンピュータにプログラムを供給するための手法は、任意である。例えば、通信回線、通信ネットワーク、通信システム等を介して供給しても良い。例えば、上述の機能を実行するためのプログラムを格納した非一時的なコンピュータ読取可能な記録媒体を配布してもよい。
【0077】
また、上述の機能の一部をOS(Operation System)が提供する場合には、OSが提供する機能以外の部分をプログラムで提供すれば良い。
【0078】
以上説明した実施の形態は、本発明の理解を容易にするためのものであり、本発明を限定して解釈するためのものではない。実施形態で説明したフローチャート、シーケンス、実施形態が備える各要素並びにその配置等は、例示したものに限定されるわけではなく適宜変更することができる。また、異なる実施形態で示した構成同士を部分的に置換し又は組み合わせることが可能である。
【0079】
(本実施例により実現される発明)
以上説明したように、本実施形態は、以下に掲げる発明を実現する。
【0080】
(付記1)
複数のクエリ式に基づいて、複数の要素を、構造化ドキュメントから、それぞれ抽出する抽出部、
生成モデルへ、前記抽出された複数の要素のそれぞれに係る内部テキストを入力データとして与えて、複数の項目名に複数の項目テキストをそれぞれ対応付けて整理すべき旨を指示するプロンプトにより、出力データを出力させる整理部
を備える情報処理装置。
【0081】
(付記2)
前記構造化ドキュメントは、SGML文書、XML文書、もしくは、HTML文書であり、
前記複数のクエリ式のそれぞれは、XPathにより表現され、
前記複数の要素のそれぞれに係るtextContent属性もしくはinnerText属性を、当該それぞれに係る内部テキストとし、
前記生成モデルは、大規模言語モデルである
付記1に記載の情報処理装置。
【0082】
(付記3)
前記複数の項目名の各項目名について、当該各項目名に対応付けられる項目テキストが、前記構造化ドキュメントの内部テキストに含まれるか否かを検査する検査部、
前記検査部により含まれないとされた項目テキストを警告する警告情報を出力する警告部
をさらに備える付記1または2に記載の情報処理装置。
【0083】
(付記4)
前記整理部は、前記生成モデルに、前記複数の項目名の各項目名について、当該各項目名に対応付けられる項目テキストが、前記構造化ドキュメントの内部テキストに含まれるか否かを検査させ、該検査により含まれないとされた項目テキストを警告する警告情報を、前記出力データにおける所定の警告項目名に埋め込ませる
付記1または2に記載の情報処理装置。
【0084】
(付記5)
前記抽出部による抽出に先立って、取得源の指定を受け付け、前記指定された取得源から前記構造化ドキュメントを取得する取得部
をさらに備え、
前記抽出部は、前記指定された取得源に応じて、前記複数のクエリ式を切り換える
付記1から4のいずれかに記載の情報処理装置。
【0085】
(付記6)
前記複数のクエリ式のそれぞれには枠名が対応付けられ、
前記入力データは、前記それぞれに係る内部テキストに、当該内部テキストを抽出するために使用したクエリ式に対応付けられる枠名を対応付ける情報を含む
付記1から5のいずれかに記載の情報処理装置。
【0086】
(付記7)
前記プロンプトは、前記入力データに含まれ得る用語同士の、類義関係ならびに非類義関係を、さらに定義する
付記1から6のいずれかに記載の情報処理装置。
【0087】
(付記8)
情報処理装置が、
複数のクエリ式に基づいて、複数の要素を、構造化ドキュメントから、それぞれ抽出し、
生成モデルへ、前記抽出された複数の要素のそれぞれに係る内部テキストを入力データとして与えて、複数の項目名に複数の項目テキストをそれぞれ対応付けて整理すべき旨を指示するプロンプトにより、出力データを出力させる
情報処理方法。
【0088】
(付記9)
コンピュータを、
複数のクエリ式に基づいて、複数の要素を、構造化ドキュメントから、それぞれ抽出する抽出部、
生成モデルへ、前記抽出された複数の要素のそれぞれに係る内部テキストを入力データとして与えて、複数の項目名に複数の項目テキストをそれぞれ対応付けて整理すべき旨を指示するプロンプトにより、出力データを出力させる整理部
として機能させるプログラム。
【産業上の利用可能性】
【0089】
本発明によれば、生成モデルを利用してデータの整理を行う場合の精度を向上させる情報処理装置、情報処理方法、ならびに、プログラムを提供できる。
【符号の説明】
【0090】
10 情報処理装置、20 生成AIサーバ、11 プロセッサ、12 記憶装置、13 通信インターフェース、14 入力デバイス、15 出力デバイス、100 情報処理システム、101 ドキュメント取得部、102 抽出部、103 整理部、104 検査部、105 警告部、106 出力部
【要約】
【課題】生成モデルを利用してデータの整理を行う場合の精度を向上させる。
【解決手段】情報処理装置10は、複数のクエリ式に基づいて、複数の要素を、構造化ドキュメントから、それぞれ抽出する抽出部102、生成AIサーバ20モデルへ、抽出された複数の要素のそれぞれに係る内部テキストを入力データとして与えて、複数の項目名に複数の項目テキストをそれぞれ対応付けて整理すべき旨を指示するプロンプトにより、出力データを出力させる整理部103、を備える。
【選択図】図1
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10