再現性・記録性・比較性を重視した設計
Mistral Small 3.2 vs Phi-4 Mini の包括的性能比較システム
本プロジェクトは、Traditional RAGからAdvanced Agentic RAGまで3段階の進化を実装し、AI言語モデルの性能を多角的に評価するベンチマークシステムです。
- モデル比較: Mistral Small 3.2 vs Phi-4 Mini の詳細な性能分析
- 技術進化: Traditional RAG → Simple Agentic RAG → Advanced Agentic RAG
- 評価の標準化: 再現可能で記録性・比較性に優れた評価フレームワーク
RAG/
├── 📁 rag_benchmark/ # Phase 1: Traditional RAG
│ ├── mistral_runner.py # Mistralモデル実行
│ ├── phi_runner.py # Phi4モデル実行
│ └── data/
│ ├── corpus.jsonl # 知識ベース (45文書)
│ └── queries.txt # 評価クエリ (5問)
├── 📁 agent_eval/ # エージェント評価ツール
│ ├── calculator.py # 計算機能
│ └── search.py # 検索機能
├── 📄 agentic_rag_standalone.py # Phase 2: Simple Agentic RAG
├── 📄 phase3_agentic_rag.py # Phase 3: Advanced Agentic RAG
├── 📁 phase3_eval/ # Phase 3評価結果
└── 📁 .venv/ # Python仮想環境
# 仮想環境作成(初回のみ)
python -m venv .venv
## 🚀 3段階のRAGシステム進化
### **Phase 1: Traditional RAG**
```python
# 基本的なRAG実装
class SimpleRetriever:
- BM25による関連度スコアリング
- 単一戦略による情報検索
- 基本的な応答生成# 反復検索機能付きRAG
class AgenticRetriever:
- 自律的な継続判断
- 反復的情報収集
- 動的検索終了# 多戦略・信頼度評価RAG
class MultiStrategyRetriever:
- 5種類の検索戦略 (BM25, Semantic, Keyword, Hybrid, Targeted)
- 動的戦略選択システム
- 信頼度ベース評価 (一貫性・完全性・関連性)
- 自律的プロセス制御| モデル | 平均処理時間 | 平均反復数 | 平均信頼度 | 戦略多様性 |
|---|---|---|---|---|
| MISTRAL | 21.4秒 | 1.8回 | 0.35 | 1.4 |
| PHI4 | 57.5秒 | 1.8回 | 0.37 | 1.4 |
- ✅ 高速処理: PHI4の約1/3の処理時間
- ✅ 効率重視: 早期終了による計算資源節約
⚠️ 信頼度: やや低め (0.35)
- ✅ 慎重な分析: より詳細な情報処理
- ✅ 信頼度: わずかに高い (0.37)
⚠️ 処理時間: MISTRALの約3倍
🎯 Semantic検索: 最も頻繁に使用 (意味的類似性重視)
🔄 Hybrid検索: 複雑な質問で自動選択
📊 BM25検索: 関連度スコアリング
🔍 Keyword検索: 完全一致検索
🎪 Targeted検索: 質問タイプ特化
- Python 3.12.10 - メイン言語
- Ollama API - ローカルLLM実行環境
- scikit-learn - BM25実装・機械学習
- pandas & numpy - データ処理・分析
- Mistral Small 3.2 - 効率性重視モデル
- Phi-4 Mini - 精度重視モデル
- Vector Database - 意味検索用埋め込み
- BM25 Retriever - 統計的関連度
- Multi-Strategy System - 動的戦略選択
strategies = {
'bm25': BM25による統計的検索,
'semantic': ベクトル埋め込みによる意味検索,
'keyword': キーワード完全一致検索,
'hybrid': 複数戦略の統合,
'targeted': 質問タイプ別特化検索
}confidence_factors = {
'consistency': 複数結果間の一貫性,
'completeness': 質問に対する網羅性,
'relevance': 検索結果の適合度
}
# → HIGH(0.7+) / MEDIUM(0.4-0.7) / LOW(0.4-)- 動的継続判断: 信頼度に基づく検索継続・終了
- 戦略自動選択: 質問特性に応じた最適戦略選択
- 反復制限: 最大4回の検索反復で効率性確保
- ⏱️ Latency評価: 応答時間とスループット
- 🎯 Response Quality: 回答の正確性と有用性
- 🔧 Tool Selection: エージェント機能の適切性
- 🤖 Autonomous Behavior: 自律的判断能力
- 📊 Confidence Scoring: 情報信頼性評価
- タイムスタンプ付きログ: 全実行過程の詳細記録
- 設定値保存: 再現可能な評価環境
- マークダウン出力: 可読性の高い結果レポート
- 文書数: 45文書 (5文書→45文書に拡張)
- 分野: AI・機械学習、新技術、社会・政策
- 構造: JSON形式 (title, content)
1. 機械学習にはどのような種類がありますか?
2. 深層学習の主な応用分野は何ですか?
3. RAGシステムの利点を説明してください。
4. 日本のAI研究の歴史について教えてください。
5. 自然言語処理の最新技術は何ですか?
詳細な実行手順は QUICK_GUIDE.md をご確認ください。
# 1. 仮想環境作成・アクティベート
python -m venv .venv
.venv\Scripts\activate # Windows
source .venv/bin/activate # Linux/Mac
# 2. 依存関係インストール
pip install requests pandas numpy scikit-learn
# 3. Ollamaモデル準備
ollama pull mistral
ollama pull phi4# Phase 1: Traditional RAG
python rag_benchmark/run_rag_eval.py
# Phase 2: Simple Agentic RAG
python agentic_rag_standalone.py
# Phase 3: Advanced Agentic RAG
python phase3_agentic_rag.pyphase3_eval/
├── phase3_mistral_YYYYMMDD_HHMMSS.md # Mistral詳細結果
├── phase3_phi4_YYYYMMDD_HHMMSS.md # Phi4詳細結果
└── phase3_summary_YYYYMMDD_HHMMSS.md # 比較サマリー
- 詳細ログ: 各質問の検索プロセス・信頼度変遷
- パフォーマンス: 処理時間・反復数・API呼び出し数
- 比較表: モデル間の定量的比較
- RAGシステムの性能評価標準
- Agentic AIの行動分析
- 多言語LLMの比較研究
- 企業向けRAGシステム導入指針
- AIモデル選択支援
- カスタマーサポート最適化
- 新RAG手法のベンチマーク
- 信頼度評価アルゴリズム
- マルチエージェントシステム設計
- 新モデル追加: Ollama対応モデルの容易な追加
- 検索戦略: 新戦略アルゴリズムの実装
- 評価指標: カスタム評価軸の導入
- データセット: ドメイン特化コーパスの構築
# 新検索戦略の追加
def custom_retrieval_strategy(query, documents):
# カスタムロジック実装
return ranked_results
# 新評価指標の追加
def custom_evaluation_metric(response, ground_truth):
# カスタム評価実装
return scoreMIT License - 学術・商用利用可能
- Issues: GitHub Issues での質問・バグ報告
- Documentation: 詳細技術仕様書
- Examples: サンプル実装とベストプラクティス
🎯 "再現性・記録性・比較性"を重視した次世代RAG評価システム
Built with ❤️ for AI Research & Development