Хабр. Разработка

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

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

    В статье разберём Python-сервис, который отправляет персонализированные SMS, принимает ответы и подключает голосовой вызов для тех, кто не ответил.

    Читать далее
  2. Системным администраторам приходится выполнять множество рутинных задач по сопровождению и поддержке систем. При этом, конечно же, хотелось бы максимально автоматизировать эти задачи. Сегодня мы поговорим о том, как с помощью сценариев PowerShell можно выполнять различные задачи администрирования в среде Windows.

    Читать далее
  3. В Codex появилась экспериментальная фича — skills: декларативное описание локальных «навыков» агента с автоматическим discovery и строгими правилами применения. В статье разберём, как это работает под капотом, зачем нужно и как использовать это в своих проектах.

    Читать далее
  4. AI-помощники в IDE — уже не фантастика, а ежедневная реальность. Но как сделать так, чтобы они действительно помогали, не лезли не в тему, не сливали код в облако и не требовали подписку на каждого чиха? Ответ — Continue: open source AI-ассистент, который интегрируется с IntelliJ IDEA, GoLand, WebStorm, OpenIDE и другими IDE на базе IntelliJ Platform. 

    Он предоставляет автодополнение, чат, команды над выделенными фрагментами и даже агентный режим с патчами на несколько файлов. Главное — вы выбираете модель и правила игры.

    Читать далее
  5. Привет, Хабр! Гитарные педали из Поднебесной в корпусе формата «Сникерс» из двух гнутых П-образных алюминиевых профилей привлекают своей дешевизной, компактностью и лёгкостью, однако проигрывают в плане надёжности.

    Последнее особенно касается ножного переключателя, который нередко быстро выходит из строя, либо даже оказывается неисправным прямо из коробки.

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

    Читать далее
  6. В статье речь пойдёт о методике разработки в Postgres, которую можно использовать для лучшей интеграции вашего расширения с базой данных. А конкретно - о том, как реализовать кастомные свойства объектов БД (или custom reloptions), которые можно было бы назначать разным типам объектов БД и таким образом управлять поведением расширения.

    Читать далее
  7. Последние месяцы индустрия игр активно обсуждает тему искусственного интеллекта — и не только в контексте новых технологий, но и скандалов. Один из самых заметных случаев связан с Larian Studios: признание в использовании AI‑инструментов вызвало бурную реакцию, ведь речь идет о разработчиках, которых принято считать «чистыми ремесленниками». Но это лишь симптом более широкой тенденции, а в разработке автоматизация существует уже давно.

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

    Читать далее
  8. Представьте, что вы наконец-то выстроили надежный периметр вокруг своих контейнеров, сканируете образы и настраиваете политики в соответствии с общепринятыми стандартами безопасности. И кажется, всё под контролем. Но что, если атака началась в уже запущенном контейнере? Как обнаружить, что прямо сейчас легитимный микросервис крадет ваши данные или майнит криптовалюту?

    В данном случае на классические средства защиты рассчитывать не приходится: они охраняют контейнеры снаружи и не видят, что происходит внутри. А большинство инструментов для выявления угроз в среде выполнения — сложные и дорогие. Тем не менее выход есть: недавно специалисты из команды PT Container Security представили рынку первое в России открытое решение для защиты рантайма контейнерных сред — Runtime Radar. Подробнее о нем в нашей статье рассказывают руководитель разработки Никита Ладошкин и эксперт Виталий Шишкин (@JCD3nt0n).

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

    Меня зовут Анатолий Белановский, я старший инженер по методикам тестирования. В прошлом занимался спинтроникой, работал над разработкой STTMRAM, ReRAM, а также в области сверхпроводниковых кубитов. В статье расскажу о методике, которая позволит быстро определить тепловые ограничения процессоров, модулей памяти, накопителей, сетевых контроллеров и элементов питания. Инженеры могут использовать ее при аудите существующей инфраструктуры, оптимизации компоновки и нагрузок, приемочных испытаниях и ускоренного прототипирования систем охлаждения.

    Читать далее
  10. На SQL-собеседованиях интервьюер часто формулирует условия устно, просит рассуждать вслух и быстро писать запрос в реальном времени. Это непривычный формат — и именно поэтому он становится испытанием даже для тех, кто много практиковался.

    Читать далее
  11. Привет, Хабр!

    Этой осенью Google порадовали нас релизом AlphaEvolve — фреймворка, который комбинирует способности LLM к написанию кода с эволюционным подходом к вычислению. Новый метод доказал свою эффективность на сложных алгоритмических или математических задачах, но, как это часто бывает у таких компаний, технические детали AlphaEvolve остаются коммерческой тайной. Тогда мы в AIRI решили создать свой фреймворк. 

    Так усилиями научной группы «Мультимодальные архитектуры ИИ» лаборатории «Сильный искусственный интеллект в медицине», научной группы «Генеративное проектирование» лаборатории FusionBrain, лаборатории «Доверенные и безопасные интеллектуальные системы» и отдела научно‑технической разработки увидел свет GigaEvo — эволюционный фреймворк для автоматизации ML и LLM‑ориентированных задач, который мы представили в ноябре на AIJ и чей код выложили на GitHub

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

    Читать далее
  12. Привет, Хабр! На связи Иван Жирнов и Степан Рыбалов, тимлид и QA группы разработки чат-ботов в компании «Передовые Платежные Решения». В работе мы используем чат-боты собственной разработки. До AI-революции чат-боты были сценарные и весьма ограниченные. С нейросетями же их возможности стали головокружительно шире. В этой статье мы расскажем о том, как и зачем перешли на чат-ботов с ИИ, чтобы наш опыт мог помочь в проекте и вам.

    Ежемесячно клиенты генерируют более 73 тысяч диалогов в текстовых ботах, и более 92% этих диалогов обрабатывается без участия человека — в чатах, мобильном приложении и личном кабинете. Голосовой чат-бот на горячей линии получает в месяц более 15 тысяч звонков, и здесь автоматизация достигает 20–30%. Именно голосовой бот навел нас на мысли об ИИ: здесь вопросы обычно оказывались сложнее и индивидуальнее.

    Обсуждать переход мы начали в четвертом квартале 2024 года. Нас привлекла возможность LLM решать комплексные вопросы из одного запроса клиента. Сценарный бот же реагирует только на одну команду за раз, выдает целый список возможных связанных вопросов, из которых пользователю снова приходится выбирать. Потом, вероятно, выбирать еще и еще… так что терпения хватает не у всех. Тогда клиент в лучшем случае обращается к голосовому боту или попадает к оператору поддержки.

    GPT же может сможет понять контекст, разбить сложный вопрос на несколько простых и собрать полноценный ответ.

    Читать далее
  13. Принимая архитектурные решения, часто так или иначе приходится идти на компромисс: между качеством и скоростью разработки, сложностью реализации и удобством поддержки, быстротой решения бизнес-задачи и гибкостью. Со временем небольшие уступки накапливаются и проект покрывается легаси. Даже если исправно разгребать техдолг, то в любом случае на достаточно длинной дистанции решения и технологии устареют, и станет невозможно обойтись «генеральной уборкой» — потребуется смена архитектуры.  

    В статье расскажу, как мы столкнулись с неизбежной необходимостью переделки веб-плеера RUTUBE — сервиса, который существует с 2006 года, пережил несколько смен команд и парадигм разработки и при этом достаточно большой и высоконагруженный, чтобы нельзя было «просто так взять и всё переписать». 

    Читать далее
  14. Российская компания «Криптонит» (входит в «ИКС Холдинг») разработала метод автоматизации настройки ключевых СВЧ-компонентов базовых станций и ретрансляторов сетей 5G с помощью технологий искусственного интеллекта. Разработка поможет ускорить и упростить процесс производства оборудования для сетей пятого поколения, что особенно важно для крупных городов, где требуется быстрая и точная настройка тысяч базовых станций.

    Работа выполнена по предложению входящей в «ИКС Холдинг» компании YADRO, одно из направлений деятельности которой — разработка и производство телекоммуникационного оборудования операторского класса.

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

    Для автоматизации настройки разные исследователи пытались применять методы обучения с подкреплением (reinforcement learning, RL), но такой подход давал результат только на упрощённых моделях. В «Криптоните» переформулировали задачу так, что её теперь можно решить традиционным и более надёжным методом — обучением с учителем (supervised learning, SL). Разработанная нейросеть анализирует частотные кривые дуплексера и предсказывает корректировки регулировочных винтов. Дополнительный алгоритм пошагово применяет предсказания нейросети, что снижает риск ошибочной настройки.

    Читать далее
  15. В этом материале мы детально рассмотрим, какие архитектуры и подходы применяются в средних и крупных интернет‑магазинах, с какими проблемами они сталкиваются и какие решения оказываются наиболее эффективными. Эпизодически мы будем смотреть на лидеров российских маркетплейсов, поскольку они дальше продвинулись в развитии поисковых технологий и зачастую задают тренды российского рынка.

    Читать далее
  16. Снова приветствую всех читателей Хабр.

    В предыдущей статье был приведен пример создания кода проекта для задачи автоматизации обработки данных, в результате чего получилось подготовить нужную информацию по модели данных ЛОЦМАН: PLM. Эти данные планируется использовать для построения механизмов обработки поисковых запросов пользователей к базе ЛОЦМАН:PLM — в частности, для распознавания сущностей в тексте запроса. Это позволит понимать, на какие объекты модели данных ссылается пользователь: изделия, их параметры, типы документов и так далее.

    Для решения новой задачи я решил опробовать возможности библиотеки spaCy, в которой сущности можно распознавать на основе заранее заданных паттернов. В ходе экспериментов с библиотекой и её модулями EntityRuler и SpanRuler я столкнулся с рядом особенностей, и в данной статье делюсь накопленным опытом и наработками — надеюсь, они окажутся полезными и для вас.

    Читать далее
  17. Борьба с последствиями плохого ТЗ иногда ценится выше, чем работа по его предотвращению.

    Кратко о парадоксе: все ругают костыли и авралы, но они повторяются вновь и вновь. Значит, это кому-то нужно? Посмотрим на экосистему проекта не с технической, а с экономической и карьерной точек зрения.

    Читать далее
  18. Когда‑то мне виделась отличная идея использовать YouTube как надёжное облачное хранилище для своих видеоархивов. Зачем тратить место на локальных дисках, если можно выгружать туда смонтированные ролики или склеенные клипы — всё удобно, всегда доступно с любого устройства в любой момент, без необходимости хранить копии локально. Доступ через браузер или приложение, бесконечное онлайн-хранилище, и видео якобы остаётся в первозданном виде. Но со временем выяснилось, что не всё так просто и безоблачно, как казалось на первый взгляд. Давайте разберёмся, что пошло не так.

    Читать далее
  19. Всем привет. Сегодня мы обсудим понятие эффективности QA-лида и способы его достижения. Для этого мы возьмем несколько ключевых тезисов. Кто это такой, с чего начинается работа в этой роли, какие у нее основные функции и как с ней жить?

    Читать далее
  20. В этой статье я расскажу как я использовал новейшие возможности ИИ MSSQL 2025 для поиска гостендеров. Текущую рабочую версию я выложил на https://artemtender.ru

    Не секрет, что сейчас тяжелые времена для программистов, тем более если тебе за 40, 80% резюме даже не доходит до рекрутеров. Я попробовал поискать работу на гостендерах. Не смотря на то, что общее мнение в том, что большая часть предложений там не рентабельна, с помощью вайбкодинга можно было бы вытянуть проект в плюс.

    Оказалось что на zakupki.gos.ru найти что-то не реально. Там нет нормального фильтра, нужно вручную просматривать сотни позиций, и то позиция может выглядеть просто как "Разработка и поставка ПО". Дальше нужно скачивать документацию вручную и читать. Первая мысль - нужно скармливать Chat GPT и спрашивать подходит ли заказ лично мне. С этим он справляется неплохо, но нужно в начале эту позицию найти, а с этим он уже не справится.

    Решение следующее - необходимо зарегистрироваться в системе госзакупок и получить токен на получение данных. Для поиска позиций я использую косинусную сходимость. Тут очень пригодился новый тип Vector в MSSQL. В базе он выглядит так: [Vector] vec NULL. Этот тип уже поддерживается новейшим EF Core. Все названия закупок индексируются помощью модели ai-forever/ru-en-RoSBERTa методом проб и ошибок я выбрал ее. Подскажите в комментариях, может быть есть что то и лучше. Микросервис на пайтоне получает batch запрос на индексацию и через RabbitMQ возвращает в микросервис обработки БД на .NET Core. В профиле пользователь создает товары и услуги которые так же индексируются через поле Vector. Поиск и сравнение идет уже средствами самого MSSQL и в результате все работает довольно быстро. Скан нескольких сотен тысяч позиций происходит в реальном времени. Единственно, сама индексация не столь быстрая, поэтому я вынес в профиль. Кроме того, по моему это просто удобно - ведь твои услуги меняются не так часто и их проще выбрать из списка. В моем веб-приложении https://artemtener.ru это выглядит так:

    Читать далее