チャット感覚で「このモデルは日本語が得意そう」と思っても、スコアで裏付けるのは難しいものです。OpenCompass を使えば、TyDi-QA(日本語QA)や Flores(英→日翻訳)などの標準ベンチマークでスコアを出せるので、印象ではなく数値でモデルを評価できます。
本記事では Ubuntu 22.04 LTS に OpenCompass 0.5.2 をインストールし、configs/datasets/ の日本語対応データセットと Python バージョン要件を実際に確認しました。評価設定ファイルの作り方と run.py の使い方は、公式ドキュメントと実リポジトリ構造に基づいて説明します。GPU なしの VPS でも API 評価モードなら動きます。
この記事のポイント
- Ubuntu 22.04(Python 3.10.12)が最も安定。24.04(3.12.3)でも動作するが 22.04 推奨
- OpenCompass 0.5.2 には 189 のデータセットが収録。日本語対応は TyDi-QA・Flores・XLSum など 4 種
- GPU なし環境でも
openai型モデル設定で Ollama に接続して評価できる --dry-runでタスク数と推論コマンドを事前確認してから本実行するのが安全- 結果は
work_dir/<timestamp>/以下に CSV と HTML で自動保存される
動作確認済み環境
| 項目 | 確認値 | 備考 |
|---|---|---|
| OS | Ubuntu 22.04.4 LTS | 推奨(Python 3.10.12) |
| OS(代替) | Ubuntu 24.04.4 LTS | Python 3.12.3 — 動作可 |
| OpenCompass | 0.5.2 | 2026-06-21 時点の最新安定版 |
| Python | 3.10.12 以上 | 3.12.3 でも可(一部 GPU 依存で注意) |
| 評価モデル接続 | Ollama 経由 API | GPU 不要。OpenAI 互換エンドポイント |
| 確認方法 | Docker + git clone | ubuntu:22.04 / ubuntu:24.04 実行 |
OpenCompass とは
OpenCompass は上海 AI 研究所(Shanghai AI Lab)が開発したオープンソースの LLM 評価フレームワークです。189 種類のベンチマークデータセットを一つのフレームワークで管理し、複数のモデルを同じ条件で評価できます。公式ベンチマークサイト「CompassRank」でも採用されています。
評価の仕組みは、設定ファイル(Python スクリプト)にモデルとデータセットの組み合わせを書いて python run.py config.py を実行するだけです。モデルは HuggingFace のローカルモデル、vLLM/lmdeploy、そして OpenAI 互換の REST API に対応しています。Ollama は OpenAI 互換エンドポイントを提供しているので、GPU なし環境でも API 評価が可能です。

インストール手順
手順1:Python 環境を確認する
Ubuntu のバージョンによって Python のデフォルトバージョンが異なります。OpenCompass は Python 3.10 以上が必要で、Ubuntu 22.04 の 3.10.12 が最も動作実績があります。

Python 3.10.12
$ pip3 –version
pip 22.0.2 from /usr/lib/python3/dist-packages/pip (python 3.10)
Ubuntu 24.04 を使っている場合
Ubuntu 24.04 の Python 3.12.3 でも pip install opencompass は通りますが、GPU ベースのローカルモデル評価で依存ライブラリの競合が起きやすいです。まず API モードで試すなら 24.04 でも問題ありません。
手順2:OpenCompass をインストールする
PyPI から pip でインストールします。依存パッケージが多い(datasets・accelerate・torch など 40 以上)ので、仮想環境を作ってから入れるのが無難です。
$ source venv-ocp/bin/activate
$ pip install opencompass
Collecting opencompass
Downloading opencompass-0.5.2-py3-none-any.whl (1.2 MB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.2/1.2 MB 4.3 MB/s eta 0:00:00
…
Successfully installed opencompass-0.5.2 datasets-3.5.0 mmengine-lite-0.10.4 …

インストールが完了したらバージョンを確認します。
0.5.2
手順3:リポジトリを取得する
設定ファイルのテンプレートは GitHub リポジトリに収録されています。pip install だけでは設定ファイル群が入らないので、リポジトリもクローンしておきます。
$ cd opencompass
$ ls opencompass/configs/datasets | wc -l
225
# 225 個の設定ディレクトリが入っている(データセット対応数)

日本語評価に使えるデータセット
OpenCompass 0.5.2 に収録されている 189 のデータセット(225 設定ディレクトリ)のうち、日本語に対応しているのは 4 データセットです。実際に configs/datasets/ を解析した結果です。


正直、日本語特化のベンチマーク(JMT-Bench や JMMLU など)は OpenCompass 本体には未収録で、別途自分でデータセットを用意して設定する必要があります。ただし TyDi-QA は読解力(日本語 QA)を測る標準的な指標として使えます。
| データセット名 | タスク種別 | 日本語の扱い | 評価指標 |
|---|---|---|---|
| TyDi-QA | 抽出型QA(読解) | 11 言語中に日本語を収録。日本語プロンプト付き | F1 スコア |
| Flores / PMMEval | 機械翻訳(英→日) | 9 言語対応。この文を英語から日本語に翻訳してください |
BLEU / chrF |
| XLSum | 多言語テキスト要約 | 多言語コーパス(日本語データ含む csebuetnlp/xlsum) | ROUGE-L |
| IWSLT2017 | 口語翻訳 | 多言語翻訳タスク | BLEU |
設定ファイルを書く(API モード)
OpenCompass の設定ファイルは Python スクリプトで、models リストと datasets リストを定義します。Ollama がローカルで動いていれば、以下の設定ファイル一枚で TyDi-QA 日本語タスクを評価できます。

# configs/myeval_tydiqa_ollama.py
from mmengine.config import read_base
with read_base():
from opencompass.configs.datasets.tydiqa.tydiqa_gen_978d2a import tydiqa_datasets
# Ollama の OpenAI 互換エンドポイントに接続
models = [
dict(
abbr='qwen2.5-7b-ollama',
type='openai',
path='qwen2.5:7b',
key='ollama',
openai_api_base='http://localhost:11434/v1/chat/completions',
max_out_len=512,
batch_size=4,
)
]
# TyDi-QA(日本語含む 11 言語)
datasets = [*tydiqa_datasets]
work_dir = './outputs/qwen25_tydiqa_eval'
type='openai' を指定すると OpenAI 互換 API として扱われます。key='ollama' はダミー API キー(Ollama は認証不要ですが、パラメータとして必要)、openai_api_base に Ollama のエンドポイントを指定します。
Ollama の事前準備
評価を実行する前に Ollama でモデルを pull しておきます。ollama pull qwen2.5:7b でダウンロード後、ollama serve(または systemd で常駐)で API サーバーを起動してください。Ollama のデフォルトポートは 11434 です。
評価を実行する
手順1:ドライランで事前確認する
いきなり本実行すると、設定ミスで長い待ち時間を無駄にすることがあります。--dry-run でタスク数と設定を確認してから進めるのが安全です。実行すると次のような出力が表示されます(出力形式の例)。
MM/DD HH:MM:SS – OpenCompass – INFO – Config loaded successfully
MM/DD HH:MM:SS – OpenCompass – INFO – Partitioning OpenICL infer tasks:
MM/DD HH:MM:SS – OpenCompass – INFO – tydiqa/japanese [numfewshot=0]
MM/DD HH:MM:SS – OpenCompass – INFO – 11 tasks (11 languages), 0 done / 11 remaining
MM/DD HH:MM:SS – OpenCompass – INFO – DRY RUN mode — no inference executed
手順2:本実行する
--dry-run を外して本実行します。TyDi-QA の日本語タスクはテスト問題が約 1000 問あるので、バッチサイズ 4 だと 10〜20 分かかります(モデルの速度次第)。終了時の出力形式は次の通りです。
MM/DD HH:MM:SS – OpenCompass – INFO – Starting task: tydiqa/japanese <model-name>
MM/DD HH:MM:SS – OpenCompass – INFO – Inferencing … (batch_size=4)
(Ollama API 経由でタスク実行中 — タスク数・所要時間はモデルとVPS性能による)
MM/DD HH:MM:SS – OpenCompass – INFO – Task finished. Results saved to:
./outputs/<runname>/<timestamp>/results.csv

途中でやめたときは --reuse で再開できる
実行中断した場合は python run.py configs/myeval.py --reuse で、完了済みタスクの結果を再利用して続きから再開できます。タイムスタンプを指定する場合は --reuse <timestamp> のように書きます。
結果の読み方
実行が完了すると work_dir/<timestamp>/ に結果が保存されます。コンソールにもサマリテーブルが表示されます。
dataset version metric mode qwen2.5-7b-ollama
───────────────────────────────────────────────────────────────
tydiqa/japanese 978d2a f1 gen 72.4
tydiqa/english 978d2a f1 gen 85.1
上の数値は「この記事の実測結果」ではありません。実際のスコアはモデルによって大きく変わります(公式ドキュメントによると GPT-4o クラスで F1 90 以上、7B クラスで 60〜75 程度の傾向)。自分のモデルを評価した際の数値を確認してください。
結果ファイルの内訳:
results.csv— 全モデル×データセットのスコア表(CSV)predictions/— モデルの生出力テキスト(デバッグに使う)logs/— 推論時のログ
よくあるエラーと解決策
①ModuleNotFoundError: No module named 'opencompass'
仮想環境外で実行した可能性があります。source venv-ocp/bin/activate を確認してください。which python でパスが venv-ocp/bin/python になっていれば OK です。
②Connection refused(Ollama 接続エラー)
Ollama が起動していないか、ポートが異なります。curl http://localhost:11434/v1/models でモデル一覧が返ってくるか確認してください。
{
“object”: “list”,
“data”: [{“id”: “qwen2.5:7b”, …}]
}
③ pip install が途中でコケる(ERROR: Could not find a version that satisfies the requirement)
Python 3.13 以上だと依存ライブラリのバイナリが未対応のことがあります。pyenv や conda で Python 3.10.x 環境を作ってから再試行してください。
④ 評価に時間がかかりすぎる
TyDi-QA は全 11 言語で約 1 万問あります。開発中は設定ファイルで abbr_dict={'tydiqa_japanese': 'tydiqa/japanese'} 等を使って言語を絞るか、limit パラメータでサンプル数を制限してください。
# データセット設定でサンプル数を制限する例(テスト時)
from opencompass.openicl.icl_prompt_template import PromptTemplate
reader_cfg = dict(
input_columns=['passage_text', 'question_text'],
output_column='answer',
test_split='test',
test_size=100 # 100 問に絞って動作確認
)
まとめ
OpenCompass は手順さえ理解すれば設定ファイル 1 枚でモデルを比較評価できます。日本語に使えるのは TyDi-QA(読解 F1)・Flores(翻訳 BLEU)・XLSum(要約 ROUGE)・IWSLT2017(翻訳 BLEU)の 4 種で、どれも Ollama API 経由で GPU なしでも動かせます。
評価環境として VPS を使う場合、Vultr の東京リージョンは Ollama の推論速度も安定しており、月 $6(2vCPU/2GB)から試せます。
本記事では「すでに Ollama が動いている環境」を前提にしましたが、Ollama のセットアップ自体は にまとめています。あわせてどうぞ。


コメント