Я написал Зябру - локальный переключатель раскладки: набрал “ghbdtn” вместо “привет”, программа сама стирает и переписывает правильно. А недавно задумался: а есть ли от неё реальная польза именно при работе с LLM, или это просто удобство без измеримого эффекта? Решил проверить не на словах, а цифрами - благо под рукой свой локальный Qwen3.8-Flash-Next на Strata.
Первый прогон - и тревожные цифры
Идея простая: беру короткие фразы, которые реально мог бы случайно отправить не в той раскладке, и для каждой шлю модели два варианта - как задумано и как получилось бы без Зябры. Без системного промпта, без истории - просто один вопрос в одно сообщение.
Результат неровный и местами пугающий:
сообщение |
чисто |
мусор (без Зябры) |
|---|---|---|
Умничка) |
70 ток / 5.4с |
2356 ток / 148с, не расшифровала |
Спасибо, то что нужно! |
84 ток / 7.5с |
440 ток / 30с, расшифровала верно |
Погнали |
66 ток / 6.2с |
336 ток / 24с, расшифровала верно |
На “Evybxrf)” модель реально ушла перебирать ROT13 и шифр Цезаря, потратила почти полторы сотни секунд - и в итоге сдалась, спросив, что я имел в виду. Выглядело как отличный аргумент в пользу Зябры: экономия в десятки раз.
Стоп. А если это не первое сообщение в чате?
Тут я спохватился: в тесте не было ни системного промпта, ни истории переписки. А в реальности сообщение почти никогда не бывает первым и единственным - обычно уже идёт какой-то разговор на русском. Это меняет дело: без единого намёка на язык модель решает чистую головоломку с нуля, а с контекстом у неё есть за что зацепиться.
Проверил прямо на том же “Evybxrf)” (= “Умничка)”), три варианта:
контекст |
токены |
время |
результат |
|---|---|---|---|
без контекста |
2298 |
145с |
не расшифровала |
+ системный промпт “общаемся на русском” |
495 |
32с |
расшифровала (“умничк)”) |
+ одна предыдущая русская реплика в истории |
344 |
23с |
расшифровала точно |
С контекстом - в 6-7 раз дешевле и быстрее, чем без него, и почти без провалов. Живая история диалога сработала даже лучше, чем явный системный промпт.
Так сколько реально экономит Зябра
Честный, не завышенный итог: реалистичная цена одного случайно отправленного сообщения в неверной раскладке - не катастрофические 2000+ токенов и две с половиной минуты, а скорее 350-500 токенов и 25-30 секунд, когда в чате уже есть русский контекст. Но и это в 4-7 раз дороже, чем если бы сообщение сразу дошло чистым (70-90 токенов, 5-7 секунд).
При паре десятков таких опечаток за вечер набегает не фатально, но вполне ощутимо - несколько тысяч лишних токенов и лишних пара минут ожидания, плюс риск, что модель так и не расшифрует короткую фразу и просто переспросит. Зябра не творит чудес с кошельком, но и не бесполезная игрушка: она убирает конкретный, измеримый источник трат - причём именно там, где его не видно, пока не измеришь.
Код и бинарники - на github.com/DmNep/zyabra, для Windows, Linux и macOS, бесплатно. Ключевое: она полностью локальная - не пишет набранное на диск, не ведёт журнал клавиш, не трогает буфер обмена и не открывает сеть вообще. В памяти держится только текущее незавершённое слово и одна последняя замена, ничего больше. Пользуюсь каждый день.
Комментарии (8)

programmer76
13.11.2026 17:23спасибо за утилитку, это мое спасение.. я непрерывно путаюсь в раскладках ... поставил, попробовал, заплакал от удовольствия
MaxAkaAltmer
Вот мой вариант: https://github.com/MaxAkaAltmer/ruen-switcher