Обновить

Все потоки

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

Дело о молчаливой JVM: мониторинг Spring Boot с Prometheus и Grafana. Production-нуар

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

Она умерла в воскресенье вечером, и никто не услышал ни звука. Детективная история о том, как поставить прослушку на собственное приложение: Prometheus, Grafana, Micrometer, алерты, SLO. Все улики в комплекте, демо-проект прилагается. Совпадения с вашим продакшеном не случайны.

Открыть дело

LLM Sandbox: изолированная среда для исполнения кода от LLM [часть 1, теория]

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

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

В этой статье (ее первой части) разберём среду изолированного исполнения кода: песочницу (sandbox).

Представим ситуацию: пользователь загружает Excel-файл, просит проанализировать таблицу, найти аномалии и на основе анализа создать PowerPoint-презентацию. В чистом виде LLM не умеет читать файлы, строить графики и создавать презентации. Однако может написать код, который всё это сделает.

И тут появляется вопрос: где этот код запускать?

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

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

Читать далее

Как я прикрутил GigaChat к OpenCode и что из этого понял

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

Мне было интересно проверить GigaChat/GigaCode не в обычном чате, а в нормальной агентной среде разработки. То есть не “ответь на вопрос”, а вот это всё: tools, function calling, streaming, MCP-инструменты, история диалога и работа внутри реального проекта.

Для проверки я подключил GigaChat к OpenCode через TypeScript-плагин. Простой текстовый запрос завёлся быстро, а дальше началось самое интересное: OpenAI-like API оказался похожим на совместимый агентный протокол только снаружи. Внутри пришлось собирать отдельный слой совместимости.

Читать далее

Токен-оптимизация агентов: на что уходит контекстное окно MCP

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

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

Читать далее

Ставка на API-слой в автотестах: как разгрузить UI и ускорить обратную связь

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

В этой статье я хочу поделиться личным опытом внедрения API-first подхода в автотестировании Java-приложений. Речь пойдет не о теории тестовой пирамиды, а о практической архитектуре автотестов, которая сложилась в нескольких фреймворках с разным уровнем сложности и балансом между API, UI и E2E.

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

Читать далее

Как действительно восстановить данные в PostgreSQL

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

Наверное не существует в мире технической поддержки, которая бы среди прочего не занималась спасением данных клиентов. Не минула участь сия и нас в Postgres Professional. Однако особенность спасения битых данных в СУБД заключается в том, что сломаться может сразу на двух уровнях: физическом и логическом. Первое, это когда что-то случилось с физическим файлом внутри которого лежат данные, а второе это когда файл цел, но внутри него каша без смысла. Поэтому сегодня мы поговорим о том как понять что в вашей базе что-то пошло не так, как понять почему, как оценить ущерб и минимизировать его. А в конце, бонусом, обсудим как не стать героем подобных статей.

Читать далее

Книги для руководителей в эпоху перемен: пять историй о том, как не сойти с ума от цифр и не разлюбить людей

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

Если вы руководитель, вы наверняка знаете это чувство: голова забита планами, KPI, сроками, бюджетами, а где-то на периферии теплится мысль, что самое важное в работе — это всё-таки люди: ваши сотрудники, клиенты да и вы сами. Книги про менеджмент часто бывают сухими, как песок в пустыне, или, наоборот, слишком вдохновляющими, что после прочтения хочется, но непонятно, с чего начать.

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

Читать далее

Собственный дистрибутив Kubernetes с нуля

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

Один хост. Один образ. Пять виртуальных машин. Три минуты — и у вас HA Kubernetes с аппаратной изоляцией, который не снился облачным провайдерам. Никаких облаков, никаких managed-сервисов — только Firecracker, kubeadm и пара сотен строк bash. Это не «лабораторка на выходные» — это чертёж собственной инфраструктуры, которую вы контролируете до последнего байта.

Читать далее

Острова вместо серверов: как сделать мессенджер, который переживёт изъятие своего сервера

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

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

Полюс первый: чистый P2P. Никаких серверов, клиенты говорят напрямую. Звучит красиво ровно до первого практического вопроса. Собеседник офлайн, а вы хотите написать ему сейчас. Куда уйдёт сообщение? В никуда, ждите, пока он включит телефон одновременно с вами. NAT, симметричные файрволы, спящий Android, который убивает фоновые сокеты. P2P горит на неудобстве.

Полюс второй: сервер. Удобно, офлайн-доставка есть, пуши есть. И ровно одна коробка, в которой лежат личности всех, граф контактов всех, очереди всех. Эту коробку можно заблокировать по сети, можно изъять физически, можно прийти к оператору с предписанием. Серверные мессенджеры горят на сервере.

Один из наших пользователей в бете сформулировал это лучше, чем мы в любой презентации: обсуждение альтернатив всегда имело два полюса. Либо ищем инфраструктуру как в Matrix, где все сидят по своим загонам и не пишут друг другу. Либо сидим без офлайн-сообщений как в P2P. Либо вообще не можем подключиться, потому что мосты для обхода блокировок съела моль.

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

Читать далее

Gameboy Advance SP с тяжёлой историей… [Длиннопост, про железо]

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

Сегодня Пикабушник под ником @apokhmel подарил мне мою мечту - оригинальную консоль GBA SP. Для тех, кто не в курсе - это легендарная портативка, вышедшая в далёком 2003 году и являющаяся раскладной версией оригинального GBA, куда добавили подсветку дисплея. Сначала ламповую, а затем и светодиодную!

Читать далее

UVS: честность розыгрыша как факт, который можно пересчитать, а не как бумажка, которой никто не верит

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

Сертификат комплаенса — мёртвая бумага: через два часа хотфикс делает сертифицированный хеш недействительным, и никто не замечает. UVS заменяет «доверьтесь нам» на то, что любой пересчитает сам: deriveTier выводит тир из улик, а не из бейджа. drand + двойной RFC-3161-якорь + WASM-движок, собираемый на лету. Демо живые — попробуй сломать.

Provably Fair и как с ним жить

Кандидат против алгоритма: как ИИ, Хедхантер и HR ломают рынок труда (и что с этим делать безопаснику)

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

В ИБ и IT до сих пор рассказывают сказку про «рынок кандидата». На практике вами торгуются алгоритмы, скрытые критерии и корпоративная шизофрения. Разбираю по опыту своему и гостьи подкаста, HR‑эксперта Екатерины Днепровской, как устроен этот цирк и как в нём выживать именно технарю и безопаснику.

Читать далее

Справедливость для всей ИТ-сферы: почему нам нужен официальный «День специалиста информационных технологий»

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

На сегодняшний день сфера ИТ в России — это огромная индустрия, где работают сотни тысяч специалистов. Официально государство признало значимость этой профессии еще в 2009 году, когда был учрежден День программиста (Указ Президента РФ № 1034).

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

Читать далее

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

Как сделать деловое фото с помощью нейросети — ТОП-9 ИИ для бизнес-портрета, промпты и сравнения

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

Каждый раз, когда нужно обновить аватарку на Линке, HeadHunter или во внутреннем Битриксе компании, в мире плачет один digital-специалист. Потому что варианта обычно два. Либо ты судорожно ищешь в телефоне фотку с чьей-то свадьбы, где ты в костюме, и пытаешься криво обрезать чужое плечо из кадра. Либо сдаешься, отдаешь 10 тысяч за час в фотостудии и на выходе получаешь пластиковый, скованный портрет с натянутой улыбкой «успешного успеха». Привет, 2010-е.

Читать далее

Держите LLM подальше от тестов чат-бота

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

Держите LLM подальше от тестов чат-бота

Кто тестировал чат-бота, знает: на одной реплике всё просто, а на третьей-четвёртой начинается боль. Бот должен помнить имя, которое вы назвали два хода назад, держать слоты и не сваливаться в «уточните ваш запрос» на ровном месте. И как только садишься это проверять, упираешься в развилку: чем, собственно, проверять ответы многоходового диалога.

Читать далее

Поколение «Approve»: почему я заставил команду переписать проект, который уже работал

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

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

Отовсюду постоянно вылезают новые истории успеха. Кто-то показывает, как сократил время разработки в несколько раз. Кто-то рассказывает, что теперь пишет за день столько кода, сколько раньше писал за неделю. Иные вообще собирают полноценный продукт за выходные и искренне не понимают, почему раньше на это уходили месяцы. Честно говоря – раньше читал, но в последнее время просто игнорирую такие заголовки (почему – надеюсь станет понятно из статьи).

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

И мы, с моей командой проходим через те же изменения, что и вся индустрия.

Понять / Найти решение

Мы вскрыли трафик ChatGPT, Gemini и DeepSeek, чтобы понять, откуда берутся «источники» в ответах

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

Когда нейросеть отвечает на вопрос и показывает блок «источников», кажется, что у всех систем это одно и то же — список ссылок, на которые модель опиралась. На деле за этим блоком в каждой системе стоит своя реализация: свой способ обмена с сервером, свой формат ответа, свои поля, из которых интерфейс достаёт цитаты. Мы разобрали сетевой обмен веб-клиентов трёх систем — ChatGPT, Gemini и DeepSeek — и параллельно прогнали через них один и тот же набор запросов по 10 раз, чтобы понять не только техническое устройство цитирования, но и что эти системы реально цитируют.

Сразу оговорка: я основатель RankCaster AI — платформы, которая управляет видимостью брендов в ответах нейросетей. То есть мы изучаем категорию, в которой сами работаем. Чтобы не подыгрывать себе, мы исключили собственный домен из всех таблиц ещё до подсчётов, а ограничения методики описали в полном тексте исследования. Здесь — техническая часть: разбор механики цитирования.

Читать далее

Postgresso 4 (89)

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

PostgreSQL: PostgreSQL 19 Beta 1

Официальный релиз запланировали на сентябрь/октябрь. Вот что старейшины решили выделить в описании релиза 19-й версии:

Производительность

PostgreSQL 19 усовершенствует асинхронную подсистему ввода-вывода, представленную в PostgreSQL 18: io_method=worker теперь автоматически масштабирует количество рабочих процессов ввода-вывода на основе новых параметров io_min_workers и io_max_workers.

Расширение pg_plan_advice позволяет пользователям стабилизировать и контролировать решения планировщика, а pg_stash_advice - автоматически применять рекомендации, используя идентификаторы запросов.

Autovacuum теперь может использовать параллельные рабочие процессы, которые можно настраивать с помощью нового параметра autovacuum_max_parallel_workers, а новая система оценки autovacuum помогает расставлять приоритеты таблиц при их вакуумировании. Кроме того теперь PostgreSQL помечает страницы как видимые, когда их запрашивают.

Читать далее

Два года один пилю MMORPG на CI4: пять багов, за каждым из которых стоял живой игрок

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

Строка “false” в PHP равна true. Я узнал это, когда рубильник, которым я выключаю фичи перед живыми игроками, полгода отказывался выключаться. Два года в одиночку пилю текстовую MMORPG на CodeIgniter 4: мир дышит раз в минуту по крону, 485 выживших, 45 тысяч боёв. Пять багов — и за каждым стоял реальный человек по ту сторону экрана.

Читать далее

Как за 15 минут найти запросы, которые тихо сливают бюджет в Яндекс Директе

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

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

Рассказали в статье:

Читать далее