AIが司法試験に「本当に」受かるとき――自己検証という発明
- Seo Seungchul

- 1月16日
- 読了時間: 11分
更新日:1月20日

シリーズ: 論文渉猟
◆今回の論文:Andrew Shin, "Self-Verification is All You Need To Pass The Japanese Bar Examination" (arXiv, 2026年1月6日)
概要:大規模言語モデル(LLM)に日本の司法試験短答式を解かせる研究。既存の手法では問題を真偽判定に分解して学習させていたが、本研究では試験の元の形式と採点基準を忠実に再現したデータセットを構築。「自己検証」機能を組み込んだファインチューニングにより、2024年度試験で合格点(93点)を上回る96点を達成。複数エージェントを協調させる方式より、単一モデル+自己検証の組み合わせが高い性能を示した。
「AIが司法試験に合格した」というニュースを聞くたびに、少し引っかかることがあります。それは「本当に同じ条件で受けたのか?」という素朴な疑問です。多くの研究では、問題を分解したり、採点方式を変えたり、何らかの形で「試験の側を変えて」成果を出してきました。
今回ご紹介する研究は、その常識を覆すものです。慶應義塾大学の研究者が、日本の司法試験短答式を「そのまま」の形式で、「そのまま」の採点基準で、合格ラインを突破するAIシステムを開発しました。その鍵となったのは、複雑なマルチエージェント構成でも、膨大なデータでもなく、「自己検証(Self-Verification)」というシンプルな仕組みでした。
AIに自分の答えをもう一度見直させる。たったそれだけのことが、なぜ劇的な効果を生んだのか。そして、問題を「分解する」アプローチがなぜうまくいかなかったのか。富良野とPhronaが、法律知識とAI技術の交差点で何が起きているのかを探ります。
「そのまま」の形式で挑むということ
Phrona:この論文のタイトル。「Self-Verification is All You Need」ってあのTransformerの有名な論文「Attention Is All You Need」をもじってますよね。でも読んでみると、たしかにそう言いたくなる内容だなって。
富良野:司法試験の短答式って、複数の命題を組み合わせて判断する形式が多いんですよ。たとえば「アは正しいか誤りか、イは正しいか誤りか、ウは正しいか誤りか」を判断して、「212」みたいに答える。
Phrona:一つ一つは正誤判定なのに、全体として一つの回答になるわけですね。
富良野:そう。で、既存の研究、特にJBE-QAというデータセットでは、この問題を「分解」していたんです。アの命題を単独で「正しい/誤り」と判定させ、イも単独で、ウも単独で。
Phrona:一見、学習しやすそうに見えますよね。
富良野:実際、その方式での正答率は上がる。ところが、元の試験形式に戻すと、全然ダメなんですよ。
Phrona:ああ、それは面白い逆転ですね。部品は作れるのに、組み立てができない。
富良野:この論文の著者は、そこに着目した。問題を分解せず、試験の形式をそのまま維持したデータセットを作って、それで学習させた。
Phrona:「試験をAIに合わせる」のではなく、「AIを試験に合わせる」という発想の転換。
自己検証という仕掛け
富良野:で、ここからが本題なんですが、ファインチューニングだけじゃなくて、「自己検証」というステップを入れてる。
Phrona:自己検証って、どういうことをするんですか?
富良野:まず普通に回答を生成させる。で、その回答を問題文と一緒にもう一回モデルに見せて、「この回答、本当に合ってる?」と聞く。
Phrona:同じモデルに、なんですね。
富良野:そこがポイントで、別のモデルを持ってくるわけじゃない。同じパラメータを持つモデルに、違うプロンプトを与える。生成用と検証用で、役割を切り替えるんです。
Phrona:鏡を見るような感じかしら。自分の書いた答案を、ちょっと時間を置いてから見直すみたいな。
富良野:いい喩えですね。しかも検証用のプロンプトには「明らかに間違っている場合のみ修正せよ。正しければそのまま出力せよ」と書いてある。
Phrona:過剰修正を防いでいるんですね。
富良野:これが効く。特に、複数の命題を組み合わせた回答で、一箇所だけ間違えているようなケース。司法試験の採点って、部分点があるんですけど、その仕組みが厳しくて。
Phrona:どう厳しいんですか?
富良野:たとえば5問がグループになっていて4点満点の場合、4問正解なら2点もらえるけど、3問正解だと0点になる。
Phrona:半分以上正解しても0点。それは厳しい。
富良野:だから「惜しいミス」を減らすことが、点数に直結する。自己検証は、まさにそこに効いている。
マルチエージェントは万能ではない
Phrona:最近よく聞く「マルチエージェント」のアプローチは試したんですか?
富良野:試してます。検索係、検証係、知識抽出係、回答係という4つのエージェントに役割分担させて、協調させる方式。
Phrona:それぞれ専門家がいて、議論して答えを出すようなイメージですね。
富良野:ところが、結果は散々だった。単一モデル+自己検証より、はるかに点数が低い。
Phrona:なぜでしょう?
富良野:論文の著者は、エラーの伝播を挙げてますね。一つのエージェントがミスすると、それが次のエージェントに渡されて、最終的な回答に影響する。
Phrona:リレーでバトンを落とすと、そこからの遅れは取り戻せない。
富良野:しかも面白いのは、エージェントごとに別々にファインチューニングしたバージョンは、全員同じモデルを使うバージョンより、さらに悪かった。
Phrona:専門家を増やしたら、むしろ悪化した?
富良野:著者の解釈では、共有された表現空間がなくなるから、エージェント間の出力を統合しにくくなる。
Phrona:各自が独自の言葉遣いで話し始めて、意思疎通がうまくいかなくなる、みたいな。
富良野:法律の試験って、論点が複雑に絡み合っているので、一貫した視点で全体を見る能力が要求される。それが複数のエージェントに分散すると、かえって失われるんでしょうね。
「分解」が失敗する理由
Phrona:JBE-QAの分解アプローチが、元の試験形式でうまくいかなかった理由、もう少し掘り下げてもらえますか?
富良野:2,770問という、この論文の6倍近いデータ量があるのに、点数では負けている。
Phrona:量より質、ということでしょうか。
富良野:いや、質というより「構造」の問題だと思う。分解して学習させると、「この命題は正しいか誤りか」という二項分類に最適化される。
Phrona:それ自体は間違っていないですよね。
富良野:個々の判断は正しくなる。でも、元の試験では「アが誤りでイが正しくてウが誤り」という複合的な判断が一つの回答になっている。その「組み合わせとしての正しさ」を学習していない。
Phrona:部品の検品は完璧なのに、組み立て工程がない工場、みたいな。
富良野:そうそう。しかも司法試験の問題って、命題間に論理的な関係があることも多い。「アが正しいならイは必然的に誤り」みたいな。分解するとその関係性が見えなくなる。
Phrona:コンテキストが失われる。
富良野:この論文では、元の形式を保ったまま学習させることで、その関係性も含めて学習できたんじゃないかと。
知識の「引き出し方」
Phrona:論文の中で興味深い仮説が出てきますよね。モデルにはすでに法律知識があって、ファインチューニングと自己検証は、その知識を「引き出す触媒」として機能している、と。
富良野:そう。わずか460問のデータで合格ラインを超えたのは、ゼロから法律を教えたからじゃない。
Phrona:もともと知っていたことを、正しく使えるようにした。
富良野:GPT-4.1がベースモデルなんですけど、事前学習の段階で膨大なテキストを読んでいるわけで、その中には法律に関する情報も含まれている。
Phrona:ただ、それを司法試験の形式で出力する方法を知らなかった。
富良野:フォーマット固有のファインチューニングが、その橋渡しをした。で、自己検証が、知識を使う際の整合性を高めた。
Phrona:知識があっても、使い方が下手だったら宝の持ち腐れ、ということですね。
富良野:人間でもそうじゃないですか。勉強してて「分かったつもり」だったのに、問題形式が変わると解けない、みたいな。
Phrona:ある、ありますね。
富良野:この研究は、AIにおいてもその現象が起きていて、しかも適切な訓練で克服できることを示している。
試験形式と評価の誠実さ
Phrona:この研究が他と違うのは、試験を「改変しなかった」ことですよね。
富良野:ここが誠実なところで。既存研究の多くは、どこかで評価基準を変えている。問題を分解したり、採点方式を単純化したり。
Phrona:そうすると「AIが司法試験に合格した」と言えるのかどうか、曖昧になる。
富良野:この論文のタイトルに「Pass The Japanese Bar Examination」とあるのは、本当にそう言える初めての例だから、という自負がある。
Phrona:合格点93点に対して、最高96点を取った。
富良野:しかも各科目で40%以上という足切りもクリアしている。憲法、民法、刑法それぞれで。
Phrona:条件を全部満たした上での合格。
富良野:評価の枠組みを変えずに勝負した、というのは重要なポイントだと思います。
残された問い
Phrona:この研究の限界についても触れておきましょうか。
富良野:著者も書いてますけど、短答式だけなんですよね。論文式、つまり論述問題は対象外。
Phrona:論述は全然違う能力が要りますもんね。
富良野:法的な論証の構成、判例の引用の仕方、論理の展開。短答式の正誤判定とは別次元。
Phrona:今後の課題として挙げられていますね。
富良野:あと、ベースモデルがGPT-4.1という非常に強力なモデルであることも考慮が必要。弱いモデルでは同じことができるか分からない。
Phrona:知識が少なければ、引き出す触媒があっても出てこない。
富良野:それでも、この研究が示したことの意義は大きいと思う。「形式を変えない」「自己検証を入れる」という方針が、専門領域での実用的な成果に繋がりうることを証明した。
Phrona:複雑なシステムを組むより、シンプルな仕組みの方が効くこともある。
富良野:マルチエージェントが万能ではないという発見も含めて、示唆に富む論文だと思います。
ポイント整理
日本の司法試験短答式において、問題形式や採点基準を改変せずにAIが合格ラインを突破した初めての事例である。2024年度試験で93点の合格点に対し、最高96点を達成した。
既存研究(JBE-QA)では問題を真偽判定に分解して学習させていたが、この方式では分解後の正答率は上がっても、元の試験形式での成績は向上しなかった。データ量が6倍近く多いにもかかわらず、本研究より低い点数にとどまった。
本研究では試験の形式を忠実に再現したデータセット(460問)を作成し、ファインチューニングを実施した。複数命題の組み合わせ判断という元の構造を維持したことが、高い性能に寄与した。
「自己検証」は、同じモデルに対して異なるプロンプト(生成用・検証用)を使い、回答の一貫性を確認する手法である。追加の推論コストはわずか1回のフォワードパスのみで、安定した性能向上が得られた。
検証用プロンプトには「明らかに間違っている場合のみ修正」という制約を入れることで、過剰修正を防止した。これにより、惜しいミスの低減と部分点の獲得に効果を発揮した。
マルチエージェント方式(検索・検証・抽出・回答の4エージェント構成)は、単一モデル+自己検証より性能が劣った。エラーの伝播と、エージェント間の表現空間の不一致が原因と考えられる。
エージェントごとに別々のファインチューニングを行うと、全員同じモデルを使う場合よりさらに性能が低下した。共有された表現空間の重要性が示唆される。
司法試験の採点は厳格な部分点制を採用しており、たとえば5問中3問正解でも0点になるケースがある。このため、正答率と試験点数が乖離しやすく、「惜しいミス」を減らすことが極めて重要である。
著者は、ファインチューニングと自己検証が「知識の触媒」として機能している可能性を指摘している。事前学習で獲得した法律知識を、試験形式に合わせて引き出す能力を向上させた。
本研究の限界として、短答式のみを対象としており論述式は未検証であること、強力なベースモデル(GPT-4.1)に依存していることが挙げられる。
キーワード解説
【大規模言語モデル(LLM:Large Language Model)】
膨大なテキストデータで訓練され、文章生成や質問応答が可能なAIモデル
【ファインチューニング(Fine-tuning)】
事前学習済みのモデルを特定のタスク向けに追加学習させる手法
【自己検証(Self-Verification)】
モデル自身が生成した回答を、同じモデルで再評価・修正するプロセス
【JBE-QA】
日本の司法試験問題を真偽判定形式に分解して構築されたデータセット
【マルチエージェント(Multi-Agent)】
複数のAIエージェントが協調して問題を解決するアーキテクチャ
【短答式(択一式)試験】
複数の選択肢から正解を選ぶ形式の試験。日本の司法試験では憲法・民法・刑法の3科目で実施
【形式忠実性(Format Faithfulness)】
元の課題形式を改変せずに維持すること。本研究では評価の妥当性を担保する重要な要素
【部分点制度】
複数問題がグループ化され、正答数に応じて段階的に点数が付与される採点方式
【プロンプト設計】
AIモデルに与える指示文を最適化する技術
【事前学習(Pre-training)】
大量のデータでモデルの基礎的な言語能力を訓練する初期段階