Собрали в одном месте самые важные ссылкии сделали Тренажер IT-инцидентов для DevOps/SRE
Спор. Деньги. Двое людей не сошлись характерами и зашли в арбитраж. На разбор у двух живых арбитров ушло три недели с переменами арбитров, отпусками, скандалами и тремя параллельными переговорами сторон.После того как вердикт уже был вынесен, я прогнал то же самое дело через свой Telegram-бот на Claude Sonnet 4.6. Те же скриншоты, та же фактура, никаких подсказок.Бот выдал тот же вердикт за двенадцать минут. Не на 100%, но суть совпала: кто прав, кто что должен сделать, какой срок, что при неисполнении.
Продолжаем рассмотрение, того как правильно оценивать качество ИИ систем, в данной части поговорим про метрики характерные для RAG системы. Способах оценить полноту, точность и соответствия выдачи контексту в подобной системе. На примере библиотеки RAGAS, с разбором того, как эти метрики работают изнутри.
В логистике проблема часто не в том, что нет данных.Проблема в том, что данные разбросаны по разным местам.Одни заявки лежат во внутренней системе, другие — в закрытых кабинетах грузоотправителей, третьи — на тендерных площадках, четвёртые приходят через Excel-выгрузки, пятые доступны только через веб-интерфейс. Где-то есть нормальный HTTP-обмен, где-то данные спрятаны за фронтендом, где-то приходится читать DOM-таблицу, а где-то сначала кажется, что всё просто, пока не выясняется, что цена приходит в копейках, маршрут состоит из трёх точек, а тип кузова записан как “тент 20т, верхняя загрузка”.Для менеджера всё это выглядит не как единый рынок грузов, а как набор вкладок в браузере.
Gunicorn кажется простым, пока не сталкиваешься с эксплуатацией: внезапные ошибки 502, зависшие воркеры и странное поведение при перезапусках. За этими симптомами стоят вполне конкретные причины — от медленных клиентов и отсутствия буферизации до особенностей реализации GThread и механики Graceful Shutdown.В этой статье разберём реальные сценарии отказов, посмотрим, как менялась архитектура GThread в разных версиях Gunicorn, и соберём практичную конфигурацию с Nginx, Docker и Kubernetes, которая ведёт себя предсказуемо под нагрузкой.
Поговорим о том, как превращать последовательности пользовательских событий в векторы, зачем обучать BERT на "языке" клиентского поведения и почему embedding-пространство может неожиданно начать отражать будущую ценность пользователей
Идемпотентность в System Design: полный примерИдемпотентность часто упоминается при проектировании систем (system design). Ниже будет простыми словами объяснено, что это такое, далее мы разберём основные детали идемпотентности, часто понимаемые неверно и, наконец, проиллюстрируем её на полном примере. Что такое идемпотентность?Операция является идемпотентной, если при однократном или многократном выполнении она всякий раз даёт один и тот же результат.
В этой статье я расскажу, как реализовал весь этот пайплайн, покажу код, проведу батч-тесты разных форматов и уровней качества, и, конечно, дам послушать результаты. Все исходники прилагаются, и вы сможете повторить эксперимент сами.
FastMCP позволяет быстро собрать MCP‑сервер, но скорость легко оборачивается ошибками: лишние токены, слабые схемы, сырые API‑примитивы, плохая обработка ошибок и риски безопасности. В статье разбираем 7 проблем, из‑за которых LLM‑агент начинает путаться, ломать сценарии и требовать лишних подтверждений, — и показываем, как их исправить.
Думаю, многим знаком этот сценарий: появляется задача — и первая мысль: «скормлю все LLM, она разберётся». Поначалу получается красиво, всё работает и есть первые результаты. Потом начинаешь проверять детали и замечаешь, что модель местами добавляет текст от себя. Потом смотришь на затрачиваемое время и понимаешь, что при текущей скорости обработка всего объёма документов закончится через год.
LLM вероятностна. Если она ответила правильно 5 раз подряд, это не значит, что на 6-й раз она не улетит в галлюцинации. Без продуманного процесса непрерывной оценки вы строите крайне хрупкую конструкцию.
Telegram теперь полноценный OpenID-провайдер: oauth.telegram.org, JWKS, JWT, claims. Туториалы на GitHub при этом массово показывают старый виджет с HMAC от bot-token и /setdomain в BotFather. Я разобрался с новым флоу и собрал PoC на Python — рассказываю, как устроен обмен между фронтом, Telegram и бэком, чем Login library через telegram-login.js отличается от manual OIDC code flow с PKCE, что настраивать в BotFather (спойлер: не в чате, а в его mini-app), как протестировать локально через ngrok, и какая проверка id_token нужна вместо ручного HMAC.
Вот есть Postman-коллекция из 40 запросов. Разложена по папкам, и с тестовыми скриптами, которые проверяют статус-коды. Вы потратили на неё время, она хороша.И ещё у вас есть CI-пайплайн, который про Postman никогда не слышал и слышать не собирается.Эти две вещи мирно сосуществовали месяцами, потому что никто не хочет быть тем человеком, который вручную переписывает 40 запросов в pytest-функции. Newman, конечно, есть, но Newman гоняет тесты, а не генерирует код, который можно прочитать, отредактировать и нормально положить в систему контроля версий.Получается, коллекция документирует API. CI тестирует API.
Немного погрузимся во внутреннее устройство Apache Airflow и разберёмся, что на самом деле происходит за красивым синтаксисом TaskFlow API. Посмотрим, как работают декораторы @task и @dag, каким образом обычные Python-функции превращаются в задачи Airflow и за счёт какой «магии» строится граф зависимостей. А заодно напишем собственный мини-пример, чтобы лучше понять архитектурные идеи, на которых построен современный Airflow.
Navisworks хорошо находит BIM‑коллизии, а Revit — инструмент для исправления. Но между ними часто остаётся хаос: XML и HTML‑отчёты, Excel, переписки, ручной поиск ID и вопросы руководителей в стиле «ну как там с коллизиями?».Я расскажу, как из этой боли вырос внутренний web‑сервис Clash Analytics: импорт XML‑отчётов Navisworks, аналитика по проектам, история коллизий, статусы, комментарии, назначение отделам и локальный Revit Bridge, который открывает проблемное место в модели за один клик.
А теперь о том, что происходило в последнее время на других ресурсах.
Вчера был представлен релиз Bot API 10.0, который вносит, я бы сказал, серьёзнейшие изменения в саму механику работы ботов и их взаимодействие между собой. Давайте разберём это обновление подробнее.
Статья о том как я пришёл к DIY (самодельному по нашему) гитарному процессору. Пользуюсь им последние пару лет, с двумя разными прошивками. Расскажу как допиливал что не хватало, в том числе с помощью LLM и опишу свои впечатления и даже выложу пример звучания.
Представьте ситуацию: у вас есть робот на колёсах, небольшой дрон или просто симулятор телеметрии на учебном стенде. Wi-Fi поблизости нет, радиоканал нестабилен, а из связи — только SIM-карта с минимальным интернетом. Возникает логичный вопрос: как передавать координаты или телеметрию без SMS, звонков и специализированного оборудования?
У dict в Python слишком простая внешность: положили ключ, достали значение, пошли дальше. Но за этим стоит один из самых вылизанных участков CPython — с компактным хранением, сохранением порядка вставки, общими ключами для экземпляров классов, оптимизациями доступа к атрибутам и новыми компромиссами из-за free-threading
Продолжаем строить durable ии-агента. Вторая часть пособия по созданию правильной агентской архитектуры в 2026 г.