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

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

▶ 水谷 孝三の特許一覧

特開2025-21363法的判断支援用の大規模言語モデル(LLM)を有するコンピュータシステム
<>
  • 特開-法的判断支援用の大規模言語モデル(LLM)を有するコンピュータシステム 図1
  • 特開-法的判断支援用の大規模言語モデル(LLM)を有するコンピュータシステム 図2
  • 特開-法的判断支援用の大規模言語モデル(LLM)を有するコンピュータシステム 図3
  • 特開-法的判断支援用の大規模言語モデル(LLM)を有するコンピュータシステム 図4
  • 特開-法的判断支援用の大規模言語モデル(LLM)を有するコンピュータシステム 図5
  • 特開-法的判断支援用の大規模言語モデル(LLM)を有するコンピュータシステム 図6
  • 特開-法的判断支援用の大規模言語モデル(LLM)を有するコンピュータシステム 図7
  • 特開-法的判断支援用の大規模言語モデル(LLM)を有するコンピュータシステム 図8
  • 特開-法的判断支援用の大規模言語モデル(LLM)を有するコンピュータシステム 図9
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2025021363
(43)【公開日】2025-02-13
(54)【発明の名称】法的判断支援用の大規模言語モデル(LLM)を有するコンピュータシステム
(51)【国際特許分類】
   G06F 40/56 20200101AFI20250205BHJP
   G06Q 50/18 20120101ALI20250205BHJP
   G06F 40/279 20200101ALI20250205BHJP
【FI】
G06F40/56
G06Q50/18
G06F40/279
【審査請求】未請求
【請求項の数】4
【出願形態】書面
(21)【出願番号】P 2023132718
(22)【出願日】2023-07-31
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.iPhone
2.ANDROID
3.PYTHON
4.TENSORFLOW
(71)【出願人】
【識別番号】500029822
【氏名又は名称】水谷 孝三
(72)【発明者】
【氏名】水谷 孝三
【テーマコード(参考)】
5L049
5L050
【Fターム(参考)】
5L049CC32
5L050CC32
(57)【要約】      (修正有)
【課題】ChatGPTの多面的な機能の中から、個々の基本的要素機能を発現させ、それらの要素機能を活用しつつ新たに組み直し、ChatGPTの内部構成を変更することなく得られるGPT-LLMを2系統準備し、リダンダンシー(redundancy)は残るものの、比較的容易に構成できるシンプルなシステムを提供する。
【解決手段】コンピュータ上に実装された2つの系統の大規模言語モデルを使用するコンピュータシステムであって、ユーザー端末からプロンプトテキストを受け取った後、そのプロンプトテキストのコンテキスト、パターン、意図等を決定づける言葉を、一方の系統のGPT-LLMが法律コンセプトに基づいてクラス分けして、その言葉をこのクラスを表現する法律用語で置き換えた上で、システムが当初受け取ったプロンプトテキストを法律用語を使ったテキストに書き換えて、これに対するレスポンスを他方の系統のGPT-LLMが行う。
【選択図】図3
【特許請求の範囲】
【請求項1】
コンピュータ上に実装される大規模言語モデル(LLM)を含むコンピュータシステムであって、インターフェースエージェント(InterfaceAgent)と、クラシフィケーション用大規模言語モデル(Classification LLM:Cl-LLM)と、レスポンス用大規模言語モデル(Response LLM:Re-LLM)とを含み、
1) インターフェースエージェントは、ユーザ端末からのプロンプトテキストを受け取り、それをクラシフィケーション用大規模言語モデルに送信し、
2) クラシフィケーション用大規模言語モデルは、
a)インターフェースエージェントから受信したプロンプトテキストから、法律言語空間内 の法律概念クラスに属する事実要素を抽出して、法律概念クラスを特定し、
b)前記法律概念クラスを表現する言葉(法律概念クラス表現言葉)を生成し、
c)前記法律概念クラス表現言葉を使って、前記プロンプトテキストを、法律要素言語のみから構成される法律テキストに書き換えてインターフェースエージェントに送り、
3)インターフェースエージェントは、前記法律テキストを受け取り、それをレスポンス用大規模言語モデルに送り。
4)レスポンス用大規模言語モデルは、前記法律テキストに基づいて、前記プロンプトテキストに対するレスポンステキストを生成し、そのレスポンステキストを、インターフェースエージェントに送り、
5)インターフェースエージェントは、前記判断結果のテキストを、ユーザー端末に送る
ことを特徴とするコンピュータシステム。
【請求項2】
請求項1の前記2)のa)において、抽出された事実要素が属する法律概念クラスが特定できないときは、クラシフィケーション用大規模言語モデルは、不足する事実要素を含む追加テキストをインターフェースエージェントにリクエストし、
1)インターフェースエージェントは、前記リクエストをユーザー端末に送り、ユーザー端末から追加の事実要素を受け取り、それをクラシフィケーション用大規模言語モデルに送り、
2)クラシフィケーション用大規模言語モデルは、法律概念クラスを表現する言葉(法律概念クラス表現言葉)を生成し、その法律概念クラス表現言葉を使って、前記プロンプトテキストを、法律要素言語のみから構成される法律テキストに書き換えてインターフェースエージェントに送り、
3)インターフェースエージェントは、前記法律テキストを受け取り、それをレスポンス用大規模言語モデルに送り。
4)レスポンス用大規模言語モデルは、前記法律テキストに基づいて、前記プロンプトテキストに対するレスポンステキストを生成し、そのレスポンステキストを、インターフェースエージェントに送り、
5)インターフェースエージェントは、前記レスポンステキストを、ユーザー端末に送る
ことを特徴とする請求項1に記載のコンピュータシステム。
【請求項3】
コンピュータ上に実装される大規模言語モデル(LLM)を含むコンピュータシステムであって、
インターフェースエージェント(Interface Agent)と、中継器Aと、中継器Bと、クラシフィケーション用大規模言語モデル(Classification LLM:Cl-LLM)と、レスポンス用大規模言語モデル(Response LLM:Re-LLM)とを含み、
1)中継器Aと中継器Bは、それぞれ、独立した物理アドレスを有し、前記インターフェースエージェントと前記大規模言語モデルとの間に、相互に独立して介在し、
2)インターフェースエージェントは、ユーザ端末からのプロンプトテキストを受け取り、それを、中継器Aを介して、クラシフィケーション用大規模言語モデルに送信し、
3)クラシフィケーション用大規模言語モデルは、
a)インターフェースエージェントから、中継器Aを介して、受信したプロンプトテキストから、法律言語空間内の法律概念クラスに属する事実要素を抽出して、法律概念クラスを特定し、
b)前記法律概念クラスを表現する言葉(法律概念クラス表現言葉)を生成し、
c)前記法律概念クラス表現言葉を使って、前記プロンプトテキストを、法律要素言語のみから構成される法律テキストに書き換えて、中継器Aを介して、インターフェースエージェントに送り、
4)インターフェースエージェントは、前記法律テキストを受け取り、それを、中継器Bを介して、大規模言語モデルに送り。
5)大規模言語モデルは、前記法律テキストに基づいて、前記プロンプトテキストに対するレスポンスを生成し、それを、中継器Bを介して、インターフェースエージェントに送り、
6)インターフェースエージェントは、前記レスポンスを、ユーザー端末に送ることを特徴とするコンピュータシステム。
【請求項4】
請求項3の前記3)のa)において、抽出された事実要素が属する法律概念クラスが特定できないときは、クラシフィケーション用大規模言語モデルは、不足する事実要素を含む追加テキストを、中継器Aを介して、インターフェースエージェントにリクエストし、
1)インターフェースエージェントは、前記リクエストをユーザー端末に送り、ユーザー端末から追加の事実要素を受け取り、それを、中継器Aを介して、クラシフィケーション用大規模言語モデルに送り、
2)クラシフィケーション用大規模言語モデルは、法律概念クラスを表現する言葉(法律概念クラス表現言葉)を生成し、その法律概念クラス表現言葉を使って、前記プロンプトテキストを、法律要素言語のみから構成される法律テキストに書き換えて、中継器Aを介して、インターフェースエージェントに送り、
3)インターフェースエージェントは、前記法律テキストを受け取り、それを、中継器Bを介して、レスポンス用大規模言語モデルに送り。
4)レスポンス用大規模言語モデルは、前記法律テキストに基づいて、前記プロンプトテキストに対するレスポンステキストを生成し、そのレスポンステキストを、中継器Bを介して、インターフェースエージェントに送り、
5)インターフェースエージェントは、前記レスポンステキストを、ユーザー端末に送る
ことを特徴とする請求項3に記載のコンピュータシステム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、一般情報の言語表現の大規模サイズのテキストコーパスにより事前学習することができる大規模言語モデル(以下、マッピングLLM;Cl-LLM)と大規模サイズの法律テキストコーパスにより事前学習(教師なし又は教師あり)することができる大規模言語モデル(以下、レスポンスLLM;Re-LLM)とを有するコンピュータシステムに関する。具体的には、一般用語で構成される言語空間内のサブドメインを法律専門用語で構成される言語空間内のサブドメインにマッピングするCl-LLMと法律分野における専門用語で構成される言語空間内での言語処理を可能とするRe-LLMとを有するコンピュータシステムに関する。
【背景技術】
【0002】
OpenAIと言う会社が開発したChatGPT(一連のシリーズモデル、ChatGPT-1~ChatGPT-4)が有する言語処理能力の威力に触発されて、ChatGPTと同様な内部構成を有する大規模言語モデル(LLM)を各種の特定分野へ応用する試みが活発になされている。この応用分野には法律分野があるが、本出願人が知る限りにおいては、本出願時点では、ChatGPTの基本構成を有するLLM(以下、GPT-LLM)を法律分野へ応用する技術は未だ確立していないようである(非特許文献1参照)。
【0003】
GPT-LLMは、入力されたプロンプトテキストを読み込んで(トークン化(tokenization)、トークン埋め込み(token embedding))、そのテキストから読み取れるコンテキスト(context)、パターン(pattern)、意図(intent)等を参照しつつ、新たなテキストを出力する。ここで言うコンテキストとは一般的に「文脈」と日本語に翻訳されるようであるが、具体例を使ったChatGPTによる説明では、以下のようなものである。
【0004】
(ChatGPTによる説明)
プロンプトテキストの文脈において、「文脈」とは、テキストの意味を理解し解釈するのに役立つ周囲の情報、詳細、または背景知識を指します。文脈は自然言語理解において重要な役割を果たし、文や単語の意味は使用される文脈によって異なる場合があります。
以下は、プロンプトテキストから抽出された文脈の例です:
例1:プロンプトテキスト:「彼女は空でコウモリを見ました。」文脈:この文脈では、「コウモリ」という単語は、翼を持つ飛ぶ哺乳類を指します。文脈により、野球のバットや他の物体ではなく、動物を指していることが理解できます。
例2:プロンプトテキスト:「ジョンはお金を預けるために銀行を訪れました。」文脈:この文脈では、「銀行」という単語は、人々がお金を預けたり引き出したりする金融機関を指します。文脈により、川の岸や他のタイプの銀行ではないことが明確になります。
例3:プロンプトテキスト:「激しい雨のためにコンサートは中止されました。」文脈:この文脈では、「中止されました」という単語は、コンサートが予定通りに行われなかったことを示します。文脈の中の「激しい雨」により、中止の理由が理解できます。
例4:プロンプトテキスト:「学生は試験でAを受け取りました。」文脈:この文脈では、「A」という単語は、学生が試験で取った最高の成績やスコアを指します。文脈により、アルファベットの「A」ではないことが明確になります。
例5:プロンプトテキスト:「本はテーブルの上にあります。」文脈:この文脈では、「テーブル」という単語は、本が置かれている家具の一つを示します。文脈により、本の位置が理解できます。
これらの例の各々において、文脈はプロンプトテキストの意味を正確に解釈するために不可欠な情報を提供します。文脈を理解することは、言語モデルが関連性のある意味のある回答を生成するために重要です。
【0005】
また、パターンについては、ChatGPTは具体例を使って以下のように説明している。
(ChatGPTによる説明)
「パターン」とは、プロンプト文の中で繰り返される単語やフレーズの配置や構造のことを指します。これらのパターンは、異なる文で類似性を示す共通の特徴を示し、言語モデルがこれらのパターンに基づいた回答を生成するのを可能にします。
以下は、プロンプト文から抽出されるいくつかのパターンの例です:
1.質問パターン:
・ プロンプト:”フランスの首都はどこですか?”
・ パターン:”[Location]の首都はどこですか?”
2.比較パターン:
・ プロンプト:”iPhoneとAndroidの特徴を比較してください。”
・ パターン:”[Product A]と[Product B]の特徴を比較してください。”
3.推薦パターン:
・ プロンプト:”この地域で良いレストランを教えてください。”
・ パターン:”[Location]で良い[Type of Place]を教えてください。”
4.時間に関連するパターン:
・ プロンプト:”独立宣言はいつ署名されましたか?”
・ パターン:”[Event]はいつ[Action]されましたか?”
5.因果関係のパターン:
・ プロンプト:”なぜ株式市場が崩壊したのですか?”
・ パターン:”[Event]がなぜ[Action]したのですか?”
6.条件付きパターン:
・ プロンプト:”もし雨が降ったら、室内にいる予定です。”
・ パターン:”もし[Condition]なら、[Result]です。”
これらのパターンは、言語モデルがさまざまなプロンプト文の意図と構造を理解し、適切で文脈に即した回答を生成するのを支援します。
【0006】
更に、意図については、以下となっている。
(ChatGPTによる説明)
「意図(インテント)」とは、プロンプト文の中で含まれる要求や目的、質問の意図を指します。言語モデルは、プロンプト文の意図を理解することにより、適切な回答を生成することができます。
以下は、プロンプト文から抽出されるいくつかの意図の例です:
1.情報取得の意図:
・ プロンプト:”パリの観光名所を教えてください。”
・ 意図:観光名所を知りたい
2.比較の意図:
・ プロンプト:”iPhoneとAndroidの特徴を比較してください。”
・ 意図:二つの製品の特徴を比較したい
3.解決策の意図:
・ プロンプト:”アンチウイルスソフトは何を使えばよいですか?”
・ 意図:適切なアンチウイルスソフトを知りたい
4.質問の意図:
・ プロンプト:”なぜ地球は丸いのですか?”
・ 意図:地球の丸い形状についての理由を知りたい
5.決定の意図:
・ プロンプト:”明日の天気を教えてください。”
・ 意図:明日の行動を決定するために天気を知りたい
6.娯楽の意図:
・ プロンプト:”ジョークを教えてください。”
・ 意図:ジョークを楽しみたい
これらの意図は、言語モデルがプロンプト文の目的や要求を把握し、適切な回答を生成するのを支援します。
【0007】
ここで、「等」が意味することは、ChatGPTに言わせると以下の項目のことである。
(ChatGPTによる説明)
以下のような文脈、パターン、意図に加えて、私のような言語モデルは、以下のようなさまざまな情報をプロンプトテキストから抽出することができます:
1.構文:文の文法的な構造と構文を理解することができ、これにより、つじつまの合った文法的に正しい応答を生成できます。
2.意味:プロンプトの文脈で単語、フレーズ、文の意味を解釈できるため、文脈に適した応答を生成することができます。
3.名前付きエンティティ:人物の名前、組織名、場所、日付などの名前付きエンティティを識別できます。これにより、具体的かつ関連性のある情報を提供できます。
4.関係:エンティティ間の関係を認識し、プロンプト内の異なる情報の間に接続や関連を推測できます。
5.感情:プロンプトで表現された全体的な感情を検出でき、それが肯定的、否定的、または中立的かを判断できます。
6.時間情報:時間や日付の参照を理解でき、時間的な文脈で情報を提供できます。
7.ドメイン知識:訓練データによって、医学、法律、技術などの特定のドメインにおける知識を持つことがあります。これにより、それらの分野でより専門的な応答を提供できます。
8.常識と一般的な知識:幅広いテキストから学習しているため、一般的な知識や常識にアクセスでき、さまざまなクエリに適切に対応するのに役立ちます。
9.言語の構造:一般的な言語構造、イディオム、共起を認識し、応答をより自然で流暢にすることができます。
【0008】
ChatGPTと同じ内部構成を有するGPT-LLMは、上記と同じような優れた機能を有するが、これらの機能の元となっているのは、入力されたプロンプトテキストと、その中に出現する言葉と、学習過程で学習した常識に基づく関連する言葉群である。と言うことは、プロンプトテキストで構成される言語空間とそれに隣接する言語空間が、GPT-LLMが動き回れる空間(言語処理できる言語空間)であるとも言える。
【0009】
この隣接する言語空間を更に広げる効果のあるChatGPTの機能が移転推論(transfer reasoning)と言われる機能であり、これについて、ChatGPTは以下のように説明している。
(ChatGPTによる説明)
私のような言語モデルは、プロンプト文を受け取った際に、その文と私が訓練に用いた文との間でコンテキストやパターンの類似性を見つけようとします。もし訓練データの中に似たような文が見つかった場合、その文に基づいて転移推論を適用し、適切な応答文を生成します。この転移推論では、大規模なデータセットに基づいた学習結果を利用して、プロンプトに対して文脈に沿った適切で関連性のある応答を生成するのです。プロンプト文と私の訓練データの文がより類似しているほど、より連続性のある正確な応答を生成する可能性が高まります。
【0010】
そこで、この転移推論機能を法律分野における法律推論(legal reasoning)に応用できないかとChatGPTに聞くと、以下のように、可能であると主張している。
AI言語モデルとして、私は法的推論のプロセスで転送推論を実行することができます。法的推論には、法律や規則を具体的なケースやシナリオに適用することが含まれます。私は法的用語や特定のドメインに関する情報を持っているため、以下のようなタスクに役立つことができます:
1.法的調査:広範な法的文書、判例、法律をアクセスし、関連情報や前例を見つけるのに支援します。
2.契約分析:契約書を見直し、重要な条項や法的な影響を特定します。
3.判例分析:法的なケースを検討し、関連する詳細を抽出し、以前の判例が現在の状況にどのように適用されるかを判断するのを支援します。
4.法令遵守と規制支援:ビジネスや個人が複雑な規制フレームワークを遵守し、法的要件に従うのをサポートします。
5.法的執筆支援:意見書や法的なメモなどの法的文書を作成する際に、提案や文脈に適した表現を提供するのを支援します。
6.法的相談:法的な質問に答え、私のトレーニングと法的情報へのアクセスに基づいて一般的な指針を提供することができます。
ただし、私はプロの法律のアドバイスや人間の判断の代替ではありません。法的プロフェッショナルは、私のようなAIモデルから得られた結果を常に確認し、正確性や適用可能な法律や規則の遵守を確認する必要があります。
【0011】
しかしながら、ChatGPTの基本構成を有するGPT-LLMを法律分野へ応用する技術は未だ確立していないようであり、以下の非特許文献2,3に代表される様々な開発の試みがなされている。
【非特許文献1】Legal Prompting:Teaching a Language Model to Think Like a Lawyer https://arxiv.org/pdf/2212.01326.pdf
【非特許文献2】Knowledge Graph-Based Chatbot With GPT-3 and Neo4j https://neo4j.com/developer-blog/knowledge-graph-based-chatbot-with-gpt-3-and-neo4j/
【非特許文献3】Attribute Injection for Pretrained Language Models:A New Benchmark and An Efficient Method https://aclanthology.org/2022.coling-1.88.pdf
【非特許文献4】https://arxiv.org/abs/2212.01326
【発明の開示】
【発明が解決しようとする課題】
【0012】
上記に代表される開発の試みの背後にある基本的な考えは、ChatGPTの基本構成を有するGPT-LLMが捉える(capture)上記の様々な特徴は、あくまでも、入力されたプロンプトテキストが構成する言語空間サブドメインに基づくものであるが故に(プロンプトテキストから得られるin-text attributes(テキスト内属性)であるが故に)、そのプロンプトテキストを構成する構成要素言葉を法律分野に写像したときの法律用語での言語処理が必要な法律分野への適用が確立していないのである、との仮説の下に、out-of-input text domain(プロンプトテキストの範囲外のドメイン)からのattributes(属性情報)を持ち込むことでその課題を解決しようとする考えであるが、このような考えに基づくこれまでの試みは、ChatGPTの基本構成を有するGPT-LLMの中のtransformer(変換器)機構やself-attention(自己注目)機構自体にout-of-text(テキストの外部からの)attributes data(属性データ)を導入することが必須となり、システム構成が複雑になる傾向があるという課題がある。
【0013】
そこで、本発明では、既に確立しているChatGPTの多面的な機能の中から、個々の基本的要素機能を発現させて、それらの要素機能を活用しつつ新たに組み直すことで、ChatGPTの内部構成を変更することなく得られるGPT-LLMを2系統準備することで、リダンダンシー(redundancy)は残るものの、比較的容易に構成できるシンプルなシステムの構築を目的とした。具体的には、システムが、ユーザー端末からプロンプトテキストを受け取った後、そのプロンプトテキストのコンテキスト、パターン、意図等を決定づける言葉を、一方の系統のGPT-LLMが法律コンセプトに基づいてクラス分けして、その言葉をこのクラスを表現する法律用語で置き換えた上で、システムが当初受け取ったプロンプトテキストを法律用語を使ったテキストに書き換えて、これに対するレスポンスを他方の系統のGPT-LLMが行うことでかかる課題の解決を目指すのである。
【0014】
本発明は、上述の課題を解決するに際して、人間の頭脳の中で行われている言語処理プロセスについての哲学的な洞察に基づけば、複雑な技術が要求される言語モデル自体の内部構成を変更することなく、既存のコンピュータネットワーク技術と、コンピュータプログラムに関する既存のコーディング技術と、既存の言語モデルの機能との新たな組み合わせでもって上記課題が解決できることの知見に基づくものである。
【0015】
本発明者は、ChatGPTの言語処理機能について鋭意トレース実験を重ねた結果、ChatGPTは、日常用語で記載されたプロンプトテキストを受け取って、その中に含まれている言葉を、法律コンセプトを表すクラスに分類できることを発見した。例えば、「今年15歳になる市村君は、親に内緒で、株式会社秋葉がネット上で開いている通信販売サイトにアクセスして、中古のラップトップを購入するボタンをクリックした。」と言うテキストの中にある「市村君」を、法律行為能力を有しないグループと言う法律概念クラスに正しく分類できることを発見した。そして、この分類プロセスには、何らハルシネーションが生じないことも確認した。
【0016】
そして、更に、ChatGPTは、日常用語で記載されたscenario situation記載文章を、法律用語を使ったscenario situation記載文章に変換させた後で(以下、法律文書)、その変換させた法律文書に基づいて、登場人物相互間の法律関係を把握(記述)することが可能であることも本発明者は発見した。
【0017】
その一例を示す。
ChatGPT:
「「無行為能力者クラス」が秋葉株式会社が運営するオンライン通信販売サイトに密かにアクセスし、法定代理人の知識なしに中古のラップトップを購入するボタンをクリックしました。」
【0018】
更にはまた、登場人物相互間の法律関係を把握(記述)させた上で、日常用語で記載されたscenario situationの記載を、法律用語で書き換えた上で、その書換後の文章に基づく法律問題に関する質問に対して、適切な回答をすることも発見した。その一例を示す。
ChatGPT:
「与えられたシナリオでは、「法的能力を持たないクラス」(十五歳の市村君によって代表される)がオンラインの通信販売サイトに秘密裏にアクセスし、そのクラスの法定代理人(親)の知識なしで中古のラップトップを購入するためのボタンをクリックしました。この状況において、「法的能力を持たないクラス」の法定代理人である親は、未成年者が同意や知識なしに法的行為を行ったため、購入契約を無効にすることができる可能性があります。」
【0019】
以上を総合すると、ChatGPTが備える個々の相互に独立した機能の内、以下の機能を有するGTP-LLMをコンピュータ上に実装することは、技術的に可能である、即ち、特許法上の実施可能要件を満たすことが理解できる。
1)プロンプトを構成するテキスト(プロンプトテキスト)に含まれる言葉を、法律言語空間内の法律コンセプトを表すクラスにクラシフィケーションする言語モデル(クラシフィケーション用言語モデル)と、
2)前記クラシフィケーションに必要な追加情報を、前記クラシフィケーションユニットから、テキスト形式で受け取るインターフェースAPPと、
3)上記プロンプトテキストに含まれる言葉を法律言語空間におけるクラスを指す言葉に置き換えるテキスト転換ユニット(text rewriting unit)と、
4)上記テキスト転換ユニットで生成された法律言語テキストに対するレスポンスを生成するLLMをコンピュータ上に実装することができることが理解できる。
【0020】
なお、上記のステップは、Chain-of-Though方法(思考の連鎖による方法)と混同されがちであるが、Chain-of-Though方法では、promptの都度、promptの中に、対象となるpromptの1ステップ前のpromptに対するChatGPTからの回答を加えて、人間又はコンピュータがpromptを作成するのであるが(非特許文献4:https://arxiv.org/abs/2212.01326)、本発明に係る方法においては、ChatGPTによる言語情報処理を、法律の世界(Conceptual Twin World:双子概念世界)の中でのみ行わせることに特徴があり、この特徴は、Chain-of-Thought方法にはない特徴である。
【0021】
また、法律用語の言語空間は、日本語に限定すると、日本の全ての法律条文、裁判記録等々のcorpusにより構成される言語空間であるので、そのサイズは、ChatGPTが使用されていると言われている40,000語の言語空間よりも遥かに小さいので、ChatGPTの言語モデル(パラメーター数は1750憶個とも言われている)のトレーニングに使用された570GBと比較すると、ごく限られているので、その言語空間でのGTP-LLMのトレーニング(プレトレーニング)は容易である。例えば、日経新聞デジタル版(https://www.nikkei.com/article/DGXZRSP658582_U3A700C2000000/)によれば、日本語だけの言語空間に限定すれば、400憶個のパラメーターで、Webから収集した350GBの日本語テキストをトレーニングに使用するだけでもChatGPTに匹敵する大規模言語モデルが構成できるとのことである。
【0022】
本発明は、法律分野に特化した使用を企図している。法律分野においては、自然界の法則(事実に基づく原因‐結果の因果関係)が推論の基礎となっているわけではなく、人間社会の構成員の間での取決め(事実現象とは切り離された言葉で表現された取決め)が推論の基礎となっている。また、事実シナリオのテキストに現れる如何なる事実行為者も、あるいは、如何なる事実行為も、一旦、法律の世界での概念上(言葉上)の1つのグループ(クラス)に属する法律行為者、法律関係であることがコンピュータの言語モデルにより認識されれば、その言語モデルは、その事実行為者又は法律関係は法律概念上のクラスに特有の属性を引き継いでいると、自動的に、認識すると言う現象を活用するものである。
【課題を解決するための手段】
【0023】
本発明は、以上の知見に基づくものであり、具体的には、以下のとおりである。
即ち、第1の発明は、
コンピュータ上に実装される大規模言語モデル(LLM)を含むコンピュータシステムであって、インターフェースエージェント(Interface Agent)と、クラシフィケーション用大規模言語モデル(Classification LLM:Cl-LLM)と、レスポンス用大規模言語モデル(Response LLM:Re-LLM)とを含み、
1) インターフェースエージェントは、ユーザ端末からのプロンプトテキストを受け取り、それをクラシフィケーション用大規模言語モデルに送信し、
2) クラシフィケーション用大規模言語モデルは、
a)インターフェースエージェントから受信したプロンプトテキストから、法律言語空間内 の法律概念クラスに属する事実要素を抽出して、法律概念クラスを特定し、
b)前記法律概念クラスを表現する言葉(法律概念クラス表現言葉)を生成し、
c)前記法律概念クラス表現言葉を使って、前記プロンプトテキストを、法律要素言語のみから構成される法律テキストに書き換えてインターフェースエージェントに送り、
3)インターフェースエージェントは、前記法律テキストを受け取り、それをレスポンス用大規模言語モデルに送り。
4)レスポンス用大規模言語モデルは、前記法律テキストに基づいて、前記プロンプトテキストに対するレスポンステキストを生成し、そのレスポンステキストを、インターフェースエージェントに送り、
5)インターフェースエージェントは、前記判断結果のテキストを、ユーザー端末に送る
ことを特徴とするコンピュータシステムである。
【0024】
第2の発明は、
前記第1の発明における前記2)のa)において、抽出された事実要素が属する法律概念クラスが特定できないときは、クラシフィケーション用大規模言語モデルは、不足する事実要素を含む追加テキストをインターフェースエージェントにリクエストし、
1)インターフェースエージェントは、前記リクエストをユーザー端末に送り、ユーザー端末から追加の事実要素を受け取り、それをクラシフィケーション用大規模言語モデルに送り、
2)クラシフィケーション用大規模言語モデルは、法律概念クラスを表現する言葉(法律概念クラス表現言葉)を生成し、その法律概念クラス表現言葉を使って、前記プロンプトテキストを、法律要素言語のみから構成される法律テキストに書き換えてインターフェースエージェントに送り、
3)インターフェースエージェントは、前記法律テキストを受け取り、それをレスポンス用大規模言語モデルに送り。
4)レスポンス用大規模言語モデルは、前記法律テキストに基づいて、前記プロンプトテキストに対するレスポンステキストを生成し、そのレスポンステキストを、インターフェースエージェントに送り、
5)インターフェースエージェントは、前記レスポンステキストを、ユーザー端末に送る
ことを特徴とする請求項1に記載のコンピュータシステムである。
【0025】
第3の発明は、
コンピュータ上に実装される大規模言語モデル(LLM)を含むコンピュータシステムであって、
インターフェースエージェント(Interface Agent)と、中継器Aと、中継器Bと、クラシフィケーション用大規模言語モデル(Classification LLM:Cl-LLM)と、レスポンス用大規模言語モデル(Response LLM:Re-LLM)とを含み、
1)中継器Aと中継器Bは、それぞれ、独立した物理アドレスを有し、前記インターフェースエージェントと前記大規模言語モデルとの間に、相互に独立して介在し、
2)インターフェースエージェントは、ユーザ端末からのプロンプトテキストを受け取り、それを、中継器Aを介して、クラシフィケーション用大規模言語モデルに送信し、
3)クラシフィケーション用大規模言語モデルは、
a)インターフェースエージェントから、中継器Aを介して、受信したプロンプトテキストから、法律言語空間内の法律概念クラスに属する事実要素を抽出して、法律概念クラスを特定し、
b)前記法律概念クラスを表現する言葉(法律概念クラス表現言葉)を生成し、
c)前記法律概念クラス表現言葉を使って、前記プロンプトテキストを、法律要素言語のみから構成される法律テキストに書き換えて、中継器Aを介して、インターフェースエージェントに送り、
4)インターフェースエージェントは、前記法律テキストを受け取り、それを、中継器Bを介して、大規模言語モデルに送り。
5)大規模言語モデルは、前記法律テキストに基づいて、前記プロンプトテキストに対するレスポンスを生成し、それを、中継器Bを介して、インターフェースエージェントに送り、
6)インターフェースエージェントは、前記レスポンスを、ユーザー端末に送ることを特徴とするコンピュータシステム。
【0026】
第4の発明は、
前記第3の発明における前記3)のa)において、抽出された事実要素が属する法律概念クラスが特定できないときは、クラシフィケーション用大規模言語モデルは、不足する事実要素を含む追加テキストを、中継器Aを介して、インターフェースエージェントにリクエストし、
1)インターフェースエージェントは、前記リクエストをユーザー端末に送り、ユーザー端末から追加の事実要素を受け取り、それを、中継器Aを介して、クラシフィケーション用大規模言語モデルに送り、
2)クラシフィケーション用大規模言語モデルは、法律概念クラスを表現する言葉(法律概念クラス表現言葉)を生成し、その法律概念クラス表現言葉を使って、前記プロンプトテキストを、法律要素言語のみから構成される法律テキストに書き換えて、中継器Aを介して、インターフェースエージェントに送り、
3)インターフェースエージェントは、前記法律テキストを受け取り、それを、中継器Bを介して、レスポンス用大規模言語モデルに送り。
4)レスポンス用大規模言語モデルは、前記法律テキストに基づいて、前記プロンプトテキストに対するレスポンステキストを生成し、そのレスポンステキストを、中継器Bを介して、インターフェースエージェントに送り、
5)インターフェースエージェントは、前記レスポンステキストを、ユーザー端末に送る
ことを特徴とする請求項3に記載のコンピュータシステムである。
【0027】
上記本発明の主な構成要素について図を参照しつつ若干説明する。なお、図において、各構成要素を相互に結び付けるものは無線によるインターネット又は有線でのLANである。
「コンピュータ上に実装される大規模言語モデル(LLM)を含むコンピュータシステム」とは、このコンピュータシステムに含まれる大規模言語モデルは1種類だけではないことを企図した記述である。具体的には、クラシフィケーション用大規模言語モデル(Cl-LLM)320と、レスポンス用大規模言語モデル(Re-LLM)330とを含むことが企図されている。
【0028】
「インターフェースエージェント(Interface Agent)とは、コンピュータプログラムで構成されたプログラムユニット310であり、必ずしもハードウエアに限定されるものではない。このエージェント310とユーザー端末(図示せず)との間のコミュニケーション言語とプロトコル、このエージェント310とクラシフィケーション用大規模言語モデル(Cl-LLM)320及びレスポンス用大規模言語モデル(Re-LLM)330との間のコミュニケーション言語とプロトコルは、それぞれ、公知の言語とプロトコルが好適に使用できる。そして、このエージェント310の構成は、例えば、Python programが好適に使用できる。従って、このインターフェースエージェント310は、図6に示された構成概念図の中のメモリ領域内に実装されるプログラムユニットである。
【0029】
「インターフェースエージェントから受信したプロンプトテキストから、法律言語空間内の法律概念クラスに属する事実要素を抽出して、法律概念クラスを特定し」とは、図1の概念図にあるように、事実要素(例えば、日常の言語で記載されたテキストを構成する言葉)を表現する概念が、法律の世界(法律用語で構成される法律概念空間内のどのクラス(概念グループ;法律概念クラス)に属するのかを特定することを意味する。こうするとことで、プロンプトテキストに基づくin-textコンテキストに加えて、out-of-textコンテキストを、後続の言語処理プロセスに導入することが可能となる。例えば、プロンプトテキストが、「今年15歳になる市村君は、親に内緒で、株式会社秋葉がネット上で開いている通信販売サイトにアクセスして、中古のラップトップを購入するボタンをクリックした。」と言うテキストの中にある「市村君」を、法律行為能力を有しないグループと言う法律概念クラスに正しく分類できれば、この「市村君」と言う言葉には、法律行為能力を有しないというattributes(属性)が自動的に加えられることとなり、out-of-textコンテキストがその後の言語処理プロセスに自動的に加わることとなり、レスポンスがより正確になることが期待できる。
【0030】
「前記法律概念クラスを表現する言葉(法律概念クラス表現言葉)を生成し」とは、この法律概念クラスを一義的かつ直接的に特定できる言葉(法律概念クラス表現言葉)であれば、どのような言葉でも好適に生成できる。プロンプトテキストで表現される事実シナリオにおいては、登場人物は人間であることが容易に理解できるような言葉が使用されることが必要ではあるが、コンピュータによる言語モデルにおいては、言葉の意味を理解することはなく、全ての言葉が単なる数値からなるベクトルで表現されるために、それによる言語処理プロセスにおいては、人間であることが理解できるような言葉は不要であるから、このようなことが可能となる。
【0031】
「前記法律概念クラス表現言葉を使って、前記プロンプトテキストを、法律要素言語のみから構成される法律テキストに書き換えて」とは、例えば、プロンプトテキストが、「「今年15歳になる市村君は、親に内緒で、株式会社秋葉がネット上で開いている通信販売サイトにアクセスして、中古のラップトップを購入するボタンをクリックした。」であったときに、このテキストの中の「市村君」を、「無行為能力者クラス」という任意の言葉に置き換えて、「「無行為能力者クラス」が秋葉株式会社が運営するオンライン通信販売サイトに密かにアクセスし、法定代理人の知識なしに中古のラップトップを購入するボタンをクリックしました。」というテキストに書き換えることを意味する。
【0032】
「レスポンス用大規模言語モデルは、前記法律テキストに基づいて、前記プロンプトテキストに対するレスポンステキストを生成し」とは、ChatGPTと同じ内部構成を有する言語モデルが、ChatGPTと同様なプロセスでもって、レスポンステキストを生成すると言うことである。このときのインプットテキストが、ユーザー端末(図示せず)から送られて来た、日常用語で記載されたテキストではなく、それを上述のようにして法律テキストに書き直されて生成された法律テキストである。
【0033】
「法律テキスト」とは、例えば、上記のような変換後のテキストを意味し、法律専門家が読めば、それぞれの言葉が有する属性(attributes)が即座に理解できるようなテキストを意味する。
【0034】
「中継器A」420と「中継器B」430は、ハードウエアが企図されており、その中にテキストをリレイするコンピュータプログラムユニットが実装されている。これらは、ChatGPTにアクセスする際に、別々の物理アドレスを有するときには、ChatGPTは、別々のクライアントとして認識するので、同じChatGPTを同時並行的に使用できることを積極的に活用するためのものである。これらは、ソフトウエアを搭載したハードウエアが企図されている。
【0035】
上記構成を有する本発明における言語プロセスについて、図5のフローチャートを参照しつつ、その概要を以下説明する。
本発明のコンピュータシステムは以下のようなプロセスで動作する。先ず、S500で、コンピュータシステムのインターフェースエージェント(310)が、ユーザー端末(図示せず)から送られて来たプロンプトテキストを受信する。S505において、受信したプロンプトテキストをCl-LLMに送信する。S510において、Cl-LLMが、受信したプロンプトテキストから法律要素を抽出して法律概念空間での法律概念クラスに区分けする(受信したプロンプトテキストにおけるどの事実要素が、法律空間でのどの法律概念クラスに属するかを決めることに相当する。)S515において、その区分けが可能であるか否かを判断する(例えば、受信したプロンプトテキストにおけるどの事実要素に、事実行為者として、個人の名前だけしか記載されていないときには、その個人が、法律行為能力を100%有する法律概念クラスに属するのか、それとも、法律行為能力に制約を受けている法律概念クラスにぞくするのかを判断する。あるいは、その個人による法律行為が、民法以外の業界特有の法律の制約を受ける法律概念クラスに属する法律行為であるか否かの判断をする。)そして、その判断に応じて、後続するステップが異なる。受信したプロンプトテキストに含まれる言葉が少なくて判断できないときは、S520に入って、インターフェースエージェントを介して、判断に必要な追加情報の言葉を、ユーザー端末に要求する。この要求を受けて、ユーザー端末から、追加情報のテキストが入力されると、S500に移って、S515までのステップを繰り返す。その後、判断できたときは、S525に移って、法律概念空間での法律概念クラスを表現する言葉を使って、当初のプロンプトテキストを書き換えるのである。このステップにより、これ以降における言語処理プロセスは、純然たる人間社会の構成員の間での取決め(事実現象とは切り離された言葉で表現された取決め)を表現する言葉の世界だけでの推論が可能となり、このステップまで進むと、ChatGPTでも実際に行えるtransfer reasoning(移転推論)が活用できるのである。
【0036】
次に、上記発明の実施可能性を担保するrationale(根拠)について、人間の頭脳の中での言語処理プロセスと対比しつつ、若干説明する。
先ず、ChatGPTに代表される大規模言語モデルが、何故「言語モデル」と言われるかについて思いを馳せると、これは、人間の頭脳の中における言語処理プロセスを、コンピュータでモデル化しているから「言語モデル」と言われることに気が付く。と言うことは、言語処理プロセスの対象と成る言語テキストが、法律分野に限定された言語テキストであった場合、それが、どのような人間により、どのように言語処理されるかを考えると、以下のパターンが浮かび上がる。即ち、イギリスにおける法律事務所に所属する法律家には、solicitor(ソリシター)とbarrister(バリスター)の二種類がある。Solicitorは、クライアントが最初に面会する弁護士であり、このsolicitorは、クライアントからの話を聞いて、それを整理して、その話を構成する法律要素を全て抽出し、それに応じて適用される法律を特定する、と言うようなtriageの役割を担っている。このときのsolicitorの頭の中では、クライアントからのfactual narration,factual scenarioの中から、法律言語空間にマッピングすべき事実要素を漏れなく特定して抽出ことが仕事の一部となっている。このときのマッピングとは、分類分け(classification)に他ならない。一方、barristerは、このsolicitorからの整理された法律テキストに基づいて、法律判断を行い、その判断をいかにして陪審員や裁判官に納得させるかの法定戦略を確定するのである。
【0037】
この人間界における言語処理プロセスの役割分担を、コンピュータ上で実現させるのが、本発明の趣旨であり、クラシフィケーション用大規模言語モデル(Cl-LLM)320がsolicitorに対応し、レスポンス用大規模言語モデル(Re-LLM)330がbarristerに相当するのである。そして、人間の頭脳の中での言語処理プロセスが大規模言語モデルでほぼ忠実に再現できることを示したのがChatGPTであるので、このChatGPTの基本構成を有するGPT-LLM440についても、その役割分担を明確に指示すれば、solicitorやbarristerと同様な法律言語処理が可能となると考えられる。
【0038】
さて、ChatGPTに代表される大規模言語モデル(以下、一般LLM)のコア部分を構成するものは、数値で表された重み(weight)を要素に有するマトリックスから成るlayer(コンピュータサイエンスで言う層)が幾層にも重なったものであり(直列もあれば並列もある)、この中を、言語をベクトル表現した高次元のベクトルが幾重にも通過することで、インプットされたテキストを、転換して(翻訳ではないことに注意)、アウトプットのテキストが生成される仕組みとなっている。
【0039】
ここで、ChatGPTと同じ内部構成を有するLLMが「単語の意味」、「言語の意味」を理解することなく、インプットテキストを受けて、人間と同様に、そのテキストから推察されるコンテキスト、テキストのパターン、テキストの意図等を抽出して、アウトプットテキストを生成することができる理由の一部について、人間が言葉を理解する際に人間の頭脳の中でどのような現象が起きているかの観点から若干説明をする。
【0040】
人間が言葉を理解するとは、その言葉に関連する情報(言語で表されたもの)を思い浮かべることであり、その言葉のattributesのうち、その言葉が発せられたコンテキスト、話者の意図で表される1つのカテゴリに属するattributesを思い浮かべることである。いわば、本丸を取り巻く外堀を埋めるようなものである。従って、1つの言葉に関連する別の言葉を思い浮かべることができなければ、その言葉は理解できていないとも言える。このことは、1つのテキストの中に現れる1つの言葉のattributesには、そのテキストから抽出される、あるいは、そのテキストに内在する(潜在する)attributesと(テキスト内在attributes)、その言葉を使う人間が過去に学習したattributes(テキスト外attributes)とがあることを示唆する。言語空間の観点から見ると、このテキスト外attributesは、対象となる言葉の属する言語空間とは別の概念空間(言語で構成される概念空間)に属するものであるので、コンピュータ上に実装されたLLMには自動的にはインプットできないattributesである。
【0041】
一方、数値でのみ表されたトークン、それに様々なattributesの要素を加えた高次元ベクトルでしか処理できないコンピュータによる言語処理モデルは、上記の人間による言語処理を、対象の言葉に、その言葉が現れるテキストに依存するテキスト内在attributesを加えて高次元ベクトル表現に変換した上でそのベクトルのベクトル演算処理でもって行っている。この際に、テキスト外attributesは、対象となる言葉の属する言語空間とは別の概念空間(言語で構成される概念空間)に属するものであるので、コンピュータ上に実装されたLLMには自動的にはインプットできないattributesである。即ち、コンピュータによる言語処理モデルは、テキスト内在attributesは自動的に処理できるが、テキスト外attributesは、原理的に、処理できないことを示唆する。これが、現時点における、コンピュータ上に実装されたLLMの限界とも言える。
【0042】
しかしながら、人間が頭脳の中で1つの言葉に関連する別の言葉を思い浮かべることは、コンピュータ上に実装されたLLMの中では、その言葉に関連する新たな言葉(入力テキストの中には存在しない言葉、入力テキストにより規定される言語空間サブドメインには属さない言葉)を、公知のknowledge graph(知識グラフ)の技術を応用して別途構成したassociation table(関連表)をlook-up(チェックして対応する言葉を特定する)することと等価と見做すことが可能である。Knowledge graphはnode(ノード)とedge(エッジ)とで構成されたtree構成(樹木に似た構成)となっており、このうちのroot node(根元に相当するノード)が、入力テキストの中に現れる1つの言葉に相当する。そして、edgeが、入力テキストのコンテキスト、パターン、意図等の観点から見たassociation(関連性)を規定するlinkage(結合リンク)に相当する。例えば、入力テキストの中に「村田」と言う個人名があったときに、その入力テキストのコンテキストを考慮しつつ(注目しつつ)村田と言う言葉を法律専門言語空間においてclassify(分類)したとき、その村田が未成年であれば、法律専門言語空間においては、法律行為無能力者としてマッピングされるし、一方、法律行為能力を100%有する成人であれば、それによる法律行為は有効な法律行為であることをattribute(属性)の1つとして内在するlegal entity(法律エンティティ)にマッピングされる。このマッピングは、クラシフィケーションともみなせる。即ち、マッピング元の事実要素が、法律概念空間における法律概念クラスのどのクラスに属するかを判断することと実質的に同じである。
【0043】
この例のように、入力されたテキストに規定される言語空間Aを、言葉(言語)のみにより構成される別の言語空間B(例えば、法律専門用語のみで構成される法律専門言語空間)にマッピングしたときには、法律専門用語言語空間の特殊性から、法律専門用語1つ1つに、規定のattributes(属性)が付与されているので、マッピング先の対応言語が見つかれば、そのマッピング先の言語空間においては、そのマッピング先のクラスを表現する言葉には、自動的に、テキスト外attributesが付与されることとなる。このことは、入力テキストの中の1つの言葉を数学的に表現するベクトルに、テキスト内attributesとテキスト外attributesの両方の要素を加えることで、更なる高次元ベクトルを構成することが可能となることを示唆する。
【0044】
コンピュータ上に実装されたLLMのシステムにおける動作は、概ね、以下のとおりである。先ず、人間が記述した文章がコンピュータに入力されると、コンピュータは、その文章を単語及びサブ単語ごとに分解して(分解の仕方は、使用する分解プログラムにより多少の違いがある)、それらに対応するトークン(token)と呼ばれる1個の数値(scalar数値)に変換して、一列のトークン(token)のarray(配列)に変換する。これをtokenization(トークン化)と言うが、このtokenizationは、コンピュータが、予め備えられたlook-up table(参照テーブル)を参照して、各単語又はサブ単語ごとに自動的に決める。この段階において、コンピュータが、入力された文章を構成する単語の意味を理解してトークン化(tokenization)する訳ではない。
【0045】
次に、コンピュータは、LLMのシステムをして、このトークン(token)にコンテキスト、パターン、意図情報を表現する属性(attributes)を埋め込む。埋め込み(Embedding)とは、1つのトークン(token)(この段階では、1つの数字、1個の数値である)を、複数の要素を持つベクトルに変換することである。ChatGPTでは、一説には、512個~1024個の要素を持つベクトルに変換されると言われている。このように膨大な数の要素が必要な理由は、このベクトルに、対象と成る言語だけではなく、その言語を取り巻くコンテキスト、構文(syntactic)に関する情報、意味(semantic)に関する情報、その言語が含まれるテキストのパターン等々、数値しか理解できないコンピュータが、ベクトルやマトリックスの演算のみで対応する言語処理ができるようにするためである。この場合のベクトルの要素の数を示す言葉として、ベクトルの次元と言う言葉が一般的に使用される。
【0046】
トークン化(tokenization)された文章を、コンピュータが、LLMに入力する際には、その文章を構成する個々の単語(言葉)が、マトリックスの行に対応し、その列が文章を構成するトークン(token)の数(単語の数)に相当するマトリックスの形態となっている。これは、丁度、画像認識AIに入力される画像をそのピクセル毎に数値で置き換えられて得られるマトリックスに近い状態になっている。このマトリックスは列と行から構成されるが、トークン化(tokenization)された文章は、1つの列に、その文章を構成する1つの単語又はサブ単語に相当するトークン(token)の数値を1つの要素に有するベクトルの構成要素と同じになる。ChatGPTの場合は、一説には、1つの列に、全部で、1024個の数値から構成されていると言われている。そして、このマトリックスの行の数は、入力された文章を構成する単語にサブ単語の数と一致する。と、言うことは、LLMに入力されるマトリックスのサイズは、入力された文章毎に変化するが、その変化は、列の数だけであって、各行の長さは一定(ChatGPTの場合は1024個の長さと言われている)である。このマトリックスはトークン(token)マトリックスと一般に呼称される。
【0047】
LLMは、多数の層から構成されているが、各層が、入力されたマトリックスの中の各構成要素(各数値)を変換するように構成されている。ChatGPTの場合は、この層の数が96であると言われている。この96層は、直列的に重ねられているのではなく、12層ごとのブロックに分かれており、このブロックが8つ並列的に配置されている。1つのブロックを構成する12層は、トランスフォーマー(transformer:変換器)の一部を構成するブロックと言われており、その各ブロック中にself-attention層が含まれている。
【0048】
上述のトークン(token)マトリックスがLLMに入力されると、LLMを構成するself-attention層が、入力されたトークン(token)マトリックスを構成する各要素の間の関係を、その強さ、各要素の位置等に基づいて、トークン(token)マトリックスに対応する文章のcontext,intent,pattern等々を抽出して、transformer層を構成する他の層により、最終的に、入力されたときにおけるトークン(token)マトリックスに対応する文章のcontext,intent,pattern等が数値として反映されたattention value又はattentionマトリックスとして各self-attention layerブロックから出力され、これらがconcatenateされて(連結されて)、更に大きなサイズのattentionマトリックスとなる。この一連のプロセスが、transformerの中に含まれるencoder(エンコーダー)と言われるブロックで行われる。
【0049】
このencoder(エンコーダー)から出力されたattentionマトリックスは、cross-attention mechanismにより、decoder(デコーダー)がresponse textを生成する際に参照されるマトリックスの1つとなる。Decoderは、複数のトークン(token)(単語又はサブ単語をトークン(token)に変換する際に使用されたlook-up tableに含まれる全ての単語及びサブ単語に対応する全てのトークン(token))を、それぞれの確率と共に予測(predict)する。これらのトークン(token)集の中から、確率の値が一番高いトークン(token)が選ばれる。ここで選ばれたトークン(token)が、予測(predict)されたトークン(token)となり、このトークン(token)から、トークン(token)-単語の対照表に基づいて(逆引きでもって、LLMが有する全単語集の中から)、人間が理解できる言葉が選ばれる。なお、この言葉が単語とサブ単語とから構成されている場合は、第1トークン(token)と第2トークン(token)が選ばれる。そして、ここで選ばれた言葉が、コンピュータからの言葉による応答の最初の言葉となる。
【0050】
LLMの特徴の一つには、ここで選ばれた言葉を、次のステップの言葉を選ぶ際に、decoderが既に生成した文章の後ろに、ここで選ばれた言葉を加えて、新たなアウトプットトークン(output token)マトリックスを自動的に作成して、decoderにより上述の一連のプロセスが行われて、第2番目の言葉が選ばれると言う特徴もある。
【0051】
LLMを構成する各layer(層:人工知能モデルにおける層と同様な機能を有し、重み(weight)をその構成要素として有する層)の要素に入っている数値はweightであるが、このweightの値は、LLMのトレーニングの過程で自動的に決まる数値である。LLMの機能は、このトレーニングの回数、トレーニングに使用した文章、テキストの種類(分野)により大きく左右されると言われているが、トレーニングの良し悪しによりLLMの能力が左右されるということは、LLMが、heuristicに基づいてoutputを出しているとも言える側面がある。比喩を使うと、ちょうど、漢方薬の処方箋に相当する。漢方薬の処方においては、漢方薬師が、患者を診て、何千年もの間に蓄積された経験則に基づいて、処方する。ここで重要視されるのは、経験則である。漢方薬師の経験が豊富であればあるほど、その処方は的確になる。これは、LLMにおいてpre-trainingする際に使用するdatasetが多ければ多いほど、modelの性能が向上するのと同様である。もう一つは、LLMのモデルを構成するパラメーター(parameter(weight))の個数の多寡である。要するに、能力(capacity)である。これも、漢方薬師の頭脳のcapacityに相当する。
【0052】
このようなLLMに、logical thinking(論理的思考)を行わせる試みが各地で行われている。
この試みは、その手法の種類により、2つに大別される。
1つは、学習前のLLM自体は従来通りのモデル構成として、それに入力するプロンプトの記述(prompting)の方法を工夫することである。(参考サイト:https://www.promptingguide.ai/)
2つ目は、学習前のLLM自体を構成するlayerの構成、組み合わせ等々を改良することである。
【0053】
しかしながら、いずれの場合も、LLMが、統計的な観点からのヒューリスティック(heuristic)に基づいてoutputを出すという点においては、変わらない。
【0054】
さて、人間の社会生活における人間の挙動・行動を言葉で表現するに際して、その表現方法には2とおりある。1つは、物理的な側面に注目した表現(事実行為に注目した表現)であり、もう一つは、法律関係の側面に注目した表現(法律行為に注目した表現)である。一般的に、1つの事実行為を表現する言葉には、対応する1つの法律行為を表現する言葉(法律用語)が確定していることを原則とするが、これには、例外がある。例えば、日常用語で表現された「約束する」というような場合、法律でもって約束の履行を強制されることがない単なる口約束の場合と、契約書面に記名捺印するときのように法律で約束の履行が強制される場合があり得る。このうちどちらが正しい解釈であるかは、そのときのcontextとの関係に左右される。例えば、単なる口約束であったとしても、後日、その約束事を書面にして当事者双方が記名捺印したとすれば、法律でもってその約束の履行を強制することが可能である。もし、この後日における事実行為について、入力されたプロンプトテキスト(prompt text)に含まれていなかった場合と、含まれていた場合とでは、この約束を法律用語での記載が異なる。即ち、属性(attribute)が異なるのである。
【0055】
このことは、事実用語(目に見える現象、行為を記載する用語)から構成される言語スペースと、法律用語のみから構成される言語スペースとは、相互にtwin関係がある、と言うことである。これを、便宜上、twin language space(双子言語空間)と呼称する。このlanguage space(言語空間)がtwin関係(双子関係)にあると言うことは、一方のlanguage spaceにおいてその言語スペース内で学習したLLM(1)からのoutputも、twin関係にある他方のlanguage spaceにおいてその言語スペース内で学習したLLM(2)からのoutputと、twin関係にある、と言うことである。
【0056】
上述の説明の背後にある前提条件としてのコンセプトは2つある。1つは、法律用語のみから構成される言語スペースは、事実用語(目に見える現象、行為を記載する用語)から構成される言語スペースにマッピングすることができると言う前提条件としてのコンセプトであり、もう1つは、そのマッピング先の言語スペース内だけでの言語処理を法律LLMに行わせることができるという前提条件としてのコンセプトである。
このlanguage space相互間のtwin関係を概念図で示すと、1例として、図1のようになる。
【0057】
現在、上述のようなself-attention層、それを含むtransformer層を有するLLMに、logical thinkingを行わせる試みが各地で行われている。この試みは、その手法の種類により、2つに大別される。1つは、LLM自体は従来通りのモデル構成として、それに入力するpromptingの方法を工夫することである。(参考サイト:https://www.promptingguide.ai/)もう1つは、LLM自体を改良することである。本出願の出願時点では、LLM自体を改良して、法律分野において必要なlegal logical thinking(法律論に基づく論理的思考),legal logical reasoning(法律論に基づく論理的推論)が可能になったというニュースはない。このことからして、現時点での努力は、入力するpromptの改良が注目されている。
【0058】
しかしながら、いずれの場合も、LLMが、ヒューリスティック(heuristic)に基づいてoutputを出すという点においては、変わらない。Heuristicなoutputと、logical reasoningを経たoutputとでは、理論的には異なるプロセスを経由するが、outputされた結果だけからは、その結果がlogical reasoning,logical thinkingに基づくものなのか、統計に基づくheuristicなRule-of-Thumbに基づくものなのかは判別する手段は現時点ではないようであるが、outputに至るステップがaccountableなもの(説明可能なもの)、即ち、毎回同じであれば、それは、logical reasoningを経たものと等価であるとも言える。即ち、結論に至る個々のステップが統計に基づくheuristicなRule-of-Thumb(経験則)に基づくものであっても、個々のステップごとの結果が毎回同じであれば(accountableであれば)、最終的に得られる結果は、logical reasoningに基づくoutputと同じとも言える。。
【発明の効果】
【0059】
上記の構成を有する本発明は、ユーザーが日常用語(平生使用する用語、法律用語が一部含まれることもある)で記載されたプロンプトテキストで表された言語空間を、法律の論理展開、推論展開に最適な法律用語で構成される言語空間(法律言語空間)にマッピングすることが可能となり、その結果、マッピング先の法律言語空間内だけでのLLMによる言語処理が可能となり、学習過程で習得したheuristic-based reasoningに基づく言語処理が可能となる。
【実施例0060】
そこで、上記の発明が実際に実現できるかについて、ChatGPT自身に、英語で質問し、それに対する英語での回答を、ChatGPTに日本語に翻訳させた結果を以下に記載する。
【0061】
ステップ1:環境の設定
GPT-3、BERT、またはその他の高度なモデルなど、大規模言語モデル(LLM)を実行できるコンピュータシステムを用意します。これには、かなりの計算能力とメモリリソースが必要になります。
ステップ2:必要なライブラリとモデルのインストール
TensorFlowやPyTorchなどの深層学習ライブラリと、使用する特定のLLM(Cl-LLMおよびRe-LLM)をインストールします。事前学習済みモデルをシステムにダウンロードして読み込むことを忘れないようにしてください。
ステップ3:インターフェースエージェントの実装
インターフェースエージェントに、ユーザの端末からプロンプトテキストを受け取るためのコードを記述します。これは、ユーザがクエリを入力できるコマンドラインインターフェースまたはWebベースのインターフェースである可能性があります。
ステップ4:クラシフィケーション用大規模言語モデル(Cl-LLM)への接続
インターフェースエージェントをクラシフィケーション用大規模言語モデル(Cl-LLM)と統合し、プロンプトテキストを分類するためにモデルに送信できるようにします。
ステップ5:法律概念クラス表現言葉の抽出と生成
Cl-LLMで、受け取ったプロンプトテキストから法律概念クラスに属する事実要素を抽出するためのコードを実装します。法律概念クラスを特定し、これらのクラスを表す単語(法律概念クラス表現言葉)を生成します。
ステップ6:プロンプトテキストの法律テキストへの書き換え
生成された法律概念クラス表現言葉を使用して、プロンプトテキストを法律要素のみから構成される法律テキストに書き換えます。この新しい法律テキストは、法律領域特有の単語と用語で構成されています。
ステップ7:レスポンス用大規模言語モデル(Re-LLM)への法律テキストの送信
インターフェースエージェントをレスポンス用大規模言語モデル(Re-LLM)に接続し、生成された法律テキストをこのモデルに送信してレスポンスを生成します。
ステップ8:レスポンステキストの生成と送信
Re-LLMで、プロンプトテキストに対するレスポンステキストを生成するためのコードを実装します。レスポンステキストは、プロンプトに基づく文脈に適した内容であり、モデルによる法的推論に基づいています。
ステップ9:レスポンステキストのユーザー端末への送信
レスポンステキストが生成されたら、それをインターフェースエージェントに送信します。インターフェースエージェントは、生成されたレスポンステキストをユーザーの端末に送信し、ループを完了します。
ステップ10:監視と改善
システムのパフォーマンスを継続的に監視し、精度と機能を向上させるための必要な改善を行います。これには、法的領域特有のデータセットを使用した追加のトレーニング、法的専門家の意見の取り入れ、モデルの反復的な改善などが含まれます。
【0062】
Claude AIと言われる言語モデルからも同様な回答が得られる。
Claude AIからの回答
1.コンポーネントとアーキテクチャの定義 - インターフェースエージェント、分類言語モデル、および応答言語モデル間の責任と接続を明確にし、各コンポーネントの入力と出力を定義します。
2.ベース言語モデルの選択 - 分類と応答モデルに適応するために、BERT、GPT-3などの事前学習済みの大規模言語モデルを選択します。
3.トレーニングデータの収集 - 法的なテキストコーパスを収集し、事実要素、法的概念クラス、および書き換えられた法的テキストでトレーニングするためのラベル付きデータセットを作成します。
4.分類モデルのトレーニング - 法的データセットでベースモデルをファインチューニングして、分類言語モデルを作成します。これにより、分類モデルは事実要素から法的概念クラスを抽出できるようになります。
5.インターフェースエージェントの実装 - コンポーネントとユーザーターミナル間の通信を処理するためのインターフェースエージェントのコードを開発します。
6.法的概念クラス表現言葉の生成 - 各クラスを表現するための正確な法的用語を決定します。リストまたはルールベースのシステムを使用します。
7.プロンプトテキストを法的テキストに変換 - 分類モデルを使用して、応答モデルへの入力となる法的テキストを生成します。
8.応答モデルのトレーニング - 法的テキストと目標の応答を使用して、再びベースモデルをファインチューニングして応答言語モデルを作成します。
9.コンポーネントの統合 - インターフェースエージェント、分類モデル、応答モデル、およびデータ構造を組み合わせて、データと指示をステップ間で正しく流す完全なシステムにします。
10.徹底的なテストの実施 - 各コンポーネントを個別にテストし、法的なプロンプトを使用してシステム全体をテストします。エラーを特定し、修正します。
11.モデルの継続的な改善 - 追加のトレーニングデータ、新しいトレーニング技術、およびモデルのパフォーマンスに関する実際の使用データを使用して、モデルを時間の経過とともに改善します。
これらの高レベルなステップは、そのコンピュータシステムを実現するための物理アルゴリズムを示す論理的なアプローチを概説しています。キーはコンポーネントの定義、適切なトレーニングデータの収集、適切なファインチューニング、すべてのコンポーネントの適切な統合、テストと改善を通じてエラーを特定して修正することです。
【0063】
以上の項目は、いずれも、現在の公知技術で実現可能なものばかりであり、このシステムの疑似プログラムに沿ったPython programの一例を図8に示す。
The Python program:
・ Initializes the AI components as classes
・ Defines relevant functions
・ Loads the pre-trained Classification and Response models
・ Contains a loop to continuously:
・ Get a prompt from the Interface Agent
・ Pass the prompt to the Classification model
・ Pass the legal text to the Response model
・ Send the response to the Interface Agent
・ Includes calls to train,integrate,test and retrain the models
【0064】
上記のインターフェースエージェントは、Python programで構成することが実際可能である。
以下、別の大規模言語モデルのClaudeによる回答(図9参照)。
The program:
・ Defines an InterfaceAgent class with functions for:
・ Getting input from the user terminal
・ Sending the input to the Classification LLM
・ Sending Classification LLM output to the Response LLM
・ Sending the Response LLM output to the user terminal
・ Initializes an agent instance
・ Contains a loop that continuously:
・ Gets a prompt from the user
・ Passes the prompt to the Classification LLM
・ Passes Classification LLM output to the Response LLM
・ Sends Response LLM output to the user
・ The calls to the Classification and Response models are abstracted into functions.
【0065】
インターフェースエージェントから受信したプロンプトテキストから、法律言語空間を構成する法律要素に対応する事実要素を抽出して、該プロンプトテキストで構成される言語空間を、法律要素を表す法律用語のみで構成される言語空間内でclassify(分類)するクラシフィケーション用大規模言語モデルの実現は、以下のようにすれば良い。これらの要素は、ChatGPTの内部構成と同じ構成を有するLLMであれば、実現可能である。
Claude AIからの回答:
TensorFlowやPyTorchなどのディープラーニングフレームワークを使用してください。これらのフレームワークは、複雑な機械学習モデルを構築するために必要なツールと抽象化がある。
ベースモデルとしてBERT、GPT-3、またはALBERTなどの事前学習済み言語モデルを使用してください。これらのモデルはすでに豊富な言語表現を学習しており、タスクに合わせてファインチューニングできる。
機械学習モデルのアーキテクチャを定義してください。エンコーダ・デコーダスタイルのモデルに、アテンションメカニズムが必要になる。
トレーニング用の大規模なラベル付きデータセットを収集してください。これには、ファクト要素と対応する法的要素を適切にラベル付けするための法的および自然言語処理の専門知識が必要。
トレーニングデータでベース言語モデルをファインチューニングし、必要な抽出およびクラシフィケーションタスクを実行してください。これには、勾配降下法とバックプロパゲーションを使用してモデルのパラメータを調整する作業が含まれる。
抽出された法的要素に基づいて法的知識グラフを生成するためのコードを実装してください。これはプログラム的に行うことも、知識グラフツールとのインターフェースを使用することもできる。
ビームサーチなどの最適化手法を使用して、モデルから最も可能性の高いクラスを生成。
追加のトレーニングデータや転移学習、マルチタスク学習などの手法を使用して、モデルを継続的に改善。
デプロイ後にモデルのパフォーマンスを監視し、実際の使用状況に基づいて改良してください。これにはエラーの検出と修正が含まれる。
名前付きエンティティ認識、関係抽出、構文解析などの他の自然言語処理技術を活用して、モデルを改善。
【0066】
Claude AIからの回答
大規模言語モデルを使用して、法的要素と用語に基づいて法的知識グラフを作成することは理論的に可能です。以下はいくつかの考慮事項です:
GPT-3、Megatron-Turing NLG、Switch Transformerなどの大規模言語モデルは、適切な例や指導が与えられると、一定程度の法的テキスト生成や法的推論が可能であることが示されています。
これらのモデルは多くの法的文書、契約書、裁判所の判決などを含む膨大なテキストでトレーニングされています。彼らは暗黙的に多くの法的用語、概念、フレームワークを学習しています。
特定の法的要素、用語、関係のみを含む法的ドメイン固有のデータセットで大規模言語モデルをファインチューニングすることで、法的知識グラフを生成するタスクに特化させることが可能かもしれません。
モデルは、与えられた事実のシナリオから関連する法的要素のみを抽出し、すべての情報を法的用語のみを用いて表現するよう指示されることが考えられます。十分なトレーニング例とファインチューニングにより、モデルは効果的にこれを学習する可能性があります。
【0067】
その法律概念クラスを表現する言葉を使って、前記プロンプトテキストを、法律要素のみから構成される法律テキストに書き換えて
Claude AIによる回答
実際には、オリジナルのプロンプトテキストの文脈を保持しつつ、法的用語のみを使用してシナリオテキストを構築することは実現可能。以下はいくつかの考慮事項です:
法的知識グラフは、法的用語で定義されたエンティティ、関係、およびプロパティを使用して情報を構造化された形式で表現することを意図しています。
システムが十分な法的知識と言語能力を持っている場合、自然言語で記述された事実シナリオを、法的要素と用語のみを使って等価なシナリオに再構築することが理論的に可能。
以下の条件を満たすシステムにとっては達成可能です:
包括的な法的用語の語彙と法的概念の理解があること
プロンプトテキストの事実要素を特定し、それらを対応する法的エンティティと関係をクラシフィケーションできること
それらの法的エンティティと関係を厳密に定義された法的用語のみを使用して表現できること
オリジナルのプロンプトの本質的な意味と文脈を保持しつつ、法的用語のみで構成される整合性のあるシナリオテキストを構築するための十分な言語生成能力を持っていること
事実シナリオを等価な法的シナリオに変換するためのトレーニングを十分に行い、法的専門家によって分析された例を用いた反復的な改善を行い、法的ドメインのテキストからの学習を継続的に行うことで、システムは最終的に必要な能力を獲得する可能性がある。
【産業上の利用可能性】
【0068】
本発明によるLLMによれば、LLMに付与する確立した個々の機能の新しい組み合わせが可能となり、個々の機能を奏するようにLLMを学習させることにより、本発明の目的を達成することができるLLMを確立することが可能となることの結果、法律分野への応用が困難であると言われるLLMを、法律分野に使用できることが期待できる。
【0069】
以上、本発明について、ChatGPTを例に説明したが、ChatGPTの基本LLMモデルの構成を有するLLMモデルとして様々なバリエーションが考えられるが、あるいはそのようなLLMモデルを、APIを介して協働させるシステムも様々なものが考えられるが、それらはいずれも、基本的には本発明にいう作用効果が奏されることが期待できるので、それらも本発明の範囲に入ることは論を待たない。
【図面の簡単な説明】
【0070】
図1】本発明の基本的な技術的思想の一部を示す概念図である。言語空間Aの一部を構成する言語空間サブドメイン(プロンプトテキストの言葉で構成されたサブドメイン)の構成要素言葉a,b,c・・・を、それぞれ、言語空間B内においてクラスで表現されたカテゴリーに分類分けすることを図解する概念図である。
図2】self-attention architectureを有するtransformerが内在するLLMの機能を最上位概念空間で示す概念図である。図2-aは、言語モデルを有するコンピュータがインプットとしてのプロンプトテキストを受けて、アウトプットとしてのアウトプットテキストを出力するプロセスを最上位概念的に図解するものである。図2-b、図2-cは、このコンピュータの言語モデルの内部構成を、構成面での最上位概念的に分解した概念図であり、図2-bはChatGPT以前、図2-cはChatGPT以後のものを概念的に示す。図2-cにおけるDecoderの大きな特徴は、アウトプットテキストは、言語モデルが出力したアウトプットテキストを入力とする点である。
図3】本発明のシステムの最上位レベルでの概念図である。各構成要素間のコミュニケーションは、クラウド経由、有線経由、いずれでも好適に採用できる。
図4】本発明のシステム(変形タイプ)の最上位レベルでの概念図である。このシステムは、1つのGPT-LLMであっても、マシンが物理的アドレスの異なる2つのマシンからアクセスされたときには、同時並行的に、要求タスクを行うことができる特性を活用したシステムの概念図である。各構成要素間のコミュニケーションは、クラウド経由、有線経由、いずれでも好適に採用できる
図5】本発明を構成するシステムにおける動作のフローチャートの概念図である。
図6図3のInterface Agent(APP)をプログラムユニットして有するAgentコンピュータの構成概念図である。
図7図4におけるPC-A,PC-Bのコンピュータの構成概念図である。
図8】本発明のプロセスを記述するPython programリストの一例である。
図9】インターフェースエージェントを実現するPython programリストの一例である。
図1
図2
図3
図4
図5
図6
図7
図8
図9