ai-due-diligence-copilot
AI Due Diligence Copilot
AI Due Diligence Copilot は、企業の提出書類(10-K / 10-Q)を取り込み、構造化された財務情報を抽出し、裏付けとなるエビデンスを取得し、利用可能な最も信頼性の高い情報源を用いてアナリストの質問に回答する、エンドツーエンドの財務文書分析システムです。
多くのAIアプリケーションが完全にLLMに依存しているのとは異なり、このシステムは各質問をインテリジェントに以下のいずれかにルーティングします:
PostgreSQLに保存された構造化財務データ
Retrieval-Augmented Generation(RAG)パイプラインを通じて取得された提出書類エビデンス
両方の組み合わせ
信頼性を向上させるため、生成された回答は、主張が取得されたエビデンスによって裏付けられているかどうかをチェックする、PyTorchベースのグラウンディッドネス分類器を使用して評価できます。
このプロジェクトの目的
財務アナリストは、以下のような回答を頻繁に必要とします:
事実的に正確
説明可能
ソース文書にトレース可能
従来のLLMベースのアシスタントは、数値のハルシネーションを起こしたり、裏付けのない主張をしたりする可能性があります。
このプロジェクトは、以下の方法でこの問題に対処します:
定量的推論にSQLを使用
定性的な文書理解にRAGを使用
エビデンスの裏付けを評価するためのグラウンディッドネス評価を使用
有料APIなしでも完全に機能しつつ、オプションのClaudeベースの回答合成をサポート
より詳細な実装内容と設計上の決定については、以下を参照してください:
ARCHITECTURE.mdRelated MCP server: SEC-MCP
機能
文書取り込み
財務提出書類(
.txt、.pdf、.md)のアップロード自動文書クリーニングとチャンキング
提出書類メタデータの追跡
永続的なPostgreSQLストレージ
構造化財務メトリクス抽出
現在、以下を抽出して保存します:
収益
営業利益率
純利益
研究開発費
現金及び現金同等物
これらのメトリクスはPostgreSQLに保存され、定量的分析のために直接クエリできます。
インテリジェントクエリルーティング
システムは、質問が以下のいずれかを通じて回答されるべきかを自動的に判断します:
構造化SQL検索
文書検索(RAG)
SQL + RAG
質問 | ルート |
営業利益率の変化はどうでしたか? | SQL |
同社が直面するサプライヤーリスクは何ですか? | RAG |
利益率はどのように変化し、その理由は? | SQL + RAG |
MCPツール統合
Model Context Protocol(MCP)ツールを実装します:
会社検索
財務比率計算ツール
文書検索
グラウンディッドネス評価
軽量なPyTorch分類器が、生成された主張が取得されたエビデンスによって裏付けられているかどうかを評価します。
出力には以下が含まれます:
グラウンディッドネススコア
主張レベルのサポート分類
信頼度インジケーター
評価ハーネス
以下を測定する組み込みの評価フレームワーク:
ルーティング精度
検索関連性
グラウンディッドネス
レイテンシ
インタラクティブダッシュボード
以下のためのWebインターフェース:
提出書類のアップロード
質問応答
ルーティング決定の表示
ツール使用状況の表示
グラウンディッドネススコアの表示
システムアーキテクチャ
Financial Filing
│
▼
Document Ingestion
│
▼
Chunking
│
▼
Metric Extraction + Vectorization
(TF-IDF + SVD)
│ │
▼ ▼
PostgreSQL Vector Store
▲ ▲
│ │
User Query ───► Query Router ───┘
│
┌──────────┴──────────┐
▼ ▼
SQL Financial Route RAG Retrieval
▼ ▼
Financial Metrics Evidence Search
└──────────┬──────────┘
▼
Answer Generation
▼
Groundedness Evaluation
▼
Final Response回答生成モード
1. オフライン / ローカルモード(デフォルト)
APIキーは不要です。
システムは以下を使用して質問に回答します:
PostgreSQL財務データ
RAG検索
抽出型回答生成
PyTorchグラウンディッドネス評価
このモードは開発およびテスト中に使用されました。
2. Claudeアシストモード(オプション)
Anthropic APIキーが提供されている場合:
ANTHROPIC_API_KEY=your_api_key_here取得されたエビデンスをClaudeに渡して、自然言語での回答生成を行うことができます。
パイプライン:
User Query
↓
Retrieval / SQL
↓
Claude
↓
Groundedness Evaluation
↓
Final ResponseClaudeは回答合成にのみ使用されます。
システムは以下についてはClaudeに依存しません:
検索
クエリルーティング
財務計算
グラウンディッドネススコアリング
APIキーがない場合、アプリケーションは自動的にローカルの抽出型パイプラインにフォールバックします。
技術スタック
バックエンド
技術 | 目的 |
FastAPI | APIフレームワーク |
Uvicorn | ASGIサーバー |
Pydantic | データ検証 |
データベース
技術 | 目的 |
PostgreSQL | プライマリデータベース |
SQLAlchemy | ORM |
機械学習
技術 | 目的 |
PyTorch | グラウンディッドネス分類器 |
Scikit-Learn | 検索パイプライン |
NumPy | 数値演算 |
検索
コンポーネント | 目的 |
TF-IDF | 文書ベクトル化 |
Truncated SVD | 密な意味表現 |
Cosine Similarity | 検索ランキング |
AIツール
コンポーネント | 目的 |
MCPツール | 構造化ツールアクセス |
クエリルーター | ルート選択 |
グラウンディッドネス評価器 | エビデンス検証 |
プロジェクト構造
diligence-copilot/
│
├── app/
│ ├── db/
│ ├── ingestion/
│ ├── ml/
│ ├── rag/
│ ├── mcp_tools/
│ └── main.py
│
├── data/
│
├── scripts/
│ └── setup_postgres.sql
│
├── tests/
│
├── Dockerfile
├── docker-compose.yml
├── requirements.txt
├── ARCHITECTURE.md
└── README.mdインストール
前提条件
Python 3.11+
PostgreSQL 16+(PostgreSQL 17.11でテスト済み)
Git
1. リポジトリのクローン
git clone <repository-url>
cd diligence-copilot2. 仮想環境の作成
Windows
python -m venv venv
.\venv\Scripts\Activate.ps1Linux / macOS
python -m venv venv
source venv/bin/activate3. 依存関係のインストール
CPU専用のPyTorchをインストール:
pip install torch --index-url https://download.pytorch.org/whl/cpuプロジェクトの要件をインストール:
pip install -r requirements.txt4. PostgreSQLの設定
実行:
psql -U postgres -f scripts/setup_postgres.sqlこれにより以下が作成されます:
diligence_copilotデータベースdiligence_appユーザー必要な権限
5. グラウンディッドネスデータセットの構築
python -m app.ml.build_dataset6. グラウンディッドネス分類器のトレーニング
python -m app.ml.groundedness7. アプリケーションの起動
uvicorn app.main:app --reloadアプリケーション:
http://localhost:8000APIドキュメント:
http://localhost:8000/docsDocker
docker-compose up --build検証ウォークスルー
テスト提出書類の作成
Total revenue for fiscal year 2024 was $500 million.
Operating margin for fiscal year 2024 was 12.5%, compared to 10.1% in fiscal year 2023.
The company faces significant risk from a single supplier located in Vietnam.提出書類のアップロード
以下を使用:
ティッカー:TEST
会社名:Test Company
会計期間:FY2024
出力例:
Done: 1 chunks, 3 financial metrics extracted.財務推論のテスト
質問:
What was the change in operating margin?出力例:
operating_margin moved from 10.1 (FY2023)
to 12.5 (FY2024), a change of 23.76%.ルート:
SQLツール:
financial_ratio_calculator検索のテスト
質問:
What supplier risks does the company face?出力例:
The company faces significant risk from a single supplier located in Vietnam.注:単一のチャンクに収まる非常に小さな提出書類の場合、検索は単一の文ではなくチャンク全体を返すことがあります。
ルート:
RAG評価の実行
python -m app.eval.run_eval結果
以下についてエンドツーエンドで検証済み:
文書取り込み
財務メトリクス抽出
PostgreSQL永続化
クエリルーティング
SQLベースの財務推論
検索ベースのリスク分析
グラウンディッドネス評価
FastAPIデプロイ
サンプル評価結果
メトリクス | 値 |
ルート精度 | 1.00 |
平均検索関連性 | 0.67 |
平均レイテンシ | ~30ms |
グラウンディッドネス分類器
メトリクス | 値 |
精度 | 0.70 – 0.90 |
再現率 | 0.75 – 1.00 |
結果は、評価データセットが意図的に小さいため、わずかに変動します。
制限事項
38件のラベル付きサンプルでトレーニングされたグラウンディッドネス分類器
財務メトリクス抽出は現在ルールベースのパターンを使用
検索はトランスフォーマー埋め込みの代わりにTF-IDF + SVDを使用
ベクターインデックスはインメモリであり、デモ規模のワークロード向けに最適化
Claude統合はオプションであり、コア機能には不要
今後の改善点
トランスフォーマーベースの埋め込み
ハイブリッド検索(キーワード + ベクター)
より大規模なグラウンディッドネスデータセット
LLMベースの抽出フォールバック
マルチステップエージェントワークフロー
pgvector統合
複数文書の比較
アナリストレポートの自動生成
This server cannot be deployed
Maintenance
Related MCP Connectors
Financial data and research MCP for US/CN/JP equities: filings, statements, ownership, signals.
Paid bilingual MCP tools for evidence-linked SEC filing risk and finance-author track records.
MCP server for VC pitch-deck scoring, thesis-fit matching, and deal-flow management.
Financial data MCP for market, company, news, macro, and US Congress research.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceMCP server for SEC EDGAR that provides real-time access to filings, financial statements, and full-text search across all EDGAR documents.Apache 2.0
- AlicenseNot gradedqualityBmaintenanceMCP server for analyzing SEC filings (10-K, 10-Q, 8-K) with industry-aware financial extraction and BERT-based NLP.1MIT
- AlicenseNot gradedqualityDmaintenanceAn MCP server that provides deterministic finance tools for SEC filing analysis, enabling LLMs to compute financial ratios, fetch filings, and perform equity research without hallucinated numbers.MIT
- AlicenseAqualityBmaintenanceAn MCP server that wraps SEC EDGAR APIs to provide company financial data, screening metrics, and disclosure signals for investment diligence, with every figure traced to its source filing.8MIT