Skip to Content
ユーザーガイド機能フォローアップの提案

フォローアップ提案

Qwen Code は次に入力する内容を予測し、入力エリアにゴーストテキストとして表示します。この機能は LLM を呼び出して会話のコンテキストを分析し、自然な次のステップを提案します。

この機能は CLI でエンドツーエンドで動作します。WebUI ではフックと UI の基盤処理は利用可能ですが、提案を表示するにはホストアプリケーションが提案の生成をトリガーし、フォローアップの状態を連携する必要があります。

仕組み

Qwen Code の応答が完了すると、短い遅延(約 300ms)の後に入力エリアにグレー表示のテキストとして提案が表示されます。例えば、バグ修正後には次のように表示されることがあります:

> run the tests

提案は会話履歴をモデルに送信し、次に自然に入力する内容を予測することで生成されます。応答に明示的なヒント(例:Tip: type post comments to publish findings)が含まれている場合、提案されるアクションは自動的に抽出されます。

提案の適用

キーアクション
Tab提案を適用し、入力欄に反映します
Enter提案を適用し、即座に送信します
Right Arrow提案を適用し、入力欄に反映します
任意の文字入力提案を閉じて通常通り入力します

提案が表示される条件

提案は、以下のすべての条件を満たしたときに生成されます:

  • モデルの応答が完了している(ストリーミング中ではない)
  • 会話内でモデルのターンが少なくとも 2 回発生している
  • 最新の応答にエラーが含まれていない
  • 保留中の確認ダイアログがない(例:シェルの確認、権限)
  • 承認モードが plan に設定されていない
  • 設定で機能が有効になっている(デフォルトで有効)

提案は非インタラクティブモード(例:ヘッドレス/SDK モード)では表示されません。

提案は以下のタイミングで自動的に閉じられます:

  • 入力を開始したとき
  • 新しいモデルのターンが開始されたとき
  • 提案が適用されたとき

高速モデル

デフォルトでは、提案はメインの会話と同じモデルを使用します。より高速かつ低コストな提案を得るには、専用の高速モデルを設定してください:

コマンド経由

/model --fast qwen3-coder-flash

または、モデル名を指定せずに /model --fast を実行して選択ダイアログを開くこともできます。

settings.json 経由

{ "fastModel": "qwen3-coder-flash" }

高速モデルはプロンプトの提案と投機的実行に使用されます。設定されていない場合、フォールバックとしてメインの会話モデルが使用されます。

メインモデルの思考設定に関わらず、すべてのバックグラウンドタスク(提案の生成と投機的実行)では思考/推論モードが自動的に無効になります。これにより、これらのタスクに不要な内部推論でトークンを浪費するのを防ぎます。

設定

これらの設定は settings.json で構成できます:

設定デフォルト説明
ui.enableFollowupSuggestionsbooleantrueフォローアップ提案の有効/無効
ui.enableCacheSharingbooleantrueコスト削減のためにキャッシュ対応のフォーククエリを使用する(実験的)
ui.enableSpeculationbooleanfalse送信前に提案を投機的に実行する(実験的)
fastModelstring""プロンプト提案と投機的実行に使用するモデル

設定例

{ "fastModel": "qwen3-coder-flash", "ui": { "enableFollowupSuggestions": true, "enableCacheSharing": true } }

モニタリング

提案モデルの使用状況は /stats の出力に表示され、提案の生成に高速モデルが消費したトークン数が確認できます。

高速モデルは /about の出力の「Fast Model」項目にも表示されます。

提案の品質

提案は有用性を確保するため、品質フィルターを通過します:

  • 2〜12 語(CJK: 2〜30 文字)、合計 100 文字以内であること
  • 評価的な表現(“looks good”、“thanks” など)でないこと
  • AI 特有の一人称表現(“Let me…”、“I’ll…” など)でないこと
  • 複数の文やフォーマット(Markdown、改行など)を含まないこと
  • メタ的なコメント(“nothing to suggest”、“silence” など)でないこと
  • エラーメッセージやプレフィックス付きラベル(“Suggestion: …” など)でないこと
  • 1 語の提案は一般的なコマンド(yes、commit、push など)にのみ許可されます
  • スラッシュコマンド(例:/commit)は常に 1 語の提案として許可されます
Last updated on