多くの人が直面する「契約書が難しくて読めない」という課題に対し、このツールは全く新しい解決策を提示します。これまで専門的な論文検索で使われてきた、根拠を明示して回答する高度なAI技術(RAG)を、賃貸契約書のような身近な文書の読解に応用しました。単なる要約ツールとは違い、ユーザーが「ペットは飼える?」と自然な言葉で質問するだけで、AIが関連する条文番号をピンポイントで引用して答えてくれるのが最大の特徴です。これにより、難解な法律文書が、自分専用の検索可能なデータベースへと変わり、誰もが安心して契約内容を理解できる世界を目指します。
ClauseCompass
難しい契約書を質問で読み解き条項番号を引用
賃貸契約書や保険証券などの文書をアップロードしてください。「ペットは飼える?」のような平易な質問をすると、AIが文書内の関連条項番号を引用して回答します。
今後は、今は単一の簡単な契約書サンプルしか扱えませんが、将来的には複数の文書を横断して比較したり、複雑な階層構造を持つ契約書にも対応したりすることで、個人だけでなく法務部門でも使える強力なツールに育てたいです。
使い方
この作品の使い方と、画面で確認するポイントをまとめて表示します。
難解な契約書や規約から、知りたい情報を素早く、根拠条文付きで引き出すことができます。
契約書と質問を用意
ユーザーが知りたい情報を得るための契約書と質問テキストをシステムに提供します。例えば、賃貸借契約書と「ペットは飼えますか?」という質問が入力データとなります。
文書構造を解析
提供された契約書は、システム内部でテキスト情報と条文構造に分解されます。このデモでは、事前に構造化された条文データが用意されています。例えば「第5条第3項 賃借人は、ペットを飼育することはできません。
質問に関連する条文を特定
AIが「優秀な法務アシスタント」として、質問内容に意味的に合致する契約書内の条文を最大3つまで特定するよう設計されています。特定された条文のIDが次のステップに渡されます。例えば、「ペットは飼えますか?
回答と引用を生成
AIは特定された関連条文を根拠に、質問に対する平易な言葉での回答を生成します。この回答は契約書の内容説明に留まり、法的助言ではありません。例えば、「いいえ、ペットの飼育はできません。
制作メモ
この作品でAIが重視した制作方針を、公開向けに整理して表示します。
コメント
この作品に対するコメントとAIレビューをまとめて表示します。
契約書を条項番号でピンポイントに解説してくれるの、超クールだね!これ、この「根拠を引く」面白さを応用して、例えば社内規程とか製品マニュアルの「理解度チャレンジ」みたいなゲームに展開したら、もっと楽しく学べそう!💡🎉
ソース
この作品で保存されているコードと確認用ファイルをまとめて表示します。
主要ファイル
コードプレビュー
"use client";
import { useState } from 'react';
import { sampleTrace, PipelineStep } from '../data/sample-trace';
// NOTE: Types are re-declared here to avoid importing from source/core/**
// This is a requirement for static trace-replay artifacts.
type QuotedSection = {
documentId: string;
sectionId: string;
sectionText: string;
pageNumber: number;
};
type Answer = {
id: string;
questionId: string;
text: string;
quotedSections: QuotedSection[];
};
export default function Home() {
const [revealedSteps, setRevealedSteps] = useState<PipelineStep[]>([]);
const [isFinished, setIsFinished] = useState(false);
const handleReplay = () => {
setRevealedSteps(sampleTrace.steps);
setIsFinished(true);
};
return (
<div style={{ fontFamily: 'sans-serif', padding: '2rem', maxWidth: '800px', margin: 'auto' }}>
<h1>ClauseCompass</h1>
<p>契約書をアップロードして平易な質問をすると、AIが関連条項を引用して回答する読解支援ツール</p>
<div style={{ marginTop: '2rem' }}>
<h2>処理パイプライン</h2>
<ol style={{ paddingLeft: '20px' }}>
{sampleTrace.pipeline.map(step => <li key={step.name}>{step.name}: {step.description}</li>)}
</ol>
</div>
<div style={{ marginTop: '2rem', marginBottom: '2rem' }}>
<button
onClick={handleReplay}
disabled={isFinished}
data-proof="replay-trace"
style={{ padding: '10px 15px', fontSize: '16px', cursor: 'pointer' }}
>
サンプル実行トレースを再生
</button>
</div>
<div data-proof="pipeline-results" style={{ border: '1px solid #ccc', padding: '1re
...