Kotoba — 일본어 RAG 평가 하네스
Kotoba — Japanese RAG Evaluation Harness
일본어 문서 특유의 토큰화 변동성, 한자/가나 혼재, 복합 명사를 고려한 재현 가능한 RAG 평가 인프라 R&D입니다. Sudachi/MeCab 형태소 분석을 전처리에 통합하고 pgvector 위에서 nDCG@10·MRR·Recall@K를 배치 측정합니다.
라이브 데모
실제 애플리케이션 화면 미리보기
Retriever 比較
Embedding Leaderboard
internal benchmark| # | Model | Params | R@10 | nDCG |
|---|---|---|---|---|
| 1 | ruri-large-v2 | 337M | 0.847 | 0.792 |
| 2 | multilingual-e5-large | 560M | 0.821 | 0.774 |
| 3 | cl-nagoya/sup-simcse-ja | 110M | 0.789 | 0.751 |
| 4 | sudachi-bm25 (baseline) | — | 0.724 | 0.683 |
| 5 | mE5-small | 118M | 0.712 | 0.669 |
Query trace — sample #842
index: kotoba-legal-ja-v3Query
医療機器の添付文書における使用期限の記載要件を教えて
医療機器の添付文書には、使用の期限を記載しなければならない…
使用期限の表示は、製造販売業者が設定する有効期間に基づき…
リスクマネジメントの観点から、使用期限の妥当性を検証する…
ラベル表示における日付フォーマットは YYYY.MM 形式とし…
과제
기존 RAG 평가 도구는 영어 토큰화·유사도에 최적화되어 일본어 문절 경계와 표기 변동을 제대로 다루지 못하며, 검색 정확도 차이가 과소 평가됩니다. 게다가 일본어 평가 데이터셋이 극히 부족합니다.
솔루션
Sudachi(A/B/C 모드)와 MeCab+IPAdic 토크나이저를 플러그인으로 전환 가능하게 만들고, pgvector(HNSW/IVFFlat) 위에서 ruri-large·multilingual-e5·OpenAI text-embedding-3 세 계열을 병렬 평가합니다. 합성 QA를 LLM-as-Judge로 생성합니다.
성과
- 내부 합성 QA 1,200건에서 nDCG@10 베이스라인 대비 +18 포인트 개선 (내부 벤치마크)
- Sudachi 모드 전환 영향을 정량화, C 모드가 장문에서 -6% 정확도 저하 확인
- 평가 1런 실행 시간을 병렬화로 42분 → 9분으로 단축
- 재현 가능한 YAML 설정으로 GitHub Actions 야간 회귀 테스트 사내 운용 시작
Measured Impact
評価データセット件数
1,200 QA
+1,200 (内部合成)
nDCG@10改善幅
+18pt
社内ベースライン比
1ラン実行時間
9分
-33分
並列ワーカー数
8
+6
What it does
評価機能
nDCG/MRR/Recall@K
主要IRメトリクスをDuckDBに永続化し差分可視化。
LLM-as-Judge
合成QAとRagas faithfulness/answer relevancy。
日本語対応
トークナイザ抽象
Sudachi A/B/CモードとMeCabをプラガブル切替。
表記ゆれ正規化
NFKC・全半角・カタカナ揺れの事前統一。
System Layers
Layered architecture showing components, responsibilities, and data flow.
Layer
前処理層
表記ゆれと分かち書き境界を揃える日本語前処理。モード別に分岐し結果をキャッシュ。
Layer
検索層
密ベクトルとBM25のハイブリッドで候補抽出、cross-encoderで再ランキング。
Layer
評価層
実行ごとのメトリクスとプロンプトをDuckDBに蓄積し差分レポートを生成。
How we built it
データセット整備
JSQuAD・MIRACL-jaと社内合成QAを統一スキーマに変換。
Deliverables
- データローダ
- スキーマ定義
- 品質レポート
トークナイザ比較
Sudachi各モードとMeCabの精度・速度をマトリクス評価。
Deliverables
- ベンチマーク表
- ユニットテスト
- 設定テンプレート
埋め込みモデル評価
ruri-large等の日本語特化モデルを並列評価。
Deliverables
- モデル比較レポート
- 埋め込みキャッシュ
CI統合
夜間回帰と差分アラートをGitHub Actionsに組み込み。
Deliverables
- ワークフローYAML
- 通知Bot
- ダッシュボード
Delivery Timeline
- Phase 1Done2026-04
トークナイザ抽象層
Sudachi/MeCabをPluginインターフェースで統一し単体テストを整備。
- Phase 2In Progress2026-05
評価メトリクス実装
nDCG/MRR/Recallを再計算可能な形でDuckDBに永続化。
- Phase 3Planned2026-06
LLM-as-Judge合成QA
社内文書からQAペアを自動生成し人手レビュー導線を追加。
- Phase 4Planned2026-08
OSS公開検討
MITライセンスでの部分公開と社外ベンチマーク受け入れ。
Who built it
Roles
- MLエンジニア (リード)
- データエンジニア (パートタイム)
Tools & Platforms
Backend
Data
Infrastructure
Other