Обновить
512K+

Open source *

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

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

okama-mcp: подключаем ИИ-ассистента к портфельной аналитике по Model Context Protocol

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

okama MCP бесплатно подключает ИИ-ассистента (ChatGPT, Claude, Gemini) к финансовому движку и данным проекта okama: реальные расчёты доходности, риска и прогнозов вместо выдуманных чисел и галлюцинаций.

Читать далее

Spec-Driven Development на практике: как локальный job-агрегатор живёт без ревьюеров и не ломается

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

Поиск работы в 2026 году — это инженерная задача, которую все решают вручную. hh.ru перемешивает релевантные роли с шумом: на запрос «Senior PHP» прилетают джуны, фронтендеры и «PHP со знанием 1С». Одна и та же вакансия репостится под разными URL — и отследить, что ты уже откликался на неё месяц назад, практически невозможно. Зарплатные вилки скрыты или указаны в разных форматах. Значительная часть рынка вообще живёт вне hh — в ATS западных компаний (Greenhouse, Ashby, Lever, Workday), на Habr Career, в GetMatch и GeekJob, и у каждого источника свой API и своя схема данных. А поверх всего этого — ИИ по обе стороны воронки: резюме первым читает ATS-скринер, а не человек, рынок захлёстывают массовые AI-отклики, и рекрутёры в ответ закручивают фильтры.

Если декомпозировать задачу честно, получается типовой ETL-конвейер: агрегация из неоднородных источников, нормализация и дедупликация в единую модель, скоринг против резюме, трекинг откликов во времени. Ровно то, что бэкендеры строят на работе, — только над данными о собственном трудоустройстве. Я так и поступил: написал локальный клиент, который агрегирует 41 источник, оценивает каждую вакансию под резюме, ловит репосты, ведёт воронку откликов и разворачивается одной командой. Сервер слушает только loopback — резюме и история откликов не покидают машину.

В статье — разбор архитектуры и решений: фронтенд без сборки и без virtual DOM, два реестра адаптеров с тестами на согласованность, SSRF-защита на DNS-pinning, двухфазный SSE с детерминированным завершением, 13 локалей с RTL, тестовая пирамида из 1543 кейсов и Spec-Driven Development как замена командного ревью для solo-проекта.

Смотреть, как устроено

«Ленивая» установка Navidrome для стриминга музыки на Windows и без VPS — for FREE

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

В данной статье рассматривается процесс установки Navidrome Music Server на Windows для стриминга музыки со своего ПК на одно или несколько своих устройств с минимальными заморочками. Я намерено использую установку без развертывания в контейнере или на выделенном сервере дабы уменьшить порог входа в «self‑hosted музыкальный стриминг», принимая тот факт, что у кого‑то может отсутствовать желание (или возможность) разбираться с Linux и контейнерами.

Вкратце, Navidrome Music Server — это музыкальный Open‑Source медиасервер, в котором весь аудио‑контент контролируется только Вами (или другими пользователями, которых вы добавите). Это особенно актуально в текущее время, когда отдельные треки, или даже альбомы могут быть изменены или удалены с глобальных музыкальных стримингов в любое время по запросу от лейблов или регуляторов, или даже в соответствии с поправками в законе.

Сервер Navidrome разворачивается локально на ПК с Windows, а для удаленного подключения к серверу мы используем связку устройств в защищенную частную сеть через Tailscale.

Читать далее

Принципы безопасности для пакетных репозиториев

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

Безопасность публичных репозиториев и собственных хранилищ артефактов не теряет своей актуальности с возросшим количеством атак на цепочку поставки. Оценивать важно, оценивать нужно.

В феврале 2024 года в сообществе Open Source Security Foundation (OSSF) были опубликованы Принципы безопасности пакетных репозиториев, которые не потеряли своей актуальности и сегодня.

Команда CodeScoring подготовила перевод и делится с сообществом.

Авторы оригинала: Jack Cable (CISA), Zach Steindler. Предложить улучшения можно в репозитории рабочей группы.

Читать далее

PAD+ AI v4.0: исследовательская когнитивная архитектура поверх LLM

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

Большинство AI‑приложений — это просто «запрос → LLM → ответ». PAD+ AI исследует, что должно происходить между этими шагами. Мы построили открытую когнитивную архитектуру с 22 фазами обработки, 6 типами памяти, эмоциональной моделью и полной трассировкой «мыслей» системы через X‑Ray. Это не чат‑бот, а инженерная платформа для наблюдения за процессом принятия решений ИИ.

Читать далее

Народная карта наличия бензина: честно про цифры, архитектуру и как PostGIS прод положил

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

Коллеги всем привет, меня зовут Дмитрий Тыльный, я автор проекта gde‑benzin.ru
Народная карта наличия бензина на АЗС, где водители в реальном времени отмечают, на каких заправках сейчас есть топливо, где очередь, где скоро будет, а где уже все...

Сразу скажу про спорный момент. На волне топливного дефицита появилось сразу несколько похожих карт, и в комментариях других статей уже считают, «кто у кого скопипастил».

Мы с «гдебенз» запустились примерно в одно время, если я не путаю, зарегистрировал даже на день раньше домен, но к разработке приступил позже, по личным причинам).

Читать далее

PowerHTML

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

Свой PowerPoint в одном файле: редактор презентаций на HTML, который делает презентации-HTML с работающими HTML-интерактивами. Один файл, офлайн, без аккаунтов. Вайбкодил учитель физики.

Ссылка в тексте.

Читать далее

Шардинг в Manticore Search: автоматическое распределение и репликация

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

На старте поисковая система часто устроена просто: одна таблица на одном сервере. Это работает, пока не случится одно из двух. Либо отдельный запрос перестаёт задействовать весь CPU, за который вы заплатили, либо одного сервера перестаёт хватать — по объёму, по пропускной способности или просто потому, что сервер может выйти из строя, и данные на нём будут потеряны.

Автоматический шардинг, встроенный в Manticore Search и доступный начиная с релиза 27.1.5 , решает обе проблемы, разбивая таблицу на несколько физических фрагментов меньшего размера (шардов), по которым можно выполнять поиск параллельно и которые можно размещать на разных узлах:

Читать далее

redb.Route: два маршрута за вечер — от отладочного воркера до энтерпрайза на Tsak

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

Серия: redb ecosystem / redb.Route redb.Tsak

Есть у интеграционного кода одна неприятная особенность. Написать пару маршрутов — «принял HTTP, положил в базу, отдал обратно» — дело на полчаса. А вот довести это до состояния, когда оно крутится в проде, само поднимается, показывает метрики, умеет останавливать/запускать отдельные куски руками и разворачивается без пересборки — это обычно совсем другая история и совсем другой стек.

В этой статье я покажу, что в связке redb.Route + redb.Tsak это буквально один и тот же код. Мы:

Читать далее

Почему следущее поколение не будет уметь писать руками?

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

А точно ли в наши дни обязательно уметь писать? Какую пользу это несет? Сократ считал, что запись ухудшает память, знаем мы это, впрочем, лишь потому что его ученик Платон его записал. Оставим этот вопрос ученым, мы практики - если что-то можно автоматизировать, значит нужно!

Как на iOS / Mac / open webui/ openchamber / telegram сервере получить свою быструю бесплтаную транскрипцию с пунктуацией и забыть про клавиатуру?

Читать далее

Сжатие декодерных эмбеддеров: как ужать 8B до продакшена без потери recall

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

Декодерный эмбеддер 7–8B дает качество, но платит за него памятью, latency и деньгами.

Разбираем все оси сжатия - int8, int4, binary + rescoring, PQ, MRL-усечение - на реальных замерах recall@10: где деградация мягкая, а где обрыв. С воспроизводимым кодом и Colab-ноутбуком под Qwen3

Читать далее

Ускоренное построение KNN-индексов в Manticore

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

Раньше построение KNN-индекса было самым медленным этапом при сохранении и слиянии чанков в таблицах с векторными атрибутами. Начиная с v27.1.5 , Manticore может задействовать несколько ядер CPU при сохранении чанков, слияниях через OPTIMIZE, авто-оптимизации и ALTER TABLE ... REBUILD KNN. На 16-ядерном Ryzen 9 5950X построение KNN-индекса для 1 миллиона 1536-мерных векторов сократилось с 8 минут до 39 секунд.

Читать далее

Опенсорсим YaGS Plugin: открытый плагин для работы с 3DGS внутри Unreal Engine

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

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

Выход из этого тупика для целого ряда задач мы нашли в Gaussian Splatting и прогнали технологию через несколько очень разных проектов: сканирование людей и локаций для кино (например, для «Кибердеревни»), создание цифровых двойников городских кварталов и симуляцию для автономного транспорта. Инструмент один — задачи разные. И именно на этом контрасте и родилось самое интересное.

Сегодня я расскажу, как риг из 15 камер заменяет установку за сотни тысяч долларов и зачем мы используем движущегося человека как калибровочную доску. Объясню, почему для беспилотного автомобиля фотореализм обязан рождаться из данных, а не из 3D‑редактора. Ну и, конечно же, расскажу про YaGS Plugin — наш опенсорс‑плагин, который делает Gaussian Splatting полноценной частью сцены в Unreal Engine.

Читать далее

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

Полез в исходники vLLM, чтобы понять, почему один символ убивает prompt caching

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

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

vLLM и paged attention я руками не писал, зато исходники открыты, и я полез в них за байтовой причиной. Что физически лежит на GPU в момент попадания в кэш, как движок управляет этой памятью и почему хватает одного символа, чтобы всё посыпалось.

Читать далее

PID Toolkit — браузерный инструмент для настройки PID — регуляторов без установки

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

Привет, Хабр.

Некоторое время назад я публиковал ElectroKit - Браузерный расчётчик электрики, полностью работающий в одном HTML-файле. Благодаря вашим комментариям удалось исправить множество неточностей и значительно улучшить проект, но я всё ещё работаю над ним

Появилась идея сделать похожую вещь для PID-регуляторов. Опять же неудобно - онлайн калькуляторы,где-то посчитать коэффициенты, отдельно переходный процесс, искать очередную реализацию PID и захотелось чтобы всё это было в одном месте как в ElectroKit и так появился PID Toolkit. И как всегда, любимая мне идея - локально, без установки, регистрации, смс и подключения к Интернету.(хотя про интернет это уже не так важно).

Почему вообще появился этот проект

Всё, что удалось найти это PID-калькуляторы которые умеют лишь вычислять коэффициенты по одному выбранному методу и потом всё равно приходится

1 - сравнивать разные методы настройки

2 - моделировать переходный процесс

3 - оценивать устойчивость системы

4 - писать код PID-регулятора под свою платформу

5 - помнить про derivative kick, anti-windup и многое другое

Теперь к самому инструменту.

В основе лежит модель FOPDT (First Order Plus Dead Time). Пользователь задаёт три параметра объекта коэффициент усиления K,постоянную времени T,время запаздывания L.

После этого инструмент сразу рассчитывает настройки несколькими методами:

Ziegler–Nichols (Open Loop); Ziegler–Nichols (Closed Loop); CHR (0% Overshoot); CHR (20% Overshoot); ITAE Servo; ITAE Regulator; Lambda / IMC.

Все результаты отображаются в одной таблице, которую можно сортировать по Kp, Ki, Kd

Читать далее

Почему вы не видите, что на самом деле происходит между моделью и MCP-сервером

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

Недавно Claude уверенно пересказал мне большой документ, хотя прочитал только его начало.

Я подключил mcp-server-fetch и попросил агента извлечь из документа несколько фрагментов. Ответ получился складным и уверенным. Проанализировав трафик JSON-RPC между клиентом и сервером, я выяснил, что ответ вернулся обрезанным на 6000 символах, причём сервер пометил его как успешный.

В самом конце ответа сервер добавил для модели инструкцию:

Читать далее

redb.Route — уходим от MassTransit, идём к Apache Camel: Kafka, Scatter‑Gather и транзакции

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

Серия: redb ecosystem / redb.Route deep-dive

Очередная статья из цикла про redb.Route — наш Apache Camel под .NET. Если вы только подключились, вот предыдущие на Хабре:

redb.Route — Apache Camel для .NET, который мы написали потому что выхода другого не было — с чего всё началось;

redb.Route изнутри: четыре in‑memory канала и Exchange, который их связывает;

redb.Route 3.0.1 — плоская навигация по DSL, рефакторинг CRTP и тихий null;

Apache Camel под .NET, разбор по косточкам: HTTP‑коннектор без ASP.NET MVC + паттерн Content‑Based Router — предыдущая «EIP + коннектор».

Сегодня заходим с Kafka‑коннектора — разбираем его по косточкам, как делали с HTTP, — а потом сажаем на него два EIP‑паттерна: Scatter‑Gather и Aggregator. И главное — разбираем то, о чём в туториалах молчат: как это живёт под транзакциями. Заодно вышел 3.2.0.

Читать далее

ГдеЗаправка: умный подбор + как нас за сутки посетило полмиллиона

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

Год назад, в разгар топливного дефицита, я объехал три заправки подряд — и на всех был «сухой» АИ-95. Так появилась ГдеЗаправка — карта не расположения заправок, а их наличия: где прямо сейчас, по отметкам водителей, есть топливо. Недавно вышло большое обновление — и через сутки про него узнало столько народу, что наши серверы не выдержали. Рассказываю, что мы выкатили.

Карта: gdezapravka.ru

Читать далее

Как я устал писать парсер под каждый прайс и сделал из этого библиотеку

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

У нас на проекте десятки прайсингов на топливо: один вендор шлёт CSV, другой Excel, третий JSON на вебхук. Данные одни и те же, но колонка цены везде называется по-своему, даты в трёх форматах, единицы то литры, то галлоны, а половина нужных полей просто отсутствует. И под каждый источник у меня жил отдельный парсер на сотню строк if-else. Сначала их было три, потом восемь, потом я перестал считать. А по-настоящему добило другое: эти парсеры ломались молча. Вендор тихо переименовывал колонку.

В третий раз за месяц копируя один и тот же парсер, я понял, что так нельзя, и вынес логику маппинга из кода в данные. Из этого выросла библиотека fidelis: ты описываешь данные один раз как Pydantic-модель, а соответствие под каждый кривой источник один раз пишет LLM — в виде читаемой YAML-спеки, которую ты ревьюишь и коммитишь. Дальше LLM не нужен: чистый детерминированный Python, валидация каждой строки и отлов изменений схемы ещё в CI. Рассказываю, как дошёл до жизни такой и как это устроено.

Читать далее

Harness Bench: как оценить агентский harness и выбрать связку с моделью

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

Привет! Я Андрей Иванов, NLP-исследователь в R&D-лаборатории red_mad_robot.

Когда мы собираем AI-агента, первым делом выбираем модель под задачу. Но в реальном приложении она не работает в одиночку, ей нужен агентский harness — программная обвязка. Поэтому выбирать приходится не просто модель, а связку «модель + harness».

Чтобы делать этот выбор осознанно, мы создали Harness Bench — открытый фреймворк, который тестирует связки на реальных задачах в одинаковых условиях. В статье расскажу, как он устроен, разберу баги опенсорсных обвязок, которые ломают автоматический прогон, а потом покажу на цифрах, как смена harness влияет на способности одной и той же модели.

Читать далее