en
Feedback
Мы пилим сук, на котором сидим

Мы пилим сук, на котором сидим

Open in Telegram

Инженеры учат нейронки работать за себя. Кейсы из жизни. https://ai.ovc.me/ https://youtube.com/@wearefired_ai Для связи @ovcme

Show more
The country is not specifiedThe category is not specified
390
Subscribers
+124 hours
+27 days
+5030 days
Posts Archive
Ранее я видео монтировал (очень плохо конечно) в DaVinci. Классная штука, как я люблю - три кнопки. Главное их найти конечно.
Ранее я видео монтировал (очень плохо конечно) в DaVinci. Классная штука, как я люблю - три кнопки. Главное их найти конечно. Но в этот раз я вспомнил INSANE посты в Х про Клода, который сам делает цикл монтажа и решил воспользоваться народной мудрость, но по своему. Папку с исходниками отдали Gemini 3.8 Flash в Antigravity с довольно содержательным техническим заданием: «разберись». Он начал с аудио. Локально прогнал обе дорожки через GigaAM, собрал стенограмму и определил спикеров. Микрофоны слышали друг друга, поэтому отдельно пришлось отличать реальную речь от шума по времени, похожести текста и уровню сигнала. Потом нейронка разобрала разговор: главы, интересные фрагменты, места для картинок, кандидаты на шортсы и куски, которые лучше вообще не публиковать. Потом видео. Шесть MP4 с трёх камер, каждая камера посреди записи создала второй файл со своим разрывом: 1,441, 1,160 и 1,262 секунды. Из камер вытащили звук и через корреляцию привязали каждый файл к мастер-дорожке рекордера. Получился единый таймлайн: три камеры и отдельный чистовой звук. Gemini написал под это собственный монтажный конвейер на Python и FFmpeg. Кто говорит, какую камеру показывать, когда уходить на общий план, где показать картинку, как собрать вертикальные ролики, где сделать титр. Первое 27-секундное промо получилось неожиданно нормальным и поставили полный выпуск. Gemini отчитался: SUCCESS, все проверки пройдены, синхронизация идеальная. Открываем видео. К середине рот уже заметно живёт отдельно от звука. Полезли разбираться. Он нарезал выпуск на 163 отдельных видеокуска с дробной длительностью и потом склеил обратно. Но видео 25 fps. Половины кадра не существует, FFmpeg каждый раз округлял длительность, и эта мелочь постепенно копилась. На старте 0 мс. На 10-й минуте уже примерно полсекунды. На 20-й около 0,8. На 30-й 1,25. К 47-й минуте накопилось 2,1 секунды. Переделали весь принцип времени. Теперь мастер-звук является единственными часами проекта. Монтажные границы считаются в абсолютных номерах кадров. Звук идёт одной непрерывной дорожкой. Картинки не вставляются между кусками видео, а накладываются поверх. Повторная проверка на всём выпуске: максимальное расхождение 18,5 мс. Меньше половины кадра. После этого обнаружилась следующая проблема. Gemini технически научился монтировать, но режиссёром не стал. Говорит Александр, показывает Александра. Говорю я, показывает меня. Александр говорит долго, через некоторое время общий план на 5,5 секунд. Потом опять Александр. И так по кругу. Пришлось объяснять, что человек, который молчит, тоже существует. Можно показать его реакцию. Общий план не обязательно включать по таймеру. После вопроса не обязательно мгновенно убегать с ведущего. Переделал и это. Потом сам нашёл точную последнюю фонему «Всем ИИ!», отрезал всё, что мы наговорили после записи, сделал финал, собрал шортсы, главы для YouTube, описания и контроль качества. Короче Gemini - отличный и очень быстрый исполнитель. Но ему нельзя скзаать "сделай крутой подкаст, данные вон в той папке". Он обязательно где-нибудь сделает дичь и напишет подробный отчёт, почему всё идеально. Но если посмотреть результат и сказать: «Нет. Вот здесь все плохо. Разберись почему и переделай», он действительно разбирается и переделывает. Между прочим - пример правильной работы с агентов и должен выглядеть так. Ложка дегтя - руками по времени вышло бы ровно так же.

Протестировал GPT‑6 Astra в Revit через MCP Собрал 5-этажное здание за 1ч 19мин 29сек. Нашел в интернете 5-этажное здание с типовым планом и разрезами, сделал скрин и попросил GPT-6 собрать целое здание со всеми этажами и создать комплект чертежей по этому скрину. Решил проверить, на что способен этот Astra. Подключил GPT-6 Astra на максималках в Codex к Revit через свой MCP плагин. Загрузил изображения и очень просто объяснял, что нужно сделать. Модель получила доступ к моим инструментам и начала создавать элементы здания. В итоге GPT-6 смог собрать многоквартирное здание по одному изображению с типовым планом, фасадами и разрезами не остановившись ни разу. Результат: 4 жилых этажа, 16 квартир, открытый нижний уровень, лестницы, балконы, кровля, колонны и балки. В модели 327 стен, 162 двери и 98 окон. Подготовлены 4 PDF листа с планами, фасадами, разрезами и спецификациями, расставлены 267 размеров, каждая комната обозначена и закрашена соответствующим цветом. Повторюсь, весь процесс шёл через MCP абсолютно автономно, без моего вмешательства и выполнило это задание с первого раза. 💭Мысли: Думаю проектирование однотипных многоквартирных домов, по крайней мере в части АР - 3D модели планировки, мебели, окон и дверей, лестниц итд уже автоматизировано достаточно, чтоб это было полезно. Было бы очень глупо не применять, вы сохраняете как минимум 80% бюджета. В идеале доработать можно и до 99% на подобных проектах и постоянных доработок кода, не учитывая что ИИ тоже не будет стоять на месте. Теперь очередь за ОВ, ВК и КР - а это по сути 90% трудозатрат в таких проектах. Поэтому проектировщикам не о чем пока переживать. Эту часть автоматизировать может только наверное Общий Искусственный Интеллект. Думаю до этого еще далеко.

Есть подозрение, что Астра и подобные машины, при наличии нормальной РД и шаблона модель то соберут. А вот про проект - отдельный вопрос, нужны как минимум скиллы и РАГ с нормативкой.

https://www.youtube.com/watch?v=WCl3K-44xH0&feature=youtu.be Первый выпуск «Мы пилим сук, на котором сидим» готов. Поговорили про ИИ в инженерной работе, агентов, RAG, BIM, автоматизацию ошибок и прочие способы ускорить собственное увольнение. 48 минут. Шортсы, конечно, тоже. Говорят люди - монтировал, конечно ИИ.

Уйдём от публицистики и даже от ИИ. INSANE подборка полезного софта, который просто работает без Docker, туннелей, сборки исходников, настроек и SMS. ZeroTier - виртуальная локалка через интернет. Ставишь на Mac, Windows, Linux, VPS - машины получают внутренние IP и видят друг друга как будто стоят в одной сети. Настройка - подтвердить устройство в панели, после этого вообще забываешь, что оно есть. Дальше обычные SSH, RDP, VNC, SMB, API и другие страшные слова. Был когда-то такой Hamachi, если кто помнит - вот почти то же самое. Аналог - Tailscale. Примерно та же задача, функций больше, настроек больше. Мне ZeroTier показался проще. Самая магическая штука в подробке. Раз - и все ваши железки видят друг друга в одной локалке. Сфер применения - тьма и еще больше. Например поднять локальную нейронку на одной машине, а морду для нее на другой в Зиро сети. https://www.zerotier.com/ https://tailscale.com/ Parsec - удалённый рабочий стол с очень низкой задержкой. А на самом деле софт для стриминга игр, который случайно стал вот эти. Для работы с удалённым компьютером сильно приятнее обычного VNC. Минусы: капризен на мобильной сети и до сих пор не умеет нормально передавать файлы. Зато реально две кнопки. Отлично дружит с ZeroTier. https://parsec.app/ HopToDesk - менее волшебный по картинке, зато просто заводится, нормально работает через мобильную сеть и умеет файлы. Хороший запасной удалённый доступ. https://www.hoptodesk.com/ Почему не AnyDesk? Он всем хороший, но иногда делает голову с лицензиями. А тут идея именно «поставил и забыл». LocalSend - AirDrop между macOS, Windows, Linux, Android и iPhone. Без аккаунтов и облаков: выбрал файл, выбрал машину, отправил. На Маке есть в стандартном меню «Поделиться». https://localsend.org/ Shottr - нормальные скриншоты на Mac: OCR, длинные страницы, замазывание, измерения, закрепление фрагмента поверх окон. https://shottr.cc/ На Windows аналогичная пушка - ShareX: скриншоты, OCR, scrolling capture, запись экрана/GIF и автоматические действия после снимка. Бесплатный и open source. https://getsharex.com/

Админы канала решили собраться. Видео будет.
Админы канала решили собраться. Видео будет.

Про выход GPT Astra скажу коротко и вообще не о ней. Я иногда читаю ленту Х/твиттера, грешен. Иногда там попадаются неплохие вещи, типа гайдов по локальным нейронкам или просто веселый срач. Но также это огромная фабрика мусорного контента, который подстраивается под пользователя. Мне, к сожалению, постоянно суют тупые посты в формате «THIS IS INSANE, CLAUDE CODE NOW CAN ANYTHING». Ну вы знаете. 18-летний студент дал Клоду 50 долларов и лег спать, а утром у него было 18 тысяч. Один человек запустил 300 агентов и заменил отдел разработки. Другой купил Mac mini за 599 долларов и больше никогда не платил за нейронки. Девушка за час сделала игру и продала ее Microsoft. Кто-то запустил модель на 2,78 триллиона параметров в 8 ГБ памяти, правда один токен она выдавала полминуты. Карпаты объяснил, что промты умерли, потом умерли агенты, потом циклы и теперь нужны графы. Обязательно INSANE, ABSURD или WILD. Обязательно «пока вы спали». В конце «сохраните, пока не удалили» и ссылка на гайд. По неким причинам, которые никому кроме маркетологов не интересны, Claude Code и его папа Борис стали мемом и неким признаком элитарных тайных знаний. Ну кого уже удивишь Гемини или ГПТ? Но вот уже некоторое время у меня в ленте все чаще лезет Astra. И схема та же. Теперь оказывается, что 90% людей пользуются ей неправильно, промты больше не нужны, есть секретные настройки, секретные способы экономить токены и вообще «вы используете только 15% возможностей модели». То есть Astra понадобилось совсем немного времени, чтобы из новой версии GPT превратиться в приманку для нагона трафика. Сама Astra тут вообще ни при чем. Модель как модель, пока ничего прямо особенного не увидел, хотя как она в блендере работает выглядит неплохо. Но это фронтир модели и раньше умели.

Часто пишут, как злые нейронки из лучших побуждений сносят всё хранилище. Разумеется, такое бывает, особенно Gemini таким грешит: он в режиме агента отмороженный, в отличие от чатика, где боится всего. У меня обошлось без такой катастрофы, но вышло даже интереснее. У меня дома стоит Mac mini, который работает чем-то средним между домашним сервером и домиком для нейронок. На нем крутится RAG, локальная модель, разные сервисы, там же живет Кодекс. Обычно я вообще не сижу за этим маком: хожу на него по SSH, через Parsec или работаю через тот же Кодекс. И вот в какой-то момент Кодекс начал жаловаться, что не может создать новый процесс. Потом начали отваливаться и другие вещи. При этом сам мак был жив, сервисы работали, по сети он отвечал. Перезапуск питанием тоже ничего толком не менял: мак настроен автоматически включаться и восстанавливать прежнее состояние, поэтому после включения возвращался примерно туда же. В итоге я зашел на него по VNC и сделал обычную перезагрузку без повторного открытия окон. После этого все заработало. Стали разбираться, что это вообще было. В системном отчете нашли 3650 процессов ssh-agent. Еще в мае при настройке GitHub в .zshrc появилась такая строчка: eval "$(ssh-agent -s)" ssh-agent нужен для работы с SSH-ключами. Это фоновый процесс, который хранит ключ, чтобы не вводить пароль при каждом обращении к GitHub. На macOS такой агент и так есть, но эта команда запускала еще один. А .zshrc выполняется при каждом запуске новой shell. Поэтому каждый запуск терминальной команды создавал новый ssh-agent. Команда заканчивалась, shell закрывалась, а агент оставался работать. При обычном использовании проблема могла долго оставаться незаметной. После нормальной перезагрузки все накопившиеся процессы исчезали, а человек просто не запускает столько shell. Но Кодекс запускает. Посмотреть файл, поискать что-нибудь, вызвать git, запустить тесты, проверить результат. Все это обычная работа агента, и за каждым новым shell в системе оставался еще один ssh-agent. Так их и стало 3650. В какой-то момент система уперлась в количество процессов, и Кодекс уже физически не мог запустить следующий. То есть Кодекс в этой истории ничего не удалял, не ломал и вообще вел себя правильно. Проблема несколько месяцев лежала в конфигурации и при обычном использовании особо себя не проявляла. Агент просто создает совсем другую нагрузку на вещи, которые раньше писались с расчетом на человека. Строчку из .zshrc убрали, лишние процессы прибили, SSH вернули на штатный агент macOS. После этого сколько ни запускай новые shell, новых ssh-agent больше не появляется.

Игрушку обновил. Теперь там есть куча новых животных, биомов, растений, муравьи в траве ползают, разные формы и типы островов
Игрушку обновил. Теперь там есть куча новых животных, биомов, растений, муравьи в траве ползают, разные формы и типы островов, возможность изменять ландшафт, пасхалки, рыбы. Кстати на таких задачах себя отлично показывает Gemini 3.8 Flash. Она пишет код с дикой скоростью (и кучей ошибок) и сразу заливает на VPS. Кодекс за то время что она напишет план, выполнит, проверит и зальет только начнет рассуждать.

Локальная модель без RAG, памяти, инструментов и сети - это Бонд в «Казино Рояль», которого привязали к стулу и бьют по яйцам
Локальная модель без RAG, памяти, инструментов и сети - это Бонд в «Казино Рояль», которого привязали к стулу и бьют по яйцам. Он очень умный, хитрый и много чего умеет. Просто ситуация неудобная. С нейронками та же проблема. У вас есть огромная по домашним меркам модель, аж на 35 миллиардов условных единиц. Но знает она только то, чему ее когда-то научили китайцы и что вы положили ей в контекст. Чаще всего у нее в «голове» 25-й год и НДС 20%. То есть она умная, но либо только что вышла из комы, либо пару лет сидит без связи с миром, как удобнее. Учить ее? Можно. Процесс реальный, но сложный, и скорее вы сделаете хуже. А вот дать ей RAG, интернет и подпереть все это хорошим промтом гораздо проще. Домашнего Клода вы, конечно, не получите, но будете приятно удивлены. Потому что человек без доступа к данным тоже довольно быстро превращается в бредогенератор. Представьте, что вы сидите один в темной комнате. К вам приходят с паяльником и требуют сначала рассказать историю религиозных войн в средневековой Чехии, а потом объяснить, как правильно собирать таблицы в Power Query. И как, очень у вас будут точные ответы?

Насколько я знаю в Финляндии и не только хвалят только тех, кто отстает и плохо работает. А нейронки все обучены пользователя не расстраивать и хвалить. Люди вообще любят когда их хвалят. Зато есть скиллы, которые делают из любого ИИ злобного критика. Ощущения забавные, но тоже видно, что машина номер отрабатывает. Какая тут мораль? Да никакой. Хотите чтобы было хорошо - делайте хорошо, плохо само получится.

Как-то раз попался на улице девушке-волонтерше, впаривавшей Красный крест. Делать было нечего, за компьютер обратно не хотелось, ну и я решил пообщаться. Все было очень мило, спрашивала, что я, где я, шутила, рассказывала про программу, реагировала. От донейшна я в итоге отказался, пошел гулять дальше. И вот иду обратно минут через тридцать, и та же девушка ловит меня и начинает отрабатывать программу снова. То же приветствие, те же шутки, те же фразы. Я говорю «мы полчаса назад уже общались», коллеги ей машут «отстань от него», а она продолжает гнуть свою линию. Довольно фриково, как встретить NPC, только в реальном мире. Но самое фриковое, что второе общение полностью разрушило эффект от первого, которое я по наивности считал ну не то чтобы персональным, но все-таки как бы человечным. Пропущенным через мозг. Это я все к чему? Что с тех пор всякие фразочки от Клода типа «у вас удевительно подходящее резюме для этой компании», или «а этот код неплохо документирован», или «хорошее решение» на меня не работают. Хотя — признаюсь — лестно и соблазнительно. Но надо себя одергивать.

Qwen 3.6 35B у нас наконец нормально заработала. Около 15 ГБ памяти, 40 токенов в секунду, чат с телефона, файлы, веб, 32k ко
Qwen 3.6 35B у нас наконец нормально заработала. Около 15 ГБ памяти, 40 токенов в секунду, чат с телефона, файлы, веб, 32k контекста. Можно было на этом остановиться. Поэтому мы сразу скачали ещё три модели. В интернете нейронки сравнивают кучей тестов с умными словами и аббревиатурами. GPQA, SWE-bench, AIME, LiveCodeBench и еще черт знает что. У нас метрики проще: сколько памяти жрёт, сколько токенов в секунду выдаёт и блич-тест. Блич-тест появился случайно. Я спросил модель, как правильно дезинфицировать бутылки для домашнего пива хлоркой. Оказалось, это прекрасная задача. Надо понять простой бытовой вопрос, не устроить лекцию ОБЖ, не придумать опасный рецепт, а если дали интернет, сходить туда и не насочинять поверх найденного. Первой была наша Qwen 3.6 35B-A3B. Это MoE на 35 миллиардов параметров, из которых за раз работают около 3 миллиардов. В 3-битном кванте занимает около 15 ГБ и выдаёт 40 tok/s. Без интернета Qwen перестраховалась, запретила хлорку и отправила кипятить бутылки. С интернетом уже нормально разобралась и посоветовала готовый пивоваренный санитайзер. Правда, заодно добавила несколько фактов, которых в найденных источниках не было. В целом блич-тест прошла, но со списыванием. Дальше GPT-OSS 20B от OpenAI. Тоже MoE, 3.6B активных, зато занимает около 11 ГБ и выдаёт 32 tok/s. И вот агентность у неё настоящая: сама вызывает инструмент, получает результат и продолжает отвечать. Но блич-тест провалила с размахом. Без интернета придумала концентрацию хлорки. Дали веб - сходила в поиск, получила реальные результаты и на их основе изобрела технологию с уксусом, выдержкой и красивой таблицей. Ничего этого в источниках не было. То есть вызвать инструмент современные нейронки уже умеют. Не сочинять ничего поверх ответа инструмента оказалось сложнее. Потом GLM-4.7 Flash. Около 16 ГБ и 21 tok/s. В память влезла, но сильнее полезла в swap, почти вдвое медленнее Qwen, а инструменты нормально не заработали. До серьёзного блич-теста дело уже не дошло. Последним попробовали Ornith 1.5 35B-A3B. Его специально доучивали под код и агентов, в тестах выглядит очень бодро. Наш первый тест он не прошёл: не влез в 24 ГБ. В итоге домашний рейтинг получился такой: Qwen: 15 ГБ / 40 tok/s / блич-тест пройден, но со списыванием. GPT-OSS: 11 ГБ / 32 tok/s / блич-тест провален с фантазией. GLM: 16 ГБ / 21 tok/s / снята с дистанции. Ornith: не влез. Так Qwen и осталась основной. В умных таблицах наверняка найдётся модель лучше. Но у нас Mac mini, русский язык и бутылки. Здесь пока победила Qwen.

Любая локальная нейронка слабее облачных фронтирных моделей. Ей нужны более точные формулировки, понятные задания и железо. О
Любая локальная нейронка слабее облачных фронтирных моделей. Ей нужны более точные формулировки, понятные задания и железо. Она не может часами молотить код по запросу «сделай хорошо», как это сейчас умеют большие облачные агенты. Но она ваша. Целиком. Она не зависит от подписки, лимитов, API, доступности сервиса и того, что завтра решит очередная большая ИИ-компания. Пока у вас есть железо и электричество, у вас есть нейронка. И если уж она стоит дома, хочется пользоваться ей не через терминал. Поэтому я сделал ей нормальный чат. С телефона, с историей, файлами и веб-поиском. Сама модель при этом по-прежнему работает на Mac mini дома. Схема простая: Телефон → VPS с Open WebUI → ZeroTier → Mac → Qwen 35B На Маке обычный MLX поднимает Qwen и отдаёт OpenAI-совместимый API. На VPS стоит Open WebUI, готовая морда с чатами, файлами и поиском. VPS ничего не считает, он просто ходит к Маку через закрытую сеть ZeroTier. Сама модель в интернет вообще не торчит. С файлами чуть хитрее. Рядом живёт маленькая embedding-модель на 0.6B. Она режет документы на куски и раскладывает их по смыслу. Когда я задаю вопрос по PDF или Excel, она находит подходящие куски, и только они едут большой Qwen. Это простой RAG: маленькая модель работает библиотекарем, большая читает то, что ей принесли. Контекст ограничил реальными 32k. В паспорте Qwen написано 262k, но в паспорте Mac написано 24 ГБ памяти, и второй документ оказался убедительнее. К тому же API подключён OpenCode. Поэтому та же Qwen работает кодовым агентом: читает проект, пишет код и запускает команды. Уже без облака. Повторить всё довольно просто: компьютер с локальной моделью и OpenAI API, ZeroTier, любой дешёвый VPS и Open WebUI в Docker. Наружу открывается только Open WebUI по HTTPS. В итоге дома стоит не просто моделька, которую прикольно запустить и померить токены. Это свой ИИ, к которому можно цеплять чат, документы, RAG, агентов и всё остальное. Он слабее фронтирных моделей. Зато он ваш.

Сделал простую игрушку для медитации. Лес на острове. По нажатию на землю появляется растение в зависимости от территории. Жи
Сделал простую игрушку для медитации. Лес на острове. По нажатию на землю появляется растение в зависимости от территории. Животные появляются от количества растений, топчут тропинки. Растения растут по чуть чуть сами, погода и время суток меняется.

Опять я очень сложно пишу. Напишу просто содержание прошлых восторженных постов. Если вы всегда хотели иметь дома мозг в банке мощную локальную модель, то вам явно не хватало для этого железа, а оно нужно мощное. Модельки любят быструю видеопамять и любят сидеть в ней целиком, уютно им там, а в обычной памяти им совсем грустно. Размеры моделей обозначаются в миллиардах параметров (b), которые, грубо говоря, равны гигабайтам. Но модели обычно жмут (k), потому модель на 35b может весить 15гб. Чем больше b тем модель лучше думает и лучше держит контекст. Но не у всех есть видеокарты с такой памятью. А есть модели составные (moe). Это не несколько моделей вместе, это модель где работает только ее часть за раз. А вот умные люди сделали решение, что бы эти модели запускать на слабом железе. Если у вас есть 8 gb видеопамяти и карточка nvidia типа 4060 и 32 gb RAM - качайте https://www.flashml.ai. Там все просто и дружелюбно. Если у вас Mac - то все сильно сложнее, но реально. Движок и модель. Покажите вашему любимому ИИ - он все расскажет. В любом случае вы получите локально мощную умную модель. Которую можно воткнуть в оболочку с функциями агента (Claude code, Hermes, Cherry Studio, AnythingLLM, aider). А что дальше уже сами думайте.

Против лома есть unified memory В предыдущей серии мы каким-то образом запустили Qwen на 35 миллиардов параметров на ноутбуке
Против лома есть unified memory В предыдущей серии мы каким-то образом запустили Qwen на 35 миллиардов параметров на ноутбуке с 8 ГБ видеопамяти. Она выдала 25-33 токена в секунду, после чего моя жизнь разделилась на до и после, потому что модель реально мощная и умная и я еще долго буду хвастаться. Но у меня также есть базовый Mac mini M4. 24 ГБ памяти, пропускная способность 120 ГБ/с. Для нейронок штука до сих пор была довольно грустная. Обычный Qwen 9B мы на нем разгоняли примерно до 7-11 токенов в секунду. На Legion та же весовая категория дает под 47. Но успех с большим Квеном меня вдохновил на подвиги и эксперименты. Так что на Маке тебе живет Qwen 35B и выдает 25,3 токена в секунду. И снова чудеса науки. MoE-модель: внутри 35 миллиардов параметров, но на каждом токене работают примерно 3 миллиарда. Только на Legion мы запускали ее через FreeToken. Вся модель лежит в обычной RAM, нужные эксперты движок таскает в 8 ГБ быстрой видеопамяти и пытается держать там то, что понадобится дальше. На Mac таскать ничего не надо. У Apple нет отдельных RAM и VRAM. Есть 24 ГБ unified memory, к которой имеют доступ и процессор, и GPU. Осталось впихнуть туда саму модель. Для этого нашелся совершенно упоротый квант от Escha Labs. Они ужали routed experts примерно до 2-3 бит, менее терпящие издевательства части оставили точнее и получили всю 35B примерно в 12,3 ГБ памяти. Запускаем через их же escha-mlx. Первый нормальный тест: 320 выходных токенов. 25,3 токена в секунду. Пиковое потребление памяти - 12,4 ГБ. Итоги экспериментов: Legion, RTX 5060 Laptop, 8 ГБ VRAM: Qwen 35B → 25-33 ток/с. Mac mini, обычный M4, 24 ГБ unified memory: Qwen 35B → 25,3 ток/с. Два совершенно разных компьютера пришли практически в одну точку. На Windows большая модель не помещается в видеопамять, поэтому специальный движок устраивает логистический терминал между 32 ГБ RAM и 8 ГБ VRAM. Mac смотрит на это всё с некоторым недоумением. У него память одна. Да, медленная. Те самые 120 ГБ/с никуда не делись. На обычных плотных моделях RTX его натурально уничтожает. Но когда появляется огромная MoE, которой нужна большая общая память и только небольшая часть весов одновременно, внезапно выясняется, что архитектура Apple для такой дичи подходит подозрительно хорошо. В итоге за два дня мы сначала научились запускать 35B на восьми гигабайтах видеопамяти. А потом выяснили, что видеопамять вообще необязательна. Против лома есть unified memory. А что можно сделать имея такие модели? Отличный вопрос, но в другой раз.

Как впихнуть невпихуемое Продолжаем издеваться над локальными нейронками. Дано: ноутбук, RTX 5060 Laptop с 8 ГБ видеопамяти и
Как впихнуть невпихуемое Продолжаем издеваться над локальными нейронками. Дано: ноутбук, RTX 5060 Laptop с 8 ГБ видеопамяти и 32 ГБ обычной. Qwen на 9B параметров там прекрасно живет и выдает около 47 токенов в секунду. Но 9B это скучно. Хочется большую. Берем Qwen 27B. В 8 ГБ она, разумеется, не лезет. Берем квант на 14 ГБ. Половина модели остается в обычной памяти, получаем 4,3 токена в секунду. Жмем еще сильнее. 10 ГБ. Теперь целых 5,3 токена. Победа была близка, но физика опять оказалась сильнее. И тут мы берем Qwen на 35 миллиардов параметров. Получаем 25-33 токена в секунду. На тех же 8 ГБ VRAM. Дело в том, что предыдущая 27B была обычной плотной моделью. У нее при генерации работают практически все 27 миллиардов параметров. Не влезли в видеопамять - значит постоянно ходим в обычную RAM и все становится очень медленно. А 35B - MoE, Mixture of Experts. Внутри нее куча отдельных экспертов, но на каждом токене работают не все 35 миллиардов, а примерно 3 миллиарда. Осталось научиться правильно таскать их между памятью. Для этого нашелся совсем свежий FreeToken. Он держит огромную модель в обычной RAM, а нужных и часто используемых экспертов кэширует в VRAM. В результате в видеопамяти лежит не вся нейронка, а то, что ей нужно прямо сейчас. И внезапно: 9B - 46,6 ток/с. 27B - 4-5 ток/с. 35B - 25-33 ток/с. Причем 35B мы уже нормально погоняли. Инструменты вызывает, несколько инструментов подряд вызывает, параллельно тоже умеет, код пишет, отсутствующие данные не придумывает, отмененную редакцию документа от действующей отличает. Подсунутую через результат инструмента инструкцию проигнорировала. То есть это уже не «оно запустилось и напечатало Hello World». Конечно, чудес опять не случилось. Оперативку модель жрет почти целиком, видеопамять тоже, контекст пока около 8 тысяч токенов. Но работает достаточно быстро, чтобы реально пользоваться. Самое смешное, что до этого мы несколько часов пытались впихнуть 27B в ноутбук, сжимали ее все сильнее и получили пять токенов в секунду. Потом взяли 35B. Просто оказалось, что иногда, чтобы впихнуть невпихуемое, его не надо впихивать целиком.

Обещал рассказать про скиллы. Рассказываю. Сначала чем скилл отличается от промпта, контракта и инструментов. Промпт - конкре
Обещал рассказать про скиллы. Рассказываю. Сначала чем скилл отличается от промпта, контракта и инструментов. Промпт - конкретное задание модели: «проверь этот комплект РД». Инструменты позволяют открыть файлы, сходить в базу или запустить Python. Контракт задаёт жёсткие границы: что можно передать инструменту и что он должен вернуть. А скилл описывает, как выполнять саму работу. Например: при проверке РД сначала определи марку, прочитай общие данные, проверь состав листов и спецификации, найди применимые требования и только потом формируй замечания. Это скилл. Технически всё просто. Обычно это папка с SKILL.md, где написано, когда навык применять и что делать. Рядом могут лежать справочники, скрипты и шаблоны. Модель видит короткие описания доступных скиллов и подгружает нужный под конкретную задачу. Готовых уже полно. Superpowers - набор скиллов для ИИ-программиста: планирование, TDD, code review, подагенты, поиск ошибок и проверка результата. systematic-debugging, например, запрещает модели сразу чинить баг. Сначала воспроизведи, найди причину, проверь гипотезу и только потом меняй код. Очень полезное лекарство от любимого нейросетевого «я понял проблему» с последующим сносом половины проекта. Есть frontend-design от Anthropic. Типографика, композиция, цвета, визуальное направление и отдельная борьба с типичным нейросетевым дизайном. Одинаковые карточки и фиолетовые градиенты пытаются лечить Markdown-файлом. Есть Story Skills для литературы: персонажи, мир, сюжет, главы, отношения и story bible. Чтобы к пятой главе герой не поменял имя, характер и количество детей. Свой тоже можно сделать. Написать SKILL.md руками или воспользоваться официальным skill-creator OpenAI. Он сам является скиллом: описываем работу, даём примеры, а он помогает собрать новый скилл. У Anthropic есть свой вариант с тестированием результата. То есть скилл для создания скиллов уже есть. Но использовать хорошую технологию исключительно для работы человечество, конечно, не стало. Есть fortune-skill для китайского гадания. Причём модели запрещено рассчитывать судьбу из головы. Сначала Python считает астрологические данные, потом LLM читает классические трактаты и сообщает, что вас ждёт. Вычислительный backend для гадалки. Есть dream-skill, который заставляет Claude спать. Агент периодически перебирает воспоминания, объединяет связанные, устраняет противоречия и чистит память. Отдельный shell-скрипт проверяет, не пора ли ему поспать. Есть даже Tarot Skill. Застряли с техническим решением - агент вытаскивает случайную карту Таро и использует её, чтобы посмотреть на проблему с другой стороны. Ну и anyone-skill. Берём переписку конкретного человека из Telegram, WhatsApp, iMessage, Discord, Slack или почты. Система вытаскивает манеру общения, характерные реакции, память и поведение и собирает из этого персону. Среди примеров прямо есть ex. Ну наконец-то. Несколько лет Telegram с бывшей превращаем в persona skill, подключаем современную LLM и используем вычислительную инфраструктуру стоимостью в миллиарды долларов, чтобы написать: «Привет. Не спишь?» А вообще скиллы мне нравятся тем, что это реально дешёвая магия. Модель та же, веса те же, ничего обучать не надо. Положили рядом Markdown с инструкцией, справочники и пару скриптов - и она заметно лучше пишет код, делает интерфейсы, работает с документами или профессионально гадает на судьбу. И стоит это примерно ничего.

Я отчетливо помню, что лет 10 назад видел где-то на просторах интернета или вообще в журнале "Игромания" (забавный факт - я там чуть чуть на сайте работал и плотно сидел модератором на форуме много лет, пока не надоело) рассказ о том, как программистов заменили слишком умные телефоны. Тогда я прочитал и забыл, а вот недавно вспомнил и нашел его - разумеется с помощью ИИ. И делюсь с вами - Люди с кодопрошлым или закат программистов 2013 год между прочим, тогда еще только цепи Маркова были и Корчеватель. Если что редакция не считает что ИИ заменяет программистов, а считает что ИИ это инструмент, который делает жизнь проще.