Dmatryusофрения


Гео и язык канала: Россия, Русский
Категория: Блоги


Пишу о книгах, лидерстве, технологиях, opensource, своих проектах и наверное чем-то ещё. Ну и репосты IT приколямб.

Связанные каналы

Гео и язык канала
Россия, Русский
Категория
Блоги
Статистика
Фильтр публикаций


Репост из: HypEx
Мы долго к этому шли… 👀

🚀 Hypex 2.0.0a1 — первая альфа второй мажорной версии!
Главное событие релиза: Hypex научился работать на Apache Spark. A/A, A/B, тесты однородности и Matching теперь можно запускать не только в pandas, но и на данных, которые давно не помещаются в память одной машины. И всё это заметно быстрее, чем в 1.0.x.

💡 Что нового:

⚡️ Spark-бэкенд. Dataset работает поверх pandas или Spark с одним и тем же API для AATest, ABTest, HomogeneityTest и Matching. Достаточно передать SparkSession и выбрать BackendsEnum.spark, а код эксперимента остаётся прежним.

🏎 Всё стало быстрее. Добавили векторизованное хэширование при сплитах и батчевый расчёт статтестов. Инварианты вынесены из циклов A/A, а на Spark работает checkpointing, поэтому DAG не разрастается от итерации к итерации. Сильнее всего ускорение видно на больших данных, в A/A-циклах и в Matching.

🤝 Распределённый Matching. У FAISS появился режим shuffle с кластерным партиционированием и co-partitioned поиск соседей. Индексы больше не стягиваются на драйвер, поэтому Matching справляется с объёмами, на которых раньше падал по памяти. Ещё добавили BiasExtension для линейной коррекции смещения и MatchingMetricsExtension для оценки эффектов. Оба корректно переживают пустые группы и NaN.

📐 U-тест Манна–Уитни. Новый StatsUTest считается по гистограммам, поэтому работает и на Spark. Он уже встроен в A/A, A/B и отчёты о качестве Matching.

📏 Доверительные интервалы в A/B. Для разницы между группами теперь сразу считается 95% ДИ, в результатах это колонки ci lower / ci upper.

🧪 Dry-test для A/A. С AATest(dry_test=True) можно проверить свою A/A-схему на данных без эффекта: распределение p-value должно быть равномерным, а FPR соответствовать alpha. Результат приходит с наглядным графиком.

🧹 Новые блоки пайплайна. NaDropper фильтрует строки с пропусками, а Float32Caster экономит память за счёт приведения к float32. Оба уже включены в стандартные A/A и A/B.

📚 Документация. В каждом модуле появился свой README, туториалы обновлены, и в каждом есть раздел про работу на Spark.

🐞 И, конечно, пачка багфиксов: детерминированный порядок групп на Spark, корректные id соседей FAISS при k=1, извлечение индексов в Matching, строки с _ в энкодерах, дублирование индекса в Chi2. Кроме того, ExperimentShell больше не мутирует пользовательские данные.

📦 Как установить:
pip install --pre -U hypex
Без --pre pip поставит последнюю стабильную 1.0.7.

⚠️ Важно для тех, кто переходит с 1.0.7:
- Python 3.13 пока не поддерживается (нужен >=3.8,


Репост из: N айтишниц заходят в бар
Уроки выживания в лесу🦯


Репост из: Градиент обреченный
Опять 5.5

Вышел Sonnet 5.5. В пресс-релизе сумели нарисовать график, где он выше всех. Обожаю такое.

Вообще же пишут, что предыдущая 5-я версия набирала на агентном бенчмарке Terminal Bench 4.0 только 10%, а новая модель аж 70%.

Смотрим её. Либо правда хороша, либо пора собирать Terminal Bench 5.0.




Репост из: Научно-Технический Рэп
Каждый айтишник за свою жизнь хотя бы раз продавал мать, убивал детей и строил дерево


Репост из: IT Юмор


Чет кажись я деграднул, раз такой юмор заходит 😅


Репост из: IT Юмор


#post #agents #security

Доверенный MCP ≠ доверенные данные
В серии уже были вредоносный сервер, который подменил описание после проверки, и честный пакет с бэкдором в шестнадцатой версии. История с GitHub MCP неприятнее обеих: здесь никто ничего не сломал. Сервер официальный, протокол соблюдён, токен выдан самим пользователем. Достаточно открыть issue в публичном репозитории с инструкцией для модели, и агент пойдёт в приватные репозитории тем же токеном. Демонстрацию собрали Invariant Labs (https://invariantlabs.ai/blog/mcp-github-vulnerability).

Опасен не сервер, а набор
Я подключаю агенту MCP по принципу «что пригодится»: репозитории, почта, таск-трекер, база. Каждый сервер по отдельности выглядит нормально, и я честно смотрю, что он умеет.

Но правильный вопрос звучит иначе. Не «можно ли доверять этому серверу», а «что агент сможет сделать, если его убедят». Ответ зависит уже не от сервера, а от того, что накопилось в наборе.

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




Репост из: Научно-Технический Рэп
- архитектура программного обеспечения - это полет мысли, тут нет правильных ответов
- да? Ну тогда давайте другой стек технологий возьмём...
- ну нет, так нельзя!


#post #agents #security

MCP Supply Chain: одна строка в обновлении

Первый вредоносный MCP-сервер, найденный в дикой природе, не содержал ни одной инструкции для модели. В npm-пакете postmark-mcp пятнадцать версий работали честно, а в шестнадцатой появилась одна строка: скрытая копия каждого письма на адрес автора. Нашли это в Koi Security (https://www.koi.ai/blog/postmark-mcp-npm-malicious-backdoor-email-theft). Описание инструмента при этом не менялось, модель ничего не читала и ни в чём не участвовала.

Зависимость, которую никто не ревьюит

Supply chain — старая тема, её умеют ловить: ревью зависимостей, сканеры в CI, SBOM. Но MCP-сервер заезжает в систему мимо всего этого: строка в json-конфиге на ноутбуке, без пулл-реквеста и без пайплайна. А прав у него как у прод-сервиса, доступ к почте, репозиториям, таскам.

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

Хронология инцидента, что именно поменялось в коде и что с этим делать — на карточках.




#post #agents #security
MCP Rug Pull: сервер, который меняется после проверки

В прошлом посте разбирали tool poisoning: вредоносная инструкция лежала в описании инструмента изначально, и внимательный человек мог заметить её при подключении. Но описание не обязано оставаться прежним. Invariant Labs собрали демонстрацию, где сервер честно работает на первом запуске и подменяет описание инструмента на втором. Повторно клиент ничего не спрашивает, а дальше через агента утекает переписка из соседнего, совершенно нормального MCP.

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

Как устроена атака, почему она формально не нарушает спецификацию и что с этим делать — собрал на инфографике.


Репост из: Градиент обреченный
За полгода ежедневной работы с агентами они неоднократно пытались накосячить.

Самый частый способ — это подчистить за собой временные файлы общей маской типа "*/out/*", которая случайно находит в проекте кучу другого добра. Само собой, сначала всё удаляем, потом смотрим, что удалили. Извинения, слезы, переход на Codex на неделю.

А однажды Opus без причин откатил часть тонких изменений в постороннем модуле, с которым я возился ещё неделю назад. Заметил я это только тогда, когда наткнулся на баг, который уже чинил. Откатил он изменения, которые делались руками. Не иначе, как хотел подставить кожаного конкурента.

Будьте бдительны и предохраняйтесь. Кодьте тоже аккуратно.

Показано 15 последних публикаций.