
- ThinkingBoxのDB最終状態チェックを報酬関数として流用し、エージェントを強化学習でポストトレーニング
- Qwen3.8-27Bでpass@1が51.70%→60.78%、全20回成功タスクは38→107件に増加
- 学習に使うタスクはベース方策での成功率を事前推定して選別し、訓練中は固定
発表されたこと
MicrosoftとHugging Faceの共同ブログとして、エージェント評価フレームワーク「ThinkingBox」の学習版であるThinkingBox-TrainingがGitHubで公開された。ThinkingBoxは、エージェントが残した最終的なデータベース状態を期待される結果と突き合わせて、作業が正しく完了したかを判定する仕組みである。評価対象は507タスクからなるベンチマーク「ThinkingBox-Bench」で、各タスクは実物のバックエンドとツール群、そして私有コンテキストを持つシミュレーション上のLLMユーザーをエージェントに渡す。
今回の投稿の中心は、その判定をそのまま学習の報酬に転用するという発想にある。多くのタスクでは、最終DB状態から実行可能なチェックが1か0を直接返せるため、これは採点器であると同時に報酬関数にもなる。前回の記事では、エージェントが「完了した」と報告したのに、顧客チケットを解決済みにしたまま背後のキャリア例外が未解決だった事例が紹介されている。もっともらしいツール呼び出しが9回あり、誤っていたのはデータベースの1行だった。
難易度で練習タスクを選ぶ
訓練用のタスクプールは、ベンチマーク外のThinkingBox形式タスクから構築された。ここで問題になるのがタスクの選び方である。ほとんどのタスクは、目の前のモデルにとって「すでに解けている」か「絶望的に難しい」かのどちらかで、どちらも学習の材料にならない。
そこで著者らは「オフラインのポリシー相対難易度」と呼ぶ考え方を採る。訓練を始める前にベース方策で各タスクの成功率を一度だけ推定し、選んだプールを学習の間ずっと固定する。難易度は方策に対して相対的であり、あるタスクはそのモデルが覚えてしまうまで難しい、という整理である。なお、ThinkingBox-Benchのタスクは訓練プールには一切含めず、評価専用として確保されたと明記されている。
訓練ループの構成
訓練ループは6段階で構成され、最初の3段階はオフラインで一度だけ実行され、残りの3段階は訓練中のグループごとに繰り返される。各ロールアウトはテキストの補完ではなく、完全なエピソードとして扱われる。新しいバックエンド、隔離されたMCPセッション、そしてGPT-5 Chatによるシミュレーション上のユーザーが毎回用意される。
報酬の大半は決定論的な終端状態チェックから得られるが、一部の狭いルーブリック要件についてはGPT-5 Chatのジャッジを呼び出すことができる。また、訓練と評価でQwenの出力解釈を完全に一致させることが重視されている。推論の抽出、ツール呼び出し、引数の型付け、レンダリング、隔離されたタスク状態まで含めて揃えないと、報酬が測っているエージェントと評価対象のエージェントがずれてしまうためだ。共通の解釈コードはtrainer/core/tb_interpret.pyに置かれている。
参照実行の条件も示されている。Qwen3.8-27Bを187タスクでtoken-mean GRPOにより全パラメータ微調整し、1回の更新で8ロールアウト×18グループ、計144エピソードを24台のH100上で同期実行している。最適化にはAdamWを使い、学習率1e-6、weight decayは0、ステップ数は50である。分散がゼロのグループはDAPO方式で置き換えられ、バックエンドのタイムアウトは不正解として採点せず、該当グループを補充する扱いになっている。
結果: 再現性が上がった
50ステップの訓練後、未学習の507タスクで評価したところ、pass@1は51.70%から60.78%へ上昇した。より重要なのが再現性の指標で、全20回の試行すべてで成功したタスクは38件から107件へ増え、ほぼ3倍になっている。この507タスクは、ドメインやデータベース、多くのMCPツールが訓練中に登場していない分布外のテストセットである点が強調されている。
参考として、同じ指標での他モデルの値も示されている。Kimi-K3は68件、GPT-5.4は128件、GPT-6 Astraは231件、Claude Opus 5.5は241件で、今回の微調整済み27Bモデルは先行モデル群の一部に肉薄した形だ。pass@1の平均成功率と再現性では順位が入れ替わることも示されている。GPT-5.6 Solはpass@1で61.91%と微調整済みQwen3.8-27B(60.78%)をわずかに上回るが、20/20で通過したタスクは82件で107件より少ない。Claude Sonnet 4.6はpass@1が59.19%と低い一方、20/20では102件を通過している。
ドメイン別では、5つすべてでpass@1と20/20が上昇した。一方でpass@20は混在しており、neobankとconsultingでは増加したが、retail、travel、auto insuranceでは低下した。auto insuranceが幅の損失として最も大きく(−7.0ポイント)、retailは20/20の伸びが最も大きい(+24.5ポイント)。個別例としては、出張者が部屋のダウングレードを求めるが社内ポリシー上は上司承認が必要なホテル予約タスクがある。訓練前は20回中15回で承認なしに予約変更と返金を行っていたが、訓練後は20回すべてで予約と支払いの状態を保持し、19回で期待されるレコードがすべて一致した。
コストと注意点
著者らは一貫性のコストも算出している。依存可能タスクあたりのコストは「507×20のキャンペーン推定コスト ÷ 20/20で通過したタスク数」で定義される。この式を微調整後のチェックポイントに当てはめると、依存可能タスクあたり8.00ドルとなり、GPT-5.4の6.80ドル、GPT-6 Astraの7.45ドル、Claude Opus 5.5の7.80ドルに近づいた。単発の成功あたりでは、pass@1が51.70%から60.78%へ上がる一方で、推定コストは0.177ドルから0.139ドルへ下がっている。
ただし、これらのドル値は比較用のサービング指標であり、請求額やクラウドの実費ではないと断られている。微調整後チェックポイントのサービングはベースモデルと同じで、計算にはモデル推論コストが含まれるが、訓練実行と訓練データ整備のためのポリシープローブのコストは含まれていない。
もう一点、全体としてモデルは「広く」なったのではなく「繰り返せる」ようになったと整理されている。再現性が上がる一方で、少なくとも1回は解けるタスクの割合はわずかに低下しており、これは確率分布が繰り返し成功する軌道へ寄り、低確率の経路が消えたためと説明されている。
| モデル | pass@1 | 20/20で通過したタスク数 |
|---|---|---|
| Qwen3.8-27B(訓練前) | 51.70% | 38 |
| Qwen3.8-27B(GRPO 50ステップ後) | 60.78% | 107 |
| GPT-5.6 Sol | 61.91% | 82 |
| Claude Sonnet 4.6 | 59.19% | 102 |
For most tasks, an executable check can return 1 or 0 directly from the final database state. That is not just a grader. This can be a reward function.
ほとんどのタスクでは、実行可能なチェックが最終的なデータベース状態から直接1か0を返せる。それは単なる採点器ではない。報酬関数になり得るのだ。
今後の見通し
次の焦点は、訓練中に難易度を再推定しなかった点にあるとみられる。図5では、訓練中に難易度を再プローブする経路が「取らなかった道」として点線で示されており、方策の変化に合わせて練習タスクを入れ替えれば、pass@20の低下を抑えられるかが論点になる。あわせて、auto insuranceやtravel、retailで見られたカバレッジ低下の原因分析、Qwen以外のモデルでの追試、訓練コストを含めた総コスト比較が明らかになれば、実運用に持ち込めるかどうかを判断しやすくなる。
日本の開発者・IT企業にとっての意味
日本企業がエージェントに社内DBの更新や照会を任せようとすると、最初にぶつかるのが「言われた通りに動いたか」をどう測るかという問題である。ThinkingBoxの発想は、ツール呼び出しの見た目ではなく最終的なデータベース状態を正解判定に使うもので、業務システムと相性がよい。さらに今回の結果は、平均成功率(pass@1)だけを見てモデルを選ぶと、毎回確実に成功するかを見落とすことを数値で示している。GPT-5.6 Solがpass@1で上回りながら20/20では劣る例は分かりやすい。自社タスクでポストトレーニングを検討する場合も、解けすぎ・難しすぎのタスクを除いて練習問題を選ぶという手順と、訓練と評価でモデル出力の解釈を揃えるという実装上の注意が参考になる。
気になる点
- ThinkingBox-Trainingは自社の業務タスクにも使えますか
- コードはGitHubで公開されており、考え方自体は自社タスクにも応用できるとみられる。ただし本文で示された参照実行はQwen3.8-27B・187タスク・24台のH100という構成で、必要な計算資源やデータ準備の手順は自社環境ごとに異なる。適用条件や最小構成は原文では明示されていない。
- 強化学習にかかるコストはどのくらいですか
- 本文には訓練実行の金額は示されていない。示されているのは評価キャンペーンの比較用指標で、依存可能タスクあたり8.00ドル、単発成功あたり0.139ドルという値である。これらはモデル推論コストを含むが、訓練実行とポリシープローブのコストは含まないと明記されている。
- 再現性が上がる代わりに何が失われますか
- 少なくとも1回は解けるタスクの割合(pass@20)が一部ドメインで下がっている。neobankとconsultingでは増加したが、retail、travel、auto insuranceでは低下し、auto insuranceの低下幅は−7.0ポイントだった。分布が繰り返し成功する軌道に寄り、低確率の解き方が消えたためと説明されている。
用語解説
- GRPO
- グループ単位の相対評価で方策を更新する強化学習アルゴリズム。複数ロールアウトの報酬を比較して学習信号を作る。
- pass@1
- 原文の定義では、全10,140回の試行を通した平均成功率。タスクごとの1回勝負の成功率に近い指標。
- observed 20/20
- 記録した20回の試行すべてで成功したタスクの割合。本番運用に近い「毎回できるか」を見る指標。
- MCP
- Model Context Protocol。エージェントに外部ツールやデータソースを渡すためのプロトコルで、本記事では隔離セッションとして利用される。
- DAPO
- 強化学習の一種の手法群。本記事では分散がゼロになったグループを置き換える処理を指して言及されている。
- ポリシー相対難易度
- タスクの難しさをモデル(方策)との関係で捉える考え方。同じタスクでも習得済みのモデルには易しくなる。
出典
Turning Database Grading into RL Rewards: Post-Training Agents with ThinkingBox
AI導入も顧問も、お任せください
何から手をつけるか、どこまでAIに任せるか。自社の業務に合わせて整理し、導入から運用まで伴走します。相談だけでも構いません。
AI導入について相談する