Skip to Content
Руководство для пользователейВозможностиПоследующие предложения

Предложения продолжения

Qwen Code может предсказывать, что вы хотите напечатать дальше, и отображать это в виде текста-заполнителя в поле ввода. Эта функция использует вызов LLM для анализа контекста разговора и создания естественного предложения следующего шага.

Эта функция работает полностью (end-to-end) в CLI. В WebUI доступны хук и инфраструктура UI, но приложения-хосты должны инициировать генерацию предложений и настроить состояние продолжения для их отображения.

Как это работает

После завершения ответа Qwen Code в поле ввода через короткую задержку (~300 мс) появляется предложение в виде затемнённого текста-заполнителя. Например, после исправления ошибки вы можете увидеть:

> run the tests

Предложение генерируется путём отправки истории разговора модели, которая предсказывает, что бы вы естественно напечатали дальше. Если ответ содержит явную подсказку (например, Tip: type post comments to publish findings), предлагаемое действие извлекается автоматически.

Принятие предложений

КлавишаДействие
TabПринять предложение и вставить его в поле ввода
EnterПринять предложение и вставить его в поле ввода
Стрелка вправоПринять предложение и вставить его в поле ввода
Любой вводОтклонить предложение и вводить как обычно

Enter заполняет поле ввода, а не отправляет, поэтому принятие предложенной команды со слешем (например, /clear) никогда не выполняется автоматически — вы отправляете её сами повторным нажатием Enter.

Когда появляются предложения

Предложения генерируются, когда выполняются все следующие условия:

  • Модель завершила свой ответ (не во время потоковой передачи)
  • В разговоре было как минимум 2 оборота модели
  • В последнем ответе нет ошибок
  • Нет ожидающих диалогов подтверждения (например, подтверждение shell, разрешения)
  • Режим утверждения не установлен на plan
  • Функция включена (по умолчанию включена — установите ui.enableFollowupSuggestions в false, чтобы отключить)

Предложения не будут появляться в неинтерактивном режиме (например, в режиме headless/SDK).

Предложения автоматически отклоняются, когда:

  • Вы начинаете печатать
  • Начинается новый оборот модели
  • Предложение принято

Быстрая модель

По умолчанию предложения используют ту же модель, что и основной разговор. Для предложений с меньшей задержкой настройте выделенную быструю модель:

Через команду

/model --fast qwen3-coder-flash

Или используйте /model --fast (без имени модели), чтобы открыть диалог выбора.

Через settings.json

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

Быстрая модель используется для предложений подсказок и спекулятивного выполнения. Если не настроена, используется основная модель разговора.

Примечание о стоимости: Быстрая модель снижает задержку, но не всегда снижает стоимость. Генерация предложений использует кэш префиксов вашего разговора (через ui.enableCacheSharing, по умолчанию включён) — но кэш префиксов привязан к модели. Направление fastModel на другую модель создаёт отдельный кэш, поэтому вся история разговора повторно тарифицируется как некэшированный ввод для быстрой модели. В длинных разговорах использование по умолчанию (основная модель + общий кэш) может быть дешевле, чем быстрая модель, поскольку большая часть истории тарифицируется по льготной ставке кэшированного ввода. Устанавливайте fastModel, когда задержка важнее стоимости за шаг.

Режим размышлений/рассуждений автоматически отключается для всех фоновых задач (генерация предложений и спекуляция), независимо от настройки размышлений вашей основной модели. Это позволяет не тратить токены на внутренние рассуждения, которые не нужны для этих задач.

Конфигурация

Эти настройки можно задать в 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 символов всего
  • Не может быть оценочным (“выглядит хорошо”, “спасибо”)
  • Не может использовать голос ИИ (“Позвольте мне…”, “Я…”)
  • Не может быть несколькими предложениями или содержать форматирование (markdown, переносы строк)
  • Не может быть мета-комментарием (“нечего предложить”, “тишина”)
  • Не может быть сообщениями об ошибках или префиксами (“Предложение: …”)
  • Однословные предложения разрешены только для распространённых команд (yes, commit, push и т.д.)
  • Команды со слешем (например, /commit) всегда разрешены как однословные предложения
Last updated on