Почему Qwen3-Coder-Next отказывается запускаться
Вы скачали свежую модель Qwen3-Coder-Next, открыли LM Studio, выбрали файл GGUF — и вместо ожидаемого интерфейса для кодинга получаете красную ошибку: Unknown StringValue filter: safe. Знакомо? Добро пожаловать в клуб.
Эта ошибка не просто мешает работе — она блокирует доступ к одной из лучших кодинг-моделей 2026 года. Qwen3-Coder-Next (особенно версии 34B и 70B) показывает впечатляющие результаты на HumanEval и MBPP, но все это бесполезно, если модель не запускается.
Ошибка возникает потому что LM Studio пытается применить Jinja-шаблон к модели, которая использует другой формат промптов. Это не баг модели — это несоответствие между конфигурацией модели и тем, как LM Studio её интерпретирует.
Корень проблемы: Jinja против ChatML
На самом деле ошибка Unknown StringValue filter: safe — это симптом более глубокой проблемы. Qwen3-Coder-Next использует формат ChatML для промптов (с тегами <|im_start|> и <|im_end|>), а LM Studio по умолчанию пытается применить Jinja-шаблоны.
Почему так происходит? Потому что конфигурация модели в GGUF-файле содержит ссылку на шаблон, который LM Studio не может найти или правильно интерпретировать. А конкретно — фильтр safe, который в Jinja используется для экранирования HTML, но в ChatML-формате просто не существует.
Если вы сталкивались с похожими проблемами в других моделях, вам может быть интересна статья про фиксы для Nemotron Nano 3 — там тоже приходится править конфигурацию промптов.
Шаг за шагом: исправляем ошибку за 5 минут
1 Находим файл конфигурации модели
Первое — нужно понять, где LM Studio хранит конфигурации моделей. На Windows это обычно:
C:\Users\ВАШ_ПОЛЬЗОВАТЕЛЬ\AppData\Local\LM Studio\chat\Template Files
На macOS:
~/Library/Application Support/LM Studio/chat/Template Files
На Linux:
~/.local/share/LM Studio/chat/Template Files
Ищите файлы с расширением .tmpl. Для Qwen моделей обычно используется qwen.tmpl или qwen-chat.tmpl.
2 Проверяем текущий шаблон
Откройте файл шаблона в любом текстовом редакторе. Если видите что-то вроде:
{{ system_prompt if system_prompt else '' }}
{% for message in messages %}
{{ message.role }}: {{ message.content | safe }}
{% endfor %}
assistant:
Вот он — виновник! Фильтр | safe на строке с message.content.
safe в Jinja отключает автоматическое экранирование HTML. В контексте ChatML это не нужно и вызывает ошибку, потому что Qwen3-Coder-Next не использует Jinja для форматирования промптов.3 Исправляем шаблон
Замените проблемную строку. Вместо:
{{ message.role }}: {{ message.content | safe }}
Напишите:
{{ message.role }}: {{ message.content }}
Или, что еще лучше, используйте правильный ChatML-формат для Qwen:
<|im_start|>{{ message.role }}
{{ message.content }}<|im_end|>
Полный исправленный шаблон должен выглядеть так:
{{ system_prompt if system_prompt else '' }}
{% for message in messages %}
<|im_start|>{{ message.role }}
{{ message.content }}<|im_end|>
{% endfor %}
<|im_start|>assistant
4 Перезагружаем LM Studio
Сохраните изменения в файле шаблона. Полностью закройте LM Studio (не просто сверните, а завершите процесс). Запустите заново.
Теперь при выборе Qwen3-Coder-Next ошибка должна исчезнуть. Если нет — проверьте, что вы правили правильный файл шаблона. В LM Studio можно посмотреть, какой шаблон используется для модели, в настройках модели во вкладке "Advanced".
Альтернативный метод: смена шаблона в интерфейсе
Если не хочется лезть в файловую систему, есть более простой способ:
- В LM Studio откройте настройки модели (шестеренка рядом с названием модели)
- Перейдите на вкладку "Advanced"
- В разделе "Chat Template" выберите "None" или "ChatML"
- Сохраните изменения и перезагрузите модель
Этот метод работает в 80% случаев. Но если LM Studio все равно пытается применить Jinja-шаблон, придется использовать файловый метод.
Почему это происходит именно с Qwen3-Coder-Next?
Qwen3-Coder-Next — это не просто очередная кодовая модель. Это гибридная архитектура, которая объединяет подходы из Qwen2.5-Coder и экспериментальные фичи из исследовательских веток. Модель использует модифицированный токенайзер и специальные токены для инструментов (tool calling).
Из-за этих особенностей стандартные шаблоны LM Studio часто не подходят. Особенно если вы скачали квантованную версию от сообщества — там могли "забыть" обновить метаданные в GGUF-файле.
Кстати, если вы используете llama.cpp напрямую (без LM Studio), подобные проблемы тоже возникают. Об этом подробно написано в статье про кривой расчёт key_gdiff в llama.cpp.
| Версия модели | Формат промптов | Рекомендуемый шаблон |
|---|---|---|
| Qwen3-Coder-Next 7B | ChatML | qwen-chat.tmpl (исправленный) |
| Qwen3-Coder-Next 34B | ChatML с tool tokens | qwen-chat.tmpl или ChatML |
| Qwen3-Coder-Next 70B | ChatML с расширенным контекстом | ChatML (без Jinja) |
Частые ошибки и как их избежать
Ошибка 1: "Шаблон исправлен, но модель все равно не работает"
Проверьте, не используете ли вы устаревшую версию LM Studio. На 2026 год актуальна версия 0.3.7 или выше. В более старых версиях есть баги с кэшированием шаблонов.
Ошибка 2: "Модель запускается, но выдает бессмысленный код"
Возможно, вы перестарались с исправлениями и удалили важные части шаблона. Скачайте оригинальный шаблон для Qwen с GitHub репозитория LM Studio и внесите только минимальные изменения (удаление | safe).
Ошибка 3: "Работает, но tool calling не функционирует"
Это уже другая проблема. Qwen3-Coder-Next имеет встроенную поддержку tool calling, но для её активации нужны специальные токены в промпте. Подробнее об этом читайте в статье про сломанный tool calling в Qwen3-Coder-Next.
Профилактика на будущее
Чтобы не сталкиваться с подобными проблемами при скачивании новых моделей:
- Всегда проверяйте источник модели. Официальные квантования от TheBloke обычно имеют правильные метаданные
- Перед загрузкой большой модели (70B) сначала скачайте маленькую (7B) и проверьте её работу
- Используйте
llama.cppс флагом--verbose-promptдля отладки форматирования промптов - Создайте резервную копию рабочих шаблонов перед обновлением LM Studio
Если вы работаете с другими моделями семейства Qwen, имейте в виду: Qwen3-VL и Qwen3-Next могут иметь схожие проблемы. Например, в статье про галлюцинации tool-calls в Qwen3-VL описаны похожие сложности с конфигурацией.
Что делать, если ничего не помогает
В 1% случаев проблема может быть глубже. Возможно, сам GGUF-файл поврежден или содержит некорректные метаданные. В этом случае:
- Попробуйте другую квантованную версию (например, Q4_K_M вместо Q8_0)
- Используйте
llama.cppнапрямую для проверки модели - Скачайте оригинальную модель в формате Hugging Face и конвертируйте заново с помощью последней версии
llama.cpp
Кстати, о производительности: если после исправления ошибки модель работает медленно, возможно, проблема в настройках GPU offload. Об этом есть отдельная статья — LM Studio на 128 ГБ ОЗУ.
Самая частая причина персистирующих ошибок — конфликт версий. Убедитесь, что у вас актуальные версии всех компонентов: LM Studio 0.3.7+, llama.cpp от января 2026 или новее, драйверы CUDA 12.6+ для NVIDIA или ROCm 6.2+ для AMD.
Почему это важно не только для Qwen3-Coder-Next
Проблема с Unknown StringValue filter: safe — это симптом растущей боли в экосистеме локальных LLM. По мере усложнения моделей и их специализации (кодинг, vision, инструменты) стандартизация форматов промптов отстает.
То, что мы видим сегодня с Qwen3-Coder-Next, завтра будет с десятками других специализированных моделей. Умение быстро диагностировать и исправлять подобные конфликты — это не просто навык, а необходимость для любого, кто серьезно работает с локальными AI.
И последнее: если вы нашли этот гайд полезным, но столкнулись с другими проблемами при работе с кодинг-моделями, посмотрите статью про ошибки контекста в Qwen Coder 30B. Там разобраны смежные темы про управление памятью и квантование.
А теперь — запускайте своего Qwen3-Coder-Next и пишите код. Только помните: даже самая умная модель не заменит понимания того, что вы делаете. Она инструмент, а не волшебная палочка. Хотя иногда разница неочевидна.