Claude Media
Claudeで判例検索の結果を争点別に整理する手順 — 原文照合まで

Claudeで判例検索の結果を争点別に整理する手順 — 原文照合まで

裁判所の判例検索で取った判決PDFをClaudeに渡し、事実関係・争点・結論の表にする手順です。掲載範囲の限界と、citationsによる原文照合も扱います。

裁判所の判例検索で見つけた判決PDFは、読み切るだけで時間がかかります。Claudeに渡すと、事実関係・争点・裁判所の判断・結論を一覧表にまとめさせられます。ただし、表の中身が原文どおりかを確かめる工程を抜くと使えません。この記事では、PDFを取り出すところから、争点別の表づくり、citationsを使った原文照合までを順に説明します。

判例検索システムから何が取れるか

裁判所の判例検索は、判決等を6つのカテゴリーに分けて掲載しています。最高裁判所、高等裁判所、下級裁判所(速報)、行政事件、労働事件、知的財産事件の6つです。1件の判決が複数のカテゴリーに属することもあります。

検索結果の一覧には、事件番号・事件名・裁判年月日・裁判所名などが並び、右列の「全文PDF」から判決の全文を開けます。Claudeに渡す素材は、この全文PDFです。

検索条件の指定には癖があります。

  • 事件番号は、元号・年・符号・番号の順に入れる。元号だけ、年と番号だけといった指定はエラーになる
  • 全文・判示事項・裁判要旨の欄は、全角スペースで区切るとOR検索になる。AND検索にしたいときは、+を押して出る入力欄に入れる
  • 事件名・参照法条の欄は、複数語を全角スペースで区切り、ラジオボタンでANDかORを選ぶ

「該当する裁判例がありませんでした。」と出た場合は、その判決が掲載されていないという意味です。入力の誤りと掲載外は、この表示だけでは区別できません。

渡す前に確認しておく掲載上の限界

判例検索の説明ページには、各カテゴリーに共通する注意書きがあります。Claudeの出力を読むときの前提になるので、先に押さえておきます。

注意書きの内容整理への影響
すべての判決等が掲載されているわけではない整理への影響検索で出なかった判決の不在までは言えない
当事者の表示を省略し、固有名詞を「A」「B」「C」等の記号に置き換えたものがある整理への影響表の当事者欄も記号のままになる。原文とは完全に一致しないことがある
画像・図表は全文中か添付文書欄に表示されるが、省略されている場合もある整理への影響図表に依存する認定は表に載らないことがある
下級裁判所(速報)では、判決等の別紙を原則として省略している整理への影響別紙に書かれた計算や目録は読めない
最高裁判所の判示事項のうち、裁判要旨欄に記載のないものは暫定的で、確定した段階で変更される場合がある整理への影響要旨欄の空いた判決は、判示事項を鵜呑みにしない

6カテゴリーのうち、記載の範囲が最も狭いのは下級裁判所(速報)です。各地の下級裁判所が「主要判決速報」で紹介したものが中心で、網羅的な収録ではありません。

つまり、Claudeに「この論点の裁判例を全部挙げて」と頼んでも、判例検索システム上の掲載分すら尽くせません。Claudeにさせるのは、人が検索で拾った判決を読み込ませて整理させる作業に限ります。

手順1: 判決PDFを手元に集める

検索結果の「全文PDF」をダウンロードします。ファイル名は、事件番号と裁判年月日が分かる形に付け替えておくと、後で表と突き合わせやすくなります。

mkdir -p hanrei && cd hanrei
mv ~/Downloads/judgment.pdf saikou_R3_ju_1234.pdf
ls -l

ファイル名は事件ごとに揃えます。このあと「どのPDFの何ページか」を答えさせるとき、名前が揃っていると照合が楽です。

Claude.aiのチャットには、1件ずつでも複数件でも添付できます。サポート記事によると、チャットへのアップロードは1ファイル500MBまで、1チャットに最大20ファイル、PDFは1000ページまでです。判例集の抜粋のような長いPDFでも、ページ数が上限に当たることは少ないはずです。

PDFの解析にはページ数の境目があります。100ページ以下のPDFでは文字に加えて図表や画像も解析されますが、101〜1000ページでは文字だけが対象になります。長い判決の別紙に図表があるときは、該当ページだけを切り出して渡すほうが確実です。PDFの上限と解析範囲の詳細はPDFの読み込みと上限の解説にあります。

テキスト層のないPDFは先に弾く

PDFを開いて、本文の文字をマウスで選択できるか確かめます。選択できない場合は、画像だけのスキャンです。citationsの仕様でも、抽出できる文字のないスキャンPDFは引用の対象になりません。判例検索システムから取った全文PDFがどちらの形かは、ファイルごとに違い得ます。表づくりの前に1件ずつ見ておくのが安全です。

手順2: 争点別の表にまとめさせる

最初のメッセージで、役割と出力の形、守ってほしい禁止事項をまとめて渡します。次のような文面が出発点になります。

添付した判決PDF(複数)を、争点別に整理してください。
 
出力は次の列の表にします。
事件(ファイル名) / 事実関係 / 争点 / 裁判所の判断 / 結論 / 根拠ページ
 
条件:
- 判決文に書かれていないことは補わない
- 争点は、判決文の「争点」「当裁判所の判断」の見出しの語を使う
- 裁判所の判断は、判決文の表現を短く言い換えるだけにする
- 根拠ページは、PDFビューアーで表示されるページ番号で書く
- 読み取れない箇所は「読み取れず」と書き、推測で埋めない

ポイントは3つです。

  • 根拠ページを列に入れる。サポート記事によると、ページを指すときは文書に印字されたページ番号でなく、PDFビューアーで表示されるページ番号を使います。ここを指定しないと、判決文中の頁表記と取り違えます
  • 争点の語を判決文から取らせる。Claudeが自分の言葉で争点を立てると、判決が実際に判断した論点とずれることがあります
  • 「読み取れず」を許す。空欄を埋めさせない指示がないと、もっともらしい文が入ります

1件ごとに別のメッセージで渡す方法と、複数件を一度に渡して横並びにする方法があります。複数件を渡すのは、同じ争点で結論が分かれた判決を比べたいときに向きます。件数が多いときは、1件ずつ表にしてから、別のメッセージで「この3つの表を、争点を軸に1つにまとめて」と頼むほうが、行の取り違えを防げます。

出力の確認で見るところ

表が返ってきたら、次の順に見ます。

  1. 事件名と事件番号が、PDFの冒頭と一致しているか
  2. 当事者の欄が、PDFの表記(記号に置換された表記)のままか。実名らしき名前が入っていたら、判決文にない情報が混ざっている
  3. 「結論」の列が、判決の主文と合っているか
  4. 根拠ページを開いて、その記述が実際に書かれているか

4番目が抜けると、整理の意味がなくなります。次の手順で、この確認を機械的にやらせる方法を説明します。

手順3: citationsで原文の該当箇所を引かせる

出力を原文と1文ずつ突き合わせたいなら、APIのcitationsが向いています。Anthropicのドキュメントによると、citationsを有効にすると、回答の各主張に、裏付けとなる原文の箇所(引用文とページ範囲)が付いて返ります。

PDFの場合、本文は文(センテンス)単位に区切られ、Claudeは1文、または連続する複数文を引用できます。引用にはページ番号の範囲が付き、ページ番号は1始まりです。引用文のcited_textは出力トークンに数えられません。

リクエストの形は次のとおりです。citations.enabledをtrueにするのが要点で、公式ドキュメントの例に沿っています。

PDF_BASE64=$(base64 saikou_R3_ju_1234.pdf | tr -d '\n')
 
curl https://api.anthropic.com/v1/messages \
  -H "content-type: application/json" \
  -H "x-api-key: $ANTHROPIC_API_KEY" \
  -H "anthropic-version: 2023-06-01" \
  -d '{
    "model": "claude-opus-5-5",
    "max_tokens": 1024,
    "messages": [{"role": "user", "content": [
      {"type": "document",
       "source": {"type": "base64",
                  "media_type": "application/pdf",
                  "data": "'"$PDF_BASE64"'"},
       "title": "最高裁R3(ju)1234",
       "context": "裁判所の判例検索から取得した全文PDF",
       "citations": {"enabled": true}},
      {"type": "text",
       "text": "争点と結論を、判決文から引用して述べてください。"}
    ]}]
  }'

titleとcontextは、モデルには渡されますが引用の対象にはなりません。titleは長さに制限があるため、事件番号や取得元のメモはcontextに入れます。上の事件名や番号は書式の例で、実在の事件ではありません。

返ってくる応答は、複数のテキストブロックに分かれます。各ブロックに、PDFなら次のような引用が付きます(公式ドキュメントの応答例に沿った形です)。

{
  "type": "text",
  "text": "…(Claudeの記述)…",
  "citations": [{
    "type": "page_location",
    "cited_text": "…(判決文のその箇所)…",
    "document_index": 0,
    "document_title": "最高裁R3(ju)1234",
    "start_page_number": 5,
    "end_page_number": 6
  }]
}

end_page_numberは含まない値(排他)です。この例は5ページの1ページ分を指します。アプリ側では、cited_textをPDFから検索した結果と照らし合わせる処理を入れておくと、引用の捏造に気づけます。citationsは「どこから引いたか」を機械可読にしますが、その箇所の読み方が正しいかまでは保証しません。

citationsで引っかかりやすい点

条件内容
構造化出力との併用内容citationsを有効にした文書とoutput_config.formatを同じリクエストに入れると400エラー
有効化の範囲内容1回のリクエスト内では、全文書で有効か全文書で無効かのどちらか
画像の引用内容画像は引用できない。PDF内の図表やスキャン画像は対象外
出力の形内容JSONスキーマで表を固定したい用途とは両立しない

表をJSONで取り出したいときは、citations付きで文章を返させ、アプリ側で整形します。スキーマ固定の出力と同時に使う前提では設計できません。

手順4: 引用と表を人が突き合わせる

引用が付いても、最後に判例を読むのは人です。突き合わせの手順を決めておくと、確認が属人化しません。

  1. 表の各行について、根拠ページをPDFで開く
  2. cited_textが、そのページに実在する文かを確かめる
  3. 「裁判所の判断」の列が、引用箇所の言い換えとして逸脱していないか読む
  4. 結論が、主文と一致しているかを最後に見る
  5. 判例集や別の公的情報でも確認が必要な判決は、表に印を付けておく

Claudeに確認を手伝わせるなら、「この表の各行を、根拠ページの引用文と並べて、食い違いがあれば指摘して」と別メッセージで頼む方法があります。確認作業を二重にできますが、これも整理の一部であって、人の確認に代わるものではありません。

法的な判断の根拠として使う場合は、弁護士など資格を持つ専門家が原文で確認する前提で運用します。Claudeの表は、読む順番を決めるための地図として使う位置づけです。

運用で迷いやすい点

実名や機微な情報は含まれるか

判例検索の注意書きによると、当事者の表示部分は掲載を省略し、固有名詞は「A」「B」「C」等の記号に置き換えている場合があります。置き換えは「あるものがある」という書きぶりで、全件の保証ではありません。判決文に出てくる固有名詞は、Claudeの出力や社内資料に載せる前に、必要かどうかを一度見てください。

同じ論点の判決をいくつ並べるべきか

件数に決まりはありません。一覧に載せる判決が増えるほど、表の確認も増えます。最初は最高裁判決を1〜3件に絞り、表の形を決めてから高裁・地裁の判決を足すと、列の設計を直す手間が少なく済みます。

判例集の収録と検索システムの収録は同じか

同じではありません。判例検索の説明では、最高裁判所のカテゴリーに、最高裁判所の民事判例集・刑事判例集、裁判集民事・裁判集刑事に登載された判決等が含まれると書かれています。高等裁判所は高等裁判所の判例集に登載された分です。判例集に載った判決が検索システムに載るとは限りません。個別の判決が見つからないときは、判例集や他の公的データベースで探す必要があります。

まとめ

判例検索の結果をClaudeで整理するときは、素材の限界を前提に置きます。検索システムの掲載は網羅的でなく、当事者名は記号化され、別紙や図表が省かれる場合もあります。そのうえで、表には根拠ページを必ず入れ、APIのcitationsで引用元を機械的に取り出し、人がPDFと突き合わせます。

文書を扱う他の例は、登記簿謄本のPDFを時系列の表にする手順や、英語論文PDFの読み方にあります。法務の業務全体での使い方は、Claudeの法務活用ガイドに整理しています。

この記事を共有:XはてブLinkedIn