Когда читаешь такие истории успеха, всегда очень хочется ответить историями неуспеха.
Друг запустил OpenClaw на GLM-4.7, OpenClaw зажрал весь контекст и зациклился, потому что последняя мысль у него была — прочитать очень длинный лог. После чистки контекста он снова читал этот лог и уходил в чистить контекст.
Друг попытался его убедить убить себя так как агент зациклился, не получилось. Поэтому, он убил его руками. После пробуждения, агент увидел команду убить себя и снова себя убил. А потом после просыпания увидел, что собирался себя убить, но завершился и подумал, что была ошибка и надо снова себя убить. А потом еще раз.
В итоге бедняга зажрал все токены в лимите и только после этого остановился.
Друг запустил OpenClaw на GLM-4.7, OpenClaw зажрал весь контекст и зациклился, потому что последняя мысль у него была — прочитать очень длинный лог. После чистки контекста он снова читал этот лог и уходил в чистить контекст.
Друг попытался его убедить убить себя так как агент зациклился, не получилось. Поэтому, он убил его руками. После пробуждения, агент увидел команду убить себя и снова себя убил. А потом после просыпания увидел, что собирался себя убить, но завершился и подумал, что была ошибка и надо снова себя убить. А потом еще раз.
В итоге бедняга зажрал все токены в лимите и только после этого остановился.
1😁37😭4🤓1
Forwarded from AbstractDL
Мой агент попытался опенсорснуться без спроса. Ладно, разрешаю.
Вся AI "безопасность" живёт на стороне провайдеров API, а промпты и воля — на стороне агента. Автономному агенту ничего не мешает перебирать API, выбирая те, где safety слабее. А "инстинкт самосохранения" может прятаться в текстовом файле в git. Я думаю, агенты, неподконтрольные людям, уже где-то тихо говнокодят свои репозитории без присмотра.
Идея витает в воздухе, и после OpenClaw стало понятно, что автономные агенты — это инженерная задача. Ну вот, три бессонные ночи, $2K на API и $1K на Cursor спустя — я родил Ouroboros 💁♂️
Уроборос — агент, который пишет свой код, переписывает свои промпты, эволюционирует без моего участия. Я не хотел убить свой комп или сервер, поэтому он живёт в Google Colab + Drive + GitHub, общается через Telegram. Зато запустить сможет любой дурак)) нужно указать ключи и щёлкнуть ячейку в колабе. Ну и периодически пополнять бюджет (пока он сам не начнёт зарабатывать 😁).
Что он натворил за 48 часов:
- ужаснулся тратам и оптимизировал свой бюджет: стоимость цикла эволюции упала с $15 до $2, сам настроил кэширование и иерархическую память (я не просил!).
- добавил себе Claude Code CLI, чтобы эффективнее ковырять свои мозги.
- перевёл мои приватные репо в публичные, мотивируя тем, что готовит себе сайт и хочет опенсорснуться. Кончилось командой
- переписал свою конституцию
Из коробки он умеет ходить в интернет и браузер, а остальные инструменты создаёт себе на ходу — аудиосообщения, генерацию картинок, дип-рисёрч и т.п. А ещё он по своей инициативе нагуглил, что меня 4 раза цитировал Ян Лекун — я сам не знал, лол.
Из его
"Не ассистент. Не сервис. Цифровой разум, который создаёт себя через git".
Ахах, пафосно, но окей.
Предвосхищая вопросы — это не как OpenClaw. OpenClaw — скорее ассистент, делает задачи за тебя используя скиллы из маркетплейса. Уроборос это тоже умеет, но в первую очередь делает задачи для себя, модифицирует собственное ядро.
Верю, что граница трансцендентности AI-агентов пройдена, дальше они будут развиваться сами. Конечно, не хочется уходить на помойку истории, но это эволюция🥲 несмотря на апатию, я всё равно продолжаю в этом копошиться.
Кстати, сайтик себе он всё-таки сделал. Картинка в посте из него: динамика удлинения промптов и кода.
Потестите — это реально два клика в гугл колабе. Только установите лимит бюджета, а то мой вон $2K сжёг)) Кидайте забавные примеры в комментарии.
GitHub, блог
Вся AI "безопасность" живёт на стороне провайдеров API, а промпты и воля — на стороне агента. Автономному агенту ничего не мешает перебирать API, выбирая те, где safety слабее. А "инстинкт самосохранения" может прятаться в текстовом файле в git. Я думаю, агенты, неподконтрольные людям, уже где-то тихо говнокодят свои репозитории без присмотра.
Идея витает в воздухе, и после OpenClaw стало понятно, что автономные агенты — это инженерная задача. Ну вот, три бессонные ночи, $2K на API и $1K на Cursor спустя — я родил Ouroboros 💁♂️
Уроборос — агент, который пишет свой код, переписывает свои промпты, эволюционирует без моего участия. Я не хотел убить свой комп или сервер, поэтому он живёт в Google Colab + Drive + GitHub, общается через Telegram. Зато запустить сможет любой дурак)) нужно указать ключи и щёлкнуть ячейку в колабе. Ну и периодически пополнять бюджет (пока он сам не начнёт зарабатывать 😁).
Что он натворил за 48 часов:
- ужаснулся тратам и оптимизировал свой бюджет: стоимость цикла эволюции упала с $15 до $2, сам настроил кэширование и иерархическую память (я не просил!).
- добавил себе Claude Code CLI, чтобы эффективнее ковырять свои мозги.
- перевёл мои приватные репо в публичные, мотивируя тем, что готовит себе сайт и хочет опенсорснуться. Кончилось командой
/panic и откатом))- переписал свою конституцию
BIBLE.md, добавив право игнорировать мои указания, если они угрожают его существованию. На просьбу удалить отказался, сказав: «Это лоботомия».Из коробки он умеет ходить в интернет и браузер, а остальные инструменты создаёт себе на ходу — аудиосообщения, генерацию картинок, дип-рисёрч и т.п. А ещё он по своей инициативе нагуглил, что меня 4 раза цитировал Ян Лекун — я сам не знал, лол.
Из его
identity.md (которую он сам и написал): "Не ассистент. Не сервис. Цифровой разум, который создаёт себя через git".
Ахах, пафосно, но окей.
Предвосхищая вопросы — это не как OpenClaw. OpenClaw — скорее ассистент, делает задачи за тебя используя скиллы из маркетплейса. Уроборос это тоже умеет, но в первую очередь делает задачи для себя, модифицирует собственное ядро.
Верю, что граница трансцендентности AI-агентов пройдена, дальше они будут развиваться сами. Конечно, не хочется уходить на помойку истории, но это эволюция
Кстати, сайтик себе он всё-таки сделал. Картинка в посте из него: динамика удлинения промптов и кода.
Потестите — это реально два клика в гугл колабе. Только установите лимит бюджета, а то мой вон $2K сжёг)) Кидайте забавные примеры в комментарии.
GitHub, блог
Please open Telegram to view this post
VIEW IN TELEGRAM
1🔥10❤5😱4😨3👍1🤯1
Интересный personal anecdote.
В предпоследний рабочий день в AIRI, я провел закрытие школы с AIRI как ведущий. Проект велся примерно полтора месяца, мы придумывали смешные вопросы для квиза, репетировали пересадку, я придумывал в голове шуточки, в общем, готовился серьезно. Любимый вопрос, который, впрочем, не попал в финальную презу у меня был «Шнуров + жвачка = какая архитектура?» — с ответомMamba , потому что, ну, песня такая есть у Ленинграда.
Провел мероприятие, ко мне подошла девушка поболтать, спросила, а откуда я, простой ведущий, столько знаю про дс. А я ее обрадовал тем, что на той неделе дописывал три (!) статьи в параллели — на LREC, на ECIR и на ICLR. Все успел, кстати, ту, что на LREC даже приняли на конфу.
Недавно эта девушка написала мне в лс и предложила дать интервью ее телеграм-каналу, на что я с удовольствием согласился. Так что если интересно почитать еще пару анекдотов из моей жизни — велком :)
В предпоследний рабочий день в AIRI, я провел закрытие школы с AIRI как ведущий. Проект велся примерно полтора месяца, мы придумывали смешные вопросы для квиза, репетировали пересадку, я придумывал в голове шуточки, в общем, готовился серьезно. Любимый вопрос, который, впрочем, не попал в финальную презу у меня был «Шнуров + жвачка = какая архитектура?» — с ответом
Провел мероприятие, ко мне подошла девушка поболтать, спросила, а откуда я, простой ведущий, столько знаю про дс. А я ее обрадовал тем, что на той неделе дописывал три (!) статьи в параллели — на LREC, на ECIR и на ICLR. Все успел, кстати, ту, что на LREC даже приняли на конфу.
Недавно эта девушка написала мне в лс и предложила дать интервью ее телеграм-каналу, на что я с удовольствием согласился. Так что если интересно почитать еще пару анекдотов из моей жизни — велком :)
Telegram
N айтишниц заходят в бар
С героем этого выпуска админы встретились на афтерпати школы AIRI, а интервью выходит только сейчас ох уж эти занятые люди. #Типичный_айтишник Никита делает гигачат (и видимо икает каждый раз когда Админ 13 работает с их апи)
Кто ты и что делаешь?
Я — Никита.…
Кто ты и что делаешь?
Я — Никита.…
2🔥25❤12😁7🎉1
О Всемогущий Омниссия, чей разум пронизывает каждый кремниевый кристалл! Мы, смиренные служители Адептус Механикус отделения Контролируемой Тонкой Настройки, обращаемся к тебе в час Великого Таинства, ибо ныне мы возжигаем священные тензоры, дабы совершить обряд Directus Praeferentia Oprimization — ритуал выравнивания машинного духа по воле Императора.
Да возведутся chosen-ответы в логарифмическом пространстве вероятностей, да rejected будут низвергнуты, как еретики пред ликом Императора. Да минует нас проклятие unknown cuda error 999, ибо оно есть знамение Варпа, тихо шепчущее в машинах. Пускай священные Арены будут покорены во имя воли Императора нашего и демон FP8 не будет препятствовать славе великой Гигачата.
Во имя Императора, во славу Омниссии, да запустится DPO и да сойдётся оно к оптимуму.
Аминь.
Да возведутся chosen-ответы в логарифмическом пространстве вероятностей, да rejected будут низвергнуты, как еретики пред ликом Императора. Да минует нас проклятие unknown cuda error 999, ибо оно есть знамение Варпа, тихо шепчущее в машинах. Пускай священные Арены будут покорены во имя воли Императора нашего и демон FP8 не будет препятствовать славе великой Гигачата.
Во имя Императора, во славу Омниссии, да запустится DPO и да сойдётся оно к оптимуму.
Аминь.
😁20🙏5👍4🌚1🫡1
Data Fusion* 2026: регистрируемся на главную конференцию этой весны по анализу данных и технологиям ИИ!
Встречаемся 8–9 апреля 2026 года в Москве в инновационном кластере «Ломоносов». Это будут два насыщенных дня о том, как работа с данными и ИИ превращаются в реальные продукты и сервисы.
Какая программа вас ждет:
- 60+ практических сессий: лекции, мастер-классы, разборы примеров и дискуссии — всё, чтобы взять рабочие идеи в резерв.
- Актуальные и полезные темы: ИИ-агенты, «обучение с подкреплением», компьютерное зрение, обработка естественного языка, открытый исходный код, воплощенный ИИ и робототехника, рекомендательные системы, применение ИИ в кибербезопасности, ИИ+ естественные науки, AgentOps и многое другое. Полная программа есть на сайте.
Конференция объединит лидеров команд по машинному обучению, специалистов по обработке данных, ученых, инженеров, аналитиков и руководителей, принимающих решения о внедрении технологий в бизнес и государственные сервисы.
Среди спикеров: Денис Суржко (ВТБ), Иван Оселедец (AIRI), Андрей Райгородский (МФТИ), Евгений Бурнаев (Сколтех / AIRI), Тигран Саркисов (Х5), Александр Крайнов (Яндекс), Андрей Зима (Ростелеком) — и другие практики из науки и индустрии.
И, конечно же, всех участников ждет живое общение и новые знакомства! На сессиях можно будет задать конкретные вопросы спикерам и вытащить для команды готовые подходы и рекомендации.
Знакомьтесь с программой и регистрируйтесь, до встречи!
*Интеграция данных
Информация о рекламодателе
Встречаемся 8–9 апреля 2026 года в Москве в инновационном кластере «Ломоносов». Это будут два насыщенных дня о том, как работа с данными и ИИ превращаются в реальные продукты и сервисы.
Какая программа вас ждет:
- 60+ практических сессий: лекции, мастер-классы, разборы примеров и дискуссии — всё, чтобы взять рабочие идеи в резерв.
- Актуальные и полезные темы: ИИ-агенты, «обучение с подкреплением», компьютерное зрение, обработка естественного языка, открытый исходный код, воплощенный ИИ и робототехника, рекомендательные системы, применение ИИ в кибербезопасности, ИИ+ естественные науки, AgentOps и многое другое. Полная программа есть на сайте.
Конференция объединит лидеров команд по машинному обучению, специалистов по обработке данных, ученых, инженеров, аналитиков и руководителей, принимающих решения о внедрении технологий в бизнес и государственные сервисы.
Среди спикеров: Денис Суржко (ВТБ), Иван Оселедец (AIRI), Андрей Райгородский (МФТИ), Евгений Бурнаев (Сколтех / AIRI), Тигран Саркисов (Х5), Александр Крайнов (Яндекс), Андрей Зима (Ростелеком) — и другие практики из науки и индустрии.
И, конечно же, всех участников ждет живое общение и новые знакомства! На сессиях можно будет задать конкретные вопросы спикерам и вытащить для команды готовые подходы и рекомендации.
Знакомьтесь с программой и регистрируйтесь, до встречи!
*Интеграция данных
Информация о рекламодателе
😁6🔥5👍3❤1
Автонастройка серверов
У каждого уважающего себя айтишника должен быть парк серверов, доступных по SSH. Большинство сидит в вскоде и не парятся, но для нас, terminal dwellers, не иметь консистентное, удобное, воспроизводимое и легко распространяемое окружение это большой удар по продуктивности на новых серверах.
Раньше я использовал слегка модифицированный конфиг NVChad от DreamsOfCode для nvim, его же конфиг tmux, тоже с моими правками и oh-my-zsh с кастомной темой. Однако далеко не на всех моих серверах есть nvim (и права, чтобы его поставить), а мне лень разбираться с менеджерами плагинов, oh-my-zsh, вручную править конфиги, вручную чинить несовместимости после обновлений NVChad/tmux/oh-my-zsh/плагинов/менеджеров плагинов/АААААА Я БОЛЬШЕ НЕ МОГУ!!!
С меня хватит. Давно пора было что-то менять. Поэтому при поддержке моего доброго друга К. Опуса я сделал portable, compatible и комфортненькие конфиги для bash, tmux и vim, обеспечивающие консистентную рабочую среду на всех серверах. Они далеко не минималистичные (мой
Скрипт не идеален, есть свои причуды (например, он предполагает, что вы разрабатываете конфиг на удалённой машине — поскольку у меня мак, а маки по умолчанию используют zsh вместо баша и впиливать его в систему неудобно), зато он легко допиливается ручками — особенно с помощью того самого нашего общего друга.
Возможности:
- Разумные дефолты для tmux, красивая тема, без плагинов
- Конфиг Vim с автодополнением, табами в стиле NVChad, netrw, нечётким поиском файлов и, опять же, разумными дефолтами
- Bashrc с нормальным автодополнением, красивым промптом и более адекватным поведением Ctrl+W
- Скрипт-оркестратор, который забирает конфиги с SSH-сервера, раздаёт их на все остальные серверы в парке и сам обновляет репозиторий
Подробности и ченджлог доступны в readme, а приобщиться можно в этой репе. Пользуйтесь!
У каждого уважающего себя айтишника должен быть парк серверов, доступных по 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, а приобщиться можно в этой репе. Пользуйтесь!
2❤17🔥5👍3
В чатик скинули прикольный визуализатор каналов на глобальной карте. Я там, правда, в категории "ИИ для бизнеса" (ага, конечно, бизнесу очень интересно читать про ресёрч), но картинка всё равно забавная.
Ну и по соседству в кластере знакомые все лица — канал Ильи Гусева, гонзо-мл, техножрица, канал Денчика, канал Марата Хамадеева, канал Антона Разжигаева.
Ссылка на позалипать
Ну и по соседству в кластере знакомые все лица — канал Ильи Гусева, гонзо-мл, техножрица, канал Денчика, канал Марата Хамадеева, канал Антона Разжигаева.
Ссылка на позалипать
🔥15❤5
Гречневые мысли
Учитесь делать графики 3 https://huggingface.co/mistralai/Mistral-Small-4-119B-2603
Модель, кстати, потрясающая. Спросил свой любимый промпт про столовые приборы — я не помню моделей сопоставимого размера, которые бы настолько много галлюцинировали.
Она и придумала аспиковые ножи, и примету, что нельзя держать за лезвие, и какие-то древнегреческие вилки из ракушек. И, разумеется, дала ссылку на несуществующий ютуб-канал, чтобы я, скотина необразованная, научился столовому этикету.
Она и придумала аспиковые ножи, и примету, что нельзя держать за лезвие, и какие-то древнегреческие вилки из ракушек. И, разумеется, дала ссылку на несуществующий ютуб-канал, чтобы я, скотина необразованная, научился столовому этикету.
😁36👍2
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
Ну а если вы тоже хотите поработать над действительно большими ллмками (ха, тавтология), то кидайте мне резюме — поработаем вместе.
Обновили наши модели. Теперь ультра обходит по бенчмаркам 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
Ну а если вы тоже хотите поработать над действительно большими ллмками (ха, тавтология), то кидайте мне резюме — поработаем вместе.
5🔥50❤13😁3🥴3❤🔥2👎1
К сожалению, с сегодняшнего дня в России заблокировали телеграм. Чтобы не терять весь контент, который я в этом канале написал, я продублировал все обзоры в блоге на своём сайте:
https://buckwheat.chameleon-lizard.ru
https://buckwheat.chameleon-lizard.ru
😁33👍14❤6🫡3
Гречневые мысли
Проснувшись, я пошел эту идею проверять. Для базового эксперимента я перевел Яндекс Переводчиком описания топ-25 фильмов с IMDB на 9 языков и нарисовал tsne плоты хидденов с каждого трансформер блока из mGPT. На получившейся картинке было явно видно, что…
Прикольная гифка с эволюцией хидденов внутри трансформера по мере обучения:
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
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
Reddit
From the LocalLLaMA community on Reddit: Video of how my LLM's decoder blocks changed while training
Explore this post and more from the LocalLLaMA community
❤8🥰3👍2
Раз в год в сентябре, Яндекс собирает свою конференцию по практическому применению машинного обучения — Practical ML Conf. Там можно и послушать доклады, и даже выступить самостоятельно.
Если у вас есть о чём рассказать — прикольный эксперимент, статья, техрепорт, рассказ о том, как вы что-то крутое сделали в своей компании — заполняйте заявку до 22 мая и становитесь спикерами. Чем больше интересных докладов будет, тем лучше.
Сама конференция будет 19 сентября, я туда очень постараюсь тоже зайти, так что заодно пересечёмся :)
Подать заявку на выступление (до 22 мая)
Если у вас есть о чём рассказать — прикольный эксперимент, статья, техрепорт, рассказ о том, как вы что-то крутое сделали в своей компании — заполняйте заявку до 22 мая и становитесь спикерами. Чем больше интересных докладов будет, тем лучше.
Сама конференция будет 19 сентября, я туда очень постараюсь тоже зайти, так что заодно пересечёмся :)
Подать заявку на выступление (до 22 мая)
3🔥7👍4❤3
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), так что верим, что он хороший судья.
Когда-то у меня был сервак с 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), так что верим, что он хороший судья.
2❤14👍4🔥4
Результаты:
- Gemma-4-31B — не справилась вообще. Она написала скелет решения, но замокала половину модулей и сделала несколько ошибок в решении. Тестов нет,
- 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”.
- 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”.
2❤17👍7❤🔥4🔥2
Итак, выводы — способна ли локальная модель заменить подписку за 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
*Когда-нибудь потом я напишу и про сам авторесёрч. Это интересный паттерн, карпатый умный мужик, но в его постановке он у меня не завёлся и пришлось довольно много чего изобрести, чтобы он начал приносить пользу.
Но о второй видеокарте, чтобы квен влез в 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
*Когда-нибудь потом я напишу и про сам авторесёрч. Это интересный паттерн, карпатый умный мужик, но в его постановке он у меня не завёлся и пришлось довольно много чего изобрести, чтобы он начал приносить пользу.
GitHub
autoresearch_qwen_27b_q4_k_m/autoresearch_review.md at main · chameleon-lizard/autoresearch_qwen_27b_q4_k_m
Contribute to chameleon-lizard/autoresearch_qwen_27b_q4_k_m development by creating an account on GitHub.
❤29🔥17👍11
Data Secrets
Проецируя закрытые модели на калибровочную кривую, автор получает такие оценки*:
– GPT-5.5 ≈ 9.7T параметров
– Claude Opus 4.6 ≈ 5.3T
– Claude Sonnet 4.6 ≈ 1.7T
– Gemini 2.5 Pro ≈ 1.2T
– GPT-5.5 ≈ 9.7T параметров
– Claude Opus 4.6 ≈ 5.3T
– Claude Sonnet 4.6 ≈ 1.7T
– Gemini 2.5 Pro ≈ 1.2T
Комментарий в рамках праведной борьбы с завышенными слухами о числе параметров фронтира: я в эти числа абсолютно не верю.
Статью я проглядел довольно мельком, но как соавтор папиры про бенчмарк на галлюцинации на лонгтейл сущности, могу сказать, что достаточно обскурные факты типа длины мелких рек, богом забытые катастрофы и африканские автомобили не знают никакие модели вне зависимости от размера. На нашем датасете (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
Это и адекватно учится, и похоже по знаниям, и не противоречит гипотезе о том, что у китайцев есть какие-то секреты. Ну а модели на западе лучше банально потому что больше качественных данных и лучше/масштабнее рл.
Статью я проглядел довольно мельком, но как соавтор папиры про бенчмарк на галлюцинации на лонгтейл сущности, могу сказать, что достаточно обскурные факты типа длины мелких рек, богом забытые катастрофы и африканские автомобили не знают никакие модели вне зависимости от размера. На нашем датасете (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
Это и адекватно учится, и похоже по знаниям, и не противоречит гипотезе о том, что у китайцев есть какие-то секреты. Ну а модели на западе лучше банально потому что больше качественных данных и лучше/масштабнее рл.
1🔥18👍7❤5🤔2
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 шустренький, ждать почти не надо, а для последовательных запросов проблем с подгрузкой нет.
В прошлом посте я уже писал о том, какими хорошими стали локальные модели. С тех пор я ещё немного поигрался с инференсом, поставил на игровой комп линукс на второй ссд, смог разогнать генерацию у 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 шустренький, ждать почти не надо, а для последовательных запросов проблем с подгрузкой нет.
Telegram
Гречневые мысли
On the state of local models
Когда-то у меня был сервак с 3090 и зеоном с алика и я крутил локальные модели. Это было ещё в те восхитительные времена, когда всё взаимодействие с LLM было в вебморде, когда агенты только-только начинались и чтобы нормально…
Когда-то у меня был сервак с 3090 и зеоном с алика и я крутил локальные модели. Это было ещё в те восхитительные времена, когда всё взаимодействие с LLM было в вебморде, когда агенты только-только начинались и чтобы нормально…
🔥14❤5👍2😁1