Research

Joined September 2009
Эффективная работа с git worktree. Если вы уже дошли до точки, когда параллельные агентские сессии как не в себя делают фичи, то вы точно должны были столкнуться с новыми проблемами, среди которых одновременный запуск нескольких копий приложений, быстро забивающийся диск и оперативная память, плюс работа которая встает колом из-за одновременных запусков тестов и линтеров. В этом посте я расскажу про то, как поправить свой сетап, чтобы все стало снова летать. Сначала быстрый рекап. Worktree это фича гита, которая создает под ветки отдельные физические директории в которых можно вести работу. Раньше этой фичей почти не пользовались, так как просто переключались на ветку, сейчас же переключение на ветку будет сбивать параллельные сессии, поэтому все перешли на worktree. Даже если вы этого явно не просите, агенты нередко сами пользуются ими (но не всегда). И так поехали, проблемы и их решения. Отказ от веток Если вы пошли по этому пути, то лучше явно описать агенту, что ветки использовать нельзя, а вместо них нужно создавать worktree. Иначе регулярно будет возникать ситуация, когда один из агентов прыгнет на ветку и помешает другим. Начало и завершение работы По умолчанию создание worktee просто копирует данные, но в таком виде проект врядли заработает и на нем можно будет прогонять тесты. Скорее всего есть какие-то подготовительные шаги от установки зависимостей до создания .env. Вот эту часть нужно сначала автоматизировать, например, с помощью make-команд, а потом уже зафиксировать в доках с агентом, чтобы он вызывал их как при создании рабочего дерева, так и при завершении работы. У себя я считаю завершением это отправку pr, в это время происходит чистка. Независимые базы данных Помните проблему миграций в ветках? Вот здесь будет тоже самое, если не создавать отдельные базы данных под каждое дерево. Сделать это просто, достаточно объяснить агенту задачу и он сам предложит способ формирования динамического имени, связанного с названием worktree. Дальше снова автоматизируем и добавляем в команду создания worktree из предыдущего шага. При этом важно сделать так чтобы это были именно базы данных, а не субд, иначе если на каждое дерево будет подниматься свой postgresql, вы быстрее начнете упираться в производительность Одновременные запуск приложения Кроме баз, такой же трюк надо провернуть с портами (и если используется dns то доменами). Каждое дерево при старте тестов или приложения должно работать со своим набором портов. Опять же, эту задачу сделает сам агент, он без проблем напишет небольшие скрипты, которые находят свободные порты и подсовывают их при старте приложения Параллельный запуск проверок Но даже если сделать все шаги выше, все равно запуск тестов или линтеров из двух worktree, уже может поставить колом всю машину. Здесь есть красивый выход через блокировку. Нужно запускать проверки не напрямую, а через утилиту, которая ставит такие блокировки и упорядочивает запуск (с нужным уровнем параллельности). Пока я этим занимался написал такую утилитку github.com/mokevnin/heavy Шаринг данных Ну и последнее, установка зависимостей и кеши. Если вы не хотите чтобы место на диске улетало со скоростью ветра, то нужно использовать инструменты или настраивать существующие так, чтобы они шарили (безопасно) все свои артефакты во внешних директориях. Например лучше работать с pnpm, а не npm, потому что первый хранит зависимости во внешнем сторадже, что очень сокращает потребляемое место. Если все это сделать, то работать с worktree станет реально удобно и быстро. Пользуйтесь
18
6
1
249
15,474
Cool eval. Simply ask an LLM “Land or Water?” and give it a latitude and longitude coordinate as text. Ask 16,200 times, plot as image. The models know. From compressing the internet.
Replying to @celestepoasts
results for all claudes
710
1,073
172
19,227
1,502,872
Personal highlight from yesterday - learn how to play “doppelkopf” 🃏
2
28
‘simplify-next’ is a new simple theme for static Pelican blogs based on Bootstrap 5. Have found its ancestor Pelican template 2 years ago. Back then, I couldn’t change the ancestor template much, however now with help of LLMs it became possible. Check - github.com/vdmitriyev/simpli…
25
Migrating slowly from cmd to Powershell for my typical windows terminal tasks. For now works really great. Should have done it long time ago 😁
1
22
Should have done it years ago 😅
8
пока писал, ориентировался на решение Навье-Стокса, а тут и доклад Антропика про рынок труда подоспел. так что на всего горячие темы сразу
10
5
60
11,443
I noticed that overcomplicated systems do not appear out of blue. They grow from simple systems by applying "innocent" changes, where every such change increases the complexity of the system by a very small bit. Keep an eye on every change you apply to your system, and reject changes, which increase the complexity of the system even by a small bit. This rule applies to everything - software projects, organisations, processes, physical systems, etc.
8
9
78
2,709
Viktor retweeted
Друзья, спасибо большое, что откликнулись про приватный инференс! Я писал тот пост, чтобы поделиться тем, что нашёл, а вы мне показали, что мои знания категорически отстали и авангард уже давно убежал вперёд. Во-первых, кроме ZDR, который является юридической договорённостью, читай обещанием, есть ещё вариант с технической гарантией, что данные, которые мы отправляем, никуда не утекут. Называется это TEE — Trusted Execution Environment. Эта штука даёт криптографическую гарантию, что с сервера нам отвечает ровно та программа, которую нам обещали, без всяких дополнительных закладок и сохранения данных. Работает благодаря аппаратной поддержке на уровне процессоров Intel, AMD и NVIDIA. Исследователи регулярно находят в ней уязвимости, и я уверен, что крупную рыбу АНБ взломает в любом случае, но от массовой слежки это наверняка убережёт. Получается лучшее от двух миров: никаких капитальных затрат и при этом разумная гарантия безопасности данных, а не просто обещания. Таких провайдеров не очень много, и GLM-5.3 поддерживают ещё меньше, но есть Phala, Tinfoil и Privatemode, по цене они всего на 20–80% дороже OpenRouter ZDR. На этот вариант меня навели создатели Wisp, это как Claude Cowork, но для юристов, финансистов и всех, кто не хочет отправлять данные в публичные нейросети. Во-вторых, мы, кажется, недооценили варианты с квантизацией больших моделей и дообучением маленьких моделей на наших данных. Так, порой можно получить сравнимые результаты на радикально более слабом (и дешёвом) железе. Для своего проекта мы в результате предложили клиенту трёхэтапный план: 1. Сначала проверяем с помощью TEE/ZDR, что это вообще работает на самых мощных моделях, выясняем границу возможного и прогаем всю обвязку. 2. Арендуем тачку в облаке, разворачиваем там более простые модели и ищем оптимум по соотношению цены и качества. 3. Покупаем своё железо. Ещё раз спасибо большое! Мой папа любил повторять, что лучше чувствовать себя бараном среди мудрецов, чем наоборот. Вот именно так я чувствую себя сегодня и благодарен богу, что вы есть и откликнулись!
2
3
46
3,312
This basically our internal and external AI policy: don't waste others' time by providing them unverified AI output. Verify it on yourself and remove all the slop before providing the information to others. docs.victoriametrics.com/vic…
My hot take is that a human should never read another human’s AI output The writer labors so the reader need not
14
1
114
15,618
Published some of my old Python package on PyPI instead of keeping them on TestPyPI forever 📦
1
38
To understand and empathize with how workers in many or most fields outside software experience advances in AI capabilities, I propose a little thought experiment.
63
190
84
1,809
683,937
Nice to be in London during the last accord of the best performance of England team in the World Cup this century so far 🥅 ⚽️
1
61
What a game 🥅⚽️
31
Viktor retweeted
My latest @newscientist cartoon
9
227
18
1,648
51,339
Viktor retweeted
Очень интересно про ИИ-чипы и стоимость инференса. Вопрос не теоретический: мы планируем продолжать работу с клиентом, для которого проводили аудит огромной старой кодовой базы, и если в прошлый раз вся работа с нейросетями влезла в 200-долларовую подписку, то теперь, когда github copilot просит денег за каждый токен, такая же работа встанет в 2 тысячи долларов. Ребята недавно провели эксперимент и выяснили, что личные подписки на клод в 20, 100 и 200 долларов дают сжечь токенов на 400, 2000 и 8000 долларов в месяц соответсвенно. Для тарифов OpenAI, коэффициент ещё выше — 700, 3500 и 14000 долларов в месяц (до 70x!). Насколько сильно субсидированы эти подписки? Какая маржинальность у продажи токенов крупным потребителям? От этого зависит, сохраним ли мы текущий уровень доступа к ведущим моделям или мы с вами живем короткий «золотой век ИИ». Учитывая, что и Anthropic и OpenAI готовятся к выходу на биржу, верить никому нельзя :( Тут конечно все вспоминают бум строительства железных дорог, или пузырь доткомов. Большинство компаний, которые строили железные дороги или прокладывали оптоволоконные кабели обанкротились, но рельсами и оптоволокном мы пользуемся до сих пор. Поживем — увидим. ⁕ ⁕ На пятки этим SOTA моделям наступают китайские open-source и open-weight аналоги GLM-5.2, Minimax M3, Kimi K2.6. Последние месяцы они неустанно приближаются по качеству к ведущим производителям, но зазор всё ещё есть. Доступ к ним по API можно купить в разы дешевле, потому что они меньше, более оптимизированы и конкуренция между провайдерами выше. Интересный аспект: китайским пользователям, так же и как и россиянам, официальный доступ к клоду и chatgpt закрыт, так что есть десятки спекулянтов, которые регистрируют сотни и тысячи аккаунтов, покупают на них подписки и перепродают доступ к ведущим американским моделям. Ходят слухи, что эти «арбитражники ИИ-подписок» в Китае зарабатывают в два конца. Сохраняют всю переписку пользователей с нейросетями (ведь все запросы проходят через них) и продают эти логи создателям китайских моделей. А те потом используют эти логи для дообучения своих моделей. Вообще, если ты можешь задавать вопросы мощной модели, обучение которой стоило десятки миллионов долларов, можно за небольшую долю этих денег произвести так называемую «дистилляцию», и обучить маленькую модель быть почти такой же умной, как и большая. Именно в этом сегодня Anthropic обвинил китайского гиганта Алибабу. ⁕ ⁕ ⁕ Третья часть этого поста — про будущее. Вчера OpenAI представила первый кастомный чип, который, якобы, на 50% оптимальнее для инференса, чем чипы от NVIDIA. Печатает их TSMC, проектирует Broadcom, стандартный комплект. Энтузиаст недавно прошил microGPT прямо на FPGA. Это такие процессоры, логику работы которых можно поменять за несколько секунд-минут (перепрошить). У них относительная низкая тактовая частота (сотни и даже десятки мегагерц против гигарец современнных процессоров), зато если получится уложить весь алгоритм в «железную логику», то чип начинает выдавать готовый ответ на каждый такт, то есть миллионы раз в секунду. FPGA используют для обработки видео, сигналов, на ракетах и в радарах — в приложениях, где важна скорость и надежность. Есть много экспериментов, когда в них укладывали небольшие модели. Компания TAALAS пошла дальше всех и разработала чип, который реализует Llama 3.1 8B прямо в кремние. Это приличная open source модель 2 летней давности, пусть и с небольшим контекстом (6 тысяч токенов против привычных сотен тысяч сегодня). Самая крутая ИИ-карта Nvidia B200 дает 353 токена в секунду на пользователя в этой модели, а аппаратная реализация TAALAS — 16 тысяч токенов в секунду. Попробовать самому можно на сайте chat jimmy. А теперь представьте, что это нормальная взрослая модель и используется для разработки софта. Дух захватывает. P. S. Параллельно развиваются специализированные локальные модели, которые работают на компьютерах и телефонах пользователей (тут впереди всех Apple) и есть отдельное движение за децентрализованный инференс (как у криптовалют), у его апологетов я недавно брал интервью, но это уже совсем отдельная история.
5
1
33
4,450
A collection of stickers. What a nice lady at the shop, who gave them to me 👌
25