Обновить
64K+
36

Пользователь

49
Рейтинг
242
Подписчики
Отправить сообщение

Эффект «галлюцинаций»: когда ИИ врет уверенным голосом

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

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

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

Читать далее

Поговорим о планировании внедрения DevSecOps

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

DevSecOps по-прежнему часто сводят к подключению сканеров в CI/CD. Дальше сценарий предсказуем: пайплайн замедляется, отчёты копятся, команда теряет к ним интерес. Проблема обычно не в инструментах, а в том, что их внедряют поверх неизменённых процессов.

В статье — о том, как подойти к DevSecOps как к системному изменению: с чего начать, как выбрать пилот, какие цели ставить и где чаще всего всё идёт не так.

Разобраться в теме

Анализируем финансовые рынки с помощью Python

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

В этой статье мы поговорим о том, как работать с мировыми финансовыми данными через Yahoo Finance и как получать котировки с российских площадок — Московской биржи и Тинькофф Инвестиций.

Читать далее

Трекинг объектов с подвижной камеры: когда компьютерное зрение встречается с механикой

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

В лабораторных условиях трекинг объектов обычно выглядит предсказуемо: камера статична, освещение стабильно, масштаб меняется плавно. На подвижной платформе всё иначе. Дрон вибрирует, камера смещается вместе с фоном, объект меняет размер в кадре, а задержки обработки и подвеса начинают влиять на результат не меньше, чем сам алгоритм. В статье разберём, почему классического CV‑трекера недостаточно для промышленного сценария и как связать компьютерное зрение, геометрию камеры и механику gimbal в единую систему.

Читать далее

Никакой магии: только лексер, парсер и интерпретатор на чистом PHP

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

Вы вроде бы пишете код на чистом PHP, но почему-то каждый день используете маленькие языки: DQL в Doctrine («u.age > 18»), Twig-выражения («user|length > 0»), Symfony ExpressionLanguage («user.is_active and order.total > 100`). Никогда не возникало мысли о том, что хорошо бы избавиться от всех этих дополнений и использовать язык собственной разработки для решения нужных задач?

В этой статье мы рассмотрим DSL — язык, заточенный под узкую задачу.

Разобрать DSL

Архитектура тестового фреймворка

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

Красные тесты на CI, зелёные локально, time.sleep в каждом втором тесте, а после смены селектора всё равно всё падает? Знакомо. Это не судьба, а отсутствие архитектуры. Разбираем, как превратить хаос из автотестов в промышленный фреймворк: слои, паттерны (POM, Builder, DI), анти-паттерны и работу с окружениями. С примерами на Python.

Читать далее

Тихий убийца: Деградация производительности без явных ошибок

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

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

Читать далее

Data Gravity и отравление выборки

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

Любой, кто хоть немного знаком с ИИ знает, что для эффективной работы искусственного интеллекта необходимы качественные данные. В результате 80% времени любого ML-проекта уходит не на подбор гиперпараметров и не на архитектуру нейросети, а на рутинный, выматывающий процесс — вылизывание данных. Мы собираем данные из множества устаревших систем, разбираемся с пустыми полями, убираем дубликаты, корректируем разметку. А после всего этого модель приходит ровно туда, куда мы её привели — шуму, смещениям и отравленным выборкам. В этой статье мы разберём основные проблемы, из-за которых все это происходит.

Открыть материал

О важности времени в архитектуре систем ИИ

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

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

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

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

Про архитектуру ИИ

Анатомия памяти в .NET: Типы данных, способы хранения, выделение памяти и работа GC

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

В этой статье мы заглянем под капот CLR (Common Language Runtime) и разберём как хранятся разные типы данных. Также поговорим о том, что такое стек и куча, и как они взаимодействуют. И в заключении рассмотрим, как происходит выделение памяти и разберем принципы работы сборщика мусора.

Читать далее

Records в C#: Классы, которые пишут код за вас

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

Давайте представим, что вам нужно создать класс для хранения данных пользователя. Сколько строк кода вы напишете? Конструктор, свойства, метод ToString(), сравнение объектов... А если добавится новое поле? Придется обновлять конструктор, метод Equals, GetHashCode — утомительная работа, которая не добавляет бизнес-ценности вашему приложению.

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

Читать далее

Command & Control как ключ к расследованию утечек данных

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

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

А в подавляющем большинстве случаев системные утечки — это процесс, управляемый извне. И ключ к расследованию, минимизации ущерба и построению защиты лежит в детектировании инфраструктуры Command & Control (C2). Без понимания того, как работает C2, SOC превращается в пожарную команду, тушащую искры, но не видящую самого пожара.

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

Открыть материал

Делегаты и Лямбды: От тайного знания к повседневному инструменту

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

В этой статье мы не просто посмотрим синтаксис — мы поймём зачем это нужно и как работает под капотом. Мы пройдём путь от указателей на функции в C/C++ до современных лямбда-выражений в C#, разберёмся с делегатами и научимся использовать всю мощь функциональных возможностей языка.

Читать далее

Проблема «зоопарка» протоколов в одной АСУ ТП

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

На бумаге интеграция в АСУ ТП выглядит понятной: подключили оборудование, настроили обмен, передали данные в SCADA и выше по контуру. На практике всё быстро упирается в разнородные протоколы, старые и новые устройства в одной сети, рассинхрон по времени и проблемы с тем, что одни и те же данные в разных системах живут под разными именами. В статье — о том, как с этим работают в реальных промышленных сетях: где помогают шлюзы, когда уместен OPC, в чём ограничения нативных драйверов и почему без единого пространства данных интеграция так и остаётся набором локальных решений.

Разобраться в теме

Поиск и устранение проблем в Zabbix, или как перестать «слепо» мониторить

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

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

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

Читать далее

Микроуправление под видом менторства: Как задушить инициативу в зародыше

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

В каждом ИТ‑проекте есть момент, когда опытный разработчик или архитектор получает в подчинение джуниора или новую команду. Естественно, тимлид хочет добиться эффективной работы своих новых подчиненных искренне веря, что он ментор, наставник, «старший товарищ». Но через некоторое время для команды он превращается в надзирателя, который заглядывает через плечо, проверяет каждый коммит и требует отчета по каждому чиху.

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

Разбор проблемы

CSV в Spark: Искусство правильной загрузки данных

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

В этой статье мы разберём, как правильно загружать CSV в Apache Spark — распределённую вычислительную систему, ставшую стандартом для обработки больших данных. Это первый и самый важный шаг в знакомстве с API Spark и основа для любой последующей обработки.

Читать далее

Держим руку на пульсе: мониторинг состояния Wazuh

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

Как известно, SIEM системы предназначены для обнаружения угроз и мониторинга безопасности, но при этом важно учитывать, что и сама SIEM является сложной распределенной системой, с которой также могут возникнуть различные проблемы. Так, к примеру в Wazuh может отключиться агент, переполниться диск с логами или перестать работать менеджер. В этой статье мы рассмотрим практические подходы к мониторингу состояния Wazuh, чтобы вы всегда были уверены в его работоспособности.

Читать далее

Media Redundancy Protocol (MRP): Обеспечение отказоустойчивости в промышленных сетях

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

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

Разобраться в MRP

Работаем с контейнерами в C++ с помощью библиотеки Ranges

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

Понятие контейнер сейчас активно применяется в контексте Docker и аналогичных решений по контейнеризации. Однако, в языке C++ контейнеры существуют уже очень давно и являются фундаментальной частью Standard Template Library (STL). Они предоставляют готовые реализации наиболее часто используемых структур данных, избавляя разработчика от необходимости писать их с нуля.

Контейнеры C++ можно разделить на несколько основных категорий. Последовательные контейнеры (Sequence Containers) хранят элементы в линейной последовательности, при этом порядок элементов определяется позицией добавления. Ассоциативные контейнеры (Associative Containers) автоматически сортируют элементы по ключу. При этом, они обеспечивают достаточно быстрый поиск (O(log n)). Неупорядоченные ассоциативные контейнеры (Unordered Associative Containers) хранят элементы в хеш-таблицах. Обеспечивают поиск в среднем за O(1). Адаптеры контейнеров (Container Adapters) предоставляют ограниченный интерфейс поверх других контейнеров.

В рамках данной статьи мы будем говорить об использовании библиотеки Ranges для работы с контейнерами.

Читать далее
1
23 ...

Информация

В рейтинге
167-й
Работает в
Зарегистрирован
Активность