--- language: - ja license: mit library_name: transformers tags: - math - tool-integrated-reasoning - tir - code-execution - reasoning - japanese - sft - llm-jp base_model: llm-jp/llm-jp-4-8b-v4-8b-decay2m-ipt_v3.1-instruct4 pipeline_tag: text-generation model-index: - name: acro-yamalex-llmjp-4-math-tir results: - task: type: text-generation name: 日本語数学推論 dataset: name: FT-LLM2026 開発用評価データセット type: custom metrics: - type: accuracy value: 0.880 name: 正解率(全体) - type: accuracy value: 1.000 name: 正解率(中1) - type: accuracy value: 1.000 name: 正解率(中2) - type: accuracy value: 0.938 name: 正解率(中3) - type: accuracy value: 0.867 name: 正解率(数学I・A) - type: accuracy value: 0.731 name: 正解率(数学II・B) - type: accuracy value: 0.800 name: 正解率(数学III・C) --- # acro-yamalex-llmjp-4-math-tir(モデル) 日本語数学推論のためのTool-Integrated Reasoning (TIR) モデルです。 CoTモデル(llm-jp-4-8bをCoTデータでSFTしたモデル)をベースに、134,834件のTIRデータセットでさらにSFTを行った**最終モデル**です。 自然言語による推論とPythonコード実行を組み合わせて数学問題を解くことができます。 開発用評価データセット(100問)において**正解率88.0%**を達成しました。 本モデルは[FT-LLM2026コンペティション](https://llm-jp.github.io/tuning-competition/)における我々の提出モデルです。 ## モデル概要 | 項目 | 値 | |---|---| | ベースモデル | [llm-jp-4-8b](https://huggingface.co/llm-jp/llm-jp-4-8b-v4-8b-decay2m-ipt_v3.1-instruct4) (80億パラメータ) | | 学習手法 | 2段階SFT(CoT SFT → TIR SFT)/ フルパラメータ | | 学習データ | CoTデータ(306,366件)→ TIRデータ(134,834件) | | フレームワーク | NeMo + Megatron-LM | | 精度 | bf16-mixed | ## 学習パイプライン [OpenMathReasoning](https://arxiv.org/abs/2504.16891)(NVIDIAのAIMO-2優勝手法)に倣い、2段階のSFTを実施しました。 ``` llm-jp-4-8b (ベースモデル) ↓ CoT SFT(306,366件) CoTモデル ↓ TIR SFT(134,834件) TIRモデル(本モデル)★ ``` ## 学習設定 | パラメータ | CoT SFT(第1段階) | TIR SFT(第2段階) | |---|---|---| | ベースモデル | llm-jp-4-8b | CoTモデル | | 学習率 | 2e-5 | 2e-5 | | エポック数 | 2 | 2 | | バッチサイズ | 96 | 64 | | 最大系列長 | 4,096 | 4,096 | | オプティマイザ | AdamW (β₁=0.9, β₂=0.98) | AdamW (β₁=0.9, β₂=0.98) | | 重み減衰 | 0.1 | 0.1 | | ウォームアップ | 20 steps | 20 steps | | スケジューラ | CosineAnnealing | CosineAnnealing | | 精度 | bf16-mixed | bf16-mixed | | PEFT | なし(フルパラメータ) | なし(フルパラメータ) | ## 評価結果 開発用評価データセット(100問)における正解率です。推論時には1問あたり15個の回答候補を生成し、多数決(majority voting)により最終回答を決定しています。 | カテゴリ | 正解率 | |---|---| | 中1 | 1.000 | | 中2 | 1.000 | | 中3 | 0.938 | | 数学I・A | 0.867 | | 数学II・B | 0.731 | | 数学III・C | 0.800 | | **全体** | **0.880** | ### 推論設定 | パラメータ | 値 | |---|---| | サンプル数(多数決用) | 15 | | 最大コード実行回数 | 5回 | | 最大生成トークン数 | 4,096 | ## 使い方 ### 基本的な使い方 ```python from transformers import AutoModelForCausalLM, AutoTokenizer model_name = "AcroYAMALEX/acro-yamalex-llmjp-4-math-tir" tokenizer = AutoTokenizer.from_pretrained(model_name) model = AutoModelForCausalLM.from_pretrained(model_name, torch_dtype="bfloat16", device_map="auto") prompt = """あなたは「自然言語の推論」と「Pythonコードの実行」を組み合わせて数学問題を解くアシスタントです。 ### 指示: 1から100までの自然数の和を求めてください。 ### 応答: """ inputs = tokenizer(prompt, return_tensors="pt").to(model.device) outputs = model.generate(**inputs, max_new_tokens=2048, temperature=0.7) print(tokenizer.decode(outputs[0], skip_special_tokens=True)) ``` ### TIR推論パイプライン(コード実行付き) 本モデルの性能を最大限に引き出すには、生成されたPythonコードブロックを検出・実行し、結果をモデルにフィードバックするTIR推論パイプラインが必要です。 1. モデルが応答を生成(思考過程 + Pythonコード) 2. `` ```python `` ブロックを検出し、サンドボックスで実行 3. 実行結果を `` ```output `` ブロックとしてモデルにフィードバック 4. 最終回答(`\boxed{}`形式)が得られるまで繰り返し(最大5回) 5. 複数サンプル(15個推奨)を生成し、多数決で最終回答を決定 ## 入出力フォーマット ### 入力 システムプロンプトでTIR推論の役割を指定し、ユーザーメッセージとして数学の問題を与えます。 ### 出力 ``タグで囲まれた思考過程、Pythonコードブロック、コード実行結果を含むマルチターン対話を生成し、最終的に`\boxed{}`形式で回答を出力します。 ``` Python を使ってシミュレーションしよう。 ```python total = sum(range(1, 101)) print(total) ``` ```output 5050 ``` 計算結果は5050です。 1から100までの自然数の和は: $$\boxed{5050}$$ ``` ## 関連リソース | リソース | リンク | |---|---| | CoTデータセット | [AcroYAMALEX/acro-yamalex-llmjp-4-math-cot](https://huggingface.co/datasets/AcroYAMALEX/acro-yamalex-llmjp-4-math-cot) | | TIRデータセット | [AcroYAMALEX/acro-yamalex-llmjp-4-math-tir](https://huggingface.co/datasets/AcroYAMALEX/acro-yamalex-llmjp-4-math-tir) | | CoTモデル(中間モデル) | [AcroYAMALEX/acro-yamalex-llmjp-4-math-cot](https://huggingface.co/AcroYAMALEX/acro-yamalex-llmjp-4-math-cot) | | 論文 | NLP2026にて発表予定 | ## 参考文献 - Ivan Moshkov et al. "AIMO-2 Winning Solution: Building State-of-the-Art Mathematical Reasoning Models with OpenMathReasoning dataset." arXiv:2504.16891, 2025. - Ting Zhang et al. "StackMathQA: A Curated Collection of 2 Million Mathematical Questions and Answers Sourced from Stack Exchange." 2024. - Keiran Paster et al. "OpenWebMath: An Open Dataset of High-Quality Mathematical Web Text." arXiv:2310.06786, 2024. - DeepSeek-AI. "DeepSeek-V3 Technical Report." arXiv:2412.19437, 2024. ## 著者 佐々木峻・山本大輝・樋口慎・吉岡駿(アクロクエストテクノロジー株式会社) ## ライセンス MIT License