AI Navigate

llama.cpp における qwen3.5 モデルの思考予算を穏やかに終了させる手法

Reddit r/LocalLLaMA / 2026/3/16

💬 オピニオンTools & Practical UsageModels & Research

要点

  • qwen3.5 モデルが llama.cpp 上で動作する際に、思考予算がハードカットとして機能して突然途中の文で終わってしまうのを防ぐ修正を実装しました。
  • この解決策は、予算閾値の後に最終的な「最終回答: 上記の分析に基づく」を挿入するためのプロンプト注入フラグを使用して、モデルが簡潔な要約で終わるようにします。
  • 残りの予算は大きい場合があり、要約が生成されるまで数分間モデルの推論を続け、その後要約が出力されるとすぐに手早く総括します。テストは qwen3.5 27b、35ba3b、9b で実施されました。
  • このアプローチは性能低下を招く可能性があり、最も穏やかなバリアントではありませんが、テストされたシナリオでは穏やかな終了を達成します。
  • 著者は llama.cpp の AI コードに関するガイドラインのため PR を提出しませんでしたが、他の人にコードのレビューや貢献を歓迎します。

推論予算がただのハードカットになる問題を修正し、モデルが文の途中で締めの一言を言い切ってしまう事態を防ぎました。

これは最も上品な方法ではありません。おそらく性能低下も生じます。

ただ、停止されないときにはモデルは数分間推論を行います。

ある程度の予算の後に、以下のような文が挿入されると分かりました:

「Final Answer: Based on my analysis above,」

モデルはそれが自分のアイデアであるかのように書き続け、要約で優雅に締めくくります。

この機能をプロンプト注入フラグで実装しました。例えば300トークンの後にサマリー用の残予算を取ります。残予算はかなり多く、数千トークン程度になることもあり、私のテストではその後モデルはすぐに終了します。

私はClaudeコードでこのコードを書いたのでプルリクを作成しませんでした。動作は予定どおりでしたが、llama.cpp のルールでは PR にAIコードの使用を許可していないとされており、保守者をAIコードで圧倒したくありません。ですので、洞察を共有する方を選びました。

誰かがコードをレビューしてPRを作成したい場合は遠慮なくどうぞ。コードは喜んで共有します。

よろしくお願いします。

qwen3.5 27b、35ba3b、9bで正常にテスト済み。

GitHub の Issue: https://github.com/ggml-org/llama.cpp/issues/20632

投稿者 /u/marinetankguy2
[リンク] [コメント]