応答速度と加速

MTPとは:複数トークン予測の仕組みと適用条件

同じデバイスと同じモデルでMTPを有効にするとより速くなったという話を見ます。デバイスを変更せずに待ち時間を短縮できるのは嬉しいことです。しかし、なぜある質問では差が小さいのでしょうか。事前に作成されたトークンの中で、実際の回答に残るトークンの数をまず確認してみましょう。

次のトークン一つを待つのではなく

一般的な生成では、これまでの文をもとに次のトークンを生成します。そのトークンが決まらなければ、次のトークンは生成できません。MTPは、複数の未来トークンを予測するように学習した追加の予測部分を活用します。まず、次の数トークンの候補を準備し、そのモデルがそれらをまとめて確認するようにします。

この段階では候補をすぐに正解として結びつけません。前に進んで検証を通過した部分を採用し、ズレた部分では本モデルの結果に従います。回答の品質を低下させるために、小さな草案をそのまま混ぜるという手法ではありません。

トークンを1つずつ生成する基本的な方法と、複数の候補を提示した上で承認されたトークンのみを使用する高速化手法の比較図
これは1トークンずつ生成する基本的な方法であり、以下は複数の候補を提示し、一致する部分のみを受ける方法です。

3つ提案しても、すべて採用されるとは限らない

複数の候補を生成しても、初期部分で誤りがあれば後続は利用できません。候補の生成および検証には時間がかかり、削除された部分が多ければ利得は減少します。逆に連続して複数トークンが受け取られれば、本モデルが1トークンずつ繰り返す回数を減らすことが可能です。

そのため、一度に予測する長さを常に最大に設定するとは限りません。受け入れたトークンの割合だけでなく、一度に平均でいくつトークンを残したか、そのプロセスでいくつ秒がかかるかを一緒に見なければなりません。同じ質問についても、設定によってバランスが変わります。

メインモデルで複数の未来トークンの予測枝が伸び、検証結果で再び結合される図
MTPの追加予測部分は、2番目以降のトークン候補を事前に生成して検証するチャンクを準備します。

ボタンよりもモデルファイルをまず確認してください

モデルファイルにMTP用の重みが含まれており、実行プログラムもその構造をサポートしている必要があります。変換プロセスで追加の重みが欠落した場合、一般的な回答は可能であるものの、MTPは実行されない可能性があります。設定画面で「オン」が表示されていることと、実際にそのパスで実行されていることとは区別して扱う必要があります。

メモリも追加で必要になる可能性があります。モデル本体だけが入る程度のデバイスでは、MTPと長いコンテキストを同時に有効にすると余裕がなくなる可能性があります。この機能は、メモリの不足を補うものではなく、サポートされる環境において生成プロセスを変更する選択肢です。

提案された複数のトークンの中から、前から連続して承認された深さだけが回答に含まれる図
候補が連続して多く承認されるほど、1回の検証でより遠く進むため、加速利得が大きくなります。

普段の質問で、MTPのオン・オフを比べて記録する

まず、MTPを用いない場合でも同じモデルが正常に応答しているかを確認します。準備実行後、同じ入力を3回送信し、中央値を比較することで、偶然に良好な結果が出た場合の影響を軽減できます。コードの修正と自由な文章作成をそれぞれ別々に確認するのがよいです。

速度とともに回答が正常に終了したか、ツール呼び出し形式や重要な値が異常でないかを確認してください。トークン生成が速くても、繰り返し出力が発生したり、頻繁に実行が失敗する場合は、その設定は維持すべきではありません。効果が小さい場合、その機能を無効にすることも正常なチューニング結果です。

機器を購入する前に

MTPが適切にマッチする組み合わせは、同じ設備をより長期間にわたり有効に使用できるようにしてくれます。ただし、特定の質問の最高バッファ率をすべてのモデルの基本性能として計算するのは避けてください。現在使用中のモデルおよびアプリで確認された結果が優先です。

すでに装置で十分に速くなっているなら、より高価な製品を検討する必要は少なくなります。逆にMTPがオンになっていても、長いドキュメントを読み込む待ち時間が変わらない場合、問題はプリフィルの側にある可能性があります。速くなったことよりも、どの待ち時間の減少が確認されたかを把握することが、次の選択を正確に導く鍵になります。