Релиз llama.cpp b10121: оптимизация рендеринга интерфейса при стриминге токенов
В релизе llama.cpp b10121 проведена глубокая оптимизация рендеринга интерфейса при стриминге токенов, что снизило задержку до миллисекунд. Ускорение до 80 раз.
В репозитории llama.cpp опубликован релиз b10121, в котором авторы провели глубокую оптимизацию рендеринга интерфейса во время потокового вывода (стриминга) токенов. Раньше каждый новый токен на экране заметно тормозил работу — теперь накладные расходы снижены до миллисекунд.
Метрики до и после
Разработчики замерили производительность на нескольких сценариях. Результаты показывают кратное ускорение в самых разных условиях:
- Сценарий 1: с 210,36 ms до 2,67 ms на токен (ускорение ~80×).
- Сценарий 2: с 11,58 ms до 0,62 ms (~19×).
- Сценарий 3: с 22,02 ms до 3,33 ms (~7×).
- При 40 сообщениях в истории: с 3,07 ms до 1,36 ms (~2,3×).
Как это достигается
В комментариях к коммиту указано, что оптимизация основана на замерах производительности (performance harness) и выполнена при помощи ассистента Claude Opus 4.8. Конкретные изменения затронули внутренние алгоритмы отрисовки UI — снижено количество операций, приходящихся на каждый новый токен в потоке.
Что это даёт пользователям
Для тех, кто использует llama.cpp с веб-интерфейсом или локальным чатом, обновление означает заметно более плавный вывод текста, особенно на длинных сессиях. Задержка при появлении каждого нового символа или слова практически перестаёт ощущаться — взаимодействие с моделью становится почти таким же быстрым, как в обычном текстовом редакторе.
Источник: https://github.com/ggml-org/llama.cpp/releases/tag/b10121