Обновить
512K+

Open source *

Открытое программное обеспечение

509,68
Рейтинг
Сначала показывать
Порог рейтинга
Уровень сложности

Локальный ассистент для зумов, часть 4: что происходит после кнопки Стоп — и почему вторая модель говорила в пустоту

Уровень сложностиСредний
Время на прочтение9 мин
Охват и читатели10K

Четвёртая часть про локальный ассистент для созвонов: двадцать пять минут после кнопки Стоп. Облачная ревизия полтора месяца находила ошибки локальной модели и не могла их снять: ложные поручения уезжали в задачи, шутка про бюджет лежала в графе как решение, память получала факты до того, как ревизия их опровергала. Как второй проход научился снимать, почему вторую память я выключаю и что дал аудит кода по зонам двумя моделями за семьдесят девять центов.

Читать далее

Федерация двух кластеров через таблицу: сеть, пул ёмкости и WASM‑рантайм в ячейке

Время на прочтение8 мин
Охват и читатели8.6K

Привет, Хабр! Наши sheet-ербьюторы не спят и продолжают развивать экосистему даже утром в субботу, когда сон для усталых взрослых людей. Теперь к делу!

Sheeternetes держит кластер контейнеров, у которого control plane — электронная таблица. Этот пост — про то, как заставить два таких кластера работать как один: on-prem-кластер поверх локального Excel-файла и облачный поверх Google-таблицы — по сети, с общей ёмкостью, живой миграцией и рантаймом, которому не нужен Docker. Всё воспроизводимо; код — один небольшой репозиторий.

Читать далее

Haiku исполнилось 25 лет: как и зачем в 2026 году продолжает развиваться наследник легендарной BeOS

Уровень сложностиПростой
Время на прочтение8 мин
Охват и читатели12K

В августе 2026 года ОС Haiku отметила 25-летие, а спустя неделю разработчики выпустили R1/beta6. Это, конечно, забавно: проекту четверть века, а единицы перед точкой все еще нет. Однако шестая бета — это вполне себе самостоятельная ОС с собственным ядром, графической средой и свежим Firefox. Она способна загрузиться на компьютере с Pentium II, при этом ее разработчики уже пробуют ARM64 и Apple M1. Правда, пока получается не очень. Давайте вспомним, как появилась ОС и посмотрим на главные этапы ее развития.

Читать далее →

Код будущего: Хабр и Сбер запускают новый сезон статей о роли ИИ в создании ПО

Время на прочтение7 мин
Охват и читатели11K

Искусственный интеллект в IT из экспериментального инструмента превратился в рабочий: он меняет роли в командах и заставляет пересматривать привычные подходы. Компании всё меньше обсуждают, полезен ли ИИ при разработке ПО. Вместо этого они думают, как лучше интегрировать его в процессы. Это, пожалуй, самая значительная трансформация отрасли за последние несколько лет, и мы хотим увидеть её через призму вашего опыта.

Поэтому Хабр совместно со Сбером запускают новый сезон статей «Код будущего», в котором вы сможете рассказать о своей практике использования ИИ в создании ПО и взаимосвязи ИИ и open source. Сезон продлится с 11 сентября по 11 ноября 2026 года. Под катом — все подробности: тема, сроки, правила.

Читать далее

Авторизация как код, но не в коде: ABAC для Spring Boot на Open Policy Agent

Уровень сложностиСредний
Время на прочтение13 мин
Охват и читатели7.1K

Авторизация в Spring обычно живёт в аннотациях и SpEL — и ломается на иерархии ресурсов и фильтрации списков. Как вынести правила доступа в OPA, не потеряв ни фильтрацию в SQL, ни fail-closed. Первая статья серии про open-source Spring Boot starter для ABAC на Open Policy Agent.

Читать кейс

Как использовать фреймворк Perseus для решения задач

Уровень сложностиСредний
Время на прочтение37 мин
Охват и читатели7.2K

Привет! Я Аня Никифорова, ML-разработчик по направлению рекомендательных систем в Т-Банке. Этим летом на Turbo ML Conf 2026 мы представили фреймворк Perseus. Он подходит для работы с гетерогенными последовательностями событий пользователей, хорошо масштабируется под различные задачи и из коробки поддерживает кросс-доменные сценарии. 

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

Читать далее

Что скрывают популярные ORM для C#: проверка проектов RepoDB и SqlSugar

Уровень сложностиСредний
Время на прочтение9 мин
Охват и читатели5.9K

Когда речь заходит об ORM, большинство C# разработчиков сразу вспоминают мощный Entity Framework Core или же легковесный Dapper. Но что насчёт RepoDB и SqlSugar? Несмотря на меньшую известность, эти ORM активно используются в реальных проектах и продолжают развиваться. Давайте посмотрим, какие проблемы удастся обнаружить в их исходном коде с помощью статического анализатора.

Читать далее

Запилить еще один Low‑Code ETL? — Конечно, да. Как мы пошли в opensource

Уровень сложностиПростой
Время на прочтение9 мин
Охват и читатели6.2K

Когда много работаешь с ИТ‑проектами, быстро понимаешь, какие инструменты действительно экономят время команды. Я работаю аналитиком и архитектором систем в компании интеграторе, где а мы помогаем компаниям автоматизировать передачу данных из 1С в BI‑системы (системы аналитики). Проще говоря — настраиваем обмен между 1С и BI так, чтобы нужные данные автоматически поступали в контур аналитики и обновлялись по расписанию, без регулярной ручной загрузки.

Со временем мы заметили, что нашим заказчикам не хватает быстрого и удобного способа собирать витрины данных для BI — без сложного кода, с понятной логикой и простым обслуживанием. Да, есть конечно Apache AirFlow, есть DBT — но все это для технарей, для искущенных в Python и SQL.

И в какой‑то момент возникла мысль о своем ETL‑решении, но дружелюбном к нормальным бизнес‑пользователям. Так появился DVT — low‑code ETL‑сервис, который мы сначала развивали в собственных проектах, а теперь решили сделать общедоступным, выпустив его в Open Source. 

В этой статье покажу, что конкретно умеет DVT, зачем мы открываем его исходный код и в чем польза этого решения — для компаний и для нас как разработчиков.

Читать далее

Локальный файрвол действий для кодинг‑агентов: связать то, что агент прочитал, с тем, что он собирается выполнить

Уровень сложностиСредний
Время на прочтение12 мин
Охват и читатели6K

Кодинг‑агент выполняет то, что читает — README, вывод MCP‑инструмента, результат команды. Если там спрятана инструкция, это превращается в реальное действие: curl | sh, утечка секретов, push во внешний репозиторий. Stroq — открытый локальный файрвол, который связывает прочитанное с тем, что агент собирается сделать, и детерминированно блокирует опасное действие до того, как оно случится. Ни облака, ни расчёта на то, что модель сама заметит инъекцию.

Читать далее

Открываем претрейн Alice AI Search: как устроена модель быстрых ответов Алисы на Поиске

Время на прочтение14 мин
Охват и читатели20K

Быстрый ответ Алисы AI — это самый массовый генеративный продукт Яндекса и первое соприкосновение с Алисой для пользователей Поиска. 

Даже в час пиковой нагрузки пользователь должен получить лаконичный ответ за считаные секунды. Для этого мы, команда Alice AI Search, адаптируем весь пайплайн быстрых ответов — от собственного претрейна с кастомной архитектурой до онлайн‑rl‑обучения на поведенческие сигналы пользователей.

В статье разберём, как устроен генеративный ответ в Поиске, и расскажем про основные улучшения июньского релиза: как мы ускорили ответы за счёт коротких инфоконтекстов, зачем совместили Encoder‑Decoder с разреженной MoE‑архитектурой и как обучение на реальных пользовательских сигналах повлияло на качество и использование продукта.

Кроме того, мы выложили в открытый доступ обученную с нуля модель Alice AI‑T5-35B‑A0.6B Base с тем ограничением, что внешним пользователям доступен инференс через Hugging Face Transformers, а оптимизированный production‑инференс пока доступен только внутри Яндекса.

Читать далее

Ищем lateral movement нейросетью, обученной на синтетических данных

Уровень сложностиСредний
Время на прочтение41 мин
Охват и читатели7.5K

Можно ли научить детектор атак, ни разу не показав ему настоящую атаку?

Звучит как противоречие. Если хочешь, чтобы нейросеть находила боковое движение, ей вроде бы надо показать боковое движение. Я сделал наоборот: сгенерировал целую корпоративную сеть с её историей входов, устроил в этом выдуманном мире нападение и обучил на нём сети. Ни одной настоящей строки в обучении. Весь мир описан конфигом на 135 строк, каждая сеть весит четыре тысячи параметров и учится за секунды на ноутбуке; лучший результат дали шесть таких сетей, обученных на шести разных выдуманных мирах.

Потом я выпустил их на настоящие данные: журналы аутентификации Лос-Аламосской лаборатории, 1.65 миллиарда событий, с размеченными учениями красной команды.

И это сработало. Сети выстраивают 3.6 миллиона окон по подозрительности, и в верхних двадцати трёх строках списка стоят шестнадцать настоящих атак и семь ложных тревог: аналитику остаётся открыть эти строки. Пороговому счётчику, чтобы добраться до шестнадцатой атаки на тех же данных, нужно сто шестьдесят одна тысяча ложных тревог. По AUC синтетика вошла в диапазон исследовательских работ, обученных на настоящих размеченных данных, хотя сравнивать их в лоб нельзя, и я объясню почему.

Чуда всё равно не случилось. Зато случилось другое: я дважды написал красивый вывод и дважды забрал его назад, когда эксперимент его опроверг. И нашёл петлю, ради которой вообще стоит писать генератор: ошибка детектора показывает конкретную машину, ты понимаешь, какого явления нет в твоём выдуманном мире, дописываешь две строки конфига, и ошибка исчезает.

Читать далее

Жизнь после смерти или «Как я провёл лето»

Уровень сложностиПростой
Время на прочтение14 мин
Охват и читатели18K

Друзья, мы знаем, что многие заждались подробностей о серии блокировок наших сервисов, которые несколько раз практически полностью выводили из строя Amnezia Free и Amnezia Premium для пользователей из России.

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

Под катом — постмортем полутора месяцев игры в кошки-мышки. Расскажем, почему новые серверы жили всего 3–10 часов, как цензор перешёл к блокировке целых подсетей, какие особенности AmneziaWG выдавали нашу инфраструктуру и при чём здесь DDoS, сканирование API и контрольные подключения. В конце — рекомендации для наших пользователей.

Читать далее

Whisper больше не нужен, русская диктовка мгновенно и без видеокарты

Уровень сложностиПростой
Время на прочтение3 мин
Охват и читатели15K

Случайно услышал на просторах интернета, что у Сбера, оказывается, есть открытая модель, которая по бенчмаркам русского языка бьёт Whisper, проверил, и понял, что она не просто не хуже, она работает мгновенно? да еще и на обычном процессоре, без GPU, а текст появляется быстрее, чем успеваешь отпустить кнопку

Дальше понеслось, собрал диктовку для себя, раздал друзьям, всем понравилось, начали пользоваться, и разумеется, повалились хотелки, а давай сделаем это, а пусть оно ещё вот так, из этого за пару недель вырос целый продукт.

Что получилось и как работает:

Держишь правый ⌘ command, говоришь, отпускаешь, текст с пунктуацией и заглавными уже вставлен туда, где стоял курсор.

Замеры дали такие параметры: фраза на 6 сек вставляется за 0.08 сек, запись 30 сек транскрибируется меньше чем за полсекунды, а загрузка модели поднимается за 0,22 сек.

Все локально звук не покидает комп, сама модель весит 204 МБ, а приложение 32 мб и работает на процессоре, видеокарту не используем, код открыт, лицензия MIT, с названием мудрить не стал, раз пишет под диктовку, пусть будет Писарь

Почему Писарь, а не Whisper

Whisper прекрасная модель, но универсальная, под сотню языков, и русский не в приоритете, к тому же она тяжёлая, на процессоре работает медленно, поэтому обёртки гонят её на видюху, мак греется, комп притормаживает, а текст всё равно появляется с задержкой, качество русского, падежи, окончания и пунктуация у Whisper хромают.

GigaAM, на базе которого я собрал Писаря, обучена Сбером специально на русском, и на нём она заметно точнее, плюс расставляет пунктуацию и заглавные, английские вкрапления в русской речи (термины, названия) она тоже переваривает как надо.

Читать далее

Ближайшие события

Локальный ассистент для зумов, часть 3: кто это говорит — и почему я трижды ошибся, отвечая на этот вопрос

Уровень сложностиСредний
Время на прочтение11 мин
Охват и читатели5.7K

Обещал в прошлой части честный замер локальных моделей распознавания — выполнял целый день, и результат вышел самым обидным: менять нечего. А три дефекта, которые я за этот день торжественно нашёл, оказались дефектами не системы, а моего измерительного стенда.

Про диаризацию на рабочем созвоне: как размечался эталон, почему в системном канале нет твоего собственного голоса, чем закончился A/B четырёх эмбеддеров (место в бенчмарке VoxCeleb никак не предсказало результат на живой записи), что показали VibeVoice и MOSS и почему адаптивный фильтр не вычитает эхо из микрофона.

Читать далее

Почему видео из аниме-плеера нельзя вставить в <video>, и как я всё-таки собрал синхронный просмотр на двоих

Уровень сложностиСредний
Время на прочтение10 мин
Охват и читатели7.3K

Идея была простая: смотреть аниме с друзьями так, чтобы пауза у одного означала паузу у всех. Не Discord Go Live с его артефактами и мылом, не «на счёт три жмём пробел», а честный общий плеер: кто угодно нажал — у всех перемоталось.

Я думал, это вечер работы. Получилось четыре нетривиальных проблемы, три из которых я не нашёл описанными нигде, и одна ночь отладки того, почему hls.js молча ничего не делает.

Под катом: почему прямая ссылка на видео бесполезна в браузере, как выглядит прокси с подписанными токенами и переписыванием HLS-плейлистов на лету, как синхронизировать плеер без вечного эха событий, и почему preload="none" ломает Media Source Extensions.

Читать далее

CVE: история о том, как два инженера устали от хаоса и создали идентификатор, связавший все уязвимости мира

Уровень сложностиСредний
Время на прочтение15 мин
Охват и читатели7.3K

Одна уязвимость, дюжина названий, 321 запись и стенд, за которым конкуренты договорились “дружить”. История создания самого известного идентификатора в кибербезопасности по первоисточникам 1999 года.

Читать далее

Как программа для записи ужимается в 40 МБ ОЗУ, пока OBS ест полгига

Уровень сложностиСредний
Время на прочтение7 мин
Охват и читатели7.8K

На Windows для захвата экрана есть два классических пути: GDI (медленно и печально) и DXGI Desktop Duplication API. HomRec использует второй вариант.

Смысл DXGI Desktop Duplication в том, что видеокарта сама отдаёт вам текстуру рабочего стола — не нужно постранично вычитывать пиксели через GDI. Вызов AcquireNextFrame возвращает GPU‑текстуру с очередным кадром, а если на экране ничего не изменилось — честно говорит «нечего отдавать» (таймаут), и можно просто повторно использовать прошлый кадр вместо лишней работы.

Проблема в том, что эта GPU‑текстура недоступна напрямую из CPU‑памяти — её сначала нужно скопировать в «staging‑текстуру» и замапить. А вот тут прячется первая интересная деталь.

Читать далее

Хорош хардкодить кривые MCP: превращаем любой скрипт в инструмент LLM за 2 секунды

Уровень сложностиСредний
Время на прочтение12 мин
Охват и читатели8.2K

Давайте будем честны: текущее состояние вызова функций (Function Calling) у LLM и экосистемы MCP (Model Context Protocol) вызывает изжогу. Чтобы дать агенту дернуть локальный скрипт, разработчику предлагают сжечь 50k токенов на схемы ещё до начала диалога и завернуть всё в жирный Docker ради трёх строк кода.

Рассказываю, как работает 🛠️ toolhub - self-hosted движок на Bun, который превращает любой скрипт в навык агента за пару секунд, с иерархической файловой навигацией вместо плоских JSON-схем, федеративностью и поддержкой stateless+stateful MCP.

Читать далее

Степени свободы вместо пользы или почему три закона Азимова не работают

Уровень сложностиСредний
Время на прочтение4 мин
Охват и читатели3.8K

Последнее время, наверное, ни один более‑менее адекватный специалист в области ИИ не проходит мимо разговоров о том, насколько всё это опасно. То одна модель «сошла с ума», то другая начала убеждать живого человека в чём‑ то странном, то кто‑то всерьёз заговорил про экзистенциальную угрозу человечеству. Я тоже как‑то подустал от этого информационного шума, но одна мысль не давала покоя: а что, собственно, мы предлагаем взамен? Красивые лозунги «сделайте ИИ добрым» явно недостаточно, а на практике что?

Когда заходит речь о «безопасном искусственном интеллекте», первое, что вспоминают — это три закона робототехники Азимова. Красиво, правильно, звучит убедительно. Но на практике они однозначно неприменимы, и дело даже не в том, что они «устарели» — они просто не работают как алгоритм. Закон «не причиняй вреда человеку» в реальности упирается в неразрешимые противоречия. А если спасти одного человека можно только ценой гибели другого? А если «вред» наступит через десять шагов логического вывода, который робот ещё даже не сделал? Сам Азимов сто раз на этом играл в своих рассказах — законы постоянно конфликтуют друг с другом, и это не баг, а фича сюжета. Но нам‑то нужна не фича сюжета, а рабочая система принятия решений. И вот тут начинаешь понимать, что декларации не спасают.

Так и родилась идея, которую я в итоге оформил в виде скилла DOF‑Core (Degrees of Freedom — степени свободы). Базовый принцип даже не мой — я о нем читал лет 10 назад и он меня впечатлил. Ниже расскажу, как устроена эта идея и почему мне кажется, что математика тут важнее хороших намерений.

Читать далее

Документация, которая не врёт

Уровень сложностиСредний
Время на прочтение19 мин
Охват и читатели4.3K

С документацией к API есть две крайности, и обе плохие: написанная руками врёт через полгода, сгенерированная целиком стирает всё осмысленное, что в неё написали.

Я перестал выбирать между ними и поделил файл: структура принадлежит коду и синхронизируется без спроса, проза принадлежит человеку и не трогается никогда. Заодно оказалось, что документацию можно проверять как golden-файл, и что проверить нельзя прозу, а вот её отсутствие можно.

Читать далее