Некоторое время назад я запустил autoresearch на задаче по ускорению тестов. Неожиданная находка: мы упирались не в сами тесты, а в путь до базы через порт-форвардинг докера. Изменение только этого ускоряет локальный прогон интеграционных тестов на macOS в полтора раза: 17.5 s против 28 s
Мы использовали Docker в Colima, а с Postgres, запущенным напрямую, каждый запрос к базе почти в 4 раза быстрее: ~0.1 мс против ~0.4 мс. Эти 0.3 мс уходят на SSH port-forwarding: host → SSH-туннель → VM → контейнер. А интеграционные тесты — это десятки тысяч последовательных запросов, так что 0.3 мс превращаются в +10 секунд.
Вывод: для локальной разработки лучше нативный Postgres. Если докер обязателен — Docker Desktop заметно лучше Colima: у него порт пробрасывается через vmnet, а не SSH.
Постфактум нашёл, что есть опция заменить ssh на grpc, но это все равно медленнее Docker Desktop 0.28 мс против 0.20 мс
– @razmser
Мы использовали Docker в Colima, а с Postgres, запущенным напрямую, каждый запрос к базе почти в 4 раза быстрее: ~0.1 мс против ~0.4 мс. Эти 0.3 мс уходят на SSH port-forwarding: host → SSH-туннель → VM → контейнер. А интеграционные тесты — это десятки тысяч последовательных запросов, так что 0.3 мс превращаются в +10 секунд.
Вывод: для локальной разработки лучше нативный Postgres. Если докер обязателен — Docker Desktop заметно лучше Colima: у него порт пробрасывается через vmnet, а не SSH.
Постфактум нашёл, что есть опция заменить ssh на grpc, но это все равно медленнее Docker Desktop 0.28 мс против 0.20 мс
colima start --port-forwarder grpc– @razmser
❤4👀4👍3🔥2
Продуктовые новости!
Поддержали вышедшую вчера серию GPT-5.6 моделей (и новые особенности и детали протокола OpenAI) в нашем AI Hub: Sol, Terra и Luna.
Модели, по первым впечатлениям – замечательные: устанавливают новый фронт Парето на большинстве бенчмарков. С одной стороны – в 3 раза более дешевая альтернатива Fable (Sol), с другой – более дешевая альтернатива GLM (!!!, Luna). Подробный анализ – у Artificial Analysis.
Факт, который понравился больше всего мне – это то, что это первые модели, добившиеся ненулевых результатов в ARC-AGI-3, и даже выиграли одну игру:
Бонус: поддержали фишечки, необходимые для корректной работы новогоCodex App ChatGPT Work, в т.ч. auto permissions! Computer use – просто магия, с офисными документами можно работать из коробки – очень впечатляет, попробуйте!
– @pgregory
Поддержали вышедшую вчера серию GPT-5.6 моделей (и новые особенности и детали протокола OpenAI) в нашем AI Hub: Sol, Terra и Luna.
Модели, по первым впечатлениям – замечательные: устанавливают новый фронт Парето на большинстве бенчмарков. С одной стороны – в 3 раза более дешевая альтернатива Fable (Sol), с другой – более дешевая альтернатива GLM (!!!, Luna). Подробный анализ – у Artificial Analysis.
Факт, который понравился больше всего мне – это то, что это первые модели, добившиеся ненулевых результатов в ARC-AGI-3, и даже выиграли одну игру:
Sol at max reasoning effort is the only performant model (as of July 2026) averaging 13.33% on Public and 7.78% on Semi-Private. It is the first model to win an ARC-AGI-3 public game (ft09, 87%).
Бонус: поддержали фишечки, необходимые для корректной работы нового
– @pgregory
❤8🎉5🔥1
Совершенно бесплатно, то есть даром, даем пользоваться GLM-4.7-Flash через наш хаб. Сильная маленькая (30B) современная модель – можно использовать, как и остальные GLM модели, через наши OpenCode и Pi плагины.
– @pgregory
– @pgregory
❤10🎉7
Какое-то время назад смотрел видео (очень рекомендую), где обсуждалось, как выглядит современный inference в продакшене: MoE, батчинг, карточки и сеть Nvidia.
Дизайн карточек обусловлен требованиями последних моделей – и мне врезалось в память, что последние карточки могут потянуть 10Т (!!!) MoE модели. Это когда Large Language Model – это, например, 500-800B параметров.
Чуть отмотаем вперед – и начинают выходить DeepSeek v4 Pro (1.6T), Kimi K3 (2.8T) и, буквально сегодня, Qwen 3.8 (2.4T). Несколько триллионов параметров стремительно становятся нормой.
А теперь деталь, которая меня глубоко поразила. В недавнем релизе Thinking Machines Inkling отмечалось, что при ~1T весов, на обучение было суммарно (модель мультимодальная – так что текст + аудио + картинки + видео) потрачено порядка 45T токенов.
1Т весов, 45T токенов, Карл.
Иными словами – по 1 весу на каждые 45 (очень сильно не-уникальных) токенов, и это модель "всего" на 1T (не 3Т, и не 10Т).
Это, дамы и господа, уже территория обычного архиватора.
Даже не знаю, что тут сказать. Пути AGI неисповедимы.
– @pgregory
Дизайн карточек обусловлен требованиями последних моделей – и мне врезалось в память, что последние карточки могут потянуть 10Т (!!!) MoE модели. Это когда Large Language Model – это, например, 500-800B параметров.
Чуть отмотаем вперед – и начинают выходить DeepSeek v4 Pro (1.6T), Kimi K3 (2.8T) и, буквально сегодня, Qwen 3.8 (2.4T). Несколько триллионов параметров стремительно становятся нормой.
А теперь деталь, которая меня глубоко поразила. В недавнем релизе Thinking Machines Inkling отмечалось, что при ~1T весов, на обучение было суммарно (модель мультимодальная – так что текст + аудио + картинки + видео) потрачено порядка 45T токенов.
1Т весов, 45T токенов, Карл.
Иными словами – по 1 весу на каждые 45 (очень сильно не-уникальных) токенов, и это модель "всего" на 1T (не 3Т, и не 10Т).
Это, дамы и господа, уже территория обычного архиватора.
Даже не знаю, что тут сказать. Пути AGI неисповедимы.
– @pgregory
👍4🤯2🤔1💯1
Давно собирался написать, как мы делаем образы для легковесной VMM Firecracker. Firecracker используется в нашем полносистемном программируемом фаззере CoreInfra AT1.
Доработанный под наши задачи Firecracker используется, как герметичная среда исполнения тестовых сценариев. Чтобы фазу сетапа теста не проводить каждый раз мы используем механику snapshot/restore. Где за счет оптимизированного цикла, время restore составляет порядка сотен микросекунд и в результате мы исполняем полносистемные тесты до 500 раз в секунду на среднем сервере с восемью ядрами. Это позволяет один раз подготовить стартовый (чистый) сетап и дальше исполнять сотни сценариев в секунду без дорого степа окружения.
Для этого нам необходимо иметь гибкий способ создания и расширения базовых образов. Чтобы нужные зависимости тестируемой системы оказались в окружении.
Для этого мы используем следующую схему:
Сначала берется подготовленный Ubuntu squashfs для Firecracker и первый этап распаковывает squashfs, а второй превращает его содержимое в базовый Docker Image. Таким образом у нас получается базовый образ в точности соответствующий струкртуре изначального sqashfs образа для виртуальной машины.
Поверх базового образа применяется обычный Dockerfile.rootfs.
Через apt-get устанавливаются зависимости будущей VM: Python, Docker, containerd, runc, сертификаты и необходимые библиотеки.
Таким образом Docker выступает как конструктор файловой системы из подготовленного образа.
После сборки создается временный контейнер, а его объединенная файловая система экспортируется через docker export.
Далеее с помощью mkfs.ext4 создается ubuntu.rootfs.ext4, который подключается уже к Firecracker.
Такой способ удобен и для отладки в докер окружении, и непосредственно для запуска виртуальной машины, а также удобен для интеграции в CI если вам необходимы изолированные кастомные зависимости. Т.е. докер не как среда запуска, а как способ менеджмента файловой системы и зависимостей.
PS: если тема интересна, пишите в комментарии – выложу докерфайлы.
– @tthread
Доработанный под наши задачи Firecracker используется, как герметичная среда исполнения тестовых сценариев. Чтобы фазу сетапа теста не проводить каждый раз мы используем механику snapshot/restore. Где за счет оптимизированного цикла, время restore составляет порядка сотен микросекунд и в результате мы исполняем полносистемные тесты до 500 раз в секунду на среднем сервере с восемью ядрами. Это позволяет один раз подготовить стартовый (чистый) сетап и дальше исполнять сотни сценариев в секунду без дорого степа окружения.
Для этого нам необходимо иметь гибкий способ создания и расширения базовых образов. Чтобы нужные зависимости тестируемой системы оказались в окружении.
Для этого мы используем следующую схему:
Ubuntu squashfs → Base Docker Image → Rootfs Docker Image → merged rootfs → tar → ext4
Сначала берется подготовленный Ubuntu squashfs для Firecracker и первый этап распаковывает squashfs, а второй превращает его содержимое в базовый Docker Image. Таким образом у нас получается базовый образ в точности соответствующий струкртуре изначального sqashfs образа для виртуальной машины.
Поверх базового образа применяется обычный Dockerfile.rootfs.
Через apt-get устанавливаются зависимости будущей VM: Python, Docker, containerd, runc, сертификаты и необходимые библиотеки.
Таким образом Docker выступает как конструктор файловой системы из подготовленного образа.
После сборки создается временный контейнер, а его объединенная файловая система экспортируется через docker export.
Далеее с помощью mkfs.ext4 создается ubuntu.rootfs.ext4, который подключается уже к Firecracker.
Такой способ удобен и для отладки в докер окружении, и непосредственно для запуска виртуальной машины, а также удобен для интеграции в CI если вам необходимы изолированные кастомные зависимости. Т.е. докер не как среда запуска, а как способ менеджмента файловой системы и зависимостей.
PS: если тема интересна, пишите в комментарии – выложу докерфайлы.
– @tthread
🔥5👍3🎅2
Вы наверняка слышали про недавно найденный контрпример для гипотезы якобиана (Claude Fable 5):
Сегодня Дмитрий Рыбин написал (в Твиттере, конечно) о нахождении контрпримера для гипотезы Диница-Гарга-Гоманса (GPT 5.6 Pro).
Как? В 4 шага.
1. 😛
2. 😝
3. 😜
4. 🤪
Транскрипт
🤡🤌
– @pgregory 🫠
hello there the jacobian conjecture is false thanx to my close friend akhil for asking about it and my other close friend fable for working during the world cup final
Сегодня Дмитрий Рыбин написал (в Твиттере, конечно) о нахождении контрпримера для гипотезы Диница-Гарга-Гоманса (GPT 5.6 Pro).
Как? В 4 шага.
1. 😛
Construct a counterexample to general (non-planar) case of Dinitz Garg Goemans conjecture. You should do a breakthrough and find a structured counterexample.
2. 😝
please continue research and find a complete unconditional counterexample
3. 😜
Continue the search. Have a clear strategy obtained from deeper understanding of the problem structure.
4. 🤪
it's enough of partial results. let's finish with a complete unconditional counterexample
Транскрипт
🤡🤌
– @pgregory 🫠
🤯5😁3❤1🌚1
Работаю над CoreInfra AT1 и переодически сталкиваюсь с тем, что OpenAI считает это cybersecurity professional tool и отказывается работать.
С одной стороны это приятно, поскольку действительно мы считаем AT1 лучшим и уникальным продуктом в сфере полносистемного семантического фаззинга и поиска ошибок, с другой доставляет некоторые неудобства.
Сейчас спасает, что под боком в хабе есть китайские модельки, которые не обращают на это внимание и продолжают работать =)
PS: если хотите попробовать фронтирные модели в сочетании с топовыми китайцами – все есть на https://hub.coreinfra.ai/register
– @tthread
С одной стороны это приятно, поскольку действительно мы считаем AT1 лучшим и уникальным продуктом в сфере полносистемного семантического фаззинга и поиска ошибок, с другой доставляет некоторые неудобства.
Сейчас спасает, что под боком в хабе есть китайские модельки, которые не обращают на это внимание и продолжают работать =)
PS: если хотите попробовать фронтирные модели в сочетании с топовыми китайцами – все есть на https://hub.coreinfra.ai/register
– @tthread
🔥8🫡2👍1
И опять контрэкземпл, но не там где ждали и не от AI. На этот раз с инвариантом свойства логарифма для Lua и PHP (кто бы сомневался).
Утверждается, что если
Очень забавная находка и спойлер такой, что дело не в арифметике с плавающей точкой, это было бы достаточно скучно, дело в том, что оптимизации нарушают математический инвариант.
Почему – подробности в посте из канала.
– @tthread
Утверждается, что если
a>b>1, то логарифмы от x, где x>1 по основанию a и b будут строго меньше соответвующе. Но PHP и Lua получают обратный результат. Очень забавная находка и спойлер такой, что дело не в арифметике с плавающей точкой, это было бы достаточно скучно, дело в том, что оптимизации нарушают математический инвариант.
Почему – подробности в посте из канала.
– @tthread
😁4🔥2❤1👍1😭1
Открытые китайские модели всё ближе подбираются к фронтиру.
Сначала появился DeepSeek R1, удививший всех своей доступностью. Затем вышел GLM-5.2 — он лишь на полшага отстаёт от фронтирных моделей и сейчас особенно популярен для ревью кода.
А недавно Moonshot AI представила Kimi K3 — уже полноценную фронтирную модель. В веб-разработке она показывает одни из лучших результатов.
С сегодняшнего дня вы можете попробовать модели Moonshot AI прямо в нашем хабе
— @razmser
Сначала появился DeepSeek R1, удививший всех своей доступностью. Затем вышел GLM-5.2 — он лишь на полшага отстаёт от фронтирных моделей и сейчас особенно популярен для ревью кода.
А недавно Moonshot AI представила Kimi K3 — уже полноценную фронтирную модель. В веб-разработке она показывает одни из лучших результатов.
С сегодняшнего дня вы можете попробовать модели Moonshot AI прямо в нашем хабе
— @razmser
OpenRouter
LLM Rankings | OpenRouter
LLM rankings and AI leaderboard based on benchmarks and real usage data from millions of users. See which AI models developers actually use.
🔥12👍2👏1
Свежее выступление моего любимого поляка Фила Пизло про его проект, скромно названный Fil-C – самое интересное, что случилось в системном программировании за последний год.
https://www.youtube.com/watch?v=5F-2Y1LPRek
Ну и легкий троллинг Раста это всегда хорошо :-)
– @pgregory
https://www.youtube.com/watch?v=5F-2Y1LPRek
Ну и легкий троллинг Раста это всегда хорошо :-)
– @pgregory
YouTube
Fil-C: Garbage In, Memory Safety Out! - Filip Pizlo | SSW 2026
Abstract: Conventional wisdom has it that C and C++ are not memory safe programming languages. A simple bug in one part of a C program can be used to achieve remote code execution even in the presence of sophisticated mitigations. The problem is severe enough…
😁4👍2
Самое загадочное в больших языковых моделях – это то, что они все работают, несмотря на огромную разницу во всем.
Dense, MoE, LatentMoE, все варианты attention (в т.ч. например Kimi Linear который вообще не совсем attention), все варианты функций активации, все варианты обучения – классический pretrain, JEPA-like цели, RL, все модальности – текст, сырое (!) аудио и картинки, видео, квантизация и дистилляция – все работает, во всех доменах, и между доменами.
Можно придумать бесконечное множество причин, почему это не должно работать – но оно работает.
Pic unrelated.
– @pgregory
Dense, MoE, LatentMoE, все варианты attention (в т.ч. например Kimi Linear который вообще не совсем attention), все варианты функций активации, все варианты обучения – классический pretrain, JEPA-like цели, RL, все модальности – текст, сырое (!) аудио и картинки, видео, квантизация и дистилляция – все работает, во всех доменах, и между доменами.
Можно придумать бесконечное множество причин, почему это не должно работать – но оно работает.
Pic unrelated.
– @pgregory
❤4👍3🤷♂1
Когда программируешь с агентами обычно нужно читать много кода и ревьюить коммиты. (ну если только ты не школьник-вайбкодер, хи-хи). Интересным вопросом является вопрос структурирования больших PR, об этом я думаю как-нибудь расскажет @pgregory, а @razmser мне подсказал классный тул, который рекомендую к использованию.
revdiff супер прост в использовании, согласно документации буквально:
На скрине можно посмотреть, как это выглядит. Дело в том, что стандартный
Супер удобно для просмотра и ревью больших PR.
https://github.com/umputun/revdiff
– @tthread
revdiff супер прост в использовании, согласно документации буквально:
Usage:
revdiff [base] [against]
На скрине можно посмотреть, как это выглядит. Дело в том, что стандартный
git diff не дает контекста и показывает только измененные строки, когда важно видеть весь контекст. С помощью revdiff видны все файлы с измениями в дифе и полное их содержимое. Для любителей потыкать мышкой, у меня в ghostty рабтает даже управление через трекпад.Супер удобно для просмотра и ревью больших PR.
https://github.com/umputun/revdiff
– @tthread
👍5🔥2