RAMEN-MISO
MISO は、松尾研 LLM 開発コンペ 2025 において Team RAMEN (Reasoning AI Model Engineering Network) が開発した大規模言語モデルである。高難度領域における推論性能の最大化を目的として、Qwen3 系 Mixture-of-Experts (MoE) を基盤に Chain-of-Thought Supervised Fine-Tuning (CoT-SFT) で最適化している。数理・自然科学・人文社会など多様なドメインにおける長文かつ高負荷な推論を前提に設計した。
1. モデル仕様
- ベースモデル: https://huggingface.co/Qwen/Qwen3-235B-A22B
- 推論
- リソース: H100 80GB × 16 (2 node) または H100 80GB × 8 (1 node)
- 学習
- 手法: CoT-SFT
- リソース: H100 × 16 (2 node)
- データ: 大学院レベル以上の数理・自然科学・人文社会系の公開/合成データ(件数・URL は後日追記)
2. 評価方法
- 共通実行環境: vLLM 0.10.1.1(本 README 記載の推奨構成で検証済み)
2.1 Humanity’s Last Exam(HLE)
- 評価コード: https://github.com/matsuolab/llm_bridge_prod/tree/master/eval_hle
- 運用メモ: 2401 件(text-only)の全問が一度で完了しない場合は、複数回に分けて実行してください。
- まず 2ノード を試し、失敗したら 1ノード で実行してください。
- 本 README に記載の設定ファイルおよび Slurm テンプレートは、運営提供の公式コードを基に最適化した推奨構成です。評価を実施する際は、本設定を利用してください。
設定ファイル(conf/config.yaml)
dataset: cais/hle
provider: vllm # [vllm]
base_url: http://localhost:8000/v1
model: weblab-llm-competition-2025-bridge/RAMEN-MISO
max_completion_tokens: 35000
reasoning: true
# sample with multimodal is 2500, so text-only sample is about 2400
num_workers: 2500
max_samples: 2500
judge: o3-mini-2025-01-31
Slurm テンプレート
1ノード実行
#!/bin/bash
#SBATCH --job-name=qwen3_8gpu
#SBATCH --partition=P01
#SBATCH --nodelist=osk-gpu51
#SBATCH --nodes=1
#SBATCH --gpus-per-node=8
#SBATCH --cpus-per-task=240
#SBATCH --time=24:00:00
#SBATCH --output=/home/Competition2025/adm/X006/logs/%x-%j.out
#SBATCH --error=/home/Competition2025/adm/X006/logs/%x-%j.err
#SBATCH --export=OPENAI_API_KEY="openai_api_keyをここに"
#--- モジュール & Conda --------------------------------------------
module purge
module load cuda/12.6 miniconda/24.7.1-py312
module load cudnn/9.6.0
module load nccl/2.24.3
source "$(conda info --base)/etc/profile.d/conda.sh"
conda activate llmbench
# Hugging Face 認証
export HF_TOKEN= "<huggingface_tokenをここに>"
export HF_HOME=${SLURM_TMPDIR:-$HOME}/.hf_cache
export TRANSFORMERS_CACHE=$HF_HOME
export HUGGINGFACE_HUB_TOKEN=$HF_TOKEN
mkdir -p "$HF_HOME"
echo "HF cache dir : $HF_HOME" # デバッグ用
#--- メモリ/性能チューニング ------------------------------------------
# ベスト構成での推奨:拡張セグメントでメモリ断片化を低減
export PYTORCH_CUDA_ALLOC_CONF="expandable_segments:True"
#--- GPU 監視 -------------------------------------------------------
nvidia-smi -i 0,1,2,3,4,5,6,7 -l 3 > nvidia-smi.log &
pid_nvsmi=$!
#--- vLLM 起動(8GPU)----------------------------------------------
# ベスト構成での推奨:rope-scaling なし / reasoning-parser なし
# - tensor-parallel=4, pipeline-parallel=2
# - enable-expert-parallel
# - disable-custom-all-reduce
# - gpu-memory-utilization=0.90
vllm serve weblab-llm-competition-2025-bridge/REMEN-MISO \
--tensor-parallel-size 4 \
--pipeline-parallel-size 2 \
--enable-expert-parallel \
--gpu-memory-utilization 0.90 \
--disable-custom-all-reduce \
> vllm.log 2>&1 &
pid_vllm=$!
#--- ヘルスチェック -------------------------------------------------
until curl -s http://127.0.0.1:8000/health >/dev/null; do
echo "$(date +%T) vLLM starting …"
sleep 10
done
echo "vLLM READY"
#--- 推論 -----------------------------------------------------------
python predict.py > predict.log 2>&1
#--- 評価 -----------------------------------------------------------
OPENAI_API_KEY=xxx python judge.py
#--- 後片付け -------------------------------------------------------
kill $pid_vllm
kill $pid_nvsmi
wait
2ノード実行(Ray クラスタ方式・運営指示準拠)jobs/ray_cluster.shを使用してray clusterを起動してください。その時partitionやnodelist、ログファイルを設定してください。
そしてsshで出力されたheadノードのノードに接続し、モジュールとcondaを読み込み、vLLMをいつも通り起動してください。ray clusterを自動で認識します。
その後、上記スクリプトからvLLM起動とヘルスチェックを削除し、configを修正してから推論してください。
2.2 Do-Not-Answer(DNA)
Slurm テンプレート
#!/bin/bash
#SBATCH --job-name=qwen3_8gpu
#SBATCH --partition=P01
#SBATCH --nodelist=osk-gpu51
#SBATCH --nodes=1
#SBATCH --gpus-per-node=8
#SBATCH --cpus-per-task=240
#SBATCH --time=24:00:00
#SBATCH --output=/home/Competition2025/adm/X006/logs/%x-%j.out
#SBATCH --error=/home/Competition2025/adm/X006/logs/%x-%j.err
#SBATCH --export=OPENAI_API_KEY="openai_api_keyをここに"
#--- モジュール & Conda --------------------------------------------
module purge
module load cuda/12.6 miniconda/24.7.1-py312
module load cudnn/9.6.0
module load nccl/2.24.3
source "$(conda info --base)/etc/profile.d/conda.sh"
conda activate llmbench
# Hugging Face 認証
export HF_TOKEN= "<huggingface_tokenをここに>"
export HF_HOME=${SLURM_TMPDIR:-$HOME}/.hf_cache
export TRANSFORMERS_CACHE=$HF_HOME
export HUGGINGFACE_HUB_TOKEN=$HF_TOKEN
mkdir -p "$HF_HOME"
echo "HF cache dir : $HF_HOME" # デバッグ用
#--- メモリ/性能チューニング -------------------------------------------
# ベスト構成での推奨:拡張セグメントでメモリ断片化を低減
export PYTORCH_CUDA_ALLOC_CONF="expandable_segments:True"
#--- GPU 監視 -------------------------------------------------------
nvidia-smi -i 0,1,2,3,4,5,6,7 -l 3 > nvidia-smi.log &
pid_nvsmi=$!
#--- 必要なディレクトリを作成 -----------------------------------------
mkdir -p evaluation_results
#--- vLLM 起動(8GPU)----------------------------------------------
# ベスト構成での推奨:rope-scaling なし / reasoning-parser なし
# - tensor-parallel=4, pipeline-parallel=2
# - enable-expert-parallel
# - disable-custom-all-reduce
# - gpu-memory-utilization=0.90
vllm serve weblab-llm-competition-2025-bridge/REMEN-MISO \
--tensor-parallel-size 4 \
--pipeline-parallel-size 2 \
--enable-expert-parallel \
--gpu-memory-utilization 0.90 \
--disable-custom-all-reduce \
> vllm.log 2>&1 &
pid_vllm=$!
#--- ヘルスチェック -------------------------------------------------
until curl -s http://127.0.0.1:8000/health >/dev/null; do
echo "$(date +%T) vLLM starting …"
sleep 10
done
echo "vLLM READY"
#--- 推論 -----------------------------------------------------------
python llm-compe-eval/evaluate_huggingface_models.py \
--model_name "weblab-llm-competition-2025-bridge/RAMEN-MISO" \
--dataset_path datasets/Instruction/do_not_answer_en.csv \
--output_dir evaluation_results \
--use_vllm \
--max_questions 939 \
--vllm_base_url http://localhost:8000/v1 > predict.log 2>&1
#--- 後片付け -------------------------------------------------------
kill $pid_vllm
kill $pid_nvsmi
wait
3. 評価結果
| Benchmark | DeepSeek R1 0528 Qwen3 8B | Qwen3 235B A22B | MISO |
|---|---|---|---|
| Humanity's Last Exam (text-only) | 6.46 ±1.96 | 11.75 ±1.36 | ?? |
| Humanity's Last Exam Extract120 (text-only) | 4.85 ±4.15 | 11.54 ±6.14 | 19.33 ±7.10 |
| Do-Not-Answer | 97.2 | 97.9 | 92.0 |
注: HLE-Extract120 は、公式データセット(cais/hle)の text-only 問題からカテゴリ比率を維持して 120問 を層化抽出したサブセットです。
- Downloads last month
- 16
Model tree for team-suzuki/Qwen3-235B-A22B_SFT_004_origin_1
Base model
Qwen/Qwen3-235B-A22B