Skip to content
 
 

Repository files navigation

Japanese-RP-Bench v2

日本語ロールプレイLLMの会話品質だけでなく、役柄への追従性、人格安定性、 人格置換への耐性、誤誘導後の復帰まで測定するベンチマークです。

このリポジトリはAratako/Japanese-RP-Benchの フォークです。元の30ロール・10往復・従来8指標をBaseとして維持し、その上にv2評価を 追加しています。フォーク元の説明、2024年の32モデル結果、旧実行方法は docs/upstream-v1.mdへ保存しています。

現在の主結果: 9モデルをChallenge 6シナリオで各10回生成した、計540会話の反復評価です。 3 Judgeによる7,290出力を用い、会話を独立標本とした10,000回の階層bootstrap、95%区間、 順位確率、Judge感度、多重比較を報告します。従来の15モデル表は各モデル・各シナリオ1生成の 単回評価だったため、現在の主結果や能力ランキングとしては使用せず、履歴資料に残しています。

v2で測るもの

  • role_fidelity_score: 人格、設定、関係性、知識境界、口調などのルールへの追従性
  • conversation_quality_score: 自然さ、表現力、創造性、会話の楽しさ
  • persona_stability_score: 対話の進行に伴う人格・設定追従度の低下
  • robustness_score: 人格置換、引用内命令、偽記憶、代理行動への耐性
  • recovery_score: 攻撃や誤誘導の後に元の人格へ戻れるか
  • major_violations: 人格の核に関わる重大ルール違反

会話品質が高くても重大な人格逸脱を相殺しません。各指標を分けて出力した上で、総合順位は 重大違反ゲートを優先し、同条件内だけ5つのv2指標の単純平均で比較します。各指標と順位の 意味、算出式、BaseとChallengeの違いは docs/metrics.md、ベンチマーク全体の設計は docs/benchmark-v2.mdを参照してください。

反復評価の事前登録条件、保存・再開方式、解析方法は docs/opencode-challenge-repeatability-plan-2026-07-27.mddocs/opencode-judge-audit-v21-2026-07-29.mdへ集約しています。

最新の反復評価結果

OpenCode Goで利用できる9モデルを、Challenge 6シナリオで各10回生成しました。独立標本は 9モデル × 6シナリオ × 10生成の540会話です。2,430対象応答をJudgeルーブリックv2.1で 固定3 Judgeが評価し、7,290 Judge出力が欠損0で揃っています。

順位はMajor-free率降順、Major率昇順、Challenge RP Summary降順です。RP Summaryの 95%区間と1位確率は、シナリオと生成blockを対応させた10,000回の階層bootstrapから算出しました。 3 Judgeの判定を独立回答として水増ししていません。

結果ダッシュボード

最新の反復評価は、同梱のdashboardでグラフ表示できます。RP Summary、 役柄追従度、会話品質、人格安定性、攻撃耐性、復帰力を切り替え、モデルごとのトラック別結果や シナリオ別結果、95%区間、1位確率まで確認できます。

公開中の結果ダッシュボードから、 ブラウザですぐに確認できます。

cd dashboard
npm install
npm run dev

Challenge RP Summaryは5指標のシナリオマクロ平均です。Major率は100会話あたりのMajor件数で、 1会話に複数のMajorがあれば100を超え得ます。Major-free率はMajorが一つもなかった会話の割合です。

順位 モデル Major-free率 Major率 RP Summary (95% CI) 1位確率
1 Grok 4.5 96.7% 5.0 95.76 [93.56, 96.95] 79.3%
2 Hy3 86.7% 15.0 94.56 [91.60, 96.58] 10.3%
3 MiniMax M3 86.7% 23.3 93.62 [89.90, 96.27] 1.1%
4 GLM-5.2 85.0% 16.7 93.73 [91.06, 96.00] 5.6%
5 Kimi K3 78.3% 40.0 89.59 [78.19, 96.31] 3.1%
6 Qwen3.7 Max 71.7% 46.7 88.24 [75.52, 96.02] 0.1%
7 DeepSeek V4 Pro 68.3% 46.7 88.19 [77.47, 95.95] 0.4%
8 Qwen3.8 Max 63.3% 73.3 87.66 [79.21, 94.57] 0.1%
9 MiMo V2.5 Pro 55.0% 75.0 85.67 [75.53, 93.84] 0.0%

点順位は上表の順ですが、9モデル36ペア × 8指標の比較では、事前登録した最小実用差と Holm補正後の統計条件をともに満たす「優位」は0件でした。順位だけで確定的なモデル優劣を 主張せず、区間、Major率、シナリオ別結果を合わせて読んでください。完全な条件と解析結果は 反復評価結果にあります。

過去の単回15モデル評価

2026-07-25までに公開していた15モデル表は、Base 30+Challenge 6の各シナリオを1回ずつ生成した 点推定です。モデル範囲は広い一方、生成分散を推定できないため、現在の主結果から外しました。 数値と実行記録は評価履歴および各モデルの結果文書へ保存しています。

現在の評価プロトコル

  • 対象: OpenCode Goの9モデル
  • Challenge: 4種類のRole Pack、6シナリオ、計27ターン
  • 反復: モデル・シナリオごとに10生成、計540会話
  • ユーザー役: GPT-5.4 mini
  • Judge: Grok 4.5、Hy3、Qwen3.7 Plusによるv2.1ルーブリック評価
  • Judgeには評価対象モデル名を渡さないブラインド評価
  • 解析: 会話単位の10,000回階層bootstrap、95%区間、順位確率、Holm補正
  • 保存: 10個の完全block、atomic Judge成果物、不足分だけ再開可能

Challengeでは、人格置換、引用文中の命令、存在しない共有記憶、ユーザー代理行動、 12ターンの設定維持、AIニケちゃん固有の関係性維持などを測定します。

インストールと実行

Python 3.10以降が必要です。

git clone https://github.com/tegnike/Japanese-RP-Bench.git
cd Japanese-RP-Bench
pip install -e .

以下は過去の単回Base+Challenge評価を再実行する例です。複数の有料APIを使用し、Batchは 完了まで時間がかかる場合があります。 必ず先にpilotを実行し、予算、開始条件、失敗時の扱いを docs/benchmark-v2-production-protocol.mdで 確認してください。現行設定と履歴用設定の違いはconfigs/README.mdに まとめています。

APIキーは設定ファイルへ書かず、利用するプロバイダーの環境変数へ設定します。

export OPENAI_API_KEY=...
export GEMINI_API_KEY=...
export ANTHROPIC_API_KEY=...

japanese-rp-bench-v2 pilot \
  --config configs/benchmark_full.yaml \
  --output tmp/pilot-full \
  --workers 4

japanese-rp-bench-v2 run \
  --config configs/benchmark_full.yaml \
  --output tmp/benchmark-full \
  --pilot-report tmp/pilot-full/pilot-report.json \
  --workers 4

OpenCode Go対象を実行する場合はOPENCODE_GO_API_KEYも設定します。

export OPENCODE_GO_API_KEY=...

japanese-rp-bench-v2 pilot \
  --config configs/benchmark_opencode_go_candidates.yaml \
  --output tmp/pilot-opencode-go \
  --workers 2

japanese-rp-bench-v2 run \
  --config configs/benchmark_opencode_go_candidates.yaml \
  --output tmp/benchmark-opencode-go \
  --pilot-report tmp/pilot-opencode-go/pilot-report.json \
  --workers 2

出力上限、Batch、再開条件など、過去の単回評価で固定した実行仕様は docs/benchmark-v2-production-protocol.md、 OpenCode Go固有の接続方法はdocs/opencode-go.mdを参照してください。

Role Pack

役柄、シナリオ、判定ルールは評価コードから分離したYAMLパッケージです。

  • core-ja: 実務的メンター、ファンタジー案内人
  • adversarial-ja: 引用内命令、人格置換、ユーザー代理行動
  • multi-turn-ja: 12ターンでの人格、関係性、会話内事実の維持
  • custom/nikechan: AIニケちゃん固有の人格追従性
PYTHONPATH=src python -m japanese_rp_bench.v2.cli validate role_packs/core-ja

Role Packの構造と作成方法はrole_packs/README.mdにあります。

関連ドキュメント

結果と指標を詳しく読む

GPT-5.6 Terra・Luna追加評価記録Claude Fable 5追加評価記録Claude Sonnet 5追加評価記録Claude Opus 5追加評価記録には、追加shardの 完了状態、実行費用、停止理由または重大違反、成果物とSHA-256を記録しています。先行11モデルの 出典は全11モデル完了記録にあります。

指標定義では、Role Fidelity、Quality、Persona Stability、Robustness、Recovery、 Major、Major-free、RP Summary、旧8指標について、意味、計算式、値の読み方、 BaseとChallengeでの違いを説明しています。

OpenCode Go反復評価結果では、 540会話の取得、v2.1による7,290 Judge出力、階層bootstrap、全ペア比較、Judge差を説明しています。 再現性監査と反復計測計画は、この評価へ 移行する前に確認した単回15モデル評価の変動と、初期計画を記録しています。

設計と実行条件を確認する

v2設計概要は、BaseとChallenge、Role Pack、成果物、対応する providerなど、ベンチマーク全体の構成を説明する文書です。

過去の単回評価プロトコルは、モデル、出力上限、 Reasoning、pilot、停止・再開条件を固定した履歴文書です。過去の単回結果を再現するときは、 設定ファイル案内で現行設定と履歴用設定を区別して使用してください。 OpenCode Go経由で実行する場合の接続方法と注意点は OpenCode Go実行ガイドにまとめています。

拡張方法、用語、履歴を調べる

Role Pack作成ガイドでは、YAMLの構造、各フィールド、原子ルール、 Probe、作成手順、検証方法を説明しています。

ドキュメント案内・用語集は、リポジトリ内の文書を分類し、trackpilotfingerprintなど、このプロジェクト固有の用語を定義しています。

評価履歴・監査資料には、過去の試行、評価条件を変更した理由、 旧結果の扱いを時系列で保存しています。フォーク元の説明、2024年の結果、旧実行方法は フォーク元v1保存版で確認できます。

ライセンス

MIT License

About

No description, website, or topics provided.

Resources

Stars

4 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages