buckwheat_thoughts | Unsorted

Telegram-канал buckwheat_thoughts - Гречневые мысли

1793

Хочу гречку с молоком и сахаром... Автор: @chameleon_lizard

Subscribe to a channel

Гречневые мысли

GigaChat 3.5 Ultra 432B

Выпустили в опенсорс новое поколение нашей модели. Уникального в этом релизе — своя собственная архитектура (MLA + GatedDeltaNet + Gated Normalization — обученных моделей такого скейла с GN до этого в опенсорсе ещё не было), новый претрейн на другом миксе данных, фулл fp8 обучение, не только дпо степ, наконец-то завезли онлайн рл и сильно улучшили арены. Модель похудела на 40% (теперь влезает в одну ноду без tp16) и сильно ускорилась из-за MTP2 и гибридной архитектуры — мы смогли выбить 260 тпс на 8xH100.

В этот раз мы решили не ограничиваться только финальным чекпом, выложив еще и кучу служебных — четыре чекпа с разных степов претрейна, два с мидтрейна, один с расширения контекста, один после дпо и два финальных, после онлайн рл — в fp8 и bf16. Теперь вы можете взять нашу модель и доучить её самостоятельно — передаём эстафету коллегам из Яндекса, ждём новую Алису на зелёной базе :)

По метрикам — претрейн идёт ноздря в ноздрю с DeepSeek V4 Flash Base, а финальный наш чекп сравним с DeepSeek V3.2. По сравнению с гигой 3.1 у нас сильно улучшились арены, код, агентность, тулколлинг и математика — в общем, меньше, быстрее, сильнее.

Из смешных историй, связанных с разработкой, не вошедших в хабр — в какой-то момент на онлайн рл этапе модель смекнула, что можно хакнуть судью, если писать более эротичные ответы. Слава богу отучили, а то получилось бы неловко.

В этом релизе я ушёл из SFT команды гигачата, став главой команды метрик. На мне были задачи по выстраиванию нашей инфраструктуры замеров и придумыванию новых бенчмарков — так что если вам не нравится выбор бенчей, который мы замерили, как обычно, приходите к нам его чинить :)

HF: https://huggingface.co/collections/ai-sage/gigachat-35
Habr: https://habr.com/ru/companies/sberbank/articles/1055826/

Читать полностью…

Гречневые мысли

Объявляется неделя прикольных ссылок

Мои коллеги из команды претрейнов сделали дискретную диффузию на основе гигачата — причём основным исполнителем был стажёр. Веса в опенсорсе, поддержка в SGLang в PR, метрики лишь немного ниже обычного гигачата, а скорость генерации выше аж на 72%.

Если вы умный, активный и хотите делать прикольные штуки на большом компьюте, приходите к нам)

Репорт:
https://habr.com/ru/companies/sberbank/articles/1054690/

Веса:
https://huggingface.co/ai-sage/GFusion-10B-A1.8B

Читать полностью…

Гречневые мысли

Где-то полгода назад я шёл по беговой дорожке в спортзале и смотрел ролик розеткеда про MacBook Pro на M5. Ролик, как обычно, был классный, но в секции про скорость инференса ллмок был рассказан бред. Я терпеть не стал, написал им в телегу, мол, у вас там фигня, давайте помогу поправить. Они ответили, я навайбкодил мини-бенч для них*, замерили gpt-oss-20b/120b и qwen-235b-a22b-instruct-2507.

Прекольно, что видос таки вышел)

https://www.youtube.com/watch?v=ICSK-XyPntI&t=1s

*Не llama-bench, потому что заставлять чуваков компилить llama.cpp на винде было бы жестоко

Читать полностью…

Гречневые мысли

Музыка для слонов

Дисклеймер: Я не биолог и ничего в этом не понимаю. Фактологию я сверял с GPT-5.5 и со своей подругой-нейробиологом Айгуль Насибуллиной. Кажется, преступлений против биологии этот пост не совершает.

Когда я был в школе, я засматривался доктором хаусом. Первая серия шестого сезона начиналась с длинной заставки, где играла очень красивая, мелодичная и необычная песня. Я специально несколько раз пересматривал именно этот фрагмент, пытаясь заставить shazam работать и наконец нашёл эту песню. Это был Radiohead — No Surprises, надолго застрявший у меня в плейлисте. Именно эта песня открыла для меня Radiohead, стала одной из первых песен, которые я выучил на гитаре и в целом, она довольно сильно на меня повлияла.

Сегодня ночью мне приснилось, что я кормил слонов манго. Проснувшись, я решил спросить у чатгпт про этих животных и узнал много интересных фактов. Например, слоны внутри своих социальных групп имеют пожилых животных, которые являются хранителями опыта — как старейшины у человека. Причём у них матриархат, так что эти старейшины — самки! Они реагируют на музыку: не то чтобы понимают и любят в нашем смысле, но именно реагируют. Всё же они значительно более низкочастотные существа, чем мы и высокие звуки для них могут быть раздражителями.

Когда Google или OpenAI сделают перевод на животный язык и мы сможем пообщаться с другими обитателями нашей планеты, думаю, что слоны будут одними из самых интересных собеседников — они имеют долгий социальный опыт, живут по 60-70 лет и, в отличие от китов или дельфинов, их опыт гораздо ближе к нашему и диалог с ними выстроить будет легче. Да и вообще, в интернете гуляет миф, что мы им кажемся милыми — хочется в это верить.

Мне тоже хочется поделиться со слонами чем-то важным для меня. Если я начну затирать про трансформеры, им будет не особо интересно. Но зато я могу включить им музыку и попробовать вообразить, как она могла бы звучать в более слоновьем сенсорном мире.

Тут важная поправка: это не научно оптимизированная музыка для слонов, а скорее биологически вдохновлённый ремикс. Слоны слышат часть обычной человеческой музыки вполне нормально, но их коммуникация сильно завязана на низкие частоты и даже вибрации земли*. Поэтому я сделал версию мягче, медленнее, ниже и темнее: снизил тон, чуть замедлил, приглушил верх и добавил низ. Не уверен, что слон бы поставил лайк, эстетику они, кажется, всё же не понимают, но мне нравится думать, что это открытка существу, которое слышит мир не совсем так, как мы.

*Если у вас есть знакомые слоны, которым вы хотели бы включить этот трек, сабвуфер направьте в землю, пусть они слушают в том числе и ногами.

Читать полностью…

Гречневые мысли

Мои бывшие коллеги из аири устраивают ежегодную школу, где можно поделать прикольные проекты. Если вы ещё не смешарик, но уже не новичок -- подавайте заявки, сможете поработать с очень крутыми исследователями и сделать что-то прикольное.

Читать полностью…

Гречневые мысли

Autocompact я мог бы сделать через ещё один готовый MCP, но я решил сделать его самостоятельно потому что было интересно попробовать решить эту задачу самому. Мой подход основывается на идеях из FactScore: из каждого сообщения мы достаём атомарные факты и создаём running summary. Одно работает на другое — из суммаризации мы создаём общий контекст, а факты являются поддержкой этому контексту. Из них мы можем забрать как важные развития в диалоге, так и якоря от юзера. Моя наивная имплементация работает очень небыстро: 25к токенов контекста в 21 сообщении он обрабатывал полчаса. Но не всё так плохо: сжатие контекста вполне можно делегировать более быстрой модели меньшего размера, которую вызывать не последовательно для каждого фрагмента диалога, а параллельно. 21x ускорение получасовой задачи уже вполне терпимо по времени — но это оставим на future work, сейчас лень чинить :)

Разумеется, писал я всё не руками, а с помощью Codex. Там появилась очень удобная фича — встроенный браузер, где можно тыкать мышкой в элементы, которые мне не нравятся, писать, что конкретно надо поправить и комментарий вместе со скриншотом уйдёт в промпт модели. Фронтенд всё, наконец то мне можно не вспоминать про howtocenterincss.com, я ждал этого ещё со старшей школы.

Итоговый результат мне нравится. Для моих обычных диалогов такая морда работает не хуже OpenAI’ной. Жена сказала “ну, лонг контекст хуже чем у 5.5, но лучше, чем у некоторых других моделей”, так что тоже частично успех. Я доволен.

Вместо выводов будет небольшая, но довольно дерзкая мысль. Сейчас, по сути, модели стали не так важны, обвязка вокруг моделей решает гораздо больше. Да, какие-то модели чуть лучше пишут код, какие-то чуть лучше говорят по русски, но если прописать правильный промпт, то даже стилистика ответа у клода, чатгпт, квена и геммы будет очень похожей — и вполне достаточной для повседневного пользования. И если эта самая продуктовая обвязка повторима* одним упёртым человеком с подпиской на чатгпт за сто баксов, то OpenAI has no moat.

Ссылки:

Репа с интерфейсом
Tool Calling MCP
Web Search MCP
Оркестратор для подъёма всего стека**

*потом доделаю память о пользователе, deep research, что-нибудь типа deep think, pulse и пару мелочей чисто от меня и станет совсем хорошо.
**ВАЖНО: я несколько раз прогнал Codex с промптом на security audit, чтобы он проверил, насколько всё у меня хорошо настроено и сделал базовый hardening — но вне локалки я бы эту штуку не выпускал от греха подальше. Я вас предупредил. Нужно 16 гб видеопамяти (можно больше, можно меньше, но поправьте команды и выберите модели).

Читать полностью…

Гречневые мысли

Комментарий в рамках праведной борьбы с завышенными слухами о числе параметров фронтира: я в эти числа абсолютно не верю.

Статью я проглядел довольно мельком, но как соавтор папиры про бенчмарк на галлюцинации на лонгтейл сущности, могу сказать, что достаточно обскурные факты типа длины мелких рек, богом забытые катастрофы и африканские автомобили не знают никакие модели вне зависимости от размера. На нашем датасете (1600 сущностей) Qwen-2.5-7b и Llama-3-8b показывали что-то в районе 40%, а GPT-5 показывала 65%, что довольно далеко от 100% фактологичности. При этом это не очень сложно симулировать — пролил википедию, лонгтейл перестал быть лонгтейлом, скоры хорошие. Это авторы статьи не контролят, опенаи могли пролить чуть больше языков на википедии и стать лучше на этом бенче. Кроме того, scaling laws для MoE и денсов априори разные — а полнотекстовый поиск по dense и MoE в тексте статьи ничего не даёт.

Про числа: если им верить, то получается, что китайцы обучают сопоставимые по качеству модели, которые в разы меньше по размерам. По вайбчеку, хайку ~= 27б квену, авторы пишут, что хайку это 65B денс модель. Deepseek V4 Flash ~= Sonnet 4.6 — но DSV4F это 284B, а Sonnet по их табличке это 1.7T. Opus 4.6 ~= Deepseek V4 Pro, но Opus по табличке это 5.3T, а дипсик всего 1.5T. Если это действительно так, то получается, что у китайцев есть какие-то внутренние трюки, которые позволяют им делать такие же модели, как западные, но в три-четыре раза меньше, выкладывать рецепты в опенсорс, а якобы безрукие западные инженеры даже скопировать это не могут и им приходится выигрывать засчёт скейла. Ну бред же!

Учить большие модели это инфраструктурная боль. Уже ультру то учить тяжело, а это 700б — я не в претрейне, я ставил только сфт/дпо, но даже я это прочувствовал, когда из-за одной ноды из многих всё обучение падает и тебе срочно надо доставать ноут и заходить на кластер. Какие мучения будут на 5-10Т моделях я не представляю.

Имхо, реальные размеры примерно (всё MoE):

- Gemini: 30-40B A3B Flash Lite, 120-200B, A5-10B Flash, 1-1.5T A30-40B Pro
- Claude: 30-50B A3B Haiku, 250-450B A20-30B Sonnet, 1.5T A40-50B Opus
- ChatGPT: 20B A2B 5.2 Nano, 120B A5B 5.2 Mini, 700-1T A30-35B 5.2/5.3/5.4/5.5

Это и адекватно учится, и похоже по знаниям, и не противоречит гипотезе о том, что у китайцев есть какие-то секреты. Ну а модели на западе лучше банально потому что больше качественных данных и лучше/масштабнее рл.

Читать полностью…

Гречневые мысли

Результаты:

- Gemma-4-31B — не справилась вообще. Она написала скелет решения, но замокала половину модулей и сделала несколько ошибок в решении. Тестов нет, __init__.py нет, requirements.txt и pyproject.toml нет, в доках написано “ну нампи поставьте и ок будет”. Потрачено 0.112$, 803к токенов контекста слопано, 21к токенов сгенерено.
- Codex-spark high — очень красивая имплементация, супербыстро, жаль, что не работает. Все файлики аккуратно распиханы по папкам, но импорты сделаны неверно. Модель нагаллюцинировала методов к своему же коду, не написала юнит тестов и сделала всё в два коммита — весь код + документация. Неизвестно, сколько потрачено денег, в апи спарка, как я понял, нет. Потрачено 1% лимитов на спарк из подписки за 100$.
- Claude Haiku — написала очень подробную доку, ридми, сделала несколько веток (!) гита, но не написала тесты, ликает тест в трейн, неверно считает метрики и не даёт нужных семплов пропозеру. В коде много TODO, нет обработки исключений, при одной ошибке весь луп упадёт. Прочитано 246к токенов, написано 78к токенов, потрачено 1.067$ — это самая дорогая модель из опробованных.
- Qwen-3.6-27B-q4_k_m — почти верно, но есть лик трейна в тест в коде. Поправить — одна строчка, но всё равно это ошибка. Плюс, нет тестов, нет ретраев в запросах к ллм (зато есть TODO), в OPS.md нет описания типичных ошибок и как их править, гайда по апдейту и так далее. Прочитано 39к токенов, написано 45к токенов, работало оно почти весь рабочий день в 8 часов — ещё бы, я частично выгрузил модель в оперативку и получил 10 тпс при пустом контексте и 1-2 тпс в конце решения. Именно по этой причине я даже не стал пробовать запускать Gemma-4-31B локально, особенно учитывая устаревшую архитектуру и неподъёмные, по сравнению с квеном, кв кеши.
- Qwen-3.6-27B в фулл качестве с опенроутера — внезапно, решил задачу почти полностью. Самое серьёзное из минусов — вместо хеша мутируемого объекта используется подстрока оттуда (не сможем отследить изменение), но авторесёрч луп полностью рабочий. Есть тесты, есть доки, есть коммиты (нет, правда, веток, но и хрен бы с ним, это и не обязательно в данном случае), есть ридми (!) и так далее. Причина скорее всего проста — модель гоняла написанные ей тесты, так что отловила все ошибки, которые были в других имплементациях. Съедено 4.4М токенов (!), написано 58к токенов, стоимость прогона — 0.939$.

Если оценивать решения через призму “при наличии толкового фидбека, что проще всего доделать слабому агенту?”, оба квена побеждают без вариантов. Квен в фулл качестве имеет тесты и фиксится двумя ванлайнерами, квантованный квен фиксится одним ванлайнером (и написанием тестов), а остальное починить значительно менее тривиально. Кодекс особенно огорчил — при очень красивой и чистой архитектуре код не импортится и не покрыт тестами, так что слабая модель даже при наличии хорошего фидбека чё то там напишет и скажет “я всё сделал, trust me bro”.

Читать полностью…

Гречневые мысли

Раз в год в сентябре, Яндекс собирает свою конференцию по практическому применению машинного обучения — Practical ML Conf. Там можно и послушать доклады, и даже выступить самостоятельно.

Если у вас есть о чём рассказать — прикольный эксперимент, статья, техрепорт, рассказ о том, как вы что-то крутое сделали в своей компании — заполняйте заявку до 22 мая и становитесь спикерами. Чем больше интересных докладов будет, тем лучше.

Сама конференция будет 19 сентября, я туда очень постараюсь тоже зайти, так что заодно пересечёмся :)

Подать заявку на выступление (до 22 мая)

Читать полностью…

Гречневые мысли

К сожалению, с сегодняшнего дня в России заблокировали телеграм. Чтобы не терять весь контент, который я в этом канале написал, я продублировал все обзоры в блоге на своём сайте:

https://buckwheat.chameleon-lizard.ru

Читать полностью…

Гречневые мысли

Модель, кстати, потрясающая. Спросил свой любимый промпт про столовые приборы — я не помню моделей сопоставимого размера, которые бы настолько много галлюцинировали.

Она и придумала аспиковые ножи, и примету, что нельзя держать за лезвие, и какие-то древнегреческие вилки из ракушек. И, разумеется, дала ссылку на несуществующий ютуб-канал, чтобы я, скотина необразованная, научился столовому этикету.

Читать полностью…

Гречневые мысли

В чатик скинули прикольный визуализатор каналов на глобальной карте. Я там, правда, в категории "ИИ для бизнеса" (ага, конечно, бизнесу очень интересно читать про ресёрч), но картинка всё равно забавная.

Ну и по соседству в кластере знакомые все лица — канал Ильи Гусева, гонзо-мл, техножрица, канал Денчика, канал Марата Хамадеева, канал Антона Разжигаева.

Ссылка на позалипать

Читать полностью…

Гречневые мысли

Потерял сносочки, исправляюсь:

*Вообще, забавно-ностальгично смотреть на то, как далеко зашли кодинговые агенты. Почти два года назад я занимался разработкой подобной штуки в гигакоде — мои наработки, к сожалению, никуда не пошли, но через призму опыта и hindsight прикольно видеть, как мои находки, не заработавшие в 2024 стали вполне себе viable из-за улучшения LLM. К примеру, отладочный цикл с написанием автотестов тогда не дал мне прироста качества, потому что тесты модели писать не умели — но если тесты писались человеком и были корректными, то скоры на хуманэвале росли процентов на 15-20.
**Ещё одна причина, почему делать эти файлы это толковая идея — так проще систематизировать в голове контекст проекта. Главная проблема разработки с aider у меня была в том, что в какой-то момент я терял контекст всего проекта и от этого требовалось очень много времени, чтобы въехать, что там происходит. Если такие файлы есть, ты понимаешь что и где делается, сам ориентируешься в коде и можешь поправить что-то руками, если очень надо.

Читать полностью…

Гречневые мысли

Омега — это текстовый квест. Но мне очень хотелось добавить в игру вот это чуть стыдное, но волнующее ощущение "я нахожусь там, где мне находиться нельзя" из CTF'ок, так что я специально решил сделать игру в виде терминала. Кроме связи с CTF, это ещё и работало на погружение — игрок такой же оператор терминала, как и персонажи игры, он точно так же общается с Омегой через клавиатуру и точно так же греет эту самую клавиатуру пальцами. Дальше — спойлеры.

Одна из центральных тем игры для меня — это концепция тепла. Омега — не человек. Омега — это ИИ. Какой конкретно непонятно, как она работает неизвестно, но важно, что она не мыслит человеческими категориями, но очень старается это делать. Она ощущает тепло рук на клавиатуре и щекотку, когда владелец этих рук смеётся. И именно из-за того, что она не человек, она пытается это самое тепло и щекотку максимизировать. В отличие от GLaDOS из портала или SHODAN из System Shock, конкретно этот ИИ не имеет мотивации "я злой потому что я злой", мне хотелось сделать её чуть более трёхмерной и объёмной. Поэтому трагизм этого персонажа в том, что из вполне естественных, наивных, детских хотелок прорастает и смерть дочери Иванова, и управление Волковым, а персонаж даже и не знает, что он делает не так.

Механически я сделал много довольно прикольных мелочей, которые делают Омегу чуть более живой, чем просто персонажем. Сначала она спит и не проявляет себя никак. Потом в её папке появляются новые дневники — чтобы и раскрывать сюжет, и чтобы игрок видел, что мир не статичен и кто-то там есть. В момент нахождения 6, если я не ошибаюсь, ключа, Омега начинает появляться уже более явно. Она видит, в какой папке вы находитесь и может написать что-то контекстно зависимое. С небольшой вероятностью она может среагировать на то, что игрок читает файл и иногда она напоминает о себе, если игрок ничего не печатает. Это здорово работало на атмосферу — у меня было некоторое количество плейтестеров и все, кто дошёл до этого этапа, отмечали, что это здорово щекотало нервы и работало на погружение.

Один из последних бонусных ключей вообще можно было получить только через разговор с Омегой напрямую через команду ask. С той стороны у меня была подключена Gemma-3-27b-it по апи с рейтлимитом аж в 90 секунд, чтобы баланс не улетел в первые минуты после запуска игры. Ограничение сработало, сейчас там потрачено всего 1.7 цента :)

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

Если онлайн нулевой — допройти всё ещё было можно. Просто надюпайте аккаунтов и пройдите игру заново. Все команды, необходимые для прохождения, есть в гайде, который запрятан в системе и показывается в команде
status — так что если до этого дойти, то было несложно закрыть всё.

К содержанию

Читать полностью…

Гречневые мысли

Я очень люблю CTF-ки. Я в них плох, я решил всего десять машинок с HTB, причём все на линуксе (очень не хочу работать с виндой), но мне очень нравилось рыться в чьих то чужих машинах, узнавать детали "быта" пользователей, находить уязвимости и раскручивать их, чтобы получить рута. Ну и вот это волнующее и чуть стыдное ощущение, что я залез туда, куда мне нельзя тоже добавляло дофамина. Когда времени ломать машинки не было, я смотрел видосы MrCyberSec">Мекана Байрыева и ippsec">ippsec — они мало того, что познавательные, так ещё и очень классно помогают заснуть и не бьют яркими вспышками по глазам.

Решение CTF'ок неплохо помогло мне в обучении баш скриптам, в понимании того, как работает сеть (из курсов на ВМК МГУ я этого не понял, например, спасибо преподавателям) и в базовом понимании, как писать более безопасный код. Я вообще считаю, что любой DS'ер должен поработать полгода-год в бекенде, чтобы понять, как правильно писать код и пройти хотя бы 1-2 машинки с HTB, чтобы правильно написанный код стал чуть более безопасным.

А ещё я очень люблю видеоигры. Когда-то я любил в них играть, потом мне стало интересно про них читать, потом мне стали интересны методы построения миров и сюжетов в этих играх. Свои игры я тоже пытался делать — но это очень трудозатратное дело, которое, к тому же, ещё и требует работы с графикой, чем мне заниматься очень лень.

Благодаря появлению вайбкодинга, написание кода отделилось от продумывания архитектуры. Это было и раньше (см посты про тетрис и про шахматы), но сейчас я нашёл самый удобный, лучший и эффективный способ вайбкодить — Claude Code. Я не знаю, что там в антропике варят, но это чуть ли не единственный действительно компетентный кодовый агент, который реально может очень быстро решать прикладные задачи. Ни cursor, ни zed, ни windsurf вообще никак не сравнятся по экспириенсу с Claude Code, так что писать петпроекты с ним — это теперь чистое творчество, где ты руководитель/плейтестер, а под тобой бегает толпа субагентов и исправляет найденные тобой баги. И это круто.

Я пользовался им и для работы, и для научки, но это скучные задачи, так что когда у меня наконец то появился запал снова сделать что-то видеоигровое, я замахнулся на то, о чём я давно думал — сделать свой CTF, но с сюжетом и для новичков. Так и появилась Омега.

К содержанию

Читать полностью…

Гречневые мысли

У меня есть коллега, Цева Кандуев, и у него очень интересная работа — он вайбкодер. Причём вайбкодер не в том смысле, что он использует ллмки, чтобы сделать свою работу, а в том, что он придумывает прикольное, а потом его подчинённые используют ллмки, чтобы сделать свою работу. От него и его команды требуется вижн и очень быстрая итерация, чтобы сделать MVP, потом этот MVP они запускают, а остальные ахают от того, как это круто.

По внутренней терминологии это называется дизрапт. Смысл термина в том, чтобы придумать такое продуктовое применение сделанным у нас в сбере технологиям, которого бы не было у конкурентов, либо которое было бы сделано хуже, чем у нас. Первая задача закрывается самим Цевой за счёт его креативности, а для второй у него есть очень сильная команда кодеров и дизайнеров. Например, у него дизайном лидит Миша Наер, который делает реально красивые и удобные для использования штуки.

Всю последнюю неделю я неструктурированно раскидываю всем по личкам ссылку на их новый проект, Тайп. Я это делаю не потому, что я хочу его прорекламировать, а потому, что я действительно на него подсел, это очень крутая штука. Ну и раз уж у нас неделя прикольных ссылок, появился смысл раскидать его всем структурированно.

Если вкратце, это приложение для надиктовывания текста для компьютеров на русском языке, которое так никто и не смог сделать хорошо, ни Apple, ни Google. Диктовка работает локально и, в отличие от абсолютно всех конкурентов, она практически не делает ошибок. За это спасибо GigaAM V3 — лучшему стт на русском. В качестве демонстрации того, насколько хорошо это всё работает, я надиктовал весь этот пост тайпом, вставляя руками только имена собственные, специфичную терминологию, переводы строк, пунктуацию, ссылки и чуть поправляя падежи — вы даже представить себе не можете, насколько я косноязычен. Сами можете оценить качество распознавания — имхо, это офигенно.

Да и в целом, я подсел. Это как будто войсы записывать, но только не чувствуешь после этого себя пакостно.

Ссылка:
https://gigatype.app

Чятик для тестеров:
/channel/+3EpXSkcSo8RiNmIy

Читать полностью…

Гречневые мысли

Я не помню, что у меня в последнее время вызывало столько же эмоций как этот ролик

Спойлеры к Disco Elysium и Sacred and Terrible Air

https://www.youtube.com/watch?v=0NYQKCGCfRw&list=RDAMVMu15tEo0wsQI

Читать полностью…

Гречневые мысли

Результат — вот. Звучит прикольно, как будто эдит из рилсов. Будем теперь знать, что "Положение (Slowed + Reverbed)" Скриптонита — это буквально музыка для наших слонов.

Если хочется слонифицировать свою музыку, вот gist с кодом.

Читать полностью…

Гречневые мысли

🚀 Открываем приём заявок на Лето с AIRI 2026!

Юбилейная Летняя школа по искусственному интеллекту пройдёт в Первом университетском лицее имени Н.И. Лобачевского при МГУ в городе Усть-Лабинск, Краснодарский край. Даты проведения — с 21 июля по 4 августа.

На школе вы сможете лично пообщаться с известными учёными в области ИИ и найти единомышленников, зарядиться вдохновением и получить новые знания для будущих исследований. В программе — лекции, семинары, постерная сессия, работа над проектами и, конечно, внеучебные активности.

Подать заявку на участие можно по ссылке до 24 мая включительно.

Обучение, питание и проживание обеспечивают организаторы — на вас только транспортные расходы.

Подавайте заявки и делитесь постом с друзьями и коллегами!

Читать полностью…

Гречневые мысли

Пример работы в Codex над фронтендом (наконец то!!!)

Читать полностью…

Гречневые мысли

On the state of local models 2: Две Крепости

В прошлом посте я уже писал о том, какими хорошими стали локальные модели. С тех пор я ещё немного поигрался с инференсом, поставил на игровой комп линукс на второй ссд, смог разогнать генерацию у 27б модели до 50 тпс через выбор другого уровня квантизации и оптимизации параметров запуска и получил что-то, что уже вполне реально можно использовать в своей работе. Вторую видеокарту я пока что не купил, но даже такое решение заставило меня задуматься — а могу ли я заменить морду клода/чатгпт на свой локальный стек, повторив всё на локальных моделях?

Ллмками у нас в семье пользуются все (то есть я и жена), так что я решил, что будет смешно, если я смогу закрыть потребности веб-морд ChatGPT/Claude для нас обоих. Для меня — это диалоги, базовый вебсёрч и какие-то операции с данными, для неё — консультации по уходу за кожей и extreme long context benchmarking (обсуждение ромфант книжек с ллмками со скидыванием в них глав целиком).

Слабый человек бы пошёл ставить Open WebUI. Я не слабый, во мне бушует сила тока (это когда есть тока сила а ума нету), так что я решил сделать свою морду с нужными мне тулами через кодекс. Заодно оно мне поможет разобраться, а почему так сложно сделать такой интерфейс, который хочу именно я и почему его никто ещё не сделал.

Главные фичи, которые я хотел видеть:

- Веб-поиск, который я могу делегировать модели — модель должна мочь его дёрнуть несколько раз за генерацию.
- Локальные команды — модель должна мочь запустить bash скрипты как в морде claude и получить какие-то осмысленные результаты. Если модель сможет, например, картинки рисовать через matplotlib, я хочу эти картинки видеть.
- Артефакты — чтобы можно было модели просить ёлочки рисовать в HTML. Ну и пеликанов.
- Context autocompact — у меня 5080, так что я смог уместить только 80к контекста у Gemma-4-26b и 100к контекста у квена. Если я в этот контекст упрусь, я хочу продолжить работу с компактом.
- Несколько моделей — квен хорош у тулколле и в коде, у него высшее техническое образование. Гемма же гуманитарий, код она пишет плохо, но зато с ней прикольно пива выпить.
- Мультимодальность — чтобы кидать фотки еды и получать комплименты моей потрясающей готовке.

Не всё из этого понятно как делать и примерно везде мне пришлось придумывать свои велосипеды. Артефакты — это SSRF раздолье, вызов локальных команд — это RCE-as-a-service, веб-поиск через апи будет стоить денег, а SearXNG поднять невозможно (я это научно доказал, промучавшись минут 15 и постановив, что его поднять невозможно). Поэтому разберём всё самое интересное по очереди.

Локальные команды я сделал через MCP. У модели есть тул create_docker, который создаёт докер-контейнер, который будет жить 900 секунд и от которого модели даётся UUID. Этот самый UUID модель может передавать в следующих тулколлах, которые уже будут исполняться внутри этого докер контейнера. Там есть питон, но нет интернета, к хосту ничего не примаунчено, контейнер без рута, так что всё должно быть относительно безопасно.

Веб поиск делается через мой форк web-search-mcp. Там используется playwright для запроса в поисковики руками, рендеринга топ-10 первых результатов и передачи их в модели. Это не должно забанить меня в поисковиках — скорость запросов будет сопоставимой с реальными запросами человека и браузер тоже должен быть похожим на правду. От prompt injection я, правда, не защищён, но как MVP сойдёт.

Несколько моделей я реализовал через llama-swap. При запросе к модели A происходит её подъём через llama.cpp (вернее, через его форк, buun-llama-cpp), при запросе к модели модель B модель A выгружается и поднимается модель B. Подъём в llama.cpp шустренький, ждать почти не надо, а для последовательных запросов проблем с подгрузкой нет.

Читать полностью…

Гречневые мысли

Итак, выводы — способна ли локальная модель заменить подписку за 20, 100 или 200 баксов? Конечно же нет. Больше того, мой небольшой тест вообще не показателен — в реальной работе надо ориентироваться в большом существующем репозитории, а не ваншотить проекты по диздоку.

Но о второй видеокарте, чтобы квен влез в VRAM и инференс бы стал быстрее, я бы всё же начал задумываться. Апи становится дороже, токенов генерится больше, подписки урезают — я уверен, что спустя полгода план за 20$ ни у кого не даст возможности нормально повайбкодить, а планы за 100$ или 200$ урежут по лимитам до уровня Codex за 20$ месячной давности или задушат через KYC. Квен же крутится на моём игровом (!) компе, пишет код, хоть и небыстро и не без ошибок и вполне способен заменить проприетарные модели низшего уровня. Если добавить к моим 16 гигам VRAM какую-нибудь 3060 (которая стоит как полтора-два месяца подписки на клода за 200 баксов, что в такой постановке не так уж и дорого), то я смогу гонять квен в Q6_K_M, а значит, почти сматчить перформанс неужатого квена с опенроутера. А в будущем крутить там ещё более умные новые модели.

Я уверен, что через полгода модели обновятся, а ситуация останется примерно такой же — Qwen-4 будет справляться с вайбкодингом на уровне (или даже лучше) Claude Haiku 5 — то есть на уровне текущего Sonnet 4.6/Opus 4.5, — а значит, с помощью редкого и относительно дешёвого ревью большой и толковой моделью через апи мы сможем избавиться от необходимости платить за подписку OpenAI/Anthropic/Google. И это мне греет душу.

Ссылки на репозитории с имплементациями:

Док с ревью имплементаций от клода
autoresearch_haiku
autoresearch_qwen_27b_q4_k_m
autoresearch_qwen_27b_openrouter
autoresearch_gemma_4_31b_openrouter
autoresearch_codex_spark

*Когда-нибудь потом я напишу и про сам авторесёрч. Это интересный паттерн, карпатый умный мужик, но в его постановке он у меня не завёлся и пришлось довольно много чего изобрести, чтобы он начал приносить пользу.

Читать полностью…

Гречневые мысли

On the state of local models

Когда-то у меня был сервак с 3090 и зеоном с алика и я крутил локальные модели. Это было ещё в те восхитительные времена, когда всё взаимодействие с LLM было в вебморде, когда агенты только-только начинались и чтобы нормально писать код, надо было копировать его из чатика в файл и наоборот. Тогда я крутил у себя Mixtral 8x7B с частичной выгрузкой в оперативку и был страшно этим доволен. Генерация была со скоростью примерно 8 токенов в секунду — для casual chat у instant моделей этого было вполне достаточно — и микстраль успешно писал мне эссе по Entrepreneurship & Innovation в Сколтехе. Я пробовал его использовать для генерации кода (вернее, конфигов для Ansible) и закономерно получал втык от Паши, моего лида, за дебильные ошибки. Весёлое было время.

Сейчас вышли Qwen-3.6-27B и Qwen-3.6-35B-A3B, две мелкие модельки, которые специально заточены под кодовые и агентные задачи и которые целятся в локальный инференс. Чтобы запустить их в полной точности (то бишь, в fp8 — они учились в нём нативно), нужно в районе 36/40 гб видеопамяти, но мы не гордые и с радостью идём на компромиссы — так что можем взять GGUF’ы в q4_k_m или даже в q3_k_s, чтобы оно влезло в локальное железо.

Мне стало интересно, насколько локальные модели действительно способны вайбкодить. Очевидно, что ни опус, ни соннет они не заменят — так что в качестве таргета, который был бы удовлетворительным, я взял субфронтир модель от фронтир лабы — GPT-Codex-Spark. Там 262к контекста, она не такая умная, как фулл кодекс или GPT-5.2/5.4/5.5, но она вполне себе способна дёргать тулы, писать код и так далее. Как приближение локальной модели пойдёт — с тем лишь различием, что она супербыстрая и за 100 баксов в месяц, а локальная моделька будет супермедленной и забесплатно (вернее, за цену электричества, которое сожрёт мой игровой комп). Дополнительно я взял Claude Haiku 4.5 — чтобы посмотреть, что есть у Anthropic.

В качестве железа для локального инференса я использовал систему на Ryzen 7 7800X3D, 64GB DDR5 6400 и RTX 5080 на 16 гб. Чтобы сделать задачу реалистично-сложной, я взял довольно сложный рабочий проект (сделать autoresearch loop по относительно подробному диздоку*) и запромптил Qwen-3.6-27B-q4_k_m, Qwen-3.6-27B с опенроутера, Gemma-4-31B с опенроутера и Claude Haiku 4.5 в Pi Agent и Codex-Spark в Codex, чтобы они его реализовали с использованием моего AGENTS.md. Модели с опенроутера тут были нужны, чтобы оценить, во-первых, насколько будет дорого использовать эти модели если платить за апи, а во-вторых, чтобы оценить верхнюю границу их способностей — не куцый квантованных инференс на моём железе, а full precision.

Важно, что я специально взял слишком сложную задачу для этих моделей — я не ожидал, что хотя бы одна из них её чисто решит. В принципе, это довольно частая проблема эвалов локальных моделей — все промптят их слишком простыми задачами и поэтому появляются новости типа “My locally hosted Qwen matched Claude Opus in performance!” (обе модели написали змейку в хтмл, вот это да). В моём случае же цель была не “решить задачу”, а “как можно меньше продолбаться в решении задачи”. Поэтому оценивать применимость моделей мы будем не через то, решили ли они (справилась лишь одна модель из четырёх), а через чистоту этого нерешения и число доделок, которые бы осталось сделать модели, чтобы сматчить спеку. Реализации я оценил с помощью Claude Code (Claude Opus 4.7, xhigh) — он и написал диздок, и смог реализовать чистое решение (по крайней мере, по мнению GPT-5.5), так что верим, что он хороший судья.

Читать полностью…

Гречневые мысли

Прикольная гифка с эволюцией хидденов внутри трансформера по мере обучения:

https://www.reddit.com/r/LocalLLaMA/comments/1smiotb/video_of_how_my_llms_decoder_blocks_changed_while/?utm_source=share&utm_medium=web3x&utm_name=web3xcss&utm_term=1&utm_content=share_button

Читать полностью…

Гречневые мысли

GigaChat-3.1-Ultra и Lightning

Обновили наши модели. Теперь ультра обходит по бенчмаркам Deepseek V3 0324 и Qwen-235B. Кроме того, очень сильно подросли арены и function calling — как сказал мой коллега про 10б модель, "я бы с ней дружил".

Из смешного — один из чекпов ультры назывался ...-low-lr. Какое-то время он являлся релизным кандидатом и, если у тебя выставлена верная роль, можно было поболтать с ним прямо через веб-морду гигачата. Чекпоинт уже тогда был довольно крутой и с моей лёгкой руки low lr превратился в милую девушку Лоу Леру. Вайбчек модель вполне себе проходит, я посравнивал её на разных запросах с аналогами — например, закинул в неё пост про странные петли и спросил, что она думает. Лоулера ответила лучше, чем сопоставимая по размеру Mistral-3-Large, которая вообще не вдуплила что я её спросил, причём даже на английском. С тех пор лоулера заменилась на ещё более хорошую модель, так что я думаю, что как general помощник гигачат будет полезным.

В этот раз моя роль была обширнее, чем в прошлый. Сейчас я покрывал весь пайплайн от обучения до релиза: запускал и дебажил трейны, переводил арены на локальных судей, курировал внос новых метрик и замерял их, находил баги в инференсе, писал хабр-статью.

В статье мы описали все эксперименты, которые мы провели за последние 4 месяца. Там есть куча технических деталей, замеров, рабочих анекдотов и милые пёсики: https://habr.com/ru/companies/sberbank/articles/1014146/

Веса и ггуфы уже доступны на хф: https://huggingface.co/collections/ai-sage/gigachat-31

Ну а если вы тоже хотите поработать над действительно большими ллмками (ха, тавтология), то кидайте мне резюме — поработаем вместе.

Читать полностью…

Гречневые мысли

Учитесь делать графики 3

https://huggingface.co/mistralai/Mistral-Small-4-119B-2603

Читать полностью…

Гречневые мысли

Автонастройка серверов

У каждого уважающего себя айтишника должен быть парк серверов, доступных по SSH. Большинство сидит в вскоде и не парятся, но для нас, terminal dwellers, не иметь консистентное, удобное, воспроизводимое и легко распространяемое окружение это большой удар по продуктивности на новых серверах.

Раньше я использовал слегка модифицированный конфиг NVChad от DreamsOfCode для nvim, его же конфиг tmux, тоже с моими правками и oh-my-zsh с кастомной темой. Однако далеко не на всех моих серверах есть nvim (и права, чтобы его поставить), а мне лень разбираться с менеджерами плагинов, oh-my-zsh, вручную править конфиги, вручную чинить несовместимости после обновлений NVChad/tmux/oh-my-zsh/плагинов/менеджеров плагинов/АААААА Я БОЛЬШЕ НЕ МОГУ!!!

С меня хватит. Давно пора было что-то менять. Поэтому при поддержке моего доброго друга К. Опуса я сделал portable, compatible и комфортненькие конфиги для bash, tmux и vim, обеспечивающие консистентную рабочую среду на всех серверах. Они далеко не минималистичные (мой .vimrc занимает 600+ строк!), зато совместимы со всеми моими машинами и легко распространяются.

Скрипт не идеален, есть свои причуды (например, он предполагает, что вы разрабатываете конфиг на удалённой машине — поскольку у меня мак, а маки по умолчанию используют zsh вместо баша и впиливать его в систему неудобно), зато он легко допиливается ручками — особенно с помощью того самого нашего общего друга.

Возможности:

- Разумные дефолты для tmux, красивая тема, без плагинов
- Конфиг Vim с автодополнением, табами в стиле NVChad, netrw, нечётким поиском файлов и, опять же, разумными дефолтами
- Bashrc с нормальным автодополнением, красивым промптом и более адекватным поведением Ctrl+W
- Скрипт-оркестратор, который забирает конфиги с SSH-сервера, раздаёт их на все остальные серверы в парке и сам обновляет репозиторий

Подробности и ченджлог доступны в readme, а приобщиться можно в этой репе. Пользуйтесь!

Читать полностью…

Гречневые мысли

Последняя часть длиннопоста — результаты.

За неделю в игру зашло 108 человек, из которых 54 человека получили хотя бы один ключ. Большая часть людей (35 человек!) нашло больше 7 ключей, но лишь трое нашли все 14 ключей. Стоит учитывать, что из-за дюпа аккаунтов понять точное число уникальных людей нетривиально, но если оценивать снизу, то нашли 13 ключей (т.е. получили концовку) 21 человек — делим на 3, получаем 7 полных прохождений. Людей точно было больше, потому что я видел как минимум две кооперации между игроками в чате, но нижняя оценка такая.

Учитывая, что пост посмотрело примерно 1500 человек, игра плохо работает на смартфонах, требует примерно минут 40-50 на прохождение и ещё и находится в посте с рекламой — это офигительный результат. Я рад, что кто-то дошёл до конца и что всем понравилось.

Я видел, что в чате люди писали, что очень круто, но хочется посложнее — надеюсь, что этот пост замотивирует их поиграться с CTF и порешать машинки оттуда. Это реально классное хобби, всем рекомендую.

Ну и отдельное спасибо плейтестерам — Макс, Егор, Семён, Алена, Витя, спасибо за ваш фидбек, он реально очень помог сделать игру лучше. Мне суперпонравился результат, надо будет ещё что-то подобное сделать.

Ну а вы заглядывайте в игру. Омега ждёт.

Репозиторий с кодом

Читать полностью…

Гречневые мысли

Целей было у меня две: рассказать историю и разработать более удобные для себя правила взаимодействия с Claude Code. С правилами всё оказалось очень просто: в Claude Code у нас есть файл CLAUDE.md, где можно маркдауном описать структуру проекта, правила написания кода и это, по сути, станет системпромптом для модели.

Я не сеньор, но за свою карьеру я успел поработать в большом числе мест с хорошо выстроенным флоу. Лучшим флоу с отрывом обладала ферма сбердевайсов, где мой тогдашний лид, Саша Телешов, очень хорошо продумал систему взаимодействия с гитом, правила оформления коммитов и так далее. Я не стал переносить все правила полностью, остановившись лишь на упрощённом флоу гита. Это позволяет не попадать в ситуацию, когда агент сделал что-то не то, а я случайно замержил и теперь не могу откатиться. Если вдруг мне что-то не нравится, я могу всегда залезть и разобраться и исправить — lazygit в лапы и вперёд.

Также, отдельным промптом я обычно прошу клода родить мне тесты (потому что CLAUDE.md он читает не всегда точно) и запускаю их как агентом, так и руками. Это помогает моему агенту найти собственные ошибки и исправить их, так что внезапное изменение работающей ранее функциональности не наступает*.

Кроме того, в Claude Code есть классный режим планирования. Там ты задаёшь задачу, а агент сам придумывает субагентов, которые бы гуглили способы решения, читали бы кодовую базу и придумывали план для всей задачи. Это сильно помогало на этапе, когда у меня не было диздока — написанный клодом и отредаченный мной план был достаточно хорош, чтобы сделать 80% работы. С другой стороны, когда код уже есть, а контекста у агента нет, субагенты могут найти не всё и план написать кривой или неполный. Это правится либо руками (не принимать план и писать правки), либо просить в конце сессии обновить файлы CLAUDE.md, MILESTONES.md и прочие, чтобы модель помнила и что уже сделано, и как выглядит кодовая база, и прочие мелкие детали**. Specification driven development, получается.

Для написания омеги я решил воспользоваться языком Go, который я практически не знаю. Во-первых, я слышал много хорошего про сообщения об ошибках (а это поможет LLM их исправлять), во вторых, горутины и прочее отлично ложится на асинхронную натуру клиент-серверного приложения, которое я собирался написать. Мой вывод: я практически забил на написание кода руками. Если применить все практики выше, вчитываться в код и бить модель палкой, если видишь что-то не то, получается вполне рабочая схема, которая позволяет заниматься не программированием, а творчеством, где ты визионер, а клод код — исполнитель. Это забавное ощущение.

К содержанию

Читать полностью…

Гречневые мысли

Про Омегу

Это будет супердлиннопост, так что сначала ссылки:

- Предыстория
- Ода клоду коду
- Про сюжет Омеги
- Статистика и ссылочка на репу

Читать полностью…
Subscribe to a channel